[Elasticsearch - The Definitive Guide] Controlling Stemming
Elastic/TheDefinitiveGuide 2015. 12. 22. 13:42형태소 분석에서 stemming 관련 글 입니다.
언어학에 대한 지식은 검색 기술에서도 매우 중요 합니다.
하지만 저는 컴퓨터과학을 전공하였기에 모르는건 기록하고 학습을 해야... 그래서 기록합니다.
원문링크)
원문 Snippet)
- Preventing Stemming
당연히 아시겠지만, stopwords 와는 다릅니다.
PUT /my_index { "settings": { "analysis": { "filter": { "no_stem": { "type": "keyword_marker", "keywords": [ "skies" ] } }, "analyzer": { "my_english": { "tokenizer": "standard", "filter": [ "lowercase", "no_stem", "porter_stem" ] } } } } }
GET /my_index/_analyze?analyzer=my_english sky skies skiing skis
- Customizing Stemming
추출 term에 대한 맵핑 정보를 사용하는 방법이며, 조금은 다르지만 synonym과 비슷 합니다.
역시 색인 및 검색 시 사용이 가능합니다.
PUT /my_index { "settings": { "analysis": { "filter": { "custom_stem": { "type": "stemmer_override", "rules": [ "skies=>sky", "mice=>mouse", "feet=>foot" ] } }, "analyzer": { "my_english": { "tokenizer": "standard", "filter": [ "lowercase", "custom_stem", "porter_stem" ] } } } } } GET /my_index/_analyze?analyzer=my_english The mice came down from the skies and ran over my feet