N Gram Analyzer 발견 < - 예전 글입니다.
루씬 새 버전에 N Gram Tokenizer 가 추가되었더군요. 소스만 보고 잠깐 설명합니다. 히히.
NGramTokenizer는 사전없는 NGram입니다. 지정한 범위의 n그램들을 뽑아내죠. '헤드퍼스트'를넣으면 '헤드', '헤드퍼', '헤드퍼스', '드퍼', '드퍼스', '드퍼스트'... 등이 나오겠죠.
EdgeNGramTokenizer는 한 쪽에 붙은 NGram만 분리하는 녀석입니다. 앞쪽을 지정하면 '헤드퍼스트'에서 '헤', '헤드', '헤드퍼' 등이 나오고, 뒤쪽을 지정하면 '트', '스트', 퍼스트' 등이 나오겠죠.
글쎄, 이게 좋은지는 모르겠습니다. 코드량도 얼마 안되고, 품질도 CJK 분석기와 비등한 수준. -_-a 내 손으로 짜는게 낫겠다 싶은데.
루씬 새 버전에 N Gram Tokenizer 가 추가되었더군요. 소스만 보고 잠깐 설명합니다. 히히.
NGramTokenizer는 사전없는 NGram입니다. 지정한 범위의 n그램들을 뽑아내죠. '헤드퍼스트'를넣으면 '헤드', '헤드퍼', '헤드퍼스', '드퍼', '드퍼스', '드퍼스트'... 등이 나오겠죠.
EdgeNGramTokenizer는 한 쪽에 붙은 NGram만 분리하는 녀석입니다. 앞쪽을 지정하면 '헤드퍼스트'에서 '헤', '헤드', '헤드퍼' 등이 나오고, 뒤쪽을 지정하면 '트', '스트', 퍼스트' 등이 나오겠죠.
글쎄, 이게 좋은지는 모르겠습니다. 코드량도 얼마 안되고, 품질도 CJK 분석기와 비등한 수준. -_-a 내 손으로 짜는게 낫겠다 싶은데.



덧글
카페모카 2007/02/24 08:25 # 삭제 답글
클래스 만들어봐도 재미있겠네요.. ㅋㅋ
최종욱 2007/02/24 10:49 # 답글
이미 코드가 있는걸요. 같은거 짜는건 삽질이라서. ㅎㅎ
typos 2007/02/24 14:04 # 답글
누군가 특정토큰이 필요해 만들었을수도. 거의 트라이수준의 검색이 되겠군... 난 변경된 클래스를 보면서 이들의 의도를 생각하고 있음.