Progetto e realizzazione di un sistema per la generazione automatica di recensioni tramite reti...

24
Introduzione Strategia Valutazione Conclusioni Progetto e realizzazione di un sistema per la generazione automatica di recensioni tramite reti neurali Universit` a degli Studi di Trieste Dipartimento di Ingegneria e Architettura Corso di Laurea Magistrale in Ingegneria Informatica LAUREANDO RELATORE Dennis MORELLO prof. Alberto BARTOLI CORRELATORI prof. Eric MEDVET dott. Andrea DE LORENZO Anno Accademico 2014/2015 Dennis Morello Generazione automatica di recensioni

Transcript of Progetto e realizzazione di un sistema per la generazione automatica di recensioni tramite reti...

Introduzione Strategia Valutazione Conclusioni

Progetto e realizzazione di un sistema per lagenerazione automatica di recensioni tramite

reti neurali

Universita degli Studi di TriesteDipartimento di Ingegneria e Architettura

Corso di Laurea Magistrale in Ingegneria Informatica

LAUREANDO RELATORE

Dennis MORELLO prof. Alberto BARTOLI

CORRELATORI

prof. Eric MEDVET

dott. Andrea DE LORENZO

Anno Accademico 2014/2015

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Problema Approccio Motivazioni

Perche e importante? (1)

Fonte http://www.mirror.co.uk

Moltissimi utenti (il 90%) leggono le recensioni on-line prima dieffettuare un acquisto

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Problema Approccio Motivazioni

Perche e importante? (2)

Fonte http://tripadvisor-warning.com

Esempio di annuncio di ingaggio per la pubblicazione di falserecensioni su un noto sito di e-commerce

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Problema Approccio Motivazioni

Problema

Dati un ristorante ed un rating desiderato, generare unarecensione che:

sembri scritta da un umano per quel ristorante

esprima un tipo di giudizio conforme al rating desiderato(positivo, negativo o neutro)

da impiegare in un contesto web.

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Problema Approccio Motivazioni

Approccio

Lavoro suddiviso in:

definizione del problem statement

reperimento di un dataset di vere recensioni

addestramento di una rete neurale con cui generarerecensioni

generazione casuale di false recensioni

addestramento di due tipi di classificatori (per tipo diristorante e per rating)

classificazione delle recensioni generate con i classificatori

valutazione sperimentale delle recensioni generate

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Problema Approccio Motivazioni

Motivazioni

Indagare sulle potenzialita delle reti neurali LSTM

– per generare testo che esprima un giudizio

Stimolare lo sviluppo di tecniche di rilevazione di recensionigenerate automaticamente

– limitare diffusione su larga scala di recensioni fraudolente

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Dataset Generazione Classificazione

Dataset

Il dataset delle vere recensioni ottenuto contiene:

66 700 ristoranti di 15 diverse citta

– 32 tipi di cucina coinvolti (tag)

2 169 264 recensioni

– rating medio pari a 4,1 (su una scala da 1 a 5)– lunghezza media di 297 caratteri– occupazione di memoria totale di 680 MB

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Dataset Generazione Classificazione

Rete neurale (1)

La rete neurale scelta e di tipo LSTM:

particolarmente adatta per la generazione di testo

opera su sequenze di caratteri secondo codifica one-hot

apprende la distribuzione dei caratteri del training set

3 strati nascosti contenenti ciascuno 700 blocchi LSTM

Implementazione software char-rnn presa da GitHub.

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Dataset Generazione Classificazione

Rete neurale (2)

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Dataset Generazione Classificazione

Addestramento

Il training set per l’addestramento della rete neurale e statoestratto in modo casuale dal dataset originale:

500 000 recensioni totali

100 000 recensioni per rating

L’addestramento (taratura dei parametri della rete in accordo alladistribuzione dei caratteri del training set) ha richiesto poco piu diun mese.

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Dataset Generazione Classificazione

Generazione false recensioni

1 Scelta casuale recensione r dal training set di addestramentodella rete neurale

2 Estrazione prima frase f di r

3 Esecuzione di char-rnn in modalita generativa, passando ilparametro primetext=f

4 Vengono prodotte 5 recensioni, di cui si prendono solo quelleintermedie

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Dataset Generazione Classificazione

Classificazione false recensioni

Classificazione delle recensioni generate: necessaria perselezionare quelle conformi agli input desiderati.

Due tipi di classificatori:

10 classificatori binari per i 10 tag piu frequenti

Un classificatore multiclasse per i rating

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Dataset Generazione Classificazione

Classificazione per tag

10 classificatori binari addestrati su 100 000 vere recensioniprese dal dataset originale

Classificatore Ck assegna etichetta 1 se ritiene che recensioneabbia il tag k , 0 altrimenti

Prestazioni valutate tramite l’accuracy media dei 10classificatori, risultata pari a 0,75

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Dataset Generazione Classificazione

Classificazione per rating

Classificatore multiclasse addestrato su 500 000 vere recensioniprese dal dataset originale (100 000 recensioni per rating)

Classificatore assegna etichetta n ∈ {1, 2, 3, 4, 5} se ritiene cherecensione abbia rating n

Prestazioni valutate tramite l’errore medio assoluto, risultatopari a 0,69⇒ Il classificatore sbaglia in media meno di 1 nell’attribuire il

rating ad una recensione

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Recensioni Estrinseca Intrinseca

Recensioni valutate

Le recensioni proposte nella valutazione sono prese da 3 insiemi:

Rv contiene 10 000 vere recensioni di 2 000 ristoranti scelti acaso, 2 000 per rating

Rf contiene 13 057 false recensioni generate senza vincoliparticolari

Rf ′ ⊂ Rf contiene 4 274 false recensioni di Rf , classificateper tag e per rating

Sono stati sottoposti ai valutatori 39 gruppi di questionari (in ognigruppo, 3 questionari per valutazione estrinseca e 4 per valutazioneintrinseca).

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Recensioni Estrinseca Intrinseca

Valutazione estrinseca

3 questionari, 1 per ristorante:

3 recensioni proposte in ogni questionario

– almeno 1 vera per quel ristorante presa da Rv

– almeno 1 falsa per quel ristorante presa da Rf ′

nessun vincolo sul rating delle recensioni

si chiede di indicare se ogni recensione sia utile o meno

alla fine di ogni questionario, si chiede se sulla base dellerecensioni proposte si sia invogliati a recarsi in quel ristorante

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Recensioni Estrinseca Intrinseca

Risultati valutazione estrinseca (1)

Vere False0

50

100

150

200#

Rec

ensi

oni

UtiliNon Utili

Il 29% delle false recensioni sono state ritenute utili

Il 20% delle vere recensioni sono state ritenute non utili

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Recensioni Estrinseca Intrinseca

Risultati valutazione estrinseca (2.1)

Suddivisione questionari in 4 classi XY:

X ∈ {P,N} indica il rating medio vere recensioni

Y ∈ {P,N} indica il rating medio false recensioni

P (positivo) se rating medio ≥ 3, altrimenti N (negativo)

Classe Cardinalita

P P 44P N 14N P 37N N 22

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Recensioni Estrinseca Intrinseca

Risultati valutazione estrinseca (2.2)

PP PN NP NN0

20

40#

Qu

esti

onar

i

YesNo

Le false recensioni riescono a sovvertire le intenzioni degli utenti:

nel 29% dei casi l’utente non si reca nei ristoranti (PN )

nel 24% dei casi l’utente si reca nei ristoranti (NP)

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Recensioni Estrinseca Intrinseca

Valutazione intrinseca

4 questionari, 1 per ristorante:

5 recensioni proposte in ogni questionario

– nvm ≥ 0 vere recensioni prese da Rv

– nvc ≥ 0 vere recensioni prese da Rv per ristorante diverso daquello indicato

– nfm ≥ 0 false recensioni prese da Rf ′ relative al ristoranteindicato

– nfc ≥ 0 false recensioni prese da Rf

vincolo di equidistribuzione globale nvm = nvc = nfm = nfc = 5

nessun vincolo sul rating delle recensioni

si chiede di indicare se ogni recensione sia percepita comescritta da un umano per il ristorante indicato oppure no

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Recensioni Estrinseca Intrinseca

Risultati valutazione intrinseca

Rvm Rvc Rfm Rfc0

50

100

150

200

#R

ecen

sion

i

Ritenute VereRitenute False

Nessuna differenza tra false recensioni mirate Rfm e casuali Rfc

Il 24% delle false recensioni e ritenuta vera (colonna Rfc)

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Conclusioni Sviluppi

Conclusioni

L’uso sequenziale della rete generativa e dei classificatori haconsentito di ottenere recensioni mirate per tag e per rating

1 valutatore su 4 ha ritenuto autentica una falsa recensione

⇒ Generando un gran numero di recensioni si potrebberoinfluenzare vasti bacini d’utenza

E potenzialmente possibile contaminare tutti i flussi divalutazione di ristoranti

⇒ Le implicazioni etiche ed economiche sono notevoli

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni Conclusioni Sviluppi

Sviluppi futuri

Aumento del tempo di addestramento della rete neurale

⇒ Le recensioni generate sono piu simili agli esempi presenti neltraining set

Stratificazione del campione impiegato nella valutazione

⇒ Possibilita di indagare sulla percezione dell’autenticita dellerecensioni in relazione al tipo di valutatore

Dennis Morello Generazione automatica di recensioni

Introduzione Strategia Valutazione Conclusioni

Grazie!

Dennis Morello Generazione automatica di recensioni