Capitolo 1
Introduzione
1.1 Obiettivi del progetto di tesi
Il lavoro svolto come progetto di tesi prevede la realizzazione di un applicativo
per l’estrazione dei dati da Facebook e la successiva rappresentazione in due
diversi formati, ovvero un formato relazionale ed un formato semantico, in
due distinte basi di dati. La risoluzione del problema ha previsto due diversi
sviluppi, poich e e stato necessario riservare un trattamento di erente alla
parte di estrazione della lista amici di un pro lo, in quanto i metodi previsti
dalla piattaforma per sviluppatori di Facebook, non permettono di ottenere
tutte le informazioni necessarie, obbligando a dover ricorrere ad altre tecni-
che per l’individuazione e l’estrazione di risorse strutturate contenute nelle
diverse pagine Web, che fosse separata rispetto alla parte di estrazione delle
informazioni sui pro li che e implementata per mezzo di un interfacciamento
verso la piattaforma per sviluppatori messa a disposizione da Facebook. La
strutturazione del progetto di tesi ha richiesto per o la trattazione di altre
problematiche. L’intera parte di estrazione dei dati e stata inglobata al-
l’interno di un’architettura multiprogrammata, che e in grado di sfruttare i
5
6CAPITOLO 1. INTRODUZIONE
normali tempi di attesa delle richieste inoltrate verso il server di Facebook
per permettere l’esecuzione di altri task in parallelo. In particolare, questo
aspetto ha coinvolto una serie di problemi connessi con l’elaborazione in mul-
tithreading, tra i quali l’accesso ad una stessa risorsa realizzato in modo tale
da garantire l’integrit a sul dato. Per questo motivo sono stati introdotti i
meccanismi delle DHT (Distributed Hash Tables), sulla base di quanto rie-
scono a realizzare i moderni motori di ricerca e le reti P2P. La separazione
fra le due parti (relazionale e semantica) si e resa necessaria e utile al tempo
stesso, poich e ha permesso sia di rappresentare le informazioni sulle amicizie
in maniera tale che si potesse tener traccia di quali pro li fossero gi a stati
visitati (marcatura dei nodi) ed allo stesso tempo ha permesso di suddividere
in maniera pi u e ciente il carico elaborativo delle informazioni, indirizzando
meglio le esigenze delle diverse categorie di utenti. Le scelte progettuali ef-
fettuate per la realizzazione dell’applicazione sono state considerate tenendo
conto dell’aspetto della scalabilit a, per venire incontro all’esigenza di trattare
una grande mole di dati, unita ad un elevato grado di automazione, che per-
mettesse di e ettuare le operazioni senza alcun intervento manuale. Tutta la
parte di rappresentazione della conoscenza e stata realizzata attraverso una
mappatura automatica di informazioni da XML, che Facebook utilizza come
formato di rappresentazione, a formato RDF con cui siamo in grado di espri-
mere il nostro modello semantico. I risultati nali in merito a ci o che e stato
estratto sono stati quindi considerati separatamente, provvedendo sia ad una
rappresentazione gra ca dei nodi che rendesse conto della struttura dei sot-
togra , corredata da considerazioni di tipo numerico sui nodi rappresentati,
sia ad una lettura dei dati dal database semantico, con i relativi dettagli in
merito ai tempi di lettura delle informazioni.
1.2. CENNI TEORICI SUL WEB SEMANTICO7
1.2 Cenni teorici sul web semantico
1.2.1 La concezione del web tradizionale
Internet, per come e stato originariamente pensato e per come si presenta al
giorno d’oggi e un insieme molto vasto di documenti che descrivono conte-
nuti. Ci o che prima poteva essere fatto con la carta stampata, con l’avvento
del world wide web e stato potenziato dalla possibilit a che questi documenti
hanno di richiamarsi gli uni con gli altri attraverso l’utilizzo dei link (colle-
gamenti), che il linguaggio HTML ha saputo proporre. I collegamenti iper-
testuali, per o, sebbene abbiano svolto un’importante attivit a di veicolazione
di tutte le attivit a quotidiane su Internet e abbiano permesso un suo veloce
sviluppo in tempi che non si pensavano, so rono di un grave difetto, ovvero
mancano di una qualche capacit a semantica. Per questa ragione e anche a
causa della inevitabile innovazione tecnologica, oggi si avverte l’esigenza di
disporre di collegamenti che non solo ci conducano in un certo luogo, ma
ci forniscano anche delle informazioni su questo luogo. Finora l’interazione
uomo-macchina sul web e stata fortemente condizionata dalla esperienza di
navigazione e capacit a di evocazione che hanno parole chiave o particolari
espressioni. Ci o vale a dire che l’utente impara pian piano la strada per ac-
cedere a determinati contenuti, anche appoggiandosi sull’espressivit a gra ca
del sito o come viene chiamato, il brand.
1.2.2 L’evoluzione del modello tradizionale
Il termine ‘Web 2.0 ’ indica uno stato evoluzionistico del Web iniziale. A
ben vedere, possiamo a ermare che negli ultimi anni stiamo assistendo ad
una transizione a favore di un altro modo di concepire l’interazione uomo-
macchina e sul modo di utilizzare le applicazioni. Attraverso un’analisi stori-
8CAPITOLO 1. INTRODUZIONE
ca, infatti, il Web e stato concepito come un modo per visualizzare informa-
zioni tramite documenti ipertestuali statici, che facevano un uso praticamen-
te esclusivo di HTML, caratterizzato inizialmente da un’assenza di standard
per Internet. Questo tipo di approccio e de nibile come Web 1.0. In seguto,
grazie all’evoluzione delle tecnologie di sviluppo software, che hanno visto
di ondersi l’integrazione con i database e l’utilizzo di sistemi per la gestio-
ne dei contenuti (CMS - Content Management System), Internet ha potuto
evolversi in favore di ci o che possiamo de nire come Web 1.5, che e inqua-
drabile in prospettiva evolutiva tecnologica, come un tentativo di avvicinare
le applicazioni Web alle applicazioni tradizionali per i sistemi operativi, tra-
mite una razionalizzazione dei linguaggi di markup, che adesso permettono
di separare l’aspetto dei contenuti da quello presentazionale, con tutti i van-
taggi che questo comporta. E’ stato in pratica creato un modo di concepire
il Web abbastanza diverso, ma tecnologicamente equivalente al Web prece-
dente: utilizza in ogni caso gli stessi protocolli e l’infrastruttura portante e
costituita sempre su TCP/IP e HTTP, dove l’ipertesto e ancora la chiave
per esprimere le relazioni fra i contenuti, ma che e pi u vicino all’esigenza
di molti utenti di pubblicare contenuti sulla rete con facilit a e senza troppe
competenze speci che. Il Web 2.0 e stato poi un passo progressivo naturale
di una rete che connota maggiormente l’aspetto della dimensione sociale e
della condivisione, rispetto a quello della mera fruizione. Con il Web 2.0,
Internet e diventato pi u accessibile, grazie anche alla di usione progressiva
della banda larga a costi contenuti ed un’ attenzione maggiore per l’uten-
te poco esperto. Oggi infatti esistono i blog, tramite i quali chiunque pu o
pubblicare i propri contenuti, senza il bisogno di costruirne la veste gra ca o
di conoscere gli aspetti tecnici delle applicazioni: se prima il Web richiedeva
l’intervento di esperti per realizzare un compito speci co, adesso e popolata
1.2. CENNI TEORICI SUL WEB SEMANTICO9
da scrittori, giornalisti con preparazione informatica non molto elevata; sotto
questo aspetto un’accelerazione del processo evolutivo e stata data dai co-
siddetti wiki, che rappresentano lo stadio pi u avanzato dei CMS; i sistemi di
delizzazione dell’utenza del sito si sono evoluti radicalmente, poich e oggi si
possono fruire i contenuti del sito anche da fonti esterne ad esso, attraverso
il concetto di syndication (parliamo di formati quali RSS, Atom e tagging),
che hanno permesso la creazione di aggregatori di notizie, attraverso canali
di erenti, come i feed, che consistono in liste di elementi che condividono un
certo titolo, consultabili con il proprio browser; piattaforme come ‘Blogger’
o ‘Wordpress’ hanno inoltre contribuito alla realizzazione di un Web che pre-
dilige una pubblicazione istantanea dei contenuti e la loro classi cazione ed
indicizzazione sui motori di ricerca pi u importanti.
1.2.3 La concezione del Web semantico
In questi anni uno dei settori pi u attivi nell’ambito della ricerca nell’informa-
tica, riguarda la soluzione al problema di favorire un interscambio di informa-
zioni che sia adatto all’interrogazione, all’interpretazione, alla elaborazione
automatica dei dati. Con il termine Web semantico, che e stato coniato da
Tim Berners Lee, un informatico inglese tra i padri fondatori del World Wide
Web, si intende la transizione da un sistema basato su documenti ed colle-
gamenti fra essi, ad un sistema in cui i documenti pubblicati, la cui origine
pu o essere della tipologia pi u svariata (pagine HTML, le, immagini, ecc...)
possano essere associati ad informazioni e dati (ovvero metadati) che servono
a speci carne il contesto semantico. L’evoluzione propugnata dagli studio-
si della materia, non sarebbe tesa a sostituire il Web nella forma in cui lo
intendiamo oggigiorno, ma piuttosto lo integrerebbe, rendendo possibili sia
funzioni di ricerca molto pi u evolute di quelle attuali nel reperimento di infor-
10CAPITOLO 1. INTRODUZIONE
mazioni, sia con la creazione di una vera e propria infrastruttura intelligente
capace di facilitare l’accesso all’informazione per mezzo di agenti software in-
telligenti in grado di risolvere e gestire speci ci problemi della quotidianit a.
Questi agenti software dovrebbero essere programmati evitando di ricorre-
re all’intelligenza arti ciale ad alti livelli, per abbattere la complessit a nelle
elaborazioni, poich e nel Web pi u che in altri ambiti, uno dei parametri fonda-
mentali e la semplicit a. Inoltre, essi potrebbero guidare o persino sostituire
l’utente nello svolgimento di diverse operazioni. Questi ‘agenti’ dovrebbero
essere in grado di assolvere a delle mansioni speci che:
Comprendere il signi cato dei testi presenti sulla rete
Creare percorsi guidati sulla base dell’input inserito dall’utente
Navigare automaticamente all’interno delle risorse Web, esplorandole e
recuperando informazioni
Veri care l’attendibilit a ed il livello di ducia sull’informazione trova-
ta (per mezzo di controlli incrociati o innescando logiche inferenziali
deduttive del contesto)
Ma allora potremmo chiederci perch e investire il futuro nella gestione nel-
l’informazione? Basti pensare che un utente medio passa la maggior parte
del proprio tempo di fronte al pc per ricercare informazioni. Non a caso
i colossi di Internet come Google o Yahoo sono diventati nel giro di pochi
anni un punto di riferimento per chiunque decida di navigare sul Web per
gli scopi pi u disparati, che vanno dal contesto lavorativo a scopi meramente
di svago. Il problema sta nel fatto che le grandi masse di risorse informative
presenti su Internet tendono a coprire ci o che l’utente realmente cerca. Il
risultato e che abbiamo la sensazione che le risposte fornite dai motori siano
1.2. CENNI TEORICI SUL WEB SEMANTICO11
poco pertinenti. Questo comporta una perdita di tempo nel rintracciare le
informazioni, ma anche un senso di frustrazione e una sindrome da sovrac-
carico di informazione, non troppo lontana dallo stress generalizzato di tutti
i giorni.
Possiamo desumere perci o, che una delle scommesse pi u importanti del
Web semantico e sicuramente quella di fornire delle risposte a domande che
siano state formulate in linguaggio naturale dall’utente. Tuttavia, il Web
semantico e inquadrabile in una visione pi u ampia, che si e manifestata come
continuazione naturale del Web 2.0 e alla quale diamo il nome di Web 3.0,
con il quale si ipotizzano diversi percorsi evolutivi possibili, fra i quali:
La trasformazione di Internet in un database, volta alla realizzazione
di una piattaforma che faciliti l’accesso da parte di pi u applicazioni,
non soltanto browsers.
L’evoluzione delle applicazioni che fanno uso di intelligenza arti ciale.
Il Web semantico
Il Geospatial Web
Il Web 3D
Non sappiamo quale di queste visioni di Web 3.0 avr a prevalenza sulle
altre, ma a partire dal 2007, diverse aziende stanno realizzando investimen-
ti in direzione del Web semantico, sia per applicazioni Web-based, che per
applicazioni desktop e abbiamo assistito allo sviluppo di diverse start-up in-
teressanti, come Garlik e Powerset, che hanno realizzato software intelligenti
che utilizzano dati semantici per lo sviluppo di nuovi motori di ricerca e
hanno avuto una spinta anche dai mass-media che li pubblicizzano.
12CAPITOLO 1. INTRODUZIONE
Possiamo di certo a ermare, che nonostante ci siano diverse visioni di Web
3.0, tutte condividono delle caratteristiche fondamentali, che vedono neces-
saria una fase iniziale che si muove verso la strutturazione dei dati presenti
su Internet, utilizzando l’RDF come formato standard; l’altra componente
chiave sar a la realizzazione di applicazioni pi u vicine al modo di pensare del-
l’uomo, il che ci conduce al concetto di intelligenza arti ciale, che ha bisogno
di trarre questa intelligenza da ci o che gi a esiste, o attraverso ildata mining,
oppure in maniera pi u organica, attraverso l’estrazione di un’intelligenza col-
lettiva, che tenter a di costruire degli schemi ontologici a partire dalle reti
sociali come Flickr o Facebook, servendosi di una architettura collaborativa
costituita da persone, e non solo da dati.
Un’altra delle prospettive interessanti sar a il sorgere di applicazioni orien-
tate al Web 3D, ambito ancora molto sperimentale, sul quale esiste scarsa
documentazione, che prospetta una trasformazione del Web in una serie di
spazi tridimensionali, in linea con quanto realizzato da Second Life e da ar-
chitetture gra che che stanno muovendo oggi i primi passi, come Wonderland
(concepito dalla Sun) e JMonkey.
Tuttavia, ci o che sar a ancora pi u interessante vedere e la possibilit a di
integrazione fra queste diverse prospettive, che potr a completare la realizza-
zione del Web 3.0 in senso pieno. Esistono gi a i formati standard e la ricerca,
ma non sappiamo se questa promessa sar a mai realizzata: soltanto il tempo
potr a dirlo.
Di sicuro, per rendere possibile questa promessa, e necessario un progetto
ambizioso che sia in grado di creare, mantenere ed aggiornare gli schemi rela-
tivi a tutti i domini della conoscenza (statistica, arte, geogra a, commercio,
ecc.) al ne di costruire una base di conoscenza di concetti e relazioni, che no-
nostante le di erenze linguistiche e sintattiche, sia condivisa nei signi cati.
1.2. CENNI TEORICI SUL WEB SEMANTICO13
Non meno importante, del resto, e l’esigenza di prevedere ragionevolmen-
te i desideri dell’utente, per aiutarlo a portare a termine il loro compito e
aumentare sempre pi u la percentuale di pertinenza del risultato fornito.
1.2.4 L’architettura del Web semantico
La di usione delle applicazioni semantiche sar a un processo lento e ad oggi
non esistono tutte le tecnologie per metterlo in atto in senso completo. Sicu-
ramente, possiamo asserire che il Web semantico nasce dall’idea di estendere
schemi per descrivere i domini di informazione. Come detto, ci o di cui ne-
cessitano i collegamenti e di una connotazione semantica che li descriva e
per permettere che ci o sia possibile, si utilizzano i metadati, ovvero delle
informazioni comprensibili da una macchina che sono relativi a qualche ri-
sorsa presente sul Web e trasferibili con il documento, che hanno il ruolo di
mappare i dati rispetto a classi o concetti di un certo schema di dominio.
Parliamo cio e di strutture in grado di descrivere i collegamenti esistenti fra
le informazioni, permettendo ai programmi di elaborare automaticamente
queste informazioni nel modo corretto ed al momento giusto.
Figura 1.1: Architettura del Web semantico.
Possiamo notare dalla Figura 1.1, che nella costruzione del Web seman-
14CAPITOLO 1. INTRODUZIONE
tico, diverse risorse tecnologiche sono coinvolte, alcune gi a esistenti ed af-
fermate, altre ancora in corso d’opera o in prospettiva di realizzazione. In
particolare, le risorse su cui poggia il Web semantico, sono tre:
I dati, de niti in maniera strutturata tramite XML;
I metadati, ovvero le informazioni sui dati;
Le ontologie, cio e rappresentazioni semantiche dei dati e metadati tra-
mite linguaggi specializzati.
Come possiamo vedere, i gradini pi u in alti della piramide dell’architet-
tura sono occupati da tecnologie ancora in evoluzione, fra cui distiguiamo
tre caratteristiche: Logica, prova, ducia; a nch e il Web semantico possa
vedersi realizzato migliorando l’approccio dell’utente in una vasta gamma di
situazioni e permettendo alle macchine di elaborare autonomamente il con-
tenuto informativo delle risorse nella rete, e necessario implementare e stan-
dardizzare un potente linguaggio logico inferenziale, cio e un linguaggio che,
attraverso procedimenti di tipo deduttivo, partendo da una o pi u premesse,
ricavi, per via logica, una conclusione. Non meno importante sar a garanti-
re la validazione di queste conclusioni ad opera di motori di validazione, i
quali dovranno anche distinguere il livello di attendibilit a delle informazioni
restituite all’utente, cio e identi care l’autore di un’asserzione.
1.2.5 I metadati sul Web
Per pubblicare i metadati sul Web esistono fondamentalmente tre vie:
Pubblicare le RDF sul Web, in maniera simile all’HTML.
Installare un endpoint SPARQL che o ra i dati richiesti in una query
SPARQL.