Progetto GAvI 2014/2015

Gestione Avanzata dell’Informazione

Corso di Laurea in Informatica

Progetto  A.A. 2014/2015

 

Indicazioni generali

E’ richiesta la realizzazione e/o la valutazione sperimentale di una applicazione per il sentiment analysis. Il progetto potrà essere svolto singolarmente o in gruppi di 2 persone (opzione consigliata), seguendo l’argomento e le specifiche proposte.

Il progetto dovrà consistere di una presentazione (Powerpoint o PDF con la documentazione completa delle scelte effettuate, delle caratteristiche implementate, dei test effettuati, ecc) e di un archivio (ZIP) contenente tutto il codice realizzato e i dati (collezioni) utilizzati negli esperimenti.

L’applicazione realizzata dovrà:

  1. essere presentata nel modo più chiaro e completo possibile;
  2. essere sviluppata sfruttando le tecniche di gestione dei dati viste a lezione, sia per quanto riguarda la gestione del dato full text (Parte A) che la gestione del dato XML (Parte B);
  3. essere corredata da adeguate prove sperimentali, eventualmente comparative, che mettano in evidenza l’efficacia ottenuta.

 
Il progetto dovrà essere realizzato in Python. In alternativa, potrà essere utilizzato Titanium Appcelerator realizzando così un’applicazione per dispositivi mobili.

Il progetto sarà consegnato di persona, tramite chiavetta, direttamente al docente in occasione dell’esame, che consisterà in:

  1. Presentazione orale, supportata dalle slide proiettate su proprio pc portatile, del lavoro svolto (20 minuti massimo), eventualmente con “demo” in tempo reale di alcune caratteristiche del software;
  2. Domande sugli argomenti del corso.

 
E’ anche possibile estendere il progetto in un più ampio lavoro di tesi.

 

Argomento proposto

Il progetto riguarda la sentiment analysis (una breve introduzione all’argomento è disponibile qui). In particolare, i task di interesse sono i seguenti:

  1. Task A) Comprendere l’andamento dell’umore di una persona
  2. Task B) Comprendere l’opinione di una persona su entità di suo interesse con il fine della profilazione

 
Ogni gruppo deve:

  1. scegliere un task d’interesse;
  2. creare un dataset su cui effettuare le prove sperimentali;
  3. scegliere uno dei metodi proposti ed implementare un’applicazione seguendo gli obiettivi specifici del metodo; l’output dell’applicazione deve essere memorizzato in un opportuno file XML, secondo uno schema definito ad-hoc;
  4. sperimentare l’applicazione sul dataset e valutare l’efficacia/efficienza ottenuta.

 
Attenzione: ogni metodo può essere svolto al più da un gruppo secondo la logica first-in first-served. I metodi già assegnati saranno contrassegnati e non potranno più essere scelti. Il metodo scelto dovrà essere comunicato ai docenti insieme alla composizione del gruppo.

I dataset possibili sono (scegliere una delle due alternative):

  1. Tweet di una persona
  2. Post facebook di una persona

 

I metodi proposti sono i seguenti:

    1. API online gratuite — Assegnato (Paganelli) —
    2. Machine learning — Assegnato (Calò-Brilli) —
    3. Dictionary-based: WordNet e derivati — Assegnato (Marin-Bertoli) —
    4. Dictionary-based: WordNet e derivati— Assegnato (Casari-Orlandi) —
      • – Jaap Kamps and Maarten Marx. “Words with attitude.” In Hendrik Blockeel and Marx Deneker, editors, BNAIC’02: Proceedings of the 14th Belgian-Netherlands Conference on Artificial Intelligence, pages 449-450, 2002
    5. Dictionary-based: SentiWordNet — Assegnato (Verucchi-Zecchini) —
    6. Statistical/Corpus-based— Assegnato (Pizzetti) —

     

    Obiettivi specifici per i vari metodi:

    • – Obiettivo metodo 1: estendere l’elenco delle API, testare le API sul dataset creato  e mettere a confronto i risultati facendo un’analisi critica;
    • – Obiettivo metodo 2: analisi dei risultati per il dataset creato di uno degli approcci elencati, proposta di miglioramenti e successiva implementazione, valutazione finale dell’incremento di efficacia;
    • – Obiettivo dal metodo 3: implementare l’approccio descritto nel lavoro per il task scelto e testarlo con il dataset creato. Analisi critica dei risultati ottenuti.