Home Data & Storage Search. Hoe werkt het eigenlijk?

Search. Hoe werkt het eigenlijk?

107

“Search” – of zoeken en vinden – is verweven met onze dagelijkse bezigheden. In dit artikel wil ik meer vertellen over het zoeken en vinden in digitale informatie. Welke toepassingen zijn er en nog belangrijker, hoe werkt het zoeken in digitale informatie nou eigenlijk?
Zoeken naar “dingen” en “informatie” zit diep verweven in het “zijn” van de mens. Iedere dag zijn we met zijn allen op zoek naar dingen die we kwijt zijn, onderwerpen waar we meer over willen weten, antwoorden op praktische vragen en informatie die we nodig hebben om ons werk te kunnen doen.

Informatie is de sociale valuta die we uitwisselen binnen onze persoonlijke en zakelijke contacten. Alhoewel er nu veel meer informatie op ons afkomt, heeft de online wereld onze behoefte aan informatie niet veranderd. Wij mensen categoriseren informatie automatisch. We weten wat wel interessant is, wat we kunnen negeren, waar we op moeten reageren, wat we moeten verduidelijken, wat we moeten “onthouden” om er later iets mee te kunnen doen.
Op een formele manier creëren we systemen om informatie te organiseren, bewaren en terug te vinden zodat we niet alles hoeven te onthouden en zodat we het kunnen delen met anderen: boeken, bibliotheken, documenten, databases, search engines.

Wij mensen doen heel veel automatisch op basis van interactie met anderen mensen. Als ik in een warenhuis naar een medewerker toeloop en daar vraag om een “cadeau”, dan zal die medewerker gelijk reageren met een wedervraag om mijn vraag te verduidelijken. Die medewerker ziet of ik een man of vrouw ben, weet of er een bepaalde feestdag aan zit te komen, hoe ik gekleed ben, in wat voor een winkel we zijn. Op basis van die informatie zal de medewerker een dialoog met mij starten om duidelijk te krijgen wat ik precies bedoel en waar ik naar op zoek ben. Samen met hem of haar zal ik tot een antwoord komen.

De vakgebieden“Search” en “Information Retrieval” richten zich op het vinden van informatie of antwoorden in tekstgebaseerde bronnen (waarbij audio en video ook kan worden teruggebracht naar tekst). De kunst is om op basis van een zoekopdracht van een gebruiker het enige (of meerdere) document(en) of zelfs antwoord(en) te vinden. Er zijn op dit moment verschillende leveranciers die (technische) oplossingen en producten leveren die de belofte van het kunnen vinden van antwoorden in digitale bronnen invullen.

Text retrieval en Search-oplossingen

De meest bekende zoekmachine is ongetwijfeld Google. Dagelijks maken miljoenen mensen gebruik van deze “Answer machine” door er miljarden zoekopdrachten op af te vuren. Google kan worden getypeerd als een “one size fits all” oplossing. Google is in staat om op de meeste algemene zoekopdrachten een goed tot redelijk antwoord terug te geven. We beschouwen Google vaak zelfs als een digitaal antwoordapparaat.

Text retrieval
Search engines worden in essentie beoordeeld op twee aspecten:

  1. Precision
    Het vermogen van de search engine om zo relevant mogelijke resultaten terug te geven. Het is daarbij van minder belang dat álle relevante zoekresultaten worden gepresenteerd.
  2. Recall
    Het vermogen van de search engine om álle relevante resultaten terug te geven.

Voor een bepaalde toepassing is één van deze beide criteria belangrijker: Voor Google.com is precision belangrijker (de beste antwoorden op de eerste pagina ook al zijn er mogelijk 1 mln.), voor een “legal discovery” is dat recall (Alle documenten over een bepaalde klant/onderwerp ook al zijn dat er 10.000).
Search-oplossingen
Om de verschillen tussen de verschillende vormen van “Search” duidelijk te maken, onderscheiden we de volgende typen zoekoplossingen:

  • Websearch
    Zoeken door alle informatie op internet. Kenmerk is het vinden van directe antwoorden en feiten óf “op het spoor” worden gezet. Relevantie wordt bepaald door zoek- en klikhistorie, semantiek, populariteit en autoriteit.
  • Sitesearch
    Zoeken door informatie op de eigen website. Doel is om de bezoeker snel naar de juiste productinformatie en antwoorden te leiden om self-service te vergroten, om producten te promoten, imago te bevestigen.
  • E-Commerce
    Zoeken door productaanbod. Doel is om de bezoeker snel inzicht te geven in het aanbod en mogelijkheden te geven om in te zoomen op specifieke producten. Gebruik van facetten/filters is essentieel. Via “similar products/buys” wordt de bezoeker aangemoedigd om ook andere vergelijkbare producten te bekijken/kopen.
  • Enterprise search
    Zoeken door informatie in meerdere (qua formaat) bronnen. Doel is om de medewerker snel de benodigde informatie te laten vinden om zijn of haar taak uit te voeren. Door de diversiteit van bronnen/informatie en rol van de medewerker in combinatie met “bedrijfstaal” complex. Dialoog en metadata zijn essentieel om tot de juiste resultaatset te komen.
    Kenmerk is “alle informatie voor iedereen”.
  • Search based applications (InfoApps)
    Zoeken door één of diverse (externe) bronnen, afhankelijk van specifieke bedrijfsproces. Voorbeelden zijn Call centers, R&D, Marketing/Customer intelligence, Customer Support centers. Doel is om in één oogopslag relevante informatie uit verschillende bronnen te kunnen combineren om een antwoord/spoor te krijgen.

Internet search versus Enterprise search

Maar hoe doet Google dat nou? Waarom schijnen ze te weten wat je bedoelt als je één of twee zoektermen invult? Dit lukt binnen een bedrijf voor de eigen bedrijfsinformatie vaak niet.
Hieronder een opsomming van de belangrijkste verschillen:

  • Publiceren om gevonden te worden (SEO)
    Organisaties en mensen zetten informatie op internet omdat zij willen dat hun informatie door zoveel mogelijk andere mensen gelezen wordt. Ze zorgen dan ook voor een zorgvuldige woordkeuze, (website)structuur en zeer beschrijvende metadata zoals titels en datums.
    Binnen organisaties produceren medewerkers documenten voor een bepaald doel en slaan die informatie op “omdat dat nou eenmaal moet”, vaak voorzien van onduidelijke titels en op willekeurige locaties. Ook het gebruik van een DMS lost dit probleem niet op. Hergebruik is geen doel.
  • Homogene informatie
    Het internet lijkt een chaos van webpagina’s maar deze informatie is in essentie behoorlijk gestructureerd. Het gaat in de meeste gevallen om HTML pagina’s met een indeling: Titel, H1, H2, beschrijving, datum, links naar andere bronnen, netjes gestructureerd op een website. PDF’s komen wel voor, maar meestal gelinked vanuit een webpagina met omschrijvende teksten.
    Binnen organisaties hebben we te maken met verschillende documentformaten (PDF, Word, Excel, PowerPoint, E-mail), opslaglocaties, systemen, databases, e-mail etc. Vanwege verschillende “informatiedichtheid” van deze bronnen/documenten/records is relevantie slecht te bepalen.
  • Personalisatie
    De zoekmachines op internet maken dankbaar gebruik van alle sporen die we (gewild en ongewild) achterlaten. Websitebezoek, aankopen, zoekhistorie, profielen op Google+, Facebook. Al deze indicatoren worden gebruikt om een persoonlijke zoekervaring te creëren.
    Binnen organisaties is het aspect “personalisatie” (en het daarmee gepaard gaande privacy-aspect) een precair onderwerp. Loggen van gedrag van medewerkers is niet gewenst.
  • Alle informatie voor iedereen
    De informatie op het internet is in principe voor iedereen toegankelijk.
    Binnen organisaties hebben we te maken met beveiligingsinstellingen/permissies voor verschillende systemen voor verschillende medewerkers. Een medewerker mag alleen informatie vinden als hij of zij ook rechten heeft om deze informatie te lezen.
  • Wisdom of the crowd
    Op het internet maken Google en Bing gebruik van de sporen die gebruikers achterlaten bij het gebruik van hun zoekmachines. Door het gigantische volume van zoekvragen en clicks op zoekresultaten weten zij waar vaak naar wordt gezocht, welke termen worden gebruikt en op welke resultaten wordt geklikt. Let wel, het gaat hier om miljarden zoekopdrachten die zelfs een beeld geven van “trends”.
    Binnen organisaties is het aantal zoekopdrachten veel lager en vaak veel unieker. “Uniek” geeft hier aan dat men op zoek is naar een specifiek document of specifiek onderwerp. Het is niet te bepalen of het vinden van één enkel document heeft geleid tot een zeer waardevol inzicht (long tail)! De meest populaire zoekopdrachten hebben dus geen relatie tot een unieke zoekopdracht die weleens tot een nieuw product zou kunnen leiden.
  • Aandacht!
    Bij Google en Bing zijn honderden medewerkers bezig met het analyseren van zoekopdrachten en het gedrag van gebruikers. Dat geeft hen inzicht en mogelijkheden om de zoekervaring te verbeteren op basis van het échte gebruik door échte gebruikers.
    Binnen organisaties is een zoekoplossing meestal iets dat eenmalig is geïmplementeerd en die “gewoon moet blijven werken”. Er wordt bijna geen aandacht geschonken aan het gebruik van de zoekoplossing en de wensen/eisen van gebruikers. Bij uitzondering zien we dat medewerkers een deel van hun tijd mogen/kunnen besteden aan het analyseren van het gebruik van de zoekoplossing, laat staan inventariseren van de informatiebehoefte.

Voor meer waardevolle informatie, zie: http://www.ideaeng.com/inet-enterprise-search-p1-0502

Anatomie van een zoekoplossing

Zoals gezegd kunnen wij mensen zeer goed onderscheid aanbrengen tussen wat wél relevant is, en wat niet. Maar wat zit er nou eigenlijk achter een goede zoekoplossing? Wat zijn de onderdelen die een rol spelen binnen een digitale zoekmachine?
De onderdelen hieronder geven direct inzicht in de complexiteit waar je mee te maken krijgt als je een dagelijks proces, zoals de interactie tussen mensen, wilt implementeren bij het zoeken naar digitale informatie.

  • Vergaren
    Als eerste moeten de documenten of informaties worden vergaard. Dit kan door gebruik te maken van webcrawlers (voor websites of intranetten), connectoren (modules die speciaal zijn gemaakt om informatie uit een bepaald systeem te krijgen zoals databases, SharePoint, Documentum, Filesystemen, LiveLink, Lotus Domino, Hummingbird etc.) of door het “feeden” van records en documenten vanuit applicaties.
  • Voorbewerken
    Vervolgens moet deze informatie worden geanalyseerd. Taaldetectie, toepassen van taalspecifieke algoritmes als woordgrenzen etc. Los van taalafhankelijke bewerking kan de informatie worden geanalyseerd door classificatietools om automatisch metadata toe te kennen (op basis van regels of conceptuele analyse), delen van documenten te herkennen (titel, auteur, datum) en om relaties te herkennen en te identificeren (semantiek).
  • Indexeren
    – Een bestand met alle documenten (+ metadata) in de index
    – Een bestand met alle aparte woorden in de index
    – Een bestand met alle verwijzingen van de woorden (+ locaties + aantal malen waarin het woord voorkomt) in de index naar de documenten waar deze woorden in voorkomen
    De index bevat ook informatie over de synoniemen, stopwoorden (de, het, een etc.).
  • Verwerken van de zoekopdracht
    In keyword gebaseerde en boolean zoeksystemen is dit eenvoudiger (stemmingalgoritmes, synoniemen) dan in NLP (Natural language processing) systemen (part of speech, entiteiten, werkwoorden, zelfstandig naamwoorden).
  • Matchen van de zoekopdracht
    De “verbouwde zoekopdracht” wordt tegen de index aangehouden (eventueel gecombineerd met een kennisdatabank). Traditionele (online) systemen zullen alle woorden in de zoekopdracht simpelweg proberen te matchen: als je zoekt op “global warming” krijg je alleen documenten waar die twee termen exact voorkomen. Statistiche systemen zullen op zoek gaan naar documenten met “global AND warming” én “global OR warming”, en uitgebreid met stemming en synoniemen ook documenten vinden met “warm” en “globe”. Een op NLP gebaseerd systeem zal op een vraag als “What evidence is there for global warming?” ook terugkomen met documenten die gaan over “climate change”.
  • Prepareren van resultaat
    Nadat alle mogelijke documenten zijn gevonden die matchen met de (uitgebreide) zoekopdracht moeten deze in een voor de gebruiker optimaal gesorteerde lijst worden gepresenteerd. Dit kan op verschillende manieren, zoals (traditioneel, databasegeörienteerd) op chronologische volgorde (of een andere op metadata gebaseerd veld) of op (aflopende) volgorde van “relevantie”. Relevantie is hier echter de kern. Wat is “relevant”?
    Relevantie wordt in eerste instantie (statistisch) bepaald door het TF/IDF (Term Frequency/Inverted Document Frequency) principe: Toekennen van “gewicht” aan een (uitgebreid) zoekwoord
    – Dit gewicht wordt bepaald op basis van hoe vaak die term voorkomt in een document
    – Gecombineerd met het gegeven hoe vaak de term voorkomt in de gehele index
    Termen die relatief weinig voorkomen in de index maar die vaak voorkomen in een document, krijgen een hoger gewicht.
    Documenten waarin de zoekwoorden vaker voorkomen én waarin die zoekwoorden dichter bij elkaar staan, worden hoger gescoord.
    De weging van deze factoren vormen een – maar niet hét – verschil tussen de relevantie tussen de verschillende zoekoplossingen. Zo wordt er ook gekeken naar op welke plek in een document de zoekwoorden voorkomen (Titel, H1, descriptions etc.). Veelal zijn deze relevantie-indicatoren ook nog configureerbaar.
  • Tonen van resultaat
    Dit onderdeel is wellicht de meest “ondefinieerbare” component van het geheel. Er zijn de afgelopen jaren standaarden ontstaan die beschrijven voor welke doelgroep/oplossing een bepaalde “user interface” (SERP: Search Engine Result Page) geschikt is.
    Het punt is echter dat “Search” vele verschillende verschijningsvormen kent, zoals eerder in dit artikel is toegelicht.
    Er is dus niet één waarheid, alleen een waarheid voor combinaties van specifieke vormen van content, doelgroepen én processen.

Tot slot

Ik hoop dat ik erin ben geslaagd om de lezer met dit artikel een kijkje achter de schermen van “Search” te geven. Heb je vragen aan mij of opmerkingen op dit artikel? Laat deze dan achter via de comments.

Lees ook de eerdere teksten over Search van Stauthamer

LAAT EEN REACTIE ACHTER

Vul alstublieft uw commentaar in!
Vul hier uw naam in