retrieval en ontsluiting taaltechnologische aanpak voor zoekproblemen eric sieverts Opleiding Media, Informatie & Communicatie Hogeschool van Amsterdam Universiteitsbibliotheek Utrecht sector Innovatie & Ontwikkeling
waarin uiten zoekstrategische problemen zich? in variabele mate in uiteenlopende soorten systemen: catalogi, bibliografische databases, full-text bestanden, enterprise search, het web, …. onvoldoende recall met zoekvraag mis je te veel relevante informatie onvoldoende precisie zoekvraag levert (te) veel niet-relevante informatie
oorzaken voor lage recall (de recall-killers) inherent aan free-text zoeken in documenten: variatie in spelling en woordvorm van gebruikte woorden in tekst staan synoniemen, impliciete aanduidingen, woorden in andere taal, … variëteit aan mogelijke (specifiekere) woorden voor generieke begrippen term-armoede van documenten (catalogus) schuld van de zoeker: verkeerde zoekterm (ongebruikelijk, spelling) te weinig varianten met OR gecombineerd te veel zoek-elementen met AND gecombineerd
oorzaken voor lage precisie (de precisie-killers) inherent aan free-text zoeken in documenten : in tekst is geen of onbedoeld verband tussen met AND gecombineerde termen zoekwoorden komen in tekst in andere betekenis voor (homografen, acroniemen, andere taal) term-rijkdom van full-text documenten (laag term-gewicht) schuld van de zoeker : verkeerde zoekterm (te algemeen, betekenis) te weinig zoek-elementen met AND gecombineerd
klassieke oplossing : gebruik van: classificatie / taxonomie thesaurus waarom kan dit een oplossing bieden? formaliseert betekenis (homograaf-probleem) kan verwijzen naar gebruikelijke(r) term (vervangend zoeken) kan term-rijkdom uniformeren (dus gelijk term-gewicht; o.a. door diepte-indexering) legt inhoudelijke relaties tussen onderwerpen/termen (generiek zoeken) kan verband leggen tussen facetten van onderwerp (precoordinatie)
nadelen van klassieke oplossing gebrek aan flexibiliteit (schrik van de vak-specialist) gebruik van kunstmatige informatietaal (schrik van de ergonoom) duur omdat mensen termen moeten toekennen (schrik van de manager)
(taal)technologische alternatieven best-match zoeken met relevantie-ordening truncatie, wordstemming, fuzzy search semantische kennis toevoegen suggereren van betere zoektermen suggereren van aanvullende zoektermen zoekresultaat clusteren in "domeinen/contexten” terugkoppeling van zoekersoordeel
relevance ranking factoren 1. meer van de gevraagde termen in een document 2. gevraagde termen op belangrijke plek in document (titel, koppen, eerste paar regels, ….) 3. gevraagde termen komen in document herhaald voor 4. gevraagde termen staan in document dicht bij elkaar 5. termen in document staan in zelfde volgorde als in vraag 6. zeldzame termen krijgen zwaarder gewicht dan algemene 7. hoeveel hyperlinks naar document verwijzen hoe vaak een document / site wordt "bezocht" of site/pagina/bericht tot je sociale netwerk hoort … werkt goed op het web, maar ook op een intranet?
relevance ranking factoren 1. meer termen 2. termen in titel/kop/begin 3. termen herhaald 4. termen dicht bij elkaar 5. termen in volgorde 6. zeldzame termen zwaarder 7. hyperlinks naar document bezoek aan document in sociale netwerk meer concepten ge-AND hoger term-gewicht juiste verband belang specifieke term (kwaliteit) [alleen als er links zijn] (kwaliteit) (context) [alleen op open web]
relevance ranking factoren 1. meer van de gevraagde termen in een document gevraagde termen op belangrijke plek in document (titel, koppen, eerste paar regels, …) 3. gevraagde termen komen in document herhaald voor 4. gevraagde termen staan in document dicht bij elkaar 5. termen in document staan in zelfde volgorde als in vraag 6. zeldzame termen krijgen zwaarder gewicht dan algemene 7. hoeveel hyperlinks naar document verwijzen hoe vaak een document / site wordt "bezocht" of site/pagina/bericht tot je sociale netwerk hoort allemaal gericht op hogere relevantie voor "de eerste tien", dus op precisie
truncatie / word-stemming / fuzzy trunceren computer computeronderwijs stemming computer computing, computation, computed, computers communism community, communication ?? sieverts sievert ?? fuzzy duivendak duijvendak, duyvendak serajevo sarajevo, serajewo medvedev medvediev, medwedew, … kok kop, kak, ... ??
truncatie / stemming / fuzzy trunceren computer computeronderwijs stemming computer computing, computation, computed, computers communism community, communication ?? sieverts sievert ?? fuzzy duivendak duijvendak, duyvendak serajevo sarajevo, serajewo medvedev medvediev, medwedew, … kok kop, kak, ... ?? compenseert variatie in woordvorm & spelling betere recall maar pas op voor ongewenste effecten !!
semantische kennis in semantisch netwerk worden betekenissen van woorden vastgelegd (hele woordenboek) & worden betekenisrelaties gelegd tussen inhoudelijk verwante woorden (in één of meer talen) door omgeving van woord in het netwerk kan betekenis worden onderscheiden (in document en in query) omgeving van woord in het netwerk kan termen leveren om query mee te expanderen (woorden binnen bepaalde "semantische afstand" van zoekwoord) voorbeeld: retrievalware van convera twenty-one van irion
visualisatie van “wordnet”
bepaalde gewenste betekenissen van zoekterm geselecteerd
semantische kennis verbeteren van precisie verbeteren van recall in semantisch netwerk worden betekenissen van woorden vastgelegd (hele woordenboek) & worden betekenisrelaties gelegd tussen inhoudelijk verwante woorden (in één of meer talen) door omgeving van woord in het netwerk kan betekenis worden onderscheiden (in document en in query) omgeving van woord in het netwerk kan termen leveren om query mee te expanderen (woorden binnen bepaalde "semantische afstand" van zoekwoord) verbeteren van precisie verbeteren van recall maar semantisch netwerk voor specialistisch domein moet je zelf nog bouwen/aanvullen
termen verbeteren computer suggereert iets afwijkende term door fuzzy-search in woordenboek door fuzzy search in eigen index >> term die (veel) meer oplevert door generieke kennis van vaak gemaakte tikfouten bijv.: Google (did you mean …)
termen verbeteren verbetert recall computer suggereert iets afwijkende term door fuzzy-search in woordenboek door fuzzy search in eigen index naar term die (veel) meer oplevert door generieke kennis van vaak gemaakte tikfouten bijv.: Google (did you mean …) verbetert recall
aanvullende termen extraheren computer haalt karakteristieke (andere) woorden/begrippen uit eerste N documenten van zoekresultaat (statistiek - tfidf) gebruiker kiest daaruit termen om zoekactie in te perken (soms ook termen uit te sluiten, of juist resultaat met OR uit te breiden) bijv.: Quintura (frontend voor Yahoo) Scirus database van Elsevier Aquabrowser (o.a. bij bibliotheek.nl)
AND
zelf in OR te veranderen !
ook “faceted” zoeken, waarbij zoekresultaat al wordt opgedeeld aan de hand van daarin aanwezige "geformaliseerde metadata" wolk van termen in Aquabrowser: die termen kunnen uit statistische analyse, woordenlijst, thesaurus, semantisch netwerk o.i.d. komen
ook “faceted” zoeken, waarbij zoekresultaat wordt opgedeeld aan de hand van daarin aanwezige "geformaliseerde metadata"
aanvullende termen extraheren computer haalt karakteristieke (andere) woorden/begrippen uit eerste N documenten van zoekresultaat (statistiek - tfidf) gebruiker kiest daaruit termen om zoekactie in te perken (soms ook termen uit te sluiten, of juist resultaat met OR uit te breiden) bijv.: Quintura (frontend voor Yahoo) Scirus database van Elsevier aquabrowser (o.a. bij bibliotheek.nl) inperken op juiste betekenis of context betere precisie uitbreiden met meer “synoniemen” verbetert recall
automatisch clusteren/classificeren op grond van kennisregels (en bestaande “taxonomie”) in feite toepassing automatische classificatie, waarbij klassen als verdelingscriterium dienen op grond van statistiek of patronen Clusty/Yippy, Polymeta, …. Autonomy
custom search folders
toekenning document aan taxonomy-term gebaseerd op rules base, zoals bijvoorbeeld bij product van Verity
automatisch clusteren/classificeren op grond van kennisregels (en bestaande “taxonomie”) in feite toepassing automatische classificatie, waarbij klassen als verdelingscriterium dienen op grond van statistiek of patronen Clusty/Yippy, Collarity Autonomy kiezen van juiste betekenis of context betere precisie werkt niet gegarandeerd altijd goed
terugkoppeling gebruiker klikt bij relevante hit op “more like this” computer zoekt op grond van daarin aanwezige termen of patronen naar daarop lijkende documenten bijv.: Scirus, Google SimilarPages (Firefox Add-on) Autonomy gebruiker markeert relevante hits zoektermen of patronen die in die documenten voorkomen krijgen hoger gewicht bij toekomstige zoekacties krijgen documenten met die termen of patronen een hogere berekende relevantie bijv.: Autonomy en ook personal Google?
max havelaar keurmerk product max havelaar - het boek
gelijkenis-“patronen” bij Google site 1 site 2 site 3 site 4 site 5 site 6 site 7 site 8 site 9 hyperlinks goede site similar site similar site similar site similar site similar site similar site similar site
"similar pages" add-on gebruikt combinatie van content en link-structuur maar: "similar pages" blijkt dus geen "pages" maar "sites" te vergelijken
terugkoppeling kiezen van juiste betekenis of context gebruiker klikt bij relevante hit op “more like this” computer zoekt op grond van daarin aanwezige termen of patronen naar daarop lijkende documenten bijv.: Scirus, Google Similar_Pages (Firefox Add-on) Autonomy gebruiker markeert relevante hits zoektermen of patronen die in die documenten voorkomen krijgen hoger gewicht bij toekomstige zoekacties krijgen documenten met die termen of patronen een hogere berekende relevantie bijv.: Autonomy en ook personal Google? kiezen van juiste betekenis of context (door gelijkenis of door personalisatie van relevance ranking) betere precisie
precisie-verbeterend relevance ranking automatisch onderscheiden van context/betekenis statistiek (clusty, quintura, scirus) automatisch kennisregels + mens-gedefinieerde categorieën (northernlight, verity) half-automatisch woordrelaties in semantisch netwerk half-automatisch “more-like-this” vanuit document in goede context (scirus, google) automatisch
meenemen van woordvarianten recall-verbeterend meenemen van woordvarianten word-stemming (pas op: taalafhankelijk) automatisch fuzzy search automatisch did-you-mean automatisch toevoegen van andere termen statistiek (scirus) automatisch semantisch netwerk half-automatisch synoniemenlijst half-automatisch