beskrivning av metoden

även stemming hjälper till att bredda omfattningen av sökningen genom att förenkla böjda ord till deras rotform, synonymer bredda omfattningen genom att relatera begrepp och ideer. Som vi sa ovan är ett av de många problem som kan möta oss att använda inte exakt lämpliga ord i sökfrågan. Vi kan till exempel ha fältnamnet lika med "blue jacket" i dokumentet och namnet "cyan jacket" i sökfrågan. Med hjälp av synonym token filter kan du enkelt hantera synonymer under analysprocessen. Synonymer konfigureras med en konfigurationsfil.

beskrivning av processen

1)Först måste vi definiera ett tokenfilter av typen synonym och lägga till synonymformat i formatering av synonymer. Första sättet att ställa in ett filter:

och ett sätt med att använda en sökväg till synonym.txt:

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

tips: den här filen analysis/synonym.txt måste finnas i varje nod i klustret. Filformatet ska vara enligt följande:

beskrivet ovan konfigurerar ett synonymfilter med en sökväg på analysis/synonym.txt (i förhållande till konfigurationsplatsen).

Supergiant av Qbox: det första datacenter Total control-systemet som gör det enkelt att spara upp till 60% på din AWS-faktura.

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

du kan se att vi har lagt till två synonymer för blå och guldfärger. När användaren söker efter "cobalt dress", kommer elastic att returnera omfattning med "cobalt"färg synonymer "blue, Blue, blue-gold, dark blue/black/charcoal, duke blue, jade blue, scottsdale blue, blue/white/khaki, pacific blue". Du kan till exempel skapa en fråga och testa den utan synonymer och sedan lägga till vår analysator "filter_synonyms".

3) Låt oss testa vårt anpassade stoppordfilter:

som den andra:

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

ytterligare information

att använda samma synonym token-filter vid både indextid och söktid är överflödigt. Om vi ersätter guld vid indextid med de två termerna guld-blått och guld, vid söktid behöver vi bara söka efter en av dessa termer. Alternativt, om vi inte använder synonymer vid indextid, skulle vi behöva konvertera en fråga för guld till en fråga för guld eller guldblå vid söktiden.

Kategorier: Articles

0 kommentarer

Lämna ett svar

Platshållare för profilbild

Din e-postadress kommer inte publiceras.