La svolta semantica di Google tra bufale e verità

Ultimamente si è fatto un gran parlare di semantica applicata all’information retrieval ed in particolare a Google.

La semantica è un argomento che periodicamente torna ad essere protagonista delle news dedicate ai motori di ricerca. Durante una decina di anni di osservazione e tenendo conto degli sviluppi concreti in questo ambito, la mia impressione è che il più delle volte la parola “semantica” venga usata prevalentemente come specchietto per le allodole.

Da un lato mi sorge il dubbio che per i motori di ricerca si tratti di una carta jolly da tirar fuori in periodi di magra e di penuria di significative evoluzioni della tecnologia.

Dall’altro noto che molte volte gli utenti (SEO compresi) tendano a confondere per semantica dei risultati che possono essere prodotti senza scomodare tale concetto.

Vale dunque la pena di fare il punto della situazione e di cercare di capire che cosa ci si può aspettare realmente per il futuro.

Il papà di AdSense

Molti non sanno perché c’è scritto “sense” in AdSense. La ragione è legata alla semantica.

Logo di OingoNel 1999 un’azienda chiamata Oingo Inc. aveva sviluppato un motore di ricerca in grado di svolgere un’analisi semantica delle query degli utenti e, in caso di ricerche ambigue, permetteva all’utente di definire meglio il significato di quanto era stato digitato.

Oggi siamo abituati ad una qualità dei risultati di ricerca estremamente alta: qualsiasi motore moderno è capace di fornire un’esperienza quantomeno accettabile. Oingo, nonostante i buoni propositi, non proponeva risultati particolarmente apprezzabili, nemmeno per gli standard dell’epoca. Tranne qualche contesto specifico, a mio parere la qualità era piuttosto bassa. E non solo a parere mio.

Forse consapevoli di questo limite e ritrovandosi con un algoritmo ed un approccio forse poco adatti per affrontare la complessità di un motore di ricerca generalista, nel 2002 Oingo Inc. cambiò nome in Applied Semantics per concentrarsi sullo sviluppo di soluzioni di advertising contestuale che potevano beneficiare degli algoritmi di analisi semantica dei testi fino a quel momento usati per valutare le query di ricerca.

Una di queste soluzioni si chiamava AdSense.

It’s all about the money

Google acquisì Applied Semantics e la tecnologia AdSense nel 2003, conferendo al servizio di advertising un’estrema popolarità.

Le tecnologie sviluppate da Applied Semantics rimasero circoscritte al contesto pubblicitario (ovvero all’analisi dei testi delle pagine su cui pubblicare annunci AdSense) e le analisi semantiche non vennero applicate alle ricerche sul web.

Col senno di poi è facile comprendere le ragioni della scelta di Google: da un lato la tecnologia e infrastruttura già esistenti del motore di ricerca non rendevano facile l’integrazione di analisi semantiche, dall’altro bisogna confessare che Oingo era più un limitato accrocchio accademico (basato su ODP e WordNet) piuttosto che un reale tentativo di produrre un motore di ricerca general purpose.

Esisteva anche un’altra ragione per la quale in quel periodo storico non si sentiva la necessità di un approccio semantico all’information retrieval e cioè che i risultati di Google erano già di qualità eccelsa se comparati ai risultati dei motori di ricerca concorrenti in quel periodo.

Deja vu

Nel 2001, il sito di Oingo Inc. presentava la tecnologia di ricerca nel seguente modo: “Oingo Meaning-Based Search is powered by the Oingo Ontology, a highly detailed database of over 1,000,000 words and meanings, linked by millions of relationships in a semantic network that is constantly changing to reflect the currency of everyday language.“. Potete approfondire la tecnologia qua.

Se il database di parole e significati collegati tra loro da milioni di relazioni vi ricorda le parole spese da Google quando il mese scorso ha presentato il Knowledge Graph è perché, alla faccia degli oltre dieci anni trascorsi, si tratta tutto sommato della stessa zuppa, sebbene molto molto più abbondante e gustosa.

E’ bene chiarire: esistono gigantesche differenze tra WordNet, usato da Oingo e in ambiti accademici come ontologia di base, e Freebase, che è una delle fondamenta del Knowledge Graph. Tuttavia il concetto di fondo è esattamente lo stesso: un database di entità e relazioni semantiche che possono essere sfruttate per meglio comprendere il significato di testi e query.

Verrebbe spontaneo chiedersi perché una reale applicazione della semantica si sia fatta attendere per dieci anni ma la risposta è ancora più amara della domanda e assai spiazzante: la verità è che un’applicazione della semantica agli ambiti più interessanti non c’è nemmeno adesso.

Per alcuni aspetti, Oingo faceva (maluccio) cose che il Google odierno non si azzarda nemmeno a tentare e di seguito vi spiego il perché.

Il Sacro Graal della semantica

Per capire a che punto siamo riguardo l’applicazione della semantica a Google e ai motori di ricerca in genere, è necessario prima definire in che punto si desidera arrivare.

Semantic WebIn assoluto, uno dei più importanti obiettivi che alcuni motori di ricerca si sono posti per il futuro è quello di dotarsi di un sistema in grado di estrarre il significato dai testi dei documenti e sopratutto delle query degli utenti.

Un motore in grado di comprendere il reale significato di una query è un traguardo compatibile con la sempre maggiore tendenza e desiderio dei motori a trasformarsi in strumenti di risposta diretta.

In assenza della capacità di trasformare il testo di una query in una richiesta chiara e sensata, che potrebbe avere una risposta precisa da presentare all’utente, i motori hanno finora ripiegato nella fornitura di risorse web che presumibilmente hanno a che fare col testo cercato dall’utente.

L’analisi semantica di un testo, tuttavia, è un compito estremamente arduo per un algoritmo. La ragione è che quella capacità di comprensione che agli umani sembra così naturale e che risulta così spontanea è in realtà il frutto di un bagaglio culturale accumulato nel tempo grazie a concrete esperienze di vita, percepite attraverso sensi di cui gli umani sono dotati. E che gli algoritmi o i computer ovviamente non possiedono.

Nell’impossibilità di replicare lo stesso processo di crescita e apprendimento tipico degli esseri umani, tutto ciò che un algoritmo può fare è tentare di simulare il risultato di un’analisi semantica. Sia ben chiaro: non simulare il processo di analisi tipico degli umani ma simularne solo il prodotto finale ovvero, nel caso dei motori di ricerca/risposta, l’individuazione di una richiesta, domanda o necessità a cui assolvere.

Se ci fossero ancora dubbi sull’obiettivo di Google (e di molti altri motori) basta infine fare riferimento a quanto scritto da Jack Menzel nel post che nel 2010 annunciò l’acquisizione di Metaweb, l’azienda che stava alle spalle di Freebase, poi esteso a quello che è diventato il Knowledge Graph.

Riferendosi alle query degli utenti, Menzel scrisse: “But what about [colleges on the west coast with tuition under $30,000] or [actors over 40 who have won at least one oscar]? These are hard questions, and we’ve acquired Metaweb because we believe working together we’ll be able to provide better answers.

Definito il traguardo, diamo un’occhiata al presente e, giusto per divertirsi un po’, anche al passato.

Vi presento Watson

Voglio mostrarvi quello che al momento può essere considerato un discreto risultato conseguito da IBM. Watson è un motore di risposta in grado di interpretare una domanda posta in un linguaggio naturale.

Per mettere alla prova i suoi algoritmi, nel 2011 IBM ha preso accordi con il quiz televisivo Jeopardy affinché Watson gareggiasse contro due dei più grandi campioni che hanno partecipato alla trasmissione.

Watson ha letteralmente sbaragliato i concorrenti, anche se è facile notare in quali contesti ha maggiore difficoltà di interpretazione delle domande.

Vi invito a guardare uno pezzo del video della trasmissione, Watson calcola per ogni domanda alcune possibili risposte e risponde solo quando tra di esse ne ha individuato una che ha un alto indice di probabilità di essere corretta.

http://www.youtube.com/watch?v=YLR1byL0U8M

Di seguito vi segnalo invece un video di IBM che spiega come Watson funziona.

http://www.youtube.com/watch?v=DywO4zksfXw

E’ vero che Watson è in grado di rispondere correttamente nella stragrande maggioranza dei casi, tuttavia è corretto porre nel giusto contesto questa capacità, per esempio evidenziando che una singola risposta può richiedere diversi secondi di calcolo per essere formulata e che un motore di ricerca generalista sul web non si potrebbe permettere di attendere così tanto tempo per fornire una risposta all’utente.

Pertanto, per quanto IBM sia stata in grado di sviluppare un sistema di risposta di qualità, ciò non implica che la soluzione sia al momento applicabile a contesti diversi da quelli di un telequiz a premi.

Una bufala DOP

Sapete qual è stato il motore di ricerca/risposta che più di ogni altro ha investito per comunicare la propria capacità di interpretare correttamente il reale significato delle query e fornire subito una risposta all’utente? Ask Jeeves; negli anni successivi ribattezzato semplicemente “Ask”.

Ask JeevesC’è da chiedersi come Ask Jeeves facesse, nel 1996, a svolgere questo arduo compito quando ancora oggi i più grandi colossi arrancano per trovare soluzioni decenti ad un problema così complesso come l’analisi semantica dei testi/query.

La risposta è semplice: barava un po’.

Non molti sanno infatti che i dipendenti di Ask Jeeves passavano il proprio tempo ad osservare quali query degli utenti erano le più gettonate e per ciascuna di esse si premuravano di confezionare manualmente e salvare in archivio una SERP con la giusta risposta.

Molti risultati erano quindi amorevolmente preparati a manina. Per le restanti ricerche il motore cercava di “interpretare” la query seguendo le semplici valutazioni di occorrenza delle keyword nei documenti, che erano tipiche nei motori di ricerca di quella generazione.

Ask Jeeves era in un certo senso una riproposizione moderna de “Il Turco“, un temibile giocatore meccanico di scacchi, un automa, divenuto famoso nel diciottesimo secolo per la sua bravura ma che nascondeva al proprio interno uno scacchista nano che ne muoveva gli ingranaggi. 😀

Al di là del caso specifico, l’esempio di Ask Jeeves mette in evidenza il critico rapporto tra motori di ricerca e analisi semantiche, rapporto che rimane critico anche oggi, perché la tecnologia per proporre un reale motore di risposta generalista e in grado di estrarre un senso dalle query non esiste nemmeno adesso.

E la famigerata svolta semantica di Google, strombazzata dai giornali e blog di mezzo mondo qualche mese fa?

Come stanno le cose

Al momento Google di semantico ha solo le buone intenzioni ed un gigantesco grafo poco sfruttato.

E’ vero che il Knowledge Graph è probabilmente uno dei più grandi database di concetti e relazioni esistenti tuttavia, a differenza del moderno Watson o del vecchio Oingo, quelle relazioni non vengono al momento sfruttate per effettuare un’analisi semantica delle query.

Quello che fa Google col Knowledge Graph al momento è proporre all’utente una semplice navigazione dei suoi contenuti. Al presentarsi di alcune specifiche query il motore estrae informazioni dal database e le mostra all’utente nella parte destra della SERP.

Si potrebbe erroneamente credere che le query che vedono apparire il box di approfondimento vengano selezionate attraverso analisi semantiche delle query stesse, e invece no. E’ stata semplicemente fatta un’analisi prettamente statistica del gigantesco database di query degli utenti per determinare quali di esse meritavano il box di approfondimento e quali tipi di informazioni, per ciascuna di esse, era opportuno presentare nel box.

Facendo proprio l’esempio che appare nel post che annuncia il Knowledge Graph, l’analisi statistica del database di query ha permesso di determinare che lo scrittore Charles Dickens viene nominato dagli utenti specificando spesso l’oggetto dell’informazione richiesta, per esempio quali libri ha scritto. Questo permette a Google di sapere che “libri” è un termine che nelle query viene frequentemente associato con “Charles Dickens” e tanto gli basta per stabilire che una risposta alla query [Charles Dickens] potrebbe beneficiare dell’elenco delle opere dello scrittore.

Il punto della situazione è dunque che Google possiede uno dei più grandi archivi di concetti e relazioni mai esistito ma che non lo usa per l’obiettivo dichiarato e principale, ovvero quello di svolgere analisi semantiche delle query degli utenti (o dei testi dei documenti).

Il Knowledge Graph è sicuramente indispensabile per le future analisi semantiche delle query che Google si propone di fare, ma al momento Google nemmeno ci prova.

Conclusioni

E’ curioso osservare come le cose sembrino non cambiare nonostante il tempo trascorso.

Mirabolanti capacità del passato si scroprono essere farlocche, reali capacità di analisi semantica delle query esistevano ma sono state acquisite e messe da parte da Google (probabilmente per la scarsa qualità dei risultati), nuovi player come IBM hanno fatto passi da gigante ma non applicabili alla quantità di query di un motore generalista come Google.

E infine Google stesso, che ha fatto un importante ed essenziale primo passo verso il dichiarato obiettivo di estrarre un senso dalle query, senza però precisare che al momento non lo fa.

P.S.
Pensavo che sarebbe interessante parlare di argomenti simili in qualche evento. Giusto per dire.

15 Responses to La svolta semantica di Google tra bufale e verità

  1. Pingback: Google Knowledge Graph: observations and notes.

  2. Pingback: Progetto Bombolo: come modificare il Knowledge Graph e le SERP - LowLevel’s blog

Leave a Reply

Your email address will not be published. Required fields are marked *