Alternatieve ideeën voor Web 3.0 en het semantic web
Het idee dat computers mensen kunnen begrijpen is intrigerend. Daarom wordt er hard gewerkt aan datgene wat bekend staat als het semantic web, het web dat internetpagina’s kan begrijpen. Tot enkele jaren geleden leek alleen de klassieke benadering van Web 3.0 deze droom mogelijk te kunnen maken. Er ontstaan echter steeds meer alternatieve ideeën om het semantic web te realiseren. Wat kunnen deze alternatieven? En kunnen ze de toekomst van het web bepalen?
Begrijpen
In mijn vorige artikel op Frankwatching heb ik het gehad over de klassieke benadering van Web 3.0. Het was een redelijk technisch verhaal over hoe de droom van Sir Tim Berners-Lee – het semantic web – verwezenlijkt kan worden. Ter herinnering, het semantic web begrijpt – in tegenstelling tot het huidige web – de onderwerpen die in webpagina’s voorkomen. Het snapt dus dat als het woord “Jan Peter Balkenende” voorkomt in een tekst, dat Jan Peter Balkenende een persoon is. Tevens weet het dat Balkenende de minister-president van Nederland is, wie zijn mede-ministers zijn, en nog een heleboel andere dingen. In feite alle eigenschappen en relaties van Jan Peter die vrij toegankelijk zijn op het internet.
Met een semantic web komt er dus heleboel informatie beschikbaar over alle denkbare onderwerpen. Dat levert veel voordelen op:
- Er is veel meer informatie beschikbaar over een onderwerp dan nu, omdat voor alle websites bekend is om welk onderwerp het gaat.
- De informatie is veel nauwkeuriger omdat bekend is wat een onderwerp betekent. Ook zoekopdrachten geven resultaten terug die veel nauwkeuriger zijn dan nu. Het verschil in zoekresultaten tussen Wikipedia en zijn semantische variant DBpedia is hiervan een treffend voorbeeld.
- Data portability: Als op het hele internet bekend is wie ik ben, dan hoef ik me niet helemaal opnieuw te introduceren bij bijvoorbeeld Hyves als ik al een YouTube account heb.
- Software agents kunnen beslissingen voor me nemen omdat ze begrijpen wat ik wil en ze tevens het internet begrijpen.
- Voor adverteerders is het een paradijs omdat ze veel meer weten over personen en ze dus veel beter kunnen targeten.
- Er zullen toepassingen ontstaan waarvan we het bestaan nu nog niet kunnen vermoeden (serendipiteit). Volgens Tim Berners-Lee is dit een erg belangrijke factor in de ontwikkeling van het web, zo gaf hij aan tijdens een interactief debat over de toekomst van het World Wide Web. De bedenkers van Web 1.0 hadden inderdaad nooit kunnen vermoeden hoe het huidige Web 2.0 er uit ziet.
Dit zijn de belangrijkste voordelen, er zijn er nog meer te bedenken. Kortom, even afgezien van de nadelen zoals verminderde privacy, een hoop interessants om naar te streven. De vraag, die onder anderen Alex Iskold (foto links) – schrijver voor ReadWriteWeb en oprichter van AdaptiveBlue – stelt, is echter: moet het via zo’n moeilijke constructie als de klassieke benadering? En kan die klassieke benadering überhaupt wel van de grond komen?
Problemen
Nee, zegt Iskold, het klassieke concept komt er waarschijnlijk niet. Hij geeft daar een aantal redenen voor, waarvan één van de belangrijkste gaat over annotatie. Immers, in de klassieke benadering worden alle internetpagina’s voorzien van extra informatie. Daarin staat de betekenis en de relaties van de onderwerpen in die pagina. Hoe kan die gigantische taak plaatsvinden?
Antwoord: door mensen of computers. Als er tools komen die het mensen gemakkelijk maakt om betekenis te geven aan de onderwerpen in de tekst die ze aan het schrijven zijn, dan is het misschien mogelijk. Maar, er zijn in een pagina natuurlijk heel veel onderwerpen, dus het blijft toch een aardige klus. Dit is dus alleen mogelijk als de mensen die pagina’s annoteren daar zelf ook profijt van hebben. Dat zegt ook internetonderzoeker Yihong Ding (foto rechts): “Since it is impossible to beat the nature of selfishness, we have to follow it. In other words, the success of realizing the Semantic Web relies on whether we can persuade normal users into believing that they are contributing primarily to themselves.”.
We zien dat mensen en bedrijven er veel voor over hebben om een toppositie in Google te bereiken. Als Google geannoteerde pagina’s hoger zou ranken dan andere pagina’s, dan zou dat een enorme stimulans voor het klassieke semantic web kunnen betekenen.
Maar als mensen de onderwerpen in hun pagina’s niet gaan beschrijven dan kunnen computers misschien een deel van de taak overnemen. Echter, als computers de teksten zo goed begrijpen dat ze correcte annotaties kunnen maken, waarvoor hebben we de annotaties dan nog nodig? Ze begrijpen dan toch al wat er in de tekst staat?
Een ander probleem waar de klassieke benadering tegenaan loopt is standaardisatie, een in ICT-projecten bekend probleem. Subtiele verschillen in annotatie zoals “1e editie” en “editie 1” die voor mensen geen probleem opleveren zijn voor computers niet te bevatten. Zulke verschillen zullen zeker ontstaan tenzij iedereen zich keurig netjes aan de annotatiestandaarden houdt.
Een manier om dit af te dwingen is de oprichting van een ENS (Entity Name System), analoog aan het bestaande DNS (Domain Name System) voor domeinnamen. In het ENS worden onderwerpen die in webpagina’s voorkomen en relaties ertussen vastgelegd. Het DNS werkt prima, dus waarom zou een ENS niet goed kunnen werken? Om verschillende redenen is een ENS veel moeilijker te realiseren: er zijn veel en veel meer onderwerpen dan domeinnamen, en onderwerpen komen bovendien in verschillende talen voor. Daarnaast kun je discussiëren over de betekenis van onderwerpen en hun relaties.
Tenslotte biedt de klassieke benadering op dit moment geen business opportunity. Hierdoor blijft het academisch en worden bedrijven niet uitgedaagd om er mee aan de slag te gaan.
Top-down
Zijn er dan alternatieve manieren om tot semantic web te komen?
De klassieke benadering bouwt het web bottom-up. Ze voorzien webpagina’s van extra informatie waardoor ze gemakkelijker te begrijpen zijn door webapplicaties. Je kunt er echter ook voor kiezen om niks aan webpagina’s te doen, maar in plaats daarvan applicaties zo intelligent te maken dat ze de inhoud van pagina’s toch kunnen begrijpen. Dit staat bekend als de top-down benadering.
Eigenlijk is de naam “top-down benadering” misleidend. Ze stimuleert wel degelijk het gebruik van notaties in pagina’s bijvoorbeeld met behulp van microformats. Het verschil is echter dat de top-down benadering het web neemt zoals het zich ontwikkelt en daaruit de intelligentie probeert te halen. Hieronder een overzicht van de belangrijkste elementen van zo’n top-down benadering.
Natural language processing
Applicaties begrijpen de inhoud van teksten door natural language processing. Simpel gezegd: ze begrijpen net als mensen wat er staat. Het mag duidelijk zijn dat dit een zeer uitdagende taak is, zelfs al beperk je het begrip in eerste instantie tot de Engelse taal. De resultaten tot nu toe zijn dan ook nog niet overtuigend. De semantisch zoekmachines Hakia en Powerset gebruiken deze techniek. Saillant detail hierbij is dat Microsoft onlangs Powerset heeft overgenomen en hiermee dus investeert in semantic search.
Context
Applicaties herkennen informatie uit de context of aan het format. Een simpel voorbeeld hiervan is de add-on van Skype die telefoonnummers herkent. Ook de Map+ add-on voor Firefox die adressen
herkent en deze onmiddellijk op een kaart toont past in dit rijtje.
People search zoekmachine Spock extraheert informatie over mensen uit de context van webpagina’s. Een meer geavanceerd voorbeeld van contextgerelateerde semantiek zijn de Semantic Signatures van Textwise.
API’s
Steeds meer websites bieden API’s waarmee informatie van de site ontsloten wordt. Het fenomeen mashup is hieruit ontstaan. Op Programmable Web vind je honderden API´s waarmee programmeurs gemakkelijk toegang krijgen tot data uit Google Maps, Flickr, YouTube, del.icio.us en andere sites. Via de API wordt informatie én de betekenis ervan toegankelijk voor het hele web. Ook de betekenis, want via de Flickr API bijvoorbeeld kun je niet alleen foto´s ophalen, je krijgt ook informatie over wie de foto gemaakt heeft, wanneer en waar die gemaakt is en meer. In feite ben je op die manier dus bezig een semantic web te creëren. Er zijn zelfs sites, zoals openkapow, die van elke site een API kunnen genereren voor het geval de site zelf geen API aanbiedt.
Tagging
Tagging is ook een manier van betekenis geven aan onderwerpen of – meestal – aan webpagina’s. Probleem bij tagging is natuurlijk dat het niet erg gestructureerd gaat. Een pagina die ik op een bepaalde manier tag, wordt door iemand anders waarschijnlijk van een heel andere tag voorzien, zelfs als we er hetzelfde mee bedoelen. Ook zal iedereen meestal in zijn eigen taal taggen. Een ongeorganiseerde boel dus. Toch valt het fenomeen tagging onder wat Yihong Ding de overgang van een node-driven naar een thread-driven web noemt. We gaan van een web waarbij nodes (webpagina’s) via links met elkaar verbonden zijn naar een web waarbij de verbinding loopt via threads (Nederlands: draden). Een tag is ook zo’n draad waaraan een heleboel websites gekoppeld zijn.
Microformats
Bepaalde onderwerpen in webpagina’s kunnen met microformats geannoteerd worden. Je kunt een microformat redelijk goed vergelijken met een HTML-tag, alleen zegt hij niks over de opmaak maar over de inhoud van de tekst. Dit is dus eigenlijk een bottom-up techniek omdat je echt pagina’s van additionele informatie gaat voorzien. De mogelijkheden zijn niet zo uitgebreid als bij RDF, maar het voordeel is dat microformats gemakkelijker te begrijpen zijn. Bovendien staan ze dichter bij HTML en zijn ze daarom voor HTML-programmeurs gemakkelijker te leren en te implementeren.
Toekomst
Nu we dit weten, hoe gaat de toekomst er dan uit zien? Wint de top-down benadering? Of wordt het toch bottom-up? Of kunnen ze samen gaan?
Bij beide stromingen is er voldoende momentum aanwezig om door te gaan. De komst van query language SPARQL is een boost voor de ontwikkeling van het klassieke semantic web. “It’s time to just go do it” moedigde Berners-Lee (foto rechts) onlangs in een podcast zijn troepen aan. De onlangs gelanceerde semantische webservice Calais is voor de top-downers een reden tot juichen.
De ene stroming zal het dus niet winnen van de andere. Wel kunnen ze elkaar aanvullen. Services als Calais en Triplify kijken top-down naar een website en leveren vervolgens RDF op. Op korte termijn zal de top-down benadering waarschijnlijk meer resultaat opleveren. Het is immers een gigantische taak om een groot, goed georganiseerd systeem als het klassieke semantic web neer te zetten. Dan is het gemakkelijker een service neer te zetten die slechts een kleine hoeveelheid semantiek toevoegt aan het web, maar die niet in een bepaalde structuur hoeft te passen. Je stelt er ook gemakkelijker een winstgevend businessmodel voor op dan voor een bijdrage aan de bottom-up benadering.
Daarom kun je op korte termijn eerder de volgende ontwikkelingen verwachten:
- Een grote hoeveelheid simpele semantische tools zoals Map+, Skype en Spock komen op de markt.
- Steeds meer sites zullen API’s aanbieden en daarmee de drempels tussen sites verlagen.
- Data-portability wordt mogelijk tussen een beperkt aantal communities.
- Eenvoudige software-agents kunnen simpele taken van mensen overnemen.
Het internet lijkt nog niet rijp voor:
- Semantic search.
- Complexe goed georganiseerde datastructuren.
- Intelligente software-agents die complexe beslissingen van mensen kunnen overnemen.
- Serendipiteit: een nieuwe manier van internetgebruik waar we ons nu nog geen voorstelling van kunnen maken.
Conclusie
Het semantic web komt er sowieso. Of de bottom-up variant er komt zoals die bedacht is, kun je je afvragen. Eigenlijk is dat ook niet belangrijk. Alleen al het idee van het semantic web heeft de internetwereld in beweging gezet. Hoe die beweging verder gaat is niet precies te voorspellen.
Volgens Yihong Ding is de ontwikkeling van het internet te vergelijken met de ontwikkeling van een mens. En in die ontwikkeling zitten we nu pas in de kleuterklas, dus we hebben nog een weg te gaan. Dat heeft ook voordelen, als kleuter mag je nog heerlijk naïef en onverantwoordelijk spelen…
Peter Bekel is senior developer bij full-service internetbureau Tam Tam.