Boostning och relevanspoäng
Lär er tekniker för att påverka dokumentens relevanspoäng med hjälp av query-boostning, fältboostning och anpassade poängfunktioner.
Boostning och relevanspoäng är en gratis lektion i Elasticsearch och system för fulltextsökning på CoddyKit. Detta är lektion 3 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Elasticsearch och system för fulltextsökning, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Elasticsearch och system för fulltextsökning innehåller totalt 4 lektioner.
Varför relevans är viktigt
När ni söker efter något vill ni inte bara ha vilka resultat som helst, utan de bästa resultaten. Det är här relevans kommer in!
Relevans hjälper sökmotorer som Elasticsearch att avgöra vilka dokument som är viktigast eller mest ”relevanta” för er sökfråga och visa dem först.
Möt _score
I Elasticsearch får varje dokument som matchar er sökfråga ett numeriskt värde som kallas _score. Poängen visar hur relevant dokumentet är för er sökfråga.
- Ett högre
_scoreinnebär att dokumentet anses vara mer relevant. - Elasticsearch använder algoritmer (som BM25) för att beräkna poängen och tar hänsyn till faktorer som hur ofta en term förekommer och hur unik den är.
Introduktion till boosting
Elasticsearch beräknar relevansen automatiskt, men ofta vill ni kunna styra den. Det är här boosting kommer in!
Med boosting kan ni manuellt öka eller minska betydelsen av specifika frågeklauseler eller fält, vilket direkt påverkar _score för matchande dokument.
Boosta hela sökfrågor
Ni kan tillämpa parametern boost på en hel frågeklausul. Ett boostvärde som är större än 1.0 ökar dess påverkan, medan ett värde som är mindre än 1.0 minskar den.
Standardvärdet för boost är 1.0, vilket innebär att ingen särskild betoning görs.
Boosting av frågor i praktiken
Anta att ni söker efter ”coding” och vill att träffar i fältet description ska vara dubbelt så viktiga som andra delar av sökfrågan.
Ni kan lägga till "boost": 2 i den specifika match-klausulen:
GET /my_index/_search
{
"query": {
"match": {
"description": {
"query": "coding",
"boost": 2
}
}
}
}Prioritera specifika fält
Ofta är en träff i ett fält i sig mer värdefull än en träff i ett annat. Att hitta ett nyckelord i ett dokuments title är till exempel vanligtvis mer relevant än att hitta det i dess content.
Fältboosting låter er ange denna betydelse direkt i sökfrågan.
Exempel på fältboosting
Genom att använda operatorn ^ (cirkumflex) efter ett fältnamn kan ni ange en boostfaktor. Här är en träff i title tre gånger viktigare än en träff i description:
GET /my_index/_search
{
"query": {
"multi_match": {
"query": "quick brown fox",
"fields": [ "title^3", "description^1" ]
}
}
}Bortom enkel boosting
För ännu större kontroll över relevansen erbjuder Elasticsearch sökfrågan function_score. Med denna kraftfulla sökfrågetyp kan ni tillämpa anpassad poängsättningslogik på dokument.
Ni kan ta hänsyn till exempelvis ett dokuments popularitet, aktualitet eller specifika numeriska fältvärden för att påverka dess _score.
Grundläggande exempel på function_score
Här är ett enkelt function_score-exempel. Det söker efter ”elastic” och ökar sedan poängen baserat på fältet views_count, genom att multiplicera grundpoängen med en faktor som härleds från views_count.
GET /my_index/_search
{
"query": {
"function_score": {
"query": { "match": { "text": "elastic" } },
"field_value_factor": {
"field": "views_count",
"factor": 1.2,
"modifier": "log1p",
"missing": 1
},
"boost_mode": "multiply"
}
}
}Förbättra era kunskaper!
Testa era kunskaper om boosting och relevans i Elasticsearch!
Relevansen finjusterad!
Bra jobbat! Ni har lärt er att ta kontroll över relevansen i Elasticsearch.
_scorestyr hur viktigt ett dokument är.- Boosting av sökfrågor låter er betona hela frågeklausuler.
- Fältboosting prioriterar träffar i specifika fält.
- Sökfrågan
function_scoreger avancerade, anpassade justeringar av relevansen.
Med dessa tekniker kan ni se till att era användare alltid hittar den mest relevanta informationen först!
Lär dig Elasticsearch och system för fulltextsökning med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 12
- Lektioner
- 48
Vanliga frågor
Är lektionen ”Boostning och relevanspoäng” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Elasticsearch och system för fulltextsökning, inklusive ”Boostning och relevanspoäng”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Elasticsearch och system för fulltextsökning innehåller totalt 4 lektioner.
Vad lär jag mig i ”Boostning och relevanspoäng”?
Lär er tekniker för att påverka dokumentens relevanspoäng med hjälp av query-boostning, fältboostning och anpassade poängfunktioner. Ni övar på Elasticsearch och system för fulltextsökning med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig Elasticsearch och system för fulltextsökning?
Du behöver inga förkunskaper. Utbildningen i Elasticsearch och system för fulltextsökning på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.
Hur lång tid tar lektionen ”Boostning och relevanspoäng”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här Elasticsearch och system för fulltextsökning-lektionen?
Ja. Varje Elasticsearch och system för fulltextsökning-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Analysatorer, tokeniserare och filter
- Anpassa textanalysverktyg
- Boostning och relevanspoäng
- Synonymer och stemming