opis metody

podczas gdy steming pomaga rozszerzyć zakres wyszukiwania poprzez uproszczenie odmienionych słów do ich pierwotnej formy, synonimy poszerzają zakres poprzez powiązanie pojęć i pomysłów. Jak powiedzieliśmy powyżej, jednym z wielu problemów, które mogą nas spotkać, jest użycie niezbyt odpowiednich słów w wyszukiwaniu. Na przykład, możemy mieć pole nazwa równa "blue jacket" w dokumencie i nazwa "cyan jacket" w zapytaniu. Użycie filtra synonimów umożliwia łatwą obsługę synonimów podczas procesu analizy. Synonimy są konfigurowane za pomocą pliku konfiguracyjnego.

opis procesu

1) Najpierw musimy zdefiniować filtr tokenowy synonimu typu i dodać formaty synonimów w formatowaniu synonimów. Pierwszy sposób ustawienia filtra:

i jeszcze jeden sposób z użyciem ścieżki do synonym.txt:

"filter" : { "synonyms_filt" : {"tokenizer": "keyword", "type" : "synonym", "synonyms_path" : "analysis/synonym.txt" } } } }

wskazówka: Ten plik analysis/synonym.txt musi znajdować się w każdym węźle klastra. Format pliku powinien być następujący:

opisany powyżej konfiguruje filtr synonimu ze ścieżką analysis/synonym.txt (w stosunku do lokalizacji konfiguracji).

Supergiant by Qbox: pierwszy kompleksowy system sterowania centrum danych, który ułatwia zaoszczędzenie do 60% na rachunku AWS.

 "analyzer": { "filter_synonyms": { "filter": , "tokenizer": "keyword" } }

widać, że dodaliśmy dwa synonimy dla koloru niebieskiego i Złotego. Gdy użytkownik wyszukuje "cobalt dress", elastic zwróci zakres z "cobalt" synonimami kolorów "blue, Blue, blue-gold, dark blue/black/charcoal, duke blue, jade blue, scottsdale blue, blue/white/khaki, pacific blue". Na przykład możesz utworzyć zapytanie i przetestować je bez synonimów, a następnie dodać nasz analizator "filter_synonyms".

3) przetestujmy nasz niestandardowy filtr stoperów:

jako drugi:

"hits" : { "total" : 36165,"max_score" : 0.62592113}

dodatkowe informacje

używanie tego samego filtra synonimów zarówno w czasie indeksowania, jak i Wyszukiwania jest zbędne. Jeśli zastąpimy złoto w czasie indeksowania dwoma terminami gold-blue I Gold, w czasie wyszukiwania musimy wyszukać tylko jedno z tych terminów. Alternatywnie, jeśli nie używamy synonimów w czasie indeksowania, musielibyśmy przekonwertować Zapytanie o złoto na zapytanie o złoto lub złoto-niebieski w czasie wyszukiwania.

Kategorie: Articles

0 komentarzy

Dodaj komentarz

Avatar placeholder

Twój adres e-mail nie zostanie opublikowany.