Scuola Politecnica e delle Scienze di Base elaborato di ... · una rete, attra Àerso prin...
Transcript of Scuola Politecnica e delle Scienze di Base elaborato di ... · una rete, attra Àerso prin...
- 1 -
Scuola Politecnica e delle Scienze di Base
Corso di Laurea in Ingegneria Informatica
relatore
Ch.mo prof. Vincenzo Moscato
correlatore
prof. Giancarlo Sperlì
candidato
Fabrizio Cannavale
matr. N46002224
elaborato di laurea
Social Network Analysis
Anno Accademico 2017-2018
- 2 -
Sommario Social Network Analysis.................................................................................... - 1 -
Introduzione ……………………………………………………………………………………- 4 -
Capitolo 1: Online Social Network .................................................................... - 6 -
Capitolo 2 : Social Network Analysis ............................................................... - 11 -
Capitolo 3: Influence Diffusion and Maximization .......................................... - 24 -
Capitolo 4 : Esempi di Influence Diffusion and Maximization ......................... - 36 -
Conclusioni………………. ................................................................................. - 43 -
- 3 -
Ringrazio mia madre e a mio padre, che sono il mio punto di riferimento e che mi hanno accompagnato e sostenuto durante tutto l’arco di questo percorso;
Ringrazio mio fratello, il mio migliore amico, che ha reso il mio percorso meno impervio e che mi ha aiutato nei momenti di difficoltà e che mi ha consigliato sempre nel modo giusto nelle scelte più complicate;
Ringrazio i miei nonni, chi ancora è qui e chi mi guarda dall’alto, per aver sempre creduto in me;
Ringrazio Gianluca, Kerim, Angelo, Alessio, Andrea, Aurelio, Vincenzo e Luca, che avete reso questi anni indimenticabili e gioiosi;
Ringrazio me stesso per la determinazione e l'impegno nel raggiungere questo traguardo e per averci provato ed esserci riuscito;
Grazie di tutto ciò che mi avete dato.
Non è la fine, è solo un nuovo inizio.
Ad maiora semper.
- 4 -
Introduzione
Al giorno d’oggi la crescente popolarità degli Online Social Network, sopra
tutti Facebook e Twitter, ha fatto sì che questi siano diventati un
importante piattaforma per la diffusione di notizie, idee, opinioni, ecc.
Il ruolo predominante di questi nella vita di tutti i giorni e di tutte le
persone nel mondo ha suscitato l’interesse nel comprendere tutti i legami
e le relazioni che si vengono a creare tra gli utenti che usufruiscono dei
Social Network: l’insieme di questi studi è detta Social Network Analysis,
che ha come obiettivo principale quello di proporre una moderna
metodologia di analisi delle relazioni sociali; proprio per il legame che ha
con quest’ultime, la SNA si è sviluppata a partire dai contributi di Jacob
Levi Moreno, il fondatore della sociometria, scienza che analizza le
relazioni interpersonali e quindi affine all’argomento trattato in questa
tesi.
La SNA (dall'inglese Social Network Analysis) trova ora applicazione in
diverse scienze sociali, come la sociologia, l'antropologia, la psicologia e
l'economia, così come nel management, ed è stata utilmente impiegata
nello studio di diversi fenomeni, come il commercio internazionale, la
diffusione dell'informazione, lo studio delle istituzioni e il funzionamento
delle organizzazioni.
Tutti gli studi esistenti riguardo la Social Network Analysis(SNA) si
concentrano spesso riguardo i lati positivi di questa innovazione, come ad
esempio il poter creare amicizie nuove, stabilire nuovi rapporti; non
- 5 -
vengono dunque spesso considerati i lati negativi, tra i quali diffondere
inimicizia, la possibilità di dichiarare frasi offensive e provocatorie che
hanno poi grande visibilità, senza dimenticare la problematica tutt’oggi in
auge del cyberbullismo.
Nella teoria delle reti sociali, la società è vista e studiata come rete di
relazioni, più o meno estese e strutturate. Il presupposto fondante è che
ogni individuo si relaziona con gli altri e questa sua interazione plasma e
modifica il comportamento di entrambi. Lo scopo principale della SNA è
appunto quello di individuare e studiare tali legami tra gli individui.
Gli strumenti a disposizione per l’analisi delle reti sociali analizzano ed
effettuano delle comparazioni tra i flussi informativi esistenti all’interno di
una rete, attraverso principalmente l’ampio uso di una branca della
matematica nota come teoria dei grafi e dei principi dell’algebra lineare e
della statistica.
Questo lavoro dapprima si propone di effettuare una presentazione sugli
Online Social Networks(OSN) per poi introdurre i concetti cardini della
Social Network Analysis, descrivendone il processo attraverso lo studio dei
dettagli riguardo la sequenza di attività; dopo questa prima presentazione,
si procede nel descrivere le principali applicazioni utilizzate per l’analisi
della relazione dei network.
Successivamente si illustra un esempio di “Influence Diffusion and
Maximization” tratto da uno studio effettuato da alcuni studenti della
“University of Tokyo” riguardo questi due fenomeni e i risultati del loro
esperimento.
- 6 -
Capitolo 1: Online Social Network
1.1 Cosa sono gli Online Social Network
Per Online Social Network (che abbrevieremo con la sigla OSN) si intende
quel settore di applicazioni e interfacce web, accessibili sia attraverso i
browser web sia tramite applicazioni mobili, che permettono a chi ne
usufruisce di connettersi con tutti gli altri utenti registrati e stabilire nuovi
legami. Più precisamente ogni OSN offre uno o più servizi, che possono
essere classificati a seconda del tipo di relazione che l’utente ha
intenzione di stabilire con altri contatti.
Possiamo senza dubbio affermare che la rapida diffusione dei Social
Network è dovuta all’incredibile progresso tecnologico, che ha offerto ad
una grande percentuale della popolazione mondiale la possibilità di
accedere a queste reti sociali e che ha reso questi il più importante mezzo
di comunicazione mediatica.
Grazie agli Online Social Network infatti qualsiasi persona è in grado di
connettersi con chiunque per i motivi più disparati in un tempo molto
rapido; questo poiché i Social Network permettono per esempio, tra i vari
servizi, di restare aggiornati e partecipare in diretta online ad eventi anche
a migliaia di km di distanza: questo senza dubbio è un utilizzo che ci può
far capire l’importanza mediatica degli OSN, dato che ogni utente può
condividere un evento o pubblicare una notizia in breve tempo, godendo
di un’altissima visibilità.
Un secondo utilizzo non meno importante è la capacità dei Social Network
di essere in grado di permettere a chi usufruisce di questi di stabilire veri e
- 7 -
propri legami sociali, dove con questa espressione intendiamo un insieme
di relazioni che spaziano dal poter costruire un rapporto di amicizia ad
addirittura sostenere un colloquio di lavoro: molte aziende infatti usano
Social Network (ad es. LinkedIn) che permettono all’utente di poter
caricare il proprio curriculum vitae e alle aziende di selezionare i profili per
un’opportunità di lavoro.
In conclusione si può tranquillamente affermare che i Social Network sono
diventati oramai parte della vita quotidiana di tutti proprio per l’efficienza
di questi nel saper soddisfare le richieste e i desideri di ogni utente.
1.2 Principali Social Network: caratteristiche e la loro diffusione
E’ possibile distinguere i Social Network a seconda delle funzionalità
offerte e della classe di utenti utilizzatrici: ad esempio abbiamo OSN come
Facebook, Instagram e Twitter utilizzati principalmente dagli utenti per
condividere proprie esperienze, media, stati d’animo e restare aggiornati
su eventi in tutto il mondo.
I tre Social Network sopra citati sono senza dubbio i più utilizzati,
soprattutto tra gli adolescenti, in quanto permettono con grande rapidità
e semplicità di stabilire legami e connessione fra i vari utenti e ,come
abbiamo già sottolineato nell’introduzione, la peculiarità di questi è la
velocità con cui è possibile trasmettere un messaggio: infatti molto spesso
accade che vengano utilizzate le chat fornite da queste piattaforme
- 8 -
semplicemente per comunicare in modo veloce ed avere una rapida
risposta.
Altri Social Network molto famosi sono quelli che facilitano la connessione
delle persone con il mondo lavorativo: esempio di gran rilievo è LinkedIn,
una rete sociale professionale che permette di pubblicare sul proprio
profilo il proprio curriculum vitae e diffonderlo su questa piattaforma,
facilitando di gran lunga la ricerca di un’offerta lavorativa.
Nonostante abbiamo discusso la diversità dei servizi offerti dai singoli
Social Network, questi hanno caratteristiche significative che li
accomunano.
Infatti tutti gli OSN sono servizi web che consentono a chiunque si voglia
registrare la possibilità di:
Creare un proprio profilo contente le informazioni personali all’interno
della rete e rendere lo stesso pubblico o privato a seconda delle necessità
dell’utente.
Avere a disposizione una lista di contatti con cui interagire attraverso i
servizi offerti.
Usufruire della possibilità di scorrere l’elenco di amici dei propri
contatti.
Inviare e ricevere messaggi di testo e/o allegati (es. file .mp3,
immagini, file .doc, ecc.)
Stabilire uno tra i vari tipi di interazione offerti dall’ OSN con qualsiasi
altro utente (es. richiesta di amicizia, richiesta di lavoro ecc.)
- 9 -
Pubblicare contenuti di vario tipo sulla piattaforma, a partire da un
semplice testo anche al condividere link di altri siti.
Accedere a forum o altre piattaforme web usando le stesse
credenziali.
Oltre a queste funzioni, i Social Network sono accomunati da un metodo
di registrazione pressoché simile: infatti un utente per registrarsi ha
bisogno di inserire nel “form” disposto dal singolo Social Network
sicuramente un indirizzo e-mail, utilizzato ad esempio per ricevere le
notifiche se qualche altro utente desidera mettersi in contatto oppure,
uno dei casi più importanti, quando si vogliono cambiare e/o resettare le
credenziali d’accesso.
Successivamente viene chiesto di immettere i propri dati personali, quali
nome, cognome, data di nascita, luogo di nascita, sesso, e, a seconda
dell’OSN, anche di pubblicare altre informazioni, ad esempio il proprio
curriculum vitae, lo stato lavorativo, la propria situazione sentimentale
ecc.
- 10 -
Il concetto fondamentale da non trascurare è sicuramente la grande
accessibilità che queste piattaforme hanno grazie alla crescita tecnologica
che stiamo vivendo in questi anni permettendo dunque a chiunque sia
dotato di un dispositivo in grado di connettersi ad Internet di accedere alle
stesse; in più grazie ai tanti servizi e funzionalità previste dai singoli Social
Network li pongono al centro della comunicazione mediatica e della vita
sociale di un altissima percentuale, se non della totalità, della popolazione
mondiale.
- 11 -
Capitolo 2: Social Network Analysis
2.1 Social Network Analysis
L’interesse accademico e scientifico nei Social Network è stato a lungo
studiato sin dagli anni ’30.
Innanzitutto è opportuno fare chiarezza su cosa si intende con il termine
Social Network Analysis: questa è l’insieme di tutti gli studi riguardo i
rapporti interpersonali che si vengono a creare nelle reti sociali.
Questa branca della sociologia fa ampio uso della teoria dei grafi: gli attori,
in questo caso, sono gli utenti dei Social Network o qualsiasi cosa viene
condivisa attraverso questi; gli attori vengono definiti nodi, mentre i
collegamenti tra gli stessi vengono definiti legami(ties).
La nascita della SNA (acronimo di Social Network Analysis) è dovuta agli
studi compiuti da Jacob Moreno e Helen Jennings negli anni 30: le tesi da
loro elaborate erano incentrate principalmente sull’importanza di
focalizzarsi sulle relazioni costruite dagli attori.
All’inizio era questo lo scopo principale di questa scienza, ma con lo
svilupparsi dei Social Network è diventato fondamentale studiare le
conseguenze della nascita di questi legami e quindi cosa essi comportano;
questi studi hanno trovato particolare affermazione sia in ambiti
accademici, sia in problematiche reali quali il riciclaggio di denaro e il
terrorismo.
- 12 -
Attualmente la SNA è assimilabile ad un settore della sociologia poiché si
concentra sull’influenza delle relazioni sociali in un contesto collettivo.
La SNA ha due tipi di approcci fondamentali: il primo basato a livello
individuale, il secondo “variable-based”.
Nel primo caso, gli studi affermano che gli attori prendono decisioni e
agiscono senza pensare al comportamento degli altri attori: si va ad
analizzare le ragioni per cui una persona ha determinati atteggiamenti, tra
cui esperienze passate che vanno a modificare le scelte future ignorando
le azioni delle altre persone.
Se invece si procede secondo il metodo “variable-based”, si assume che gli
attori si trovano in un contesto sociale connettendosi l’un l’altro,
considerando che le relazioni che si vengono a creare hanno grande
influenza sul comportamento degli altri.
Essendo dunque posta l’enfasi sullo studio delle strutture relazionali poste
dai Social Network, viene considerato molto più importante il secondo
approccio.
Discutiamo quindi i criteri alla base del metodo “variable-based”: oltre ai
concetti fondamentali già espressi, aggiungiamo altre nozioni tra le quali:
Gli attori e le loro azioni sono viste come “interdipendenti” più che
indipendenti, unità autonome.
A livello relazionale i legami (le connessioni) tra attori sono canali per
trasferire o “far fluire” risorse (sia materiali che non materiali) dall’uno
all’altro.
- 13 -
I modelli con cui vengono costruite le connessioni stabiliscono quali
opportunità offrire agli attori e quali vincoli imporre su un’azione
individuale.
Infine è d’obbligo specificare come i metodi di connessione si basino o su
una diade attori-connessioni (due attori e le relative connessioni) , o su
una triade attori-connessioni(tre attori e le relative connessioni), o su
sistemi più ampi(sottogruppi di individui, o intere reti). Dunque sono
necessari metodi “ad – hoc”:
Descrizione Formale: La SNA entra in un processo di sviluppo e
definizione di un determinato modello, effettuando vari test: in questo
primo contesto descrittivo l’analisi della rete sociale offre un vocabolario e
un insieme di definizione formali per esprimere proprietà e concetti
teoretici.
Modello di Valutazione e Testing (Statistico)
In alternativa, modelli di connessione potrebbero essere utilizzati per
testare teorie riguardo processi o strutture relazionali. Queste teorie
danno specifici esiti strutturali che poi possono essere valutati e
confrontati rispetto al modello sotto esame.
Ad esempio, se una teoria sostiene che la tendenza nel reciproco supporto
e scambio di beni tra famiglie in una comunità stia crescendo
frequentemente, una supposizione del genere può essere testata
adottando un metodo statistico e studiando quanto spesso questa
tendenza cresca empiricamente.
- 14 -
La principale caratteristica delle teorie e delle tesi sulle connessioni è che
queste richiedono concetti, definizioni e processi dove le singole unità
sociali sono collegate l’un l’altra da varie relazioni.
Dunque il metodo descrittivo e quello statistico richiedono concetti e
procedure analitiche che sono diverse dalle statistiche e dall’analisi
tradizionali dei dati.
2.2 Concetti fondamentali della SNA
Ci sono diversi concetti fondamentali della Social Network Analysis che
sono fondamentali se si vuole discutere delle reti sociali. Questi sono:
attore, legame relazionale, diade, triade, sottogruppo, gruppo, relazione,
rete sociale e il “clustering”.
In questa sezione verranno definiti alcuni di questi concetti chiave e
andremo a delineare livelli differenti di analisi nelle reti sociali.
Attore: Come abbiamo già detto, la SNA si occupa di capire le
connessioni tra entità a livello sociale e le implicazioni di queste
connessioni. Queste entità vengono chiamate attori: rappresentano un
singolo individuo, un’azienda oppure un collettivo di singoli.
Esempi di attori sono persone in un gruppo, o di un settore di un’azienda,
agenzie pubbliche in una città, o stati se considerassimo un modello
globale. L’uso del termine attore non implica che queste entità abbiano
necessariamente la volontà o l’abilità di interagire. In più, molte
applicazioni della SNA si concentrano su una classe di attori che sono dello
- 15 -
stesso tipo (ad es. colleghi in un gruppo di lavoro): raggruppamenti di
questo genere sono definiti “one-mode networks”. Nonostante ciò, alcuni
schemi ci consentono di differenziare gli attori in base a vari tipi o livelli.
Legame Relazionale. Gli attori sono connessi l’un l’altro attraverso
connessioni che definiamo a livello sociale. Il range di questi legami, come
abbiamo discusso nell’introduzione, è veramente ampio.
La caratteristica peculiare di un legame è quella di stabilire una
connessione tra una coppia di attori.
Alcuni degli esempi più comuni di legami nell’analisi delle reti sociali sono:
1. Rapporto tra una persona e un’altra (ad es. amicizia, di piacere, di
rispetto ecc.).
2. Trasferimento di risorse materiali (ad es. transazioni economiche,
prestare e/o richiedere cose).
3. Associazione o affiliazione (ad es. partecipare insieme ad un evento
sociale o appartenere ad uno stesso gruppo sociale)
4. Interazione (ad es. parlare insieme, inviare e ricevere messaggi).
5. Relazioni formali (ad es. rapporti con autorità).
Diade. In questo caso parliamo del caso più basilare, ovvero la
connessione tra due attori. Il legame è naturalmente una proprietà di una
coppia e quindi non viene ritenuto pertinente semplicemente ad un
singolo attore. Molti tipi di analisi delle reti sociali si concentrano sul
comprendere connessioni riguardo le coppie e tutti questi approcci
prendono la diade come unità da analizzare.
- 16 -
Una diade è costituita da una coppia di attori e il possibile o i possibili
legami tra loro. Le analisi riguardo le diadi si concentrano sulle proprietà di
relazioni di parità, come stabilire la reciprocità dei legami, o se più classi di
connessioni occorrono contemporaneamente.
Triade. Molti importanti metodi e modelli delle reti sociali si basano su
relazioni di più soggetti: quindi in questo specifico caso si va ad analizzare
un gruppo di attori e i possibili collegamenti fra loro. La differenza
principale rispetto la diade infatti è quella che due attori se collegati,
posso non essere collegati direttamente, ma attraverso un terzo
intermediario.
Questa è la peculiarità della triade ed il motivo principale per cui viene
studiata: è rilevante capire la differenza e saper distinguere se una triade è
transitiva o bilanciata.
Esempio di triade transitiva: se ad un attore a “piace” l’attore b, e
all’attore b “piace” l’attore c, direttamente all’attore a “piace” l’attore c.
Esempio di triade bilanciata: se agli attori a e b “si piacciono” allora a e b
dovrebbero avere un giudizio simile verso un terzo attore, mentre nel caso
in cui “non si piacciano”, allora dovrebbero avere giudizi contrastante
rispetto ad un terzo attore.
Sottogruppo. Le diadi sono un paio di attori e i relativi legami, le triadi
sono un insieme di tre attori e le relative connessioni. Dunque ne
consegue che possiamo definire un sottogruppo una qualsiasi sottoclasse
di attori, e tutti i collegamenti relativi. Definire e studiare i sottogruppi
utilizzando specifici criteri è stato di grande interesse nell’analisi delle reti
sociali.
- 17 -
Gruppo. La Social Network Analysis non si interessa solamente dei
legami creati nelle diadi, triadi o sottogruppi. Ampliando il discorso su
larga scala, l’efficienza dell’analisi delle reti sociali consiste nell’abilità di
riuscire a modellare le relazioni attraverso sistemi composti dagli attori
dove identifichiamo la collezione di legami tra i membri di un gruppo (che
può essere chiuso o aperto). In questo studio, un gruppo è l’insieme di
tutti gli attori dove i legami devono essere ancora classificati: con questa
definizione si intende che bisogna avere la possibilità di stabilire criteri
teoretici, empirici o concettuali che spieghino le relazioni tra gli attori nel
gruppo così da dividerli in sottoclassi. Quindi quando viene deciso di
raggruppare dati in un gruppo, è necessario anche definire una qualità che
accomuna questi. Andremo dunque a definire definitivamente un gruppo
come l’insieme di attori che vengono scelti secondo precisi criteri
concettuali, teoretici ed empirici. L’ipotesi che sia un gruppo finito è una
specifica analitica: anche se qualcuno potrebbe pensare a legami estesi ad
attori compresi in un gruppo infinito di attori, si avrebbero grandi difficoltà
ad analizzare dati in una così grande rete. Nonostante ciò è importante
sottolineare come modellare gruppi finiti sia uno dei problemi più difficili
da affrontare nell’analisi delle reti sociali, in quanto includiamo la
necessità di stabilire confini ben definiti tra le reti, la difficoltà nel
campionare esempi di connessione e quindi la conseguente definizione di
gruppo. Per questo motivo il campionamento delle reti e la specifica delle
differenze tra una rete e l’altra sono di importanza rilevante.
Relazione: La collezione dei legami di uno specifico tipo tra i membri di
un gruppo viene chiamata relazione. Ad esempio, si può prendere in
considerazione il livello di amicizia tra coppie di bambini di una classe,
- 18 -
oppure della diplomazia tra le nazioni: questi sono legami che definiscono
le relazioni. Per ogni gruppo di attori, potremmo definire diversi stati di
relazioni (tornando all’esempio della diplomazia tra varie nazioni,
possiamo ad esempio registrare la somma di denaro che commerciano in
un determinato periodo di tempo). È dunque importante notare come una
relazione si riferisca alla collezione di legami secondo un determinato
criterio riguardo specifici attori. È ovvio infatti che l’esistenza dei legami è
strettamente dipendente da quella degli attori.
Rete Sociale. Avendo già definito cos’è un attore, un gruppo e una
relazione ora si può dare una definizione più esplicita di rete sociale.
Questa infatti è definita come un insieme finito di classi o attori e la
relazione o le relazioni definite tra loro. La presenza dell’informazione
riguardo i legami è critica e definisce la peculiarità di una rete sociale.
Clustering. Il Clustering dei dati consiste nella ricerca di similarità tra
ciò che compone una grande collezione di dati.
- 19 -
2.3 Proprietà dei Social Network
È necessario ora, per meglio comprendere i concetti che saranno espressi
in seguito, introdurre delle unità di misura, riprese dalla teoria dei grafi,
che vengono utilizzate per studiare una rete classificata come Social
Network.
Unità di misura basiche
1. Node degree. Una prima misurazione per un attore individuale in una
rete è il grado del nodo corrispondente. Dalla teoria dei grafi il grado k-
iesimo è definito come segue:
dove N indica il numero di nodi nel network, aij l’elemento della matrice A
definita come: aij = 1 se i nodi i e j sono interconnessi, aij = 0 altrimenti.
2. Shortest path. Un problema critico in grafici su larga scala è la stima
del percorso più breve (dato un network il percorso tra due nodi di
connessione). Il percorso più breve in media per tutto il network viene
calcolato molto spesso nello studio dei Social Network per individuare
caratteristiche specifiche di questi network. Questo è calcolato come
segue:
- 20 -
dove N denota il numero dei nodi in un network, d(i,j) il percorso più
breve tra i nodi i e j, k segnato il grado medio dei nodi calcolato come nel
punto 1.
3. Clustering coefficient. Il coefficiente di Clustering Gi di un nodo i è
definito come la frazione dei margini tra i vicini del nodo i, e tutti i margini
che possibilmente esistono tra i vicini. Nel caso di network indiretti, il
massimo numero di margini è dato da:
dove ki indica il grado dell’i-esimo nodo.
Il coefficiente di Clustering del nodo i è calcolato come segue:
dove {ejk} indica il gruppo di margini che connettono i vicini del nodo i.
Possiamo anche calcolare il coefficiente di Clustering medio in un network:
con N che indica il numero dei nodi.
- 21 -
Proprietà più comuni dei Social Network
Le proprietà più comuni dei social network sono:
-elevata scalabilità,
- clusterabilità,
- “small-world” networks.
I Social Network sono strutturati secondo l’elevata scalabilità che consiste
nel costruire reti con pochi nodi con grado alto, e lunghe code di nodi a
grado basso.
Inoltre verranno sempre elaborate reti tali che il valore medio di
clusterabilità (definito sopra) sia alto (molto vicino ad 1): questa quindi è
definibile come condizione necessaria affinché un Social Network sia
altamente clusteralizzabile.
È stato anche dimostrato che la maggior parte delle reti che si
costruiscono in natura, come piccole comunità di persone, sono i
cosiddetti “small-world” networks. La principale caratteristica di
quest’ultimi è che il percorso più breve in media è molto piccolo
relativamente al numero dei nodi N che formano la rete.
- 22 -
2.4 Applicazioni della Social Network Analysis
L’analisi delle rete sociali trova applicazione pratica in moltissimi campi: le
più importanti di queste sono quelle affiliate all’aggregazione e
l’estrazione dei dati, al modellare la crescita delle connessioni, al
campionamento delle reti, all’analisi degli attributi e del comportamento
dell’attore e delle interazioni basate su geo-localizzazione, alla
condivisione e filtraggio dei materiali scambiati tra gli attori.
Nel settore privato, le compagnie utilizzano l’analisi delle reti sociali per
supportare e monitorare attività come l’interazione con i clienti, l’analisi
del sistema informativo, per il marketing, per l’assunzione di nuovi
impiegati, ecc.
Applicazioni della SNA si trovano anche in attività di spionaggio, di
reclutamento e più in generale nell’ambito della criminologia e della lotta
al terrorismo.
Uno dei più importanti ambienti in cui la SNA è molto utilizzata è quella
nello studio dell’apprendimento collettivo tramite computer. In questo
ambito, la Social Network Analysis è usata per aiutare a comprendere
come chi deve apprendere collabora in termini quantitativi e qualitativi,
come anche la qualità e le strategie di comunicazione: in più, la SNA si
concentra su specifici aspetti della connessione della rete, o sul network
intero. Per far ciò si serve di rappresentazioni grafiche, rappresentazioni
scritte, e rappresentazioni di dati così da facilitare la disamina delle
connessioni in reti di questo genere.
- 23 -
Tra le tante applicazioni SNA troviamo anche quella che copre gli aspetti
dell’“Influence Diffusion” e dell’”Influence Maximization”, argomenti
principali di questa tesi e che andremo ora ad introdurre.
- 24 -
Capitolo 3: Influence Diffusion and Influence Maximization
L’ “Influence Analysis” è la branca della Social Network Analysis che più
interessa per questo studio, poiché gli obiettivi di questa sono due: il
primo è quello di modellare o individuare modelli dettagliati che
descrivono il processo di diffusione dell’influenza nella rete; il secondo è
quello di definire attraverso il modello di diffusione scelto, un insieme
ristretto di vertici (utenti) ritenuti influenti in uno specifico contesto.
Dunque è opportuno scindere quest’analisi in due singole parti: la prima
tratterà del fenomeno dell’”Influence Diffusion”, mentre successivamente
si tratterà dell’”Influence Maximization”.
3.1 Influence Diffusion
Abbiamo già presentato l’importanza dei Social Network nel permettere a
persone in tutto il mondo di scambiarsi le proprie idee, opinioni ecc., e dei
motivi della rapida diffusione di questi; non abbiamo però analizzato con
precisione gli effetti su larga scala che questa nuova forma di
comunicazione può causare: si è accennato alla diffusione “a cascata” di
idee o di altri fenomeni in qualche modo collegati al concetto del
passaparola senza però discuterne con accuratezza.
- 25 -
Nell’affrontare questo tema è necessario dare determinate definizioni e
spiegare alcuni concetti che derivano dalla teoria dei grafi, affinché si
possano comprendere i meccanismi di influenza interni ad una rete.
Il modello a grafo dei social network determina un’alterazione nel
processo di diffusione dell’influenza in particolare le proprietà
sopracitate di elevata scalabilità e di "small-world", insieme alla
presenza di nodi "notevoli" nella rete, contribuiscono all’aumento
della velocità di diffusione dell’influenza sociale fra gli utenti. Se infatti
un nodo altamente connesso, viene influenzato, esso diffonderà la
propria influenza alla maggior parte dei nodi vicini.
Dunque sia G = (V, E, p) un grafo orientato con V che indica un insieme di
vertici di dimensione n, E l’insieme di archi di dimensione m e p : E → [0, 1]
la funzione che associa ad ogni arco un peso che rappresenta la
probabilità di propagazione dell’influenza su quell’arco: si consideri inoltre
un insieme S0 ⊂ V di vertici iniziali (che chiameremo seed set o early
adopters) che considereremo attivi, mentre tutti gli altri li classificheremo
come inattivi.
Dopo questa suddivisione, è necessario creare dei modelli di diffusioni di
informazioni, opinioni, ecc. in modo da simulare il comportamento di una
particolare struttura delle reti sociali, tra le quali il seed set di partenza e
come evolve nel tempo l’attività di diffusione.
- 26 -
Negli anni sono stati strutturati vari modelli, che sono classificabili in due
grandi categorie:
•Modelli esplicativi: hanno come obiettivo quello di chiarire la
propagazione dell’informazione nella rete, osservando le sequenze di
attivazione dei nodi.
•Modelli predittivi: strutturati con lo scopo di fornire previsioni
sull’evoluzione del processo di diffusione su una particolare rete.
Nonostante ciò, due sono i modelli di base che vengono seguiti per
studiare la diffusione dell’influenza sul grafo di un Social Network: il Linear
Threshold Model (LTM) e l’Independent Cascade Model.
Per ambedue i modelli, il processo viene eseguito per passi di tempo
discreti fino a quando non ci sono più vertici da attivare: inoltre, entrambi
i modelli sono progressivi, nel senso che una volta che un nodo diventa
attivo (o è già stato attivato), resta attivo e non può più disattivarsi.
Ora andremo a discutere brevemente riguardo questi due modelli:
Linear Threshold Model : Secondo questo modello un vertice i viene
influenzato da ogni vertice adiacente j in base ad una probabilità di
influenza p( j, i) tale che:
j ∈ N(i) p( j, i) ≤ 1
dove N(i) indica l’insieme dei vertici adiacenti al vertice i considerando
solo gli archi entranti nel vertice i.
Il processo di “influence diffusion” si svolge secondo questa sequenza:
ogni nodo i seleziona una soglia θi secondo una distribuzione casuale
uniforme nell’intervallo [0, 1] che rappresenta la frazione di vertici
- 27 -
adiacenti che devono diventare attivi al fine di attivare i ; dopo aver
definito l’insieme delle soglie θi casuali e l’insieme dei vertici iniziali, il
processo di diffusione prevede che tutti i vertici che risultano attivi
all’istante t − 1 continuino ad esserlo all’istante t ed inoltre tutti quei
vertici i per i quali si verifica che :
j ∈ N attivi(i) p( j, i) ≥ θi
vengono attivati, dove N attivi(i) = N(i)∩St−1 è l’insieme dei vertici attivi
adiacenti ed incidenti con un arco in i.
In definitiva, il calcolo delle soglie θi è determinate per il nostro scopo
finale in quanto indicano la propensione dei singoli vertici ad essere
influenzati da i vertici ad essi adiacenti, già influenzati a loro volta da altri
vertici. La selezione casuale uniforme di queste soglie è necessaria quando
non si ha conoscenza dei loro valori effettivi.
Independent Cascade Model : A differenza del modello appena
studiato, questo schema presenta un funzionamento molto più semplice:
infatti all’inizio del processo di diffusione è previsto, ai nodi in quel
momento attivi e quindi appartenenti all’insieme St con t = 0, 1, . . ., che ci
sia una sola occasione di attivare i propri nodi vicini che risultano inattivi. Il
successo nell’attivare quest’ultimi dipende dalla probabilità di attivazione
p(i, j) posta sul generico arco (i, j) : inoltre, la probabilità che il generico
nodo i possa attivare un altro generico nodo j è indipendente da ciò che è
successo prima dell’attivazione di i e di conseguenza l’ordine con cui i nodi
sono stati attivati non influisce sui risultati del processo di diffusione.
- 28 -
Nell’eventualità in cui ci siano più vertici attivi aventi un arco verso un
vertice inattivo, i loro tentativi di diffusione verso quel nodo vengono
messi in coda in ordine sparso. Il processo termina quando nessun altro
vertice viene attivato.
È stata già discussa l’importanza di questa caratteristica dei Social
Network, sia per l’impatto che ha su una comunicazione mediatica da
parte di un singolo, ma soprattutto nel campo pubblicitario e di “viral-
marketing” per le aziende che sfruttano l’alta visibilità per far
conoscere a nuove persone i propri prodotti o servizi.
Dopo questa prima panoramica riguardo l’influence diffusion, ora
viene presentata in linea generale la tematica dell’influence
maximization.
3.2 Influence Maximization
La seconda fase della SNA abbiamo detto essere quella della ricerca di
un metodo per massimizzare l’influenza, e far dunque far sì che ciò che
si vuole condividere, qualunque cosa sia, goda della massima visibilità
possibile.
Andremo quindi ad introdurre delle unità di misura, sempre facendo
riferimento alla teoria dei grafi, dette misure di centralità: essendo ora
il nostro obiettivo principale quello di identificare i più importanti attori in
una rete, inizieremo a distinguere anche i nodi “normali” da quelli
“notevoli”, o nodi “hub” , ovvero quei nodi di rete (attori) che sono
- 29 -
grandemente coinvolti in legami con altri nodi che formano un social
network. Oltre a ciò, l’importanza dei nodi è nel numero di questi nodi
“notevoli” , che sono connessi al nodo sotto esame. I metri di centralità
sono stati definiti in modo da mostrare le differenze fra l’importanza dei
vari attori. Per calcolare queste misure dirette e indirette, bisogna
considerare le connessioni tra i nodi. Ora presenteremo le misure più note
e utilizzate di questo tipo, a cui aggiungeremo il Node Degree, già spiegato
nel capitolo 2 .
1. Betweennesses Centrality. La Betweennesses Centrality è una misura
molto importante se si considerano i flussi in un network. Il valore di
larghezza della Betweennesses ci indica che l’attore sotto esame è
connesso con molti altri attori (direttamente e indirettamente). La
Betweennesses Centrality per l’i-esimo nodo è calcolata in questo modo:
dove gjik è il numero di percorsi più brevi che collegano i nodi j e k
passando attraverso il nodo i, gjk il numero di percorsi che non includono
nel loro tragitto il nodo i.
Di solito, Cbi è un valore compreso nell’intervallo [0,1] moltiplicato per la
quantità 2÷(N-1)(N-2), con N uguale al numero di nodi.
2. Closeness Centrality. Un modo per vedere la centralità di un nodo è
quello di vedere la sua distanza o vicinanza rispetto agli altri nodi. Il
problema è quanto vicino si trova un nodo rispetto a tutti gli altri nodi del
- 30 -
network. Questa misura è molto importante e comunemente utilizzata
nella teoria dei grafi.
In generale, la vicinanza Cci del nodo i è definita come l’inverso della
somma delle distanze tra il nodo i e tutti gli altri nodi del network:
dove d(i,j) indica il percorso più breve tra i nodi i e j. La misura che indica
invece la vicinanza può essere vista come il tempo richiesto per diffondere
un’informazione da un nodo a tutti gli altri nodi raggiungibili nel network.
3. Eigenvector Centrality. La Eigenvector Centrality è una misura che
determina l’influenza di un nodo in un social network. Il valore di questa
misurazione dipende dal numero di nodi “notevoli” che sono collegati al
nodo i. La Eigenvector Centrality corrisponde alla matrice coincidente A
del network.
È stata scritta una formula per calcolare questa misura, secondo il quale la
centralità del nodo i è proporzionale alla somma delle centralità di tutti i
nodi che sono connessi all’i-esimo nodo, che dice dunque che:
dove Cej è la “Eigenvector Centrality” del j-esimo nodo, N è il numero di
nodi nella rete, λ è il valore costante, aij un elemento della matrice
coincidente A.
- 31 -
3.3 Algoritmi per la SNA
Per studiare quindi questi due fenomeni sono stati introdotti e sviluppati
degli efficienti algoritmi: ora andremo a delineare le caratteristiche di due
dei principali algoritmi più diffusi nella SNA.
Il primo è il metodo Monte Carlo, ovvero un algoritmo simulation-based di
tipo greedy : attraverso questo algoritmo, la soluzione ottimale per il
problema di influence maximization può essere approssimatà, per
entrambi i modelli di diffusione trattati, di un fattore pari a (1 − 1/e − z)
dove e è la base del logaritmo naturale e z è un valore positivo reale. Ciò
consente di avere sempre una garanzia di performance uguale o superiore
al 63%.
Questo algoritmo segue una strategia di tipo hill-climbing. Spesso si ricorre
a metodi di questo tipo per risolvere molti problemi riguardo
l’ottimizzazione e calcoli su larga scala, in particolare problemi di flusso su
rete. L’algoritmo parte con una soluzione che inizialmente è classificata
come migliore, e procede iterativamente finché non è più possibile trovare
migliorie all’ultima soluzione ottenuta.
La generalizzazione dell’algoritmo di hill-climbing per l’analisi
dell’influenza risulta migliore delle strategie basate sugli indici di centralità
visti nel paragrafo precedente.
- 32 -
La garanzia di approssimazione è fornita dalle proprietà della funzione di
diffusione dell’influenza σ (S). È dimostrato, infatti, che essa è sub-
modulare e monotona, ovvero:
σ(S ∪ {v}) − σ(S ) ≥ σ(T ∪ {v}) − σ(T )
σ(S ∪ {v}) ≥ σ(S )
per tutti i vertici v ed ogni coppia di insiemi S ⊆ T.
Ogni nodo V ha associato un peso W non negativo che indica quanto è
importante che tale nodo venga attivato al termine dell’algoritmo: inoltre
il peso viene usato dal processo di diffusione e confrontato con le
probabilità presenti sugli archi per l’eventuale attivazione dei vertici.
Dunque, dato un grafo orientato G = (V, E, p), un modello di diffusione su
G ed la dimensione del seed set k, l’algoritmo procede come segue:
1. Inizializza un seed set S vuoto;
2. Finché la dimensione del seed set è minore di k calcola la diffusione
dell’influenza partendo da un vertice v ∈ V \ S ;
3. Se il numero di vertici attivati da V è maggiore di quello trovato in
precedenza, aggiungi v al seed set, ovvero S = S ∪ v.
4. Si ricomincia dal punto n°2 e si procede iterativamente finché non si
ha una soluzione migliore.
Dunque il metodo d’evoluzione dell’influenza sceglie in maniera del tutto
casuale le diverse probabilità di diffusione lungo gli archi, per migliorare la
stima dei k vertici più influenti: esso può essere rieseguito più volte a
partire dallo stesso generico vertice v ∈ V / S e, seguendo questo
- 33 -
procedimento, il confronto viene fatto con la media del numero di nodi
attivati σ¯ (v).
L’algoritmo Monte Carlo che prevede dunque una soluzione greedy offre
risultati migliori rispetto ad altri procedimenti ma d’altro canto , viene
considerato inefficiente a causa dell’alto numero di processi di diffusione
che bisogna eseguire sul grafo.
Il secondo metodo proposto consta di un algoritmo che cerca di colmare
l’inefficienza del procedimento visto prima: stiamo parlando del Reverse
Influence Sampling (RIS).
Questo è un algoritmo “sketch-based” che si basa sul modello di diffusione
Independent Cascade e su due principi fondamentali:
• “Reverse Reachable Set”: (abbreviato in seguito RR set) è l’insieme dei
nodi in g che possono raggiungere v tramite un certo percorso, dove g è
un nuovo grafo ottenuto dalla rimozione di tutti gli archi e in G aventi
probabilità 1 − p(e).
• “Random Reverse Reachable Set ” : è un Reverse Reachable Set
generato a partire da un grafo g campionato in modo casuale da G, per un
nodo selezionato da g secondo una distribuzione casuale uniforme.
Partendo da un nodo u appartenente ad un RR set di v ed avviando un
processo di diffusione considerando S = {u}, può accadere che u sia in
grado di attivare v.
Se un nodo u è contenuto in una grande quantità di RR set scelti
casualmente da G allora significa che ha maggior probabilità di attivare un
- 34 -
numero elevato di nodi. Questo può essere visto come un indice di
influenza.
Allo stesso modo, se un seed set di k nodi S è contenuto in una grande
quantità di RR set presi casualmente da G allora S è una buona
approssimazione della soluzione del problema di influence maximization
su G.
L’algoritmo opera, dunque, in due fasi:
1. Generazione di un certo numero di RR set a partire dal grafo G.
2. Selezione dei k nodi che "coprono" il maggior numero di RR set
generati.
Il RIS riscontra due grandi difficoltà: mentre la prima dipende
strettamente dalla scelta del numero di RR set da generare, la seconda è
legata all’eventuale correlazione che può esistere fra i vari RR set.
Nel primo caso, viene suggerito di creare continuamente RR set finché il
numero di nodi ed archi non raggiunge una soglia predefinita: in questa
situazione, viene provata la linearità rispetto la soglia dell’esecuzione
dell’algoritmo, una volta posta tale soglia a Θ(k(m+n) log n/z^3).
Nonostante ciò, questo metodo non risolve interamente il problema.
Per risolvere tali difficoltà è stato proposto l’algoritmo “Two-phase
Influence Maximization” (TIM), una piccola variante del RIS: infatti questa
si diversifica dalla sua versione originale poichè calcola a priori una stima
di θ, ovvero del numero di RR set da generare, il cui valore garantisce
anche la loro indipendenza.
- 35 -
Le due fasi dell’algoritmo sono:
1. Calcolo di un limite inferiore rispetto la massima diffusione
raggiungibile sugli insiemi di k nodi ed utilizzo di tale limite per il calcolo di
θ.
2. Generazione di θ RR set a partire dal grafo G e selezione dei k nodi che
"coprono" il maggior numero di RR set generati.
La generazione dei singoli RR set avviene mediante un algoritmo di ricerca
in ampiezza casuale (random breadth first search) che consiste nei
seguenti passi:
1. Dato un nodo v ∈ G di partenza, viene generato un valore casuale per
ogni arco e entrante in v.
2. In base alla probabilità p(e) viene selezionato il nodo u sorgente
dell’arco e viene inserito in una coda.
3. Viene prelevato un nodo vj dalla coda e viene rieseguito il primo punto
finché non si svuota la coda.
- 36 -
Capitolo 4: Esempi di Influence Diffusion and Maximization
4.1 Introduzione
Ora verrà analizzato un esempio di “Influence Diffusion “ e di “Influence
Maximization “ prendendo come riferimento uno studio effettuato da
alcuni ricercatori dell’università di Tokyo: questi hanno proposto alla base
del loro studio un esempio di struttura dati composto da un indice “real-
time” e completamente dinamico programmato con lo scopo di analizzare
la diffusione e la massimizzazione dell’influenza in reti in evoluzione.
Per raggiungere questo fine, è stata introdotta una tecnica “reachability-
tree-based” e un metodo “skipping”, che riducono in modo significativo il
tempo di calcolo richiesto per l’eliminazione e l’addizione di vertici, e
“generatori di numeri casuali basati su un contatore”, che migliorano
l’efficienza a livello spaziale.
Il risultato dell’applicazione di questo metodo ottenuto dopo esperimenti
eseguiti usando come campione vere reti dinamiche con decine di milioni
di vertici dimostra l’efficienza, la scalabilità e l’accuratezza del metodo
proposto: ad esempio, è infatti possibile calcolare una stima accurata della
diffusione dell’influenza di un “vertex set” in un millisecondo e selezionare
- 37 -
i vertici che hanno un alto tasso di influenza almeno dieci volte più
velocemente di altri algoritmi.
Concettualmente, l’idea principale che viene proposta è che mentre le
strutture dati intermedie che sono utilizzate negli altri algoritmi non
vengono più considerate dopo ogni calcolo, in questo caso vengono
mantenute e i risultati delle stesse riutilizzati dopo la loro costruzione.
Tuttavia, poiché la struttura dati originale non contiene sufficienti
informazioni per un efficiente e corretto aggiornamento dinamico, la sfida
principale è quella di ridisegnare attentamente la struttura dati: ciò
avviene esaminando l’informazione necessaria che deve essere conservata
e dimostrando la non-decrescenza dell’accuratezza della stima dopo un
numero arbitrario di aggiornamenti.
4.2 Schema e costruzione indice dinamico
Ora dunque viene presentato dapprima la struttura dell’indice e poi come
viene costruito così da soddisfare le due query proposte, quella della “
Influence Diffusion “ e della “Influence Maximization “ .
La base è quella di un classico grafo G =(V,E,p).
Supponiamo ε > 0 essere un preciso parametro. Il nostro indice consta di
un set di tuple I = {(zi ,xi , Hi)}i , dove zi ϵ V è il vertice target, xi : E ->[0,1] è
- 38 -
una funzione di attivazione, e Hi è un sottografo di G composto da apici
attivi rispetto ad x .
In questo caso, ogni vertice in V(Hi ) può raggiungere zi in Hi: ognuno di
questi (zi ,xi , Hi ) viene chiamato “sketch”.
Il numero di “sketches” in I viene determinato come segue: il peso di un
sottografo H, identificato come w(H), è definito come :
ed indica lo spazio richiesto per conservare H.
Successivamente, considereremo sempre la condizione secondo cui
avremo sia che :
,
sia che:
dove W :
.
Per un vertice v, indichiamo con Iv il set di indici i ϵ [|I|], con v ϵ V(Hi),
e per un set di vertici S, indichiamo con IS il set di indici i ϵ [|I|] con
l’intersezione dell’insieme S con V(Hi) diversa dall’insieme vuoto. Dunque ,
IS =UvϵS Iv .
Il nostro indice conserva Iv per ogni vertice v, cosìcchè si possa
velocemente riportare gli “sketch” che includono un particolare vertice.
Per ciò che concerne invece la costruzione dell’indice, si inizia da un grafo
statico. Dato un grafo G =(V,E,p), si inizia con un indice vuoto I = Ø, e si
sono ripetutamente creati nuovi “sketches” e aggiunti in I fino a quando il
- 39 -
peso totale dell’indice corrente è minore di W . Uno “sketch” viene
costruito secondo il seguente metodo: in primis, si considera un
determinato vertice zi ϵ V in modo omogeneo a caso e aggiunto in una
coda vuota; viene considerato anche un xi ϵ E →[0,1] sempre preso in
modo casuale.
Ora viene fatto un controllo sulla coda: se la coda è vuota, allora bisognerà
rimuovere un vertice v dalla coda. Se invece è la prima volta che v viene
“visitata”, allora per ogni bordo attivo uv, noi aggiungiamo u alla cosa.
Infine , viene settato V(Hi) ai vertici visitati e E(Hi) i bordi attivi visitati.
Dunque costruire uno “sketch” (zi ,xi , Hi ) richiede O(w(Hi)) tempo,
e di conseguenza la costruzione dell’intero indice richiede O(W) tempo.
4.3 Query di Influence Diffusion e di Influence Maximization
L’”Influence Diffusion” viene studiata attraverso una query che va ad
approssimare il numero di vertici che un vertice v può influenzare con una
quantità uguale a n · |Iv|/|I|; poiché in questo studio viene simulato il
processo di diffusione molte volte per poi stimarne una media , il valore
stimato è esattamente uguale all’influenza σ({v}). In maniera simile, per
un set di vertici S, il numero di vertici che S influenza può essere
approssimato da n · |IS|/|I|. Dato un semplice vertice v, si può calcolare la
sua influenza su altri vertici in un tempo costante attraverso la formula
sopra scritta, siccome IV è stato conservato nell’indice. Per un set di vertici
S di grandezza maggiore di uno normale, immagazzinando ogni V(Hi)
- 40 -
attraverso l’utilizzo di un segno come un cancelletto così da segnare v ϵ
V(Hi) in un tempo costante, la complessità temporale della “influence
diffusion” è limitata da una quantità uguale a O(|S|·|I|).
Tuttavia è possibile migliorare il tempo di esecuzione utilizzando IV , il
quale è stato salvato nell’indice.
Detto ciò, viene poi calcolato , come detto nell’introduzione a questo
studio, IS =UvϵS Iv ; questa tecnica riduce il tempo di esecuzione ad una
quantità pari a O(∑vϵS Iv), e attraverso il seguente algoritmo viene
dimostrato che |IV| è molto più piccolo di |I| :
.
Questo studio ha anche presentato i risultati dell’applicazione del loro
algoritmo per quanto riguarda la influence diffusion , confrontando i
risultati ottenuti con la costruzione dell’ indice dinamico sopra presentato
rispetto ai valori che si otterrebbero attraverso un analisi normale.
I valori ottenuti sono rappresentati in questa tabella, ed evidenziano
l’efficienza e la grande scalabilità di questa procedura:
- 41 -
Per quanto concerne invece la query di “Influence maximization” invece,
bisogna concentrarsi sul trovare un set di vertici S di dimensione k che
massimizza il numero di vertici influenzati da S, dove k è un parametro di
input. L’utilizzo di un “greedy-algorithm” è l’approccio standard per un
problema del genere : per un vertice v, definiamo il grado dI(v) di v in I
come il numero di i ϵ [|I|] con v ϵ V(Hi) e quindi, in altre parole,
inizialmente si ha dI(v) = |IV|.
Dunque, come prima cosa viene scelto il vertice avente il grado più alto in
I e viene denominato v1: dopo ciò, esaminando ogni sketch , questo verrà
rimosso se v1 ϵ V(Hi) . In seguito, viene scelto il vertice con il grado
massimo nell’indice finale, e viene contrassegnato come v2 per poi
ripetere la stessa operazione di prima: vengono di nuovo valutati tutti gli
sketch, e questo vertice verrà rimosso se v2 ϵ V(Hi).
Questo procedimento verrà ripetuto k volte, e alla fine come output
avremo un set di vertici {v1,v2,….. ,vk}.
- 42 -
Ecco l’algoritmo proposto dallo studio a cui si fa riferimento, e i relativi
risultati da loro ottenuti per questa query utilizzando come campioni
social Network come Flickr ed Enron:
- 43 -
Conclusioni
In questo elaborato è stata dunque sottolineata l’importanza dello studio
delle tecniche per la Social Network Analysis in quanto questo
rappresenti sia una sfida e una prerogativa nel campo delle innovazioni
tecnologiche, poiché lo studio soprattutto delle due query oggetto di
questa tesi possono avere risvolti importanti nei più disparati ambiti.
Ad esempio, basti pensare che l’apertura delle piattaforme dei Social
Network e la ricchezza dei contenuti, la possibilità per l’utente di
interagire con altri utilizzatori e tutte le caratteristiche peculiari di questi,
hanno dato inizio a sistemi on-line intelligenti e al concepimento di virali
tecniche di marketing: infatti, se un’azienda volesse promuovere un nuovo
prodotto, attraverso i Social Network può identificare una classe di utenti
, chiamati “influencer“ , in grado di influenzare il gusto di più utenti, e
fornire loro dei campioni di questi prodotti gratuiti .
Questa tecnica è adoperata da molte compagnie in modo che questi
utenti possano promuovere ad altri utilizzatori dei Social Network, a
partire dagli amici, le loro idee sul prodotto in questione, creando così una
catena atta a far aumentare la visibilità di quest’ultimo e incrementando
così il numero dei potenziali clienti del prodotto promosso.
Situazioni simili possono essere considerate quando si vogliono proporre
idee oppure opinioni: un caso può essere considerato quello in cui
candidati politici cercano di trovare in breve tempo sostenitori per i loro
fini politici oppure quello dove autorità governative o aziende cercano di
- 44 -
guadagnarsi un supporto pubblico con lo scopo di ottenere consensi
rispetto i propri fini.
Proprio per la grande varietà di applicazioni in cui si possono utilizzare i
risultati degli studi della Social Network Analysis , possiamo senza dubbio
affermare che i progressi fatti in questo studio crescono
contemporaneamente, se non addirittura migliorano, con il progresso
tecnologico e permettono di e facilitano la vita quotidiana di gran parte
della popolazione mondiale.
- 45 -
Bibliografia______________________________________
[1] WIKIPEDIA, https://it.wikipedia.org/wiki/Rete_sociale
[2] TECNICHE DI INFLUENCE ANALYSIS PER I SOCIAL NETWORK, tesi di laurea magistrale in Big Data Analytics and Business Intelligence di Luigi di Guida
[3] Teoria dei Grafi, https://it.wikipedia.org/wiki/Teoria_dei_grafi
[4] Esempio di Influence Diffusion and Maximization, http://www.vldb.org/pvldb/vol9/p1077-ohsaka.pdf
[5] SOCIAL NETWORK ANALYSIS, tesi di laurea triennale in Basi di Dati di Giuseppe Corbisiero.
[6] TECNICHE DI SOCIAL NETWORK ANALYSIS, tesi di laurea triennale in Basi di Dati di Laura Baruffini.