Adaptiv relevansmodell med betingad sannolikhetshierarki. Adaptive relevance model with conditional probability hierarchy

Relevanta dokument
Data på individ/hushålls/företags/organisationsnivå. Idag större datamänger än tidigare

Business research methods, Bryman & Bell 2007

Inlämningsuppgift : Finn. 2D1418 Språkteknologi. Christoffer Sabel E-post: csabel@kth.se 1

Övningshäfte 2: Induktion och rekursion

Simulering av Poissonprocesser Olle Nerman, Grupprojekt i MSG110,GU HT 2015 (max 5 personer/grupp)

Sannolikhetslära. 1 Enkel sannolikhet. Grunder i matematik och logik (2015) 1.1 Sannolikhet och relativ frekvens. Marco Kuhlmann

Logistisk regression och Indexteori. Patrik Zetterberg. 7 januari 2013

11. Feminism och omsorgsetik

För logitmodellen ges G (=F) av den logistiska funktionen: (= exp(z)/(1+ exp(z))

Datainsamling Hur gör man, och varför?

, s a. , s b. personer från Alingsås och n b

men borde vi inte också testa kraven?

SF1901: SANNOLIKHETSTEORI OCH. PASSNING AV FÖRDELNING: χ 2 -METODER. STATISTIK. Tatjana Pavlenko. 12 oktober 2015

Introduktion till språkteknologi

Introduktion till algoritmer - Lektion 1 Matematikgymnasiet, Läsåret Lektion 1

Regression med Genetiska Algoritmer

Exempel ode45 parametrar Miniprojekt 1 Rapport. Problemlösning. Anastasia Kruchinina. Uppsala Universitet. Januari 2016

Concept Selection Chaper 7

Vetenskaplig metodik

IBSE Ett självreflekterande(självkritiskt) verktyg för lärare. Riktlinjer för lärare

Föreläsning 5 Innehåll

Explorativ övning 5 MATEMATISK INDUKTION

TDDB96 Projekt: Object priming med visuell stimuli

Härledning av Black-Littermans formel mha allmänna linjära modellen

1. Inledning, som visar att man inte skall tro på allt man ser. Betrakta denna följd av tal, där varje tal är dubbelt så stort som närmast föregående

men borde vi inte också testa kraven? Robert Bornelind

Metod1. Intervjuer och observationer. Ex post facto, laboratorie -, fältexperiment samt fältstudier. forskningsetik

SF1922/SF1923: SANNOLIKHETSTEORI OCH. PASSNING AV FÖRDELNING: χ 2 -METODER. STATISTIK. Tatjana Pavlenko. 14 maj 2018

Analytisk statistik. Mattias Nilsson Benfatto, PhD.

Nedan redovisas resultatet med hjälp av ett antal olika diagram (pkt 1-6):

F2 Introduktion. Sannolikheter Standardavvikelse Normalapproximation Sammanfattning Minitab. F2 Introduktion

Riktlinjer för bedömning av examensarbeten

Statistik 1 för biologer, logopeder och psykologer

Hypotesprövning. Andrew Hooker. Division of Pharmacokinetics and Drug Therapy Department of Pharmaceutical Biosciences Uppsala University

Differentiell psykologi

Marcus Angelin, Vetenskapens Hus, Jakob Gyllenpalm och Per-Olof Wickman, Stockholms universitet

International Olympiad in Informatics July 2011, Pattaya City, Thailand Tävlingsuppgifter Dag 2 Svenska 1.3. Papegojor

Autokorrelation och Durbin-Watson testet. Patrik Zetterberg. 17 december 2012

Anvisningar till rapporter i psykologi på B-nivå

Föreläsninsanteckningar till föreläsning 3: Entropi

Upprepade mönster (fortsättning från del 1)

Introduktion. Konfidensintervall. Parade observationer Sammanfattning Minitab. Oberoende stickprov. Konfidensintervall. Minitab

Tillämpad statistik (A5), HT15 Föreläsning 6: Några övriga urvalsmetoder

Religionsvetenskap II Delkurs 2: Teori och metod

WEBBKLUSTRING SLUTRAPPORT

NODA Smart Heat Building. Hur funkar det? - En teknisk översikt

Föreläsning 4: Konfidensintervall (forts.)

TATA42: Föreläsning 8 Linjära differentialekvationer av högre ordning

WEBB365.SE. Hur skriver man sökmotoroptimerade texter

Tentamen Metod C vid Uppsala universitet, , kl

F19, (Multipel linjär regression forts) och F20, Chi-två test.

TDDI16 Datastrukturer och algoritmer. Algoritmanalys

Explorativ övning 5 MATEMATISK INDUKTION

Symboler och abstrakta system

F5 Introduktion Anpassning Korstabeller Homogenitet Oberoende Sammanfattning Minitab

Föreläsning 5. Deduktion

Kapitel 15: INTERAKTIONER, STANDARDISERADE SKALOR OCH ICKE-LINJÄRA EFFEKTER

Bedömningsmall med riktlinjer för kvalitetskriterier för bedömning av examensarbete master+civilingenjör

FÖRELÄSNING 8:

Kvantitativa metoder och datainsamling

FTEA21:3 Spr akfilosofi F orel asning III Martin J onsson

Tentamen i Teknisk-Vetenskapliga Beräkningar

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret Lektion 4

Tänk på följande saker när du skriver tentan:

Block 2 Algebra och Diskret Matematik A. Följder, strängar och tal. Referenser. Inledning. 1. Följder

Introduktion till programmering SMD180. Föreläsning 9: Tupler

Prestanda och skalbarhet

Kritisk reflektion av använd teori för införande av digitala teknologier, Tidsläckage Teorin.

TSRT62 Modellbygge & Simulering

Dekomponering av löneskillnader

Statistik 1 för biologer, logopeder och psykologer

Vinjetter TDDC91 Datastrukturer och algoritmer

Introduktion till statistik för statsvetare

Sökmotorns roll på det sociala intranätet

Li#eratur och empiriska studier kap 12, Rienecker & Jørgensson kap 8-9, 11-12, Robson STEFAN HRASTINSKI STEFANHR@KTH.SE

Föreläsning 1. Repetition av sannolikhetsteori. Patrik Zetterberg. 6 december 2012

χ 2, chi-två Test av anpassning: sannolikheter specificerade Data: n observationer klassificerade i K olika kategorier:

Innehåll: 3.4 Parametriskt eller ej 3.5 Life Table 3.6 Kaplan Meier 4. Cox Regression 4.1 Hazard Function 4.2 Estimering (PL)

I arbetet hanterar eleven flera procedurer och löser uppgifter av standardkaraktär med säkerhet, både utan och med digitala verktyg.

Bedömning av Examensarbete (30 hp) vid Logopedprogrammet Fylls i av examinerande lärare och lämnas i signerad slutversion till examinator

Np MaB vt Låt k = 0 och rita upp de båda linjerna. Bestäm skärningspunkten mellan linjerna.

SF1901: SANNOLIKHETSLÄRA OCH STATISTIK. MER OM χ 2 -TEST OCH LIKNANDE. Jan Grandell & Timo Koski

Läget, läget, läget. Sök, sök, sök. mars 2018/Ted Durdel

Vindkraft och ML. - hur kan vindkraft dra nytta avml

Stokastiska Processer och ARIMA. Patrik Zetterberg. 19 december 2012

Likhetstecknets innebörd

Kriterier för bedömning av examensarbete vid den farmaceutiska fakulteten

TATM79: Föreläsning 1 Notation, ekvationer, polynom och summor

Väl godkänt (VG) Godkänt (G) Icke Godkänt (IG) Betyg

MVE051/MSG Föreläsning 7

ÖVN 6 - DIFFERENTIALEKVATIONER OCH TRANSFORMMETODER - SF Nyckelord och innehåll. a n (x x 0 ) n.

Bedömningsmall med riktlinjer för kvalitetskriterier för bedömning av examensarbete master+civilingenjör

TI-Nspire internationell forskning: Pilotprojekt

de var svåra att implementera och var väldigt ineffektiva.

"Distributed Watchdog System"

Titel på examensarbetet. Dittnamn Efternamn. Examensarbete 2013 Programmet

Visualisering av samverkan

KOMMUNIKATION ATT SKAPA ETT BRA SAMTAL

Analytisk statistik. 1. Estimering. Statistisk interferens. Statistisk interferens

WEBBLÄTTLÄST SLUTRAPPORT

Transkript:

Adaptiv relevansmodell med betingad sannolikhetshierarki Adaptive relevance model with conditional probability hierarchy OSKAR LINDSTRÖM olinds@kth.se DD221X Examensarbete inom datalogi, avancerad nivå Handledare: Anders Lansner Examinator: Jens Lagergren Uppdragsgivare: Netlight Consulting AB 28 maj 2013 TRITA xxx yyyy-nn

Referat Syftet med detta examensarbete är att implementera en adaptiv relevansmodell för att kunna analysera hur bra denna presterar med den lilla mängd träningsdata som finns tillgänglig. Resultatet bygger på den betingade sannolikhetshierarki som är framtagen av Zhou et al. Denna relevansmodell implementeras mellan användargränssnittet och Apache Solr, sökmotorn som användes vid studiens genomförande. Genom att implementera på detta sätt kommer både den systembaserade relevansen, från Apache Solr, och den användarbaserade relevansen, från denna relevansmodell, att bidra till den totala relevansen. Den betingade sannolikhetshierarkin använder sig av två andra modeller, oberoendemodellen och fullmodellen, för att skatta relevansen hos ett dokument givet den ställda sökfrågan. Oberoendemodellen gör antagandet att söktermerna i sökfrågan är oberoende varandra men förkastar informationen i ordföljden, medan fullmodellen tar hänsyn till den information ordföljden ger. Resultatet visar att relevansmodellen kan omordna sökresultatet i 98 av fallen. Med rätt parametervärden rankar den det sökta dokumentet högre i 84 av fallen, jämfört med resultaten utan att använda denna relevansmodell.

Abstract Adaptive relevance model with conditional probability hierarchy The purpose with this master thesis is to implement an adaptive relevance model to be able to analyze how well it performs with the small amount of training data available. The results is based on the conditional probability hierarchy developed by Zhou et al. This relevance model is implemented between the user interface and Apache Solr, the search engine used at the studies implementation. By implementing it in this way the system based relevance, from Apache Solr, and the user based relevance, from this relevance model, are both contributing to the overall relevance. The conditional probability hierarchy uses two other models, the independent model and the full model, to estimate the relevance for a document given the search query. The independent model makes the assumption that the search terms in the query are independent from each other but discard the information given from the order of the search terms, while the full model takes account for this information. The result shows that the relevance model can rearrange the search results in 98 of the time, and with the correct parameter settings it ranks the searched document higher in 84 of the cases, compared to the search results without using this relevance model.

Innehåll 1 Introduktion 1 1.1 Bakgrund................................. 1 1.2 Problem.................................. 1 1.3 Syfte.................................... 2 2 Teori 3 2.1 Adaptiv relevansmodell......................... 3 2.2 Relevans.................................. 4 2.2.1 Klasser av relevans........................ 4 2.3 Varför önskas en adaptiv relevansmodell?............... 4 2.4 Implicit återkoppling genom klickloggar................ 5 2.4.1 Rankningens ordning influerar användaren........... 5 2.4.2 Kaskadmodellen......................... 7 2.5 Återkoppling baserat på vad användaren gjorde efter att ha tittat på dokumentet................................ 8 2.6 Sökfrågekedjor.............................. 9 2.7 Problem med begränsad mängd träningsdata............. 10 2.7.1 Överträning............................ 10 2.8 Typer av sökfrågor............................ 10 2.9 Tf-idf................................... 11 2.9.1 Tf-idf hos Apache Solr...................... 11 2.9.2 Egenskaper............................ 12 2.10 Viktning av enskilda termer....................... 13 2.10.1 Relationer mellan ekvationerna................. 14 2.10.2 Antaganden............................ 15 2.10.3 Slutsatser av experimenten................... 15 3 Metod 17 3.1 Betingad sannolikhetshierarki...................... 17 3.1.1 Formalisering av problemet................... 17 3.1.2 Definitionen av att lära från klickloggar............ 18 3.1.3 Oberoendemodellen....................... 18 3.1.4 Fullmodellen........................... 19

3.1.5 Den betingade sannolikhetshierarkin.............. 19 3.1.6 Tolkning av sannolikheter.................... 21 3.1.7 Antaganden............................ 23 3.2 Motivering till val av relevansmodell.................. 23 3.3 Tolkning av klick............................. 24 3.4 Delning av sökfråga till söktermer................... 24 3.4.1 Exempel.............................. 25 3.4.2 Motivering till delningsalgoritmen............... 25 3.5 Uträkning av skattningar........................ 25 3.6 Integration mot Apache Solr....................... 26 3.7 Utvärdering av resultat......................... 27 3.7.1 Träffsäkerheten hos förutsägelser................ 27 3.7.2 Förutsägelsegrad......................... 28 3.7.3 Hantering av data........................ 28 3.7.4 Utförande............................. 28 3.7.5 Redovisning av resultat..................... 29 4 Resultat 31 4.1 Innehåll i klickloggarna......................... 31 4.2 Antal sökfrågor som inte längre var med i resultatlistan....... 32 4.3 Förutsägelsegrad............................. 32 4.4 Träffsäkerhet............................... 33 4.4.1 Analys av parametern β..................... 33 4.4.2 Analys av parametern relevanceboost............ 35 4.4.3 λ:s inflytande hos relevansmodellen............... 37 5 Slutsatser 39 5.1 Förutsägelsegrad............................. 39 5.2 Träffsäkerhet............................... 39 5.2.1 β:s inverkan............................ 40 5.2.2 relevanceboost:s inverkan................... 40 5.2.3 λ:s inverkan............................ 40 5.2.4 Förhållandet mellan parametervärdena............. 40 5.3 Klickloggar med begränsad mängd träningsdata............ 41 5.4 Rekommendation av parametervärden................. 41 5.5 Nästa steg................................. 41 Litteraturförteckning 43 Bilagor 44 A Samtliga resultat 45

Kapitel 1 Introduktion Detta kapitel avser att framhålla målet och syftet med detta examensarbete. 1.1 Bakgrund Netlight är idag ett företag som innehar stora mängder information. För att effektivt kunna hitta den information som söks behövs en pedantisk struktur för var dokument ska sparas och med vilket namn. Med tiden blir detta svårt att hålla efter och även om katalogstrukturen ser någorlunda bra ut blir det problematiskt att hitta den information som söks. För att underlätta sökandet av information har Netlight en sökmotor för sina interna dokument. Sökmotorn i fråga är Apache Solr med Apache Lucene som index. Detta underlättar för de anställda då de istället för att leta i katalogstrukturen för hand kan söka efter dokumentet, förutsatt att de vet några specifika nyckelord som finns i dokumentet. Begränsningen med Apache Solr och Apache Lucene är att rankningen som görs är statisk och med samma ord får man samma resultat varje gång givet att indexet inte har uppdaterats. Netlight har ett behov av att öka produktiviteten och att snabbare kunna hitta den information som behövs. Ett sätt att göra det är att skräddarsy hur resultaten ska rankas. Detta kräver att någon avsätter tid för den uppgiften vilket inte är hållbart i längden. En annan lösning på problemet är att sökmotorn själv kan lära sig vilka dokument som är viktiga för en specifik sökfråga och med tiden ranka dessa högre i resultatlistan när sökfrågan återkommer. 1.2 Problem För Netlight:s del växer informationsmängden varje dag. Det gör att det blir allt svårare att hitta den information som söks. Ett liknande problem finns idag på internet eftersom det finns mycket information tillgänglig där. Sättet som idag är lösning på det problemet är att söka efter den informationen man letar efter, ty ofta vet användaren ungefär vad denne letar efter. 1

KAPITEL 1. INTRODUKTION Lösningen som Netlight valt är att använda sig av en sökmotor, Apache Solr, för att indexera de interna dokumenten. Detta medför en central knutpunkt för samtlig information som företaget innehar. Eftersom samtliga dokument är indexerade kommer Apache Solr ge dokumenten ett numeriskt värde beroende på hur bra dessa matchar sökfrågan [14], men vissa dokument kan vara mer relevanta än vad det numeriska värdet säger. Detta beror på att användaren har sökt på någonting som inte ger dokumentet den relevans det borde ha. Det finns inte heller någon återkoppling tillbaka till användaren på vad denne borde ha sökt på för att detta dokument skulle rankas högre, vilket betyder att om användaren aldrig lär sig vad denna ska söka efter kommer dokumentet alltid vara lägre rankat trots att det har högre relevans för användaren. För att komma till rätta med detta problem behöver Apache Solr lära sig vad som är viktigt för användaren och ranka dessa dokument högre. För att sökmotorn ska ha möjligheten att lära sig hur dokumenten ska rankas behöver den träningsdata i form av vad användare har sökt på och vad de senare har klickat på i resultatlistan. Dock är tillgången på denna träningsdata mycket begränsad då sökmotorn nyligen hade tagits i bruk vid genomförandet av detta examensarbete. 1.3 Syfte Syftet med detta examensarbete är att implementera en adaptiv relevansmodell för att kunna analysera hur bra denna presterar med den begränsade mängd träningsdata som finns tillgänglig. Resultatet bygger på den betingade sannolikhetshierarki som är framtagen av Zhou et al. [15]. Det praktiska målet med detta examensarbete är att Netlight:s sökmotor ska kunna ranka dokument på ett adaptivt sätt genom att ta tillvara på den implicita information som klickloggarna innehåller. Vad en klicklogg är förklaras i 2.1 Adaptiv relevansmodell. 2

Kapitel 2 Teori Nedan presenteras tidigare forskning som har relevans för detta examensarbetes resultat och syftar till att stärka och tydliggöra resultatet. 2.1 Adaptiv relevansmodell Enligt Van Rijsbergen et al. [12] är en adaptiv relevansmodell en modell som adaptivt kan ändra vilka dokument som anses relevanta beroende på den sökfråga som ställs och vilka dokument en användare tidigare har klickat på. Syftet är att hämta ut alla relevanta dokument samtidigt som så få av icke relevanta dokument kommer med. För att kunna göra en bedömning om hur relevant ett dokument är behövs någon typ av återkoppling, vilket Lv et al. [8] beskriver som ett effektivt sätt att öka träffsäkerheten i en relevansmodell. Ett sätt skulle kunna vara en interaktiv process som börjar med att användaren ställer en sökfråga. Sökmotorn svarar då med en första resultatlista med dokument, varpå sökmotorn ber användaren att värdera dessa dokument som relevanta eller icke relevanta. Därefter omformulerar sökmotorn användarens sökfråga baserat på vilka dokument användaren anser relevanta och svarar med en ny resultatlista. Detta blir snabbt tröttsamt för användaren och är en lösning som inte används. I stället försöker sökmotorn lära sig vilka dokument som är relevanta för vilka sökfrågor med andra metoder som inte går ut på att fråga användaren. Många metoder använder sig av övervakad inlärning med en speciell behandling för sökfrågan. Hur relationen mellan sökfrågan och återkopplingen realiseras är ett svårt men viktigt problem. Det behövs en balans mellan originalsökfrågan och återkopplingen, ty om för mycket vikt läggs på återkopplingen är risken att en viss delmängd av dokumenten favoriseras, men om för lite vikt läggs på återkopplingen missas poängen med en adaptiv relevansmodell. Denna balans är vanligen kontrollerad av en variabel som är konstant för alla sökfrågor, men bör optimeras mot varje enskild sökfråga. Återkopplingen görs ofta med hjälp av de loggar som en sökmotor producerar när en användare söker och klickar på dokument, hädan efter kallat klicklogg. Med en adaptiv relevansmodell 3

KAPITEL 2. TEORI eftersträvas någon typ av sann relevans för ett dokument. Durpet et al. [3] menar på att den sanna relevansen hos ett dokument endast kan bli bestämt efter att användaren klickat på det. 2.2 Relevans Relevans inom informationsåtkomst är ett begrepp som kan delas in i olika klasser och typer. Borlund [1] menar att konceptet också är applicerbart med referenser till relevanskriterier och relevansnivå. Samma bit information har även möjligheten att bli mottaget och värderat på olika sätt av olika användare, så kallad multidimensionell relevans. Även samma användare kan mottaga och värdera samma information över tid med olika relevans, så kallad dynamisk relevans. Relevans behöver inte heller vara statiskt utan kan lika gärna vara någonting som är dynamiskt och ändras under tiden. Det är också möjligt att fokus ändras under informationsåtkomsten, vilket resulterar i att både informationsbehovet och kriterierna för relevans ändras medan informationsåtkomsten fortgår. 2.2.1 Klasser av relevans Borlund tar upp två huvudklasser för relevans, systembaserad och användarbaserad relevans. Dessa två innebär olika grader av engagemang från användarens sida. Den systembaserade relevansen ser relevans som ett statiskt och objektivt koncept som inte ändrar sig, medan användarbaserad relevans ser relevans som en subjektiv och individuell mental upplevelse. Oavsett vilken klass relevansen tillhör är den baserad på olika kriterier vid tidpunkten för beräkningen. För den systembaserade relevansen är relevanskriterierna tillämpade mellan sökfrågan och innehållet i det hämtade dokumentet. Vad gäller den användarbaserade relevansen är det mer komplicerat då det är användaren som bestämmer de parameterar för vilket ett dokument ska anses relevant eller inte. Hur mycket relevansen i sig är värd mäts med relevansnivå och tilldelningen av den görs oberoende av klasser, typer av relevans eller vilken typ av kriterier som är använda. Denna relevansnivå kan också användas till att säga om hela dokumentet är relevant eller bara delar av det. Dock är detta ovanligt inom utvärderingen av informationsåtkomst där man istället bara använder relevansen och inte dess relevansnivå som det primära kriteriet för att utvärdera hur lyckad informationsåtkomsten är. 2.3 Varför önskas en adaptiv relevansmodell? Robertson et al. [13] konstaterar att en användare kan vara mer intresserad av ett dokument med en sökterm a än ett dokument med sökterm b på ett sätt som inte alls är kopplat genom användarens ställda sökfråga och innehållet i det sökta dokumentet, även om dokumentet med söktermen b bättre passar in på den ställda 4

2.4. IMPLICIT ÅTERKOPPLING GENOM KLICKLOGGAR sökfrågan. Detta är någonting en sökmotor utan en adaptiv relevansmodell aldrig kommer att förstå. Därför kommer den fortsätta ranka dokumenten i samma ordning för den givna sökfrågan varje gång, även om rankningen i själva verket bör ha en annan ordning för att bättre tillmötesgå användaren. Enligt Joachims et al. [7] ger en statisk relevansmodell en funktion som kan liknas vid en storlek som passar alla. Det måste nödvändigtvis bli en kompromiss bland sökresultaten och således fungerar det suboptimalt. Den andra anledningen att använda en adaptiv relevansmodell, menar Joachims et al., är för att se skillnader mellan olika sammansättningar av grupper som kräver en finjustering för att nå en optimal resultatlista med hänsyn taget till gruppen. Detta arbete blir tidsödande om det ska göras för hand om än inte fullständigt opraktiskt och hopplöst. Det har också visat sig svårt att designa en effektiv rankningsfunktion för att hitta relevanta dokument enligt Radlinski et al. [10]. För att lösa problemet har maskininlärning fått en stor uppmärksamhet, dock med flaskhalsen att denna lösning kräver stor mängd träningsdata för inlärningen. För att komma tillrätta med träningsdatan används implicit återkoppling som kan hämtas från sökmotorns klicklogg. Detta blir både billigt för företaget och kräver inget extra från användaren. På detta sätt kan större kvantiteter av träningsdata samlas in till en betydligt lägre kostnad. Priset som får betalas är istället att den insamlade datan kan vara svår att tolka och är potentiellt brusig. 2.4 Implicit återkoppling genom klickloggar En klicklogg kan ses som en lista över vilka dokument en användare har klickat på vid en specifik sökfråga hos en sökmotor. Därför är en klicklogg av intresse då den innehåller information om vad användarna har sökt på och sedan vilka dokument som har fått ett klick. Således kan man säga att klickloggen innehåller information om vilka dokument användaren anser vara mer relevanta än andra vid en specifik sökfråga. Eftersom informationen inte innehåller ett exakt svar vad användaren anser om resultatlistan är det därför inte en explicit återkoppling och behöver då tolkas för att utvinna informationen. 2.4.1 Rankningens ordning influerar användaren Joachims et al. studerar hur en användare ser på resultatlistan med hjälp av ögonstyrning. De tittar på hur många sammanfattningar användaren läser innan ett klick görs samt om användaren läser resultaten uppifrån och ned. Slutsatsen Joachims et al. drar är att användaren gör informativa beslut baserat på vad de läst i sammanfattningarna och att deras klick motsvarar ett relevant omdöme. De visar också att ett klick är influerat på minst två sätt. Det första, som de kallar förtroendepåverkning (trust bias), leder till att användaren klickar på dokument högre upp i resultatlistan, även om dess sammanfattning inte är lika relevant som andra sammanfattningar som användaren också läst för den träffen. Detta påvisar ett förtroende för sökmotorn och att användaren litar på att den 5

KAPITEL 2. TEORI levererar relevanta dokument högt uppe i resultatlistan. För att komma tillrätta med förtroendepåverkning behövs tolkningen göras relativt dokumentets plats i rankningen. Enligt de experiment Joachims et al. utför drar de slutsatsen att en användare har en viss nivå av förtroende för en sökmotor och väljer oftare att klicka på ett högre rankat dokument även om ett lägre dokuments sammanfattning är mer relevant. Den andra påverkan kallar de för kvalitetpåverkning (quality bias). Denna visar att ett klick inte endast är influerat av relevansen för dokumentet utan också av den generella kvaliteten hos de andra sammanfattningarna i resultatlistan. Joachims et al. drar slutsatsen att om kvaliteten hos sammanfattningarna för resultatlistan går ned, klickar en användare i genomsnitt på mindre relevanta sammanfattningar. Detta anser Joachims et al. visar att ett klick bör tolkas relativt ordningen och relativt de andra sammanfattningarna i resultatlistan, samt att det är problematiskt att tolka ett klick som en bekräftelse på att ett dokument är viktigt. Enligt Joachims et al. behöver en exakt tolkning av ett klick ta hänsyn till användarens tillit för kvaliteten hos sökmotorn samt själva rankningsfunktionen som sökmotorn använder. De hittar också en intressant svängning omkring dokument nummer 6 till 7 i resultatlistan. Från och med dessa och nedåt klickar användaren betydligt mindre på dokumenten än de ovan, samt att sammanfattningarna mellan rank 6 till 10 får en jämnare distribuering av uppmärksamhet till skillnad från de högre rankade. Detta förklaras genom att det var de första 5 till 6 dokumenten i resultatlistan som normalt visas på en skärm, utan att behöva scrolla. När en användare väl behöver scrolla får betydelsen av rank en lägre influens för uppmärksamheten. Även en skarp nedgång i antalet klick och lästa sammanfattningar noteras efter rank 10, då det är 10 resultat som visas på en sida. Detta resultat om hur användaren läser resultatlistan tyder på att en genomsnittlig användare läser den uppifrån och ned, som den linjära ordningen en resultatlista föreslår att den ska läsas. Utöver detta indikerar deras resultat att det första och det andra resultatet läser användaren direkt och det är ett stort hopp innan sammanfattningen med rank tre blir läst. Även i dessa resultat återfinner Joachims et al. att sidbrytningen spelar in, då det tar längre tid innan resultaten som inte får plats på första sidan blir lästa. Det verkar som om en användare läser de resultat som hamnar på första sidan ganska noggrant innan denne fortsätter på nästa sida. Joachims et al. tittar också på hur många sammanfattningar som en användare läser över och under det klickade dokumentet. Det är betydligt fler sammanfattningar som läses som ligger högre upp i resultatlistan än det klickade dokumentet än vad som ligger under, även om det inte nödvändigtvis är att samtliga ovan har blivit lästa. Joachims et al. säger också att det verkar som om sammanfattningar som ligger nära över det klickade dokumentet har större sannolikhet att bli lästa än sammanfattningar högre upp. Ett annat mönster som uppkommer är att sammanfattningar som kommer direkt efter det klickade dokumentet har blivit lästa ungefär hälften av gångerna. Vidare testar Joachims et al. hur en användare reagerar på en försämrad relevansmodell. Där upptäcker de att användaren tittar mer frekvent på lägre rankade dokument och att betydligt fler sammanfattningar blir lästa än i det 6

2.4. IMPLICIT ÅTERKOPPLING GENOM KLICKLOGGAR normala fallet. Det visar sig också att användaren med mindre sannolikhet klickar på det första dokumentet och med högre sannolikhet klickar på ett lägre rankat dokument. Detta visar att beteendet hos användaren beror på kvaliteten av rankningen i resultatlistan och att individuella klickningar är influerade av relevansen hos sammanfattningen. Det är därför möjligt, enligt Joachims et al., att ett observerat uppförande hos användaren kan användas till att fastställa den generella kvaliteten för rankningen samt relevansen för enskilda dokument. 2.4.2 Kaskadmodellen Craswell et al. [2] säger som Joachims et al. att ett klick på ett dokument inte endast beror på att dokumentet är relevant utan att det också har en viss position i resultatlistan. Craswell et al. presenterar en modell som baseras på att en användare gör en linjär läsning genom resultatlistan och att sammanfattningar längre ned än ett klickat dokument inte blir lästa. Modellen kallar de för kaskadmodellen (cascade model) och antagandet från Craswell et al. är således att en användare börjar läsa från den högst rankade sammanfattningen och läser uppifrån och ned. För varje sammanfattning gör användaren ett val att klicka på dokumentet eller inte, innan vederbörande går vidare till nästa. I den enklaste modellen görs antagandet att en användare som klickat på ett dokument aldrig kommer tillbaka och att användaren alltid fortsätter till nästan dokument när vederbörande valt att inte klicka på föregående dokument. Då blir sannolikheten, c di, att klicka på dokument i i resultatlistan: i 1 c di = r d (1 r docinrank:j ) (2.1) j=1 där r d är sannolikheten att dokumentet d blir klickat och r docinrank:j är sannolikheten att dokumentet på plats j blir klickat. För att observera ett klick behöver då användaren välja att klicka på just det dokumentet samt att inte klicka på alla ovanstående dokument. Craswell et al. drar slutsatsen att kaskadmodellen stämmer bra högt upp i resultatlistan. Vid resultat 4 och nedåt är den sämre än att anta att det inte finns någon positionspåverkan. De tolkar detta som att positionspåverkan är lägre längre ned i resultatlistan, samt att klick är mer sällsynt där och således är mer utspridda. Craswell et al. drar också slutsatsen att längre ned i resultatlistan går det att anta att det inte finns någon positionspåverkan. Således kan man inhämta klickdata från dessa lägre rankade dokument utan positionspåverkan, men för högre rankade dokument är inverkan från positionen stor. Slutsatsen av dessa två resultat är att användare läser resultatlistan på två sätt. Det första är enligt kaskadmodellen uppifrån och ned, med ett klick på det första dokumentet som verkar relevant. Det andra sättet är att läsa samtliga sammanfattningar och sedan ta beslut om vilket som är mest relevant. Problemet med kaskadmodellen, som Craswell et al. ser det, är att den innehåller ett antagande om att användaren alltid fortsätter att läsa i resultatlistan så länge 7

KAPITEL 2. TEORI denne inte hittar någonting att klicka på. Detta är någonting som Craswell et al. påvisat inte är sant utan vissa användare lämnar sökfrågan och resultatlistan utan att läsa samtliga resultat och utan att klicka på ett dokument. Data om användaren kommer även förloras när det dyker upp ett synnerligen bra dokument eller om resultatlistan från sökfrågan är dålig. Ytterliggare en svaghet i kaskadmodellen är att när ett klick registrerats, är användaren borta. Det finns inget som tar hänsyn till att en användare återvänder till resultatlistan efter ett klick. Lösningen på det problemet är, enligt Craswell et al., att lägga till en sannolikhet för att användaren återkommer till resultatlistan. 2.5 Återkoppling baserat på vad användaren gjorde efter att ha tittat på dokumentet Durpet et al. [3] tar fram en modell för att tolka klickloggar beroende på vad användaren gör efter att denne tittat på dokumentet. Denna modell ger en verklig relevans till skillnad från tidigare beskrivna modeller som ger upplevd relevans. De kommer fram till att modellen är speciellt bra för icke navigationssökfrågor, sökfrågor där användaren ofta överger resultatet utan klick och många sökfrågor för samma session. Just dessa typer av sökfrågor är viktiga då de anses vara de som är svårast att lösa. Med en session menar Durpet et al. de handlingar en användare tar till för att tillfredsställa informationsbehovet. De kan innehålla olika sökfrågor som resulterar i olika resultatlistor och även klick på flera skilda dokument i de skilda resultatlistorna. Denna modell kräver således att en session för en användare går att identifiera. Det skulle till exempel kunna göras med en kaka (cookie) som tillhör användaren eller tidsstämplingar för sökfrågor och klick. Dock finns det ingen specifik information om att två efterföljande sökfrågor från en användare tillhör samma session, vilket försvårar det hela. En viktig del i att samla in data från klickloggar är att det inte enbart är de aktiva användarna som data samlas in från, som det till exempel är i ett socialt nätverk, utan att data även samlas in från de icke aktiva användarna. Med klickloggar kommer man åt alla användare, både de aktiva och de icke aktiva. Därför säger Durpet et al. att informationen inte är vinklad mot de socialt aktiva användarna. Modellen Durpet et al. föreslår antar att användaren söker i resultatlistan av den första sökfrågan och dess omformuleringar tills tillräckligt mycket information har samlats in för att tillfredsställa användarens behov. Detta oberoende av hur långt ned i resultatlistan de relevanta dokumenten finns och hur svårt det är att komma fram till bra omformuleringar. Alla sessioner som avslutas med ett klick anses som lyckade. Det finns ingen notation för att en användare överger en session i denna modell vilket är en brist. Dock är en fördel med denna modell att antagandet att användaren läser resultatlistan sekvensiellt inte behöver göras, då det är klicken som behöver vara i kronologisk ordning. Modellen tar inte heller hänsyn till i vilken ordning dokumenten varit placerade i resultatlistan. 8

2.6. SÖKFRÅGEKEDJOR Durpet et al. menar att eftersom den sanna relevansen endast kan bestämmas efter att användaren tittat på dokumentet är relevansen oberoende var i resultatlistan dokumentet ligger. Denna modell leder till en intressant konsekvens, nämligen att relevansen är okorrelerad med dokumentets klickfrekvens. Istället är antalet klick på ett dokument relaterat till säkerheten för relevansskattningen och inte dokumentets relevans i sig. Med den nya modellen observerar Durpet et al. en signifikant förbättring för en av de ledande kommersiella sökmotorerna. Den var som bäst när det var ett lågt antal klick per session, under 0.3, och för fallet med sökfrågor med ett högt antal klick på sessionen, över 1.5. Detta tyder på att modellen är bra för typiska sessioner med informationssökfrågor och sessioner där sökfrågorna ofta överges. 2.6 Sökfrågekedjor Sökfrågekedjor (query chains) är ett annat sätt att extrahera implicit information från klickloggar och liknar den modell Durpet et al. tagit fram. Denna modell är framtagen av Radlinski et al. då de observerade att en användare ofta ställde flera sökfrågor efter varandra med liknande informationsbehov. Vad de vill åstadkomma med dessa sökfrågekedjor är att kunna ge möjlighet till en ny tolkning av informationen i klickloggarna som tar tillvara användarens intelligens att omformulera en sökfråga. Det som skiljer modellerna åt är att Radlinski et al. endast tittar på sekvensen av sökfrågorna, medan Durpet et al. tittar på användarens beteende efter att denne klickat på dokumentet. Radlinski et al. visar att om sökfrågor tolkas oberoende av varandra ignoreras viktig information som är gömd i sekvensen av sökfrågorna och klicken som användaren gör. Ty när sökfrågor tolkas oberoende av varandra ses endast ett par av klicken högst upp i listan som information, då användaren sällan tittar längre ned i listan. Det sökfrågekedjor fångar är hela sessionen användaren har med omformuleringar och letande längre ned i resultatlistan. Detta medför att med hjälp av sökfrågekedjor tas sekvensen tillvara och en bättre tolkning om vad användaren anser relevant kan göras. Någonting som måste göras för att kunna använda sökfrågekedjor är att kunna urskilja dessa ur en klicklogg. Radlinski et al. gör detta genom att för hand identifiera några klickloggar och därefter träna flera supportvektormaskiner (Support Vector Machine) med olika parametrar och välja den som presterar bäst. Denna väljer Radlinski et al. att fullständigt lita på som klassificerare. Det Radlinski et al. kommer fram till är att deras metod med sökfrågekedjor kan lära sig högst flexibla modifikationer gentemot sökresultatet som visades från början. Vad Radlinski et al. också ser är att för många populära sökfrågor verkar det endast vara ett fåtal dokument som är relevanta för användaren. Av den anledningen är det inte förvånande att det är möjligt att få signifikanta förbättringar genom att endast lära sig associationen mellan sökterm och dokument. Radlinski et al. tror också att det kan finnas ytterligare information genom att titta på position i 9

KAPITEL 2. TEORI sökfrågekedjan för sökfrågan samt att den sista sökfrågan kan vara mer informativ än de tidigare. 2.7 Problem med begränsad mängd träningsdata Träningsdata behöver samlas in för att lära ett program sök- och klickbeteenden. Det är med den träningsdatan som algoritmen ska lära sig vilka dokument som är relevanta för specifika sökfrågor. Detta är en abstrakt koppling som inte går att läsa ur dokumentets innehåll eller sökfrågan själv och sökrymden för dessa kopplingar är stor. Problemet med att ha en begränsad mängd träningsdata uppstår när mängden träningsdata är för liten i jämförelse mot sökrymden. Ty algoritmens uppgift är att lära sig generalisera utifrån den data den blivit tränat med. Får den endast se ett fåtal fall i sökrymden är det svårt att välja rätt hypotes vid något av de många andra fall den inte blivit tränad med. Dock betyder det inte att med mindre träningsdata och sämre generalisering att resultatet av algoritmen ska förkastas, ty den säger ändå någonting av vad som kan vara relevant. Det ska också sägas att i nästan alla fall är det brist på träningsdata och varför man i slutändan har en begränsad mängd beror oftast på kostnaden eller svårigheten att samla in den. I det här fallet beror det på att sökmotorn nyligen hade tagits i bruk vid genomförandet av detta examensarbete. I de fall man lider av en begränsad mängd träningsdata är det viktigt att hitta balansen mellan värderingen av en sökfråga och ett klick. För om relevansmodellen blir övertränad gör den mer skada än om det hade funnits mycket träningsdata enligt Lv et al. 2.7.1 Överträning Överträning är när algoritmen slutar beskriva det underliggande sambandet och övergår till att lära sig bruset i träningsdatan. Detta ger en modell med sämre träffsäkerhet då den lärt sig bruset och inte det generella fallet. Anledningen till att överträning sker kan vara att modellen är för komplex och har för många parametrar relativt antalet observationer. 2.8 Typer av sökfrågor Beroende på vilken typ av information en användare söker kan sökfrågan som ställs klassificeras i tre breda grupper, enligt Manning et al. [9]. Det är inte nödvändigtvis som så att en sökfråga hamnar i en grupp utan den kan mycket väl hamna i flera. Det är inte heller nödvändigt att en sökfråga måste hamna i en av grupperna utan kan lika väl hamna utanför. De tre grupperna är informationssökfrågor, navigationssökfrågor och transaktionssökfrågor. 10

2.9. TF-IDF Informationssökfrågor Här söker användaren efter information på ett brett område och svaret finns typiskt inte i ett dokument utan användaren samlar ihop information från flera dokument för att fylla informationsbehovet. Navigationssökfrågor Här söker användaren efter ett specifikt dokument och förväntar sig att det ska hamna högst upp i resultatlistan. Att det finns andra dokument som eventuellt passar bättre in på sökfrågan är inte av intresse. Transaktionssökfrågor Här söker användaren efter information inför en kommande transaktion, som till exempel att köpa en produkt. Dessa grupper av sökfrågor ställer olika krav på sökmotorn för att leverera vilket och vilken typ av dokument som skall presenteras i resultatlistan. Som tidigare nämts är icke navigationssökfrågor, sökfrågor där användaren ofta överger resultatet utan klick, och många sökfrågor för samma session, de svåraste sökfrågorna att lösa. 2.9 Tf-idf Apache Solr använder sig av Apache Lucene för att sätta en poäng på hur relevant ett dokument är. Apache Lucene i sin tur använder sig av tf-idf för att beräkna poängen för hur relevant ett dokument är givet en sökfråga [4, 5, 6]. Tf-idf står för Term Frequency - Inverse Document Frequency och beräknar en poäng för varje term i ett dokument. Poängen beräknas genom frekvensen hos en term i ett specifikt dokument, i förhållande till antalet dokument termen förekommer i. En hög poäng från tf-idf för en specifik sökterm, indikerar en stark relation mellan termen och dokumentet termen förekommer i och alltså hur relevant den specifika termen är för dokumentet. Således om termen förekommer i en sökfråga bör ett dokument där termen är relevant för dokumentet, även vara relevant för användaren. 2.9.1 Tf-idf hos Apache Solr Den fullständiga poängberäkningen som Apache Lucene använder ser ut på följande sätt, där q är en sökfråga, d ett dokument och t en term: score(q, d) = coord(q, d) querynorm(q) ( ) tf(t d) idf(t) 2 t.getboost() norm(t, d) t q (2.2) Nedan beskrivs de olika faktorerna för ekvation 2.2: coord(q, d) Detta är en poängfaktor som baseras på hur många av söktermerna från sökfrågan q som återfinns i dokumentet d. Där ett högre värde erhålls om fler av termerna från sökfrågan återfinns i dokumentet. queryn orm(q) Detta är en normaliseringsfaktor som används för att kunna jämföra poängen mellan olika sökfrågor och påverkar inte rankningen av dokumentet. 11

KAPITEL 2. TEORI tf(t d) Detta är tf-termen i tf-idf och den talar om hur många gånger termen t förekommer i dokumentet d. Ett dokument med många förekomster av termen t får ett högre värde och ett dokument med få förekomster av termen t får ett lägre värde. Uträkningen av Apache Lucene är tf(t d) = frekvensen av t i d. idf(t) Detta är idf-termen i tf-idf och är det omvända förhållandet för antalet dokument som termen t förekommer i. Denna faktor gör att en ovanligt förekommande term får ett högre värde än en vanligt förekommande term. Anledningen till att ta kvadraten för idf(t) i ekvation 2.2 är att idf(t) förekommer för termen t i både sökfrågan och dokumentet, enligt dokumentationen för Apache Lucene. Uträkningen som görs av Apache Lucene är idf(t) = 1 + log( t förekommer i. antalet dokument docfreq+1 ), där docfreq är antalet dokument termen t.getboost() Detta är en faktor som är till för att öka relevansen hos en term t i sökfrågan vid söktillfället. Till exempel om användaren anser att en term är mer relevant än de andra i sökfrågan. norm(t, d) Detta är en produkt som består av flera faktorer. Den första är en manuell faktor, som kan sättas för att öka relevansen hos dokumentet d vid indexeringstillfället. Den andra är också en manuell faktor, men är till för att öka relevansen för dokumentets innehåll vid indexeringstillfället. Den tredje och sista är en längdnormalisering för att ge effekten av att ett kortare innehåll i ett dokument bidrar mer till relevansen än vad längre innehåll gör. Resultatet score(q, d) blir en poäng som säger hur bra dokumentet d matchar sökfrågan q. Dokumenten sorteras utifrån denna poäng med högst poäng först, ty det är detta dokument som har matchat sökfrågan bäst och bör således vara det mest relevanta för användaren. 2.9.2 Egenskaper Termer som är vanligt förekommande i samtliga indexerade dokument, som till exempel pronomen och prepositioner, har en hög frekvens inuti ett dokument samt förekommer i nästan alla dokument. Dessa termer håller ingen relevant information och tenderar att få ett lågt värde från tf-idf och blir därför försumbara i en sökning. Omvänt gäller om en term är vanligt förekommande i ett eller några specifika dokument men ovanligt i övriga dokument. Då får det ett högre värde från tf-idf vilket ger en hög sannolikhet att när användaren söker på den termen, letar denne efter något av dessa dokument. Enligt Ramos [11] är tf-idf en enkel och effektiv algoritm för att säga om en term är relevant i ett dokument eller inte, vilket gör det till en bra grund att bygga mer komplicerade algoritmer ovanpå. Nackdelen är att tf-idf inte på något sätt tar hänsyn till relationer mellan termer, som till exempel synonymer eller plural. I 12

2.10. VIKTNING AV ENSKILDA TERMER stället beräknas varje term för sig och får ett aningen lägre värde än om de hade beräknats tillsammans. Enligt Ramos kan detta vara ett eskalerande problem för större dokumentsamlingar. 2.10 Viktning av enskilda termer Robertson et al. [13] undersöker en statistisk teknik för en viktfunktion av enskilda termer. De syftar till att hitta ett teoretiskt ramverk vilket ska ge en vägledning till hur relevansinformation ska användas i sökning, samt att testa detta ramverk experimentellt. Målet med teorin är att härleda en optimal rankning för dokument beroende på vilka av söktermerna som finns i ett dokument, men också vilka av söktermerna som inte finns i ett dokument. Givet antagandet med ett index där antingen en term finns eller inte finns i ett dokument och en mängd relevanskriterier för varje sökfråga, där dessa kriterier är specifika för den användare som ställt sökfrågan, tar Robertson et al. fram tabell 2.1 för osäkerheten hos ett dokument i indexet för en sökterm t och en sökfråga q. Notationen i tabell 2.1 är följande: N är antalet dokument i indexet, R är antalet relevanta dokument för sökfrågan q, n är antalet dokument som innehåller termen t och r är antalet relevanta dokument som innehåller termen t. Relevanta dokument Icke relevanta dokument Summa Dokument som r n r n innehåller termen t Dokument som R r N n R + r N n inte innehåller termen t Summa R N R N Tabell 2.1. Osäkerhetstabell av dokumentdistributionen för söktermen t enligt Robertson et al. [13]. Viktning av en term måste i någon mån reflekteras i den relativa distributionen av termer med hänseende till andra dokument och andra termer, säger Robertson et al. och härleder fyra ekvationer från tabell 2.1. w 1 = log ( r R ) ( n N ) (2.3) Den första ekvationen, ekvation 2.3, representerar förhållandet mellan andelen av relevanta dokument som innehåller söktermen t och andelen av totala antalet dokument som t förekommer i. w 2 = log ( r R ) ( n r N R ) (2.4) 13

KAPITEL 2. TEORI Den andra ekvationen, ekvation 2.4, representerar förhållandet mellan andelen av relevanta dokument innehållande söktermen t och andelen av icke relevanta dokument. w 3 = log ( r R r ) ( n N n ) (2.5) Ekvation 2.5 representerar förhållandet mellan relevansoddset för t och samlingsoddset för t. Relevansoddset för t är förhållandet mellan antalet relevanta dokument innehållande söktermen t och antalet relevanta dokument som inte innehåller t. Samlingsoddset för t är förhållandet mellan totala antalet dokument innehållande t och totala antalet dokument som inte innehåller t. w 4 = log ( r R r ) ( n r N n R+r ) (2.6) Den sista ekvationen Robertson et al. tagit fram är ekvation 2.6. Den representerar förhållandet mellan relevansoddsen för t och t:s icke relevansodds, det vill säga proportionen av icke relevanta dokument och dokument som inte innehåller t samt inte heller är relevanta. Enligt traditionen har tilldelningen av vikter till söktermer i ett index, varit ett separat problem från formuleringen av en matchningskoefficient som används till att ranka dokument utifrån en sökfråga. Dock är den teori Robertson et al. specificerar en explicit dokumentrankningsfunktion och för att kunna härleda en termviktningsfunktion måste man anta att den matchande koefficienten består av summan av vikterna för de matchande termerna. En annan kombination av matchningskoefficienter och termviktningsfunktioner skulle kunna vara en icke logaritmisk form av ekvationerna 2.3-2.6 där man i stället för en summa använder sig av produkten mellan matchningskoefficienten och termviktningsfunktionen. Med detta kan det ses varför logaritmer används i ekvationerna 2.3-2.6, det beror helt enkelt på kombinationen mellan matchningskoefficient och termviktningsfunktion. 2.10.1 Relationer mellan ekvationerna De fyra ovan nämnda ekvationerna härleds alla från en formell probabilistisk teori för viktning av relevans. Enligt Robertson et al. är ekvation 2.3 och 2.4 relaterade för att de båda använder proportioner om t är relevant eller inte. Ekvation 2.5 och 2.6 har relationen att båda använder sig av odds. Vidare har ekvation 2.3 och 2.5 relationen att båda jämför den relevanta dokumentdistributionen mot totala samlingen av dokument. Slutligen är ekvation 2.4 och 2.6 relaterade för att båda jämför distributionen av relevanta och icke relevanta dokument med termen t. 14

2.10. VIKTNING AV ENSKILDA TERMER 2.10.2 Antaganden Målet med teorin Robertson et al. tar fram är att skapa en optimal rankning av dokument ur ett index, baserat på om en term t finns i ett dokument eller inte. För att göra det gör de fyra antaganden, två oberoendeantaganden och två ordningsantaganden, som följer nedan: Oberoendeantagande I1 säger att distributionen av termer i relevanta dokument är oberoende och att deras distribution i alla dokument är oberoende. Oberoendeantagande I2 säger att distributionen av termer i relevanta dokument är oberoende och deras distribution i icke relevanta dokument är oberoende. Ordningsantagande O1 säger att sannolikheten hos relevansen endast är baserad på närvaron av söktermer i ett dokument. Ordningsantagande O2 säger att sannolikheten hos relevansen är baserad på både närvaron och frånvaron av söktermer i ett dokument. Oberoendeantagandet ger möjligheten att dra slutsatser om dokument innehållande en given sekvens av termer från informationen om varje enskild term, oberoende de andra. I verkligheten är det osannolikt att termer i ett index är oberoende varandra, men i brist på bättre information skapar det en godtagbar startpunkt enligt Robertson et al. De fyra tidigare nämnda ekvationerna är byggda på en kombination av dessa antaganden som kan ses i tabell 2.2. I den tabellen kan det ses att antagandet I1 ligger till grund för ekvation 2.3 och 2.5 medan antagandet I2 ligger till grund för ekvation 2.4 och 2.6. I1 I2 O1 2.3 2.4 O2 2.5 2.6 Tabell 2.2. De antaganden ekvationerna 2.3-2.6 bygger på enligt Robertson et al. Robertson et al. argumenterar för att antagandena I2 och O2 stämmer bättre överens med verkligheten än I1 respektive O1, vilket talar för att ekvation 2.6 bör vara den som är bäst bland de fyra viktfunktionerna. 2.10.3 Slutsatser av experimenten Den första slutsatsen Robertson et al. drar är att argumentationen om att ordningsantagandet O2 är korrekt och att O1 är inkorrekt bekräftas av deras experiment då ekvation 2.5 och 2.6 hela tiden presterade bättre än ekvation 2.3 och 2.4. 15

KAPITEL 2. TEORI Den andra slutsatsen är att oavsett vilket oberoendeantagande som antas verkar det inte spela någon roll då det inte hade någon påverkan på experimenten Robertson et al. utförde. Dock lägger de till att det kan spela roll med större och/eller mer heterogena dokumentsamlingar. De betonar också att deras experiment indikerar att även en dålig skattningsfunktion kan ge bättre resultat än en enkel sökning mot termer. Vidare anser Robertson et al. att vilket som helst oberoendeantagande är tvivelaktigt då de inte håller generellt. Alternativet skulle vara att titta på mönster hos termer som förekommer i samma sökfråga, men för att få bra resultat skulle det krävas mycket data för att bestämma egenskaperna huruvida parametrarna ska vara definierade för att säga att flera termer hör ihop. Robertson et al. har dock problem att få ut tillräckligt med information från de enskilda termerna som antogs vara oberoende och deras resultat indikerar att oberoendeantaganden inte är speciellt kritiskt utan att de olika antagandena presterar lika bra. 16

Kapitel 3 Metod Detta kapitel beskriver först den bakomliggande teorin för den metod jag implementerar. Därefter följer hur implementationsstegen ser ut och hur integrationen med Apache Solr görs. Slutligen presenteras hur resultaten kommer att beräknas. 3.1 Betingad sannolikhetshierarki Zhou et al. [15] introducerar en metod för att förutsäga vilket dokument en användare kommer att klicka på baserat på tidigare sökfrågor och klickade dokument. De utvecklar två probabilistiska modeller som skiljer sig i tolkningen av relationen mellan sökfråga och dokument. Den första modellen kallas oberoendemodellen och den andra kallas fullmodellen. Zhou et al. använder en teknik kallad betingad sannolikhetshierarki (conditional probability hierarchy) för att kunna kombinera oberoendemodellen och fullmodellen med varandra och därigenom kunna utnyttja fördelarna i de olika modellerna för att uppnå bästa resultat. 3.1.1 Formalisering av problemet Problemet som ska lösas ligger i att förutsäga P (d q, d q, Γ), vilket är sannolikheten av att en användare klickar på dokumentet d för sökfrågan q när denne blir presenterad med resultatlistan d q, givet observationerna av klick för sökfråga-dokumentparen, Γ. Posteriorisannolikheten att observera varje klick på ett specifikt dokument, d, är P (d q, d q ), där d q representerar dokumentlistan som returneras vid sökfrågan q. Förutsägelsen av ett användarklick för sökfrågan q blir således ˆd = arg max d P (d q, d q, Γ), där d d q och Γ är observationen av klick för sökfråga-dokumentparen. 17

KAPITEL 3. METOD 3.1.2 Definitionen av att lära från klickloggar Zhou et al. definierar systemets uppgift att lära sig förutsäga klick med hjälp av loggdata från en sökmotor med den statistiska relationen mellan sökfråga och dokument. Det primära antagandet är att ett klick från en användare indikerar användarens återkoppling av kvaliteten mellan sökfrågan och dokumentet. Zhou et al. beskriver att om vi antar att vokabuläret av sökfrågor, i form av enskilda söktermer, är stabilt över en tidsperiod är det möjligt att estimera sannolikheten av framtida klick baserade på tidigare observationer. Detta är givet ett idealt fall där vi är kapabla att samla in tillräckligt många instanser för varje kombination av söktermer tillsammans med deras sökfrågor och de klickade dokumenten. Genomförbarheten av det tillvägagångssättet förlitar sig på antagandet att träningsdatan uttömmer alla möjliga sökfrågor. Eftersom antalet olika sökfrågor i sökning utökas med ny användarkunskap och slumpmässighet i formulerandet av sökfrågor, blir dock spårning av alla möjliga sökfrågor både opraktiskt och oberäkneligt. Den linjära tillväxten av distinkta sökfrågor över tid indikerar att det blir svårt att matcha även en minsta del av de nya sökfrågorna exakt med gamla sökfrågor. Resultatet av det är att förutsägelser inte kan göras för nya frågor och leder till en låg förutsägelsebarhet. Att lära relationen mellan fullständiga sökfrågor och dokument är därför ett högst utmanande problem. En alternativ lösning är att bryta ned sökfrågan till enskilda termer. En observation av en sökfråga och tillhörande klickade dokument transformeras till flera oberoende observationer av termer och dokument, term-dokumentpar istället för sökfråga-dokumentpar. Denna lösning kan förutsäga okända sökfrågor så länge de innehåller ett tidigare känt ord. Dock förkastas ordföljden med denna metod och därtill all den information om närliggande och tillhörande ord för sökfrågan och dokumentet. För att både kunna förutse nya sökfrågor med ett oberoendeantangande och för att inte kasta bort ordföljden tas båda egenskaperna tillvara i varsin relevansmodell och kombineras med den betingade sannolikhetshierarkin. 3.1.3 Oberoendemodellen För ett sökfråga-dokumentpar, d, q, föreslår Zhou et al. att först antaga att varje ord i q är oberoende av varandra. Formellt definieras den tolkningen i oberoendemodellen för en instans av d, q som en observation av d och givet d observera orden w 1,..., w k oberoende av varandra. Den sannolikhet som sedan ska beräknas är P (d q) = P (d w 1,..., w k ) i fallet där en sökfråga består av k ord då q = [w 1,..., w k ] och det klickade dokumentet d. Nedan följer uträkningrna som leder fram till hur P (d q) beräknas för oberoendemodellen: P (d w 1,..., w k ) = P (d, w 1,..., w k ) P (w 1,..., w k ) (3.1) 18