beschrijving van de methode

hoewel stamvorming helpt om de reikwijdte van het zoeken te verbreden door Verbogen woorden te vereenvoudigen tot hun basisvorm, verbreden Synoniemen de reikwijdte door begrippen en ideeën te relateren. Zoals we hierboven gezegd, een van de vele problemen die ons kunnen ontmoeten is het gebruik van niet precies geschikte woorden in de zoekopdracht. We kunnen bijvoorbeeld de veldnaam gelijk hebben aan "blue jacket" in het document en de naam "cyan jacket" in de zoekopdracht. Met behulp van het synonym token filter kunt u gemakkelijk omgaan met synoniemen tijdens het analyseproces. Synoniemen worden geconfigureerd met behulp van een configuratiebestand.

beschrijving van het proces

1) Eerst moeten we een tokenfilter van typesynoniem definiëren en synoniemformaten toevoegen in Opmaaksynoniemen. Eerste manier om een filter in te stellen:

en nog een manier met een pad naar synonym.txt:

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

HINT: dit bestand analysis/synonym.txt moet zich in elk knooppunt van het cluster bevinden. Bestandsformaat moet als volgt zijn:

hierboven beschreven configureert een synoniem filter met een pad van analysis/synonym.txt (relatief aan de config locatie).

superreus door Qbox: het eerste datacenter totale besturingssysteem dat het gemakkelijk maakt om tot 60% op uw AWS-factuur te besparen.

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

u kunt zien dat we twee Synoniemen hebben toegevoegd voor blauwe en gouden kleuren. Wanneer de gebruiker "cobalt dress" zoekt, geeft elastic scope terug met "cobalt" kleursynoniemen "blue, Blue, blue-gold, dark blue/black/charcoal, duke blue, jade blue, scottsdale blue, blue/white/khaki, pacific blue". U kunt bijvoorbeeld een query aanmaken en testen zonder synoniemen en vervolgens onze analyzer "filter_synonyms"toevoegen.

3) Laten we onze aangepaste stopwords filter testen:

als de tweede:

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

aanvullende informatie

het gebruik van hetzelfde synoniem-tokenfilter op zowel index-als zoektijd is overbodig. Als we goud op indextijd vervangen door de twee termen goud-blauw en goud, moeten we op zoektijd slechts naar één van die termen zoeken. Als alternatief, als we geen Synoniemen gebruiken op indextijd, zouden we een query voor goud moeten converteren naar een query voor goud of goud-blauw op zoektijd.

Categorieën: Articles

0 reacties

Geef een antwoord

Avatar plaatshouder

Het e-mailadres wordt niet gepubliceerd.