Un avvio convincente per Wolfram Alpha? Quasi…

Wolfram Research ha finalmente lanciato Wolfram|Alpha, il tanto acclamato “motore di conoscenza computazionale”. La descrizione un po’ insolita (computational knowledge engine in inglese) è giustificata dal fatto che non si tratta di un motore di ricerca nel senso classico e benché meno di un successore di Google.

A un primissimo sguardo, ci si trova davanti a un servizio in grado di fornire informazioni oggettive su un vasto sottoinsieme della conoscenza umana. Ma l’idea dietro Wolfram|Alpha è ben più ambiziosa, come dimostrato dal primo screencast/demo realizzato da Stephen Wolfram.

Wolfram Alpha

Sfruttando infatti il potentissimo e popolarissimo software matematico Wolfram Mathematica, il motore è in grado di effettuare calcoli sulle informazioni ricercate dagli utenti. Ci sono quindi tre componenti in gioco: l’abilità di interpretare correttamente le query in inglese poste dagli utenti, l’abilità di elaborare l’informazione per restituire risultati anche a domande piuttosto complesse e infine, il compito non semplicissimo di mantenere una knowledge base per un vastissimo spettro di conoscenza umana.

Questa è la teoria, o almeno lo scopo ultimo del servizio. In quanto tale Wolfram|Alpha va considerato da subito come un’aggiunta al servizio offerto da Google e non come un sostituto.

Come ci si poteva aspettare, il servizio è ferratissimo quando si tratta di fare calcoli matematici. L’unico limite in questo caso è il tempo massimo imposto ad ogni query per escludere quelle che richiedono un livello di risorse eccessivo. Un esempio di calcolo che viene eseguito senza problemi è “integrate e^-x^2“.

A onor del vero, il servizio è correntemente sotto carico per via della curiosità iniziale che sta suscitando in tutto il mondo, per cui l’esecuzione del calcolo soprastante ci ha mostrato un paio di volte un messaggio di errore con tanto di tributo ad HAL 9000:

Messaggio di errore

Tra gli esempi mostrati nel sito ce n’è davvero per tutti i gusti, con particolare focus sulle discipline scientifiche e il mondo dell’ingegneria. I risultati sono presentati elegantemente e ben organizzati in forma di tabelle, particolarmente quando si richiede un confronto tra più insiemi di dati. Ci sono anche alcuni simpatici tributi, tra cui riferimenti a Monty Python e a Douglas Adams. Ma come si comporta quando andiamo al di là degli esempi predefiniti dal team di Stephen Wolfram? Si va da risultati esaltanti a risultati del tutto deludenti. Vediamo alcuni esempi.

Partiamo con un confronto tra IBM, Google e Sun. Come potete vedere, i risultati sono decisamente eccelsi. Il confronto è quasi esclusivamente numerico, ma la risposta data da WA è in linea con quanto ci si poteva aspettare. Lo stesso dicasi se cerchiamo informazioni statistiche circa grandi aziende italiane quotate in borsa, come Telecom Italia.

Visto che si tratta di un motore “computazionale” possiamo persino effettuare calcoli partendo dai dati che abbiamo visto essere disponibili nelle tabelle di confronto. Ad esempio: “employees IBM/Google” ci mostrerà il rapporto tra il numero di lavoratori in IBM e Google nel corso degli ultimi anni (attualmente IBM impiega quasi 20 volte il numero di persone che lavorano a Google). Possiamo calcolare le entrate per lavoratore in IBM, calcolando “(market cap / employees IBM)“, ma il motore fallisce nel confrontare questo parametro tra Google e IBM “(market cap / employees IBM) / (market cap / employees Google)” anche se i dati per fare un tale calcolo esistono nella knowledge base (e i valori erano già presenti nella tabella di confronto tra IBM e Google alla riga revenue / employee).

Passando ad altro, possiamo effettuare confronti tra città, come Toronto e Milano, ed ottenere risultati molto utili. È possibile fare calcoli su alcuni attributi soltanto, come ad esempio “population Toronto/Milan” o “distance toronto milan“. Nel primo caso i dati sono solo aggiornati al 2004, forse un po’ troppo vecchiotti anche se stiamo parlando di valori demografici. Il vero problema esiste, se proviamo a confrontare le regioni Ontario e Lombardia. Ci si aspetterebbe un bel confronto demografico ed economico, e invece otteniamo il nulla. Wolfram|Alpha riporta informazioni circa paesini come Montegiorgio, ma non sa nulla di regioni come la Lombardia o province canadesi come l’Ontario (che conta più di 13 milioni di persone). Ci pare questa, una grave carenza del motore. Facile da riparare, certo, ma una vera mancanza in ogni caso.

Se consideriamo per un attimo la ricerca di informazioni circa personaggi di rilievo, ci troviamo dinanzi a un eccesso di zelo nel cercare di rimanere obiettivi ed essenziali. Infatti, cercando Barack Obama, i risultati si limitano a indicarci che si tratta di un capo di stato, e il suo luogo e data di nascita. Saremo forse viziati da Wikipedia, ma almeno una foto, e qualche dettaglio in più ce lo saremmo aspettati. Ad esempio, non sarebbe male indicare per lo meno che è attualmente il 44° Presidente degli Stati Uniti. Ma Wolfram|Alpha riserva questo trattamento per tutti i personaggi famosi. Nel confronto “Paul Erdos vs Euler” ci si aspetterebbe un bel confronto tra questi due grandi e molto prolifici matematici, come ad esempio il numero di pubblicazioni, il numero di pagine pubblicate, le scoperte più significative e così via, e invece i risultati si limitano a confrontare dettagli anagrafici. Un po’ deludente a dire il vero. C’è da notare che WA se la cava piuttosto bene nell’interpretazione di nomi scritti incorrettamente (es. Paul Erddsos).

Il Natural Language Processing (NLP) di Wolfram|Alpha funziona abbastanza da poter scrivere query che vengono interpretate senza grandi frustrazioni, ma non appare nulla di particolarmente rivoluzionario nel campo dell’intelligenza artificiale. È altresì chiaro che non abbiamo a che fare con un Google-killer o Wikipedia-killer, ma solo con uno strumento innovativo che va aggiungersi a quelli esistenti. Detto questo, in altra sede l’ho personalmente definito un passo avanti per l’umanità. E credo ancora in quell’affermazione, per quanto forte possa sembrare.

Siamo dinanzi a un servizio che sarà utile a ricercatori e chiunque abbia bisogno di dati corretti rapidamente. La knowledge base dovrà crescere, alcuni dati dovranno essere aggiornati, e il motore dovrà permettere una maggiore libertà nel tipo di calcoli che possono essere effettuati; ma siamo senza dubbio testimoni della nascita di qualcosa di ambizioso, che ha il potenziale di accelerare almeno in parte l’avanzamento della nostra civiltà.

About Antonio Cangiano

Antonio lavora come Software Engineer & Technical Evangelist presso la IBM in Canada. È inoltre il direttore di Stacktrace.it, un internet marketing strategist, imprenditore del web, serial blogger, e autore di un paio di libri in inglese (recentemente Technical Blogging.) Puoi dare un'occhiata ai suoi progetti sulla sua homepage e seguendolo su Twitter.

Comments

  1. nullpointer says:

    Penso che WA potrebbe essere considerato piuttosto una killer-app per il semantic web – e questo nonostante in effetti non utilizzi le tecnologie proprie del semantic web (anche perché sarebbero oggi troppo pochi i dati espressi e accessibili mediante i relativi formalismi). E’ infatti da molto tempo che la comunità del Semantic Web (e in particolar modo la sua componente “industriale”) aspetta degli esempi concreti e funzionali di quegli “agenti” software che dovrebbero consumere i dati messi a disposizione dal Semantic Web stesso, e per i quali in effetti il Semantic Web fu ideato da Berners-Lee (nella sua visione originaria). In altri termini, finora non era chiaro per quale motivo si dovessero pubblicare dati accessibili direttamente dai software se non esisteva nessun esempio di software che potesse proficuamente usarli. WA va forse a colmare questa lacuna: d’ora in avanti sarà più facile immaginare quali siano l’utilità e le potenzialità del Semantic Web.
    Rimane certamente aperta la partita della profittabilità economica…

  2. Ottima osservazione, nullpointer. Concordo in pieno.

  3. Al momento posso soltanto dire “carino”, ma non mi sbilancerei molto. Per definirlo una killer-app secondo me è troppo presto: se riuscirà a permeare tra quei prodotti fondativi del web allora sarà sicuramente considerabile una killer-app, altrimenti resterà uno di quei prodotti tecnologici più che altro utili per una serie di altri risultati ottenuti di contorno.
    E francamente dubito anche che sia la killer-app del semantic web. Il semantic web soffre di due componenti troppo critiche, a mio modo di vedere. La prima, il fatto che soprattutto la comunità scientifica ha abbondantemente travisato quello che era il progetto iniziale del semantic web, creando l’ennesima nicchia ottima per piazzare una pubblicazione al giorno ma senza ottenere risultati veramente tangibili (tranne i soliti tesauri e simili). La seconda, quella più delicata a mio modo di vedere, è che la modellazione della base di conoscenza del dominio specifico è un processo molto delicato, che può seriamente compromettere i risultati finali. Una modellazione troppo semplice non introduce un’utilità tangibile, mentre una modellazione troppo complessa porta ad ottenere “tutto e il contrario di tutto”. Questo significa avere esperti dominio che hanno ben capito cosa si intende per semantic web (che a me piace definire uno “strumento universale per esprimere la logica dati”), e io devo ancora vederne dei casi che non siano i soliti giocattolo.

  4. quattro pensieri
    * alfa è una figata, anche non servisse ad altro che a svolgere i compiti per casa dei ragazzini alle medie
    * secondo me più che NLP in senso moderno (approccio statistico) hanno solo cablato dei pochi casi sintattici
    * il semweb non c’entra nulla, come direbbe timbl “semantic is old, the new idea is the web” e alfa è un motore completamente centralizzato
    * ci tengo a ricordare che Alfa non è cosciente 😉

  5. riffraff, il senso del messaggio di nullpointer non è che WA fa uso del semantic web. Non lo fa. Ma la sua interfaccia è un esempio di quali potrebbero essere i vantaggi del riuscire ad aggregare dati tramite i principi del semantic web. Anche se poi Alpha rimarrà sempre “controllato” in maniera centralizzata.

  6. nullpointer says:

    Nova Spivack interviews Wolfram Alpha’s Russell Foltz-Smith:

    Nova; “There’s been a lot of interest in how Alpha might connect with open standards and the Semantic Web…”

    Russell; “If you want the platform to be used, we’ll have to do some of this stuff… RDF, OWL, etc could play a huge role.”

    http://blogs.zdnet.com/semantic-web/?p=306

Policy per i commenti: Apprezzo moltissimo i vostri commenti, critiche incluse. Per evitare spam e troll, e far rimanere il discorso civile, i commenti sono moderati e prontamente approvati poco dopo il loro invio.