
Mood-Lamp: How it works!
Nei distributional semantic models (DSMs) , come già visto in questo articolo , le parole vengono rappresentate come un punto nello spazio da un vettore di n numeri che corrispondono alle coordinate rispetto a n assi cartesiani (dimensioni dello spazio). In questo modo il contenuto semantico di una parola è rappresentato dalla sua posizione in uno spazio definito da un sistema di coordinate, determinato dai contesti linguistici in cui la parola può ricorrere. Preparazione delle risorseCome funziona la mood-lamp? La procedura necessaria è abbastanza standard e possiamo ridurla in pochi steps. 1- Training di uno spazio semantico in italiano nella maniera più quick-and-dirty possibile con word2vec (implementazione in python). Per aumentare velocemente la dimensione del dataset ho provato prima utilizzando un questionario online e di recente ho scoperto che Tumblr è davvero ricco di frasi dal contenuto emotivo in italiano (tristezza, sorpresa, gioia, disgusto, paura, rabbia ). L'ideale sarebbe che le frasi nel training e testing set abbiano in media la stessa lunghezza (numero delle parole) e frequenza lessicale (media delle parole contenute nella frase). Step-1: Data cleaning and text pre-processingNormalizzazione di ogni frase contenuta nel dataset: lower case, stopwords , espressioni regolari, punteggiatura, tokenizzazione.
Step-2: From words to word-vectorsTrasformazione di ogni frase nella sua rappresentazione vettoriale , più esattamente nel vettore medio di tutte le parole che compongono ogni frase. La somma dei vettori per ogni parola ci restituirà un nuovo vettore che (più o meno cattura) il contenuto semantico della frase intera che ci servirà inseguito come feature per il classificatore randomForest (scikit-learn) per predire la label. Step-3: Classificatore1- Computare on-line la rappresentazione vettoriale del testo in input: ad ogni parola immessa, ricalcolare il vettore medio.
Bibliografia[1] Magnus Sahlgren, The word-space model: Using distributional analysis torepresent syntagmatic and paradigmatic relations between words in high-dimensional vector spaces, Department of Linguistics,Stockholm University, 2006[2] Magnus Sahlgren, The distributional hypothesis, Italian Journal of Linguistics, 2008 [3] Jurafsky Martin, Speech and language processing, Pearson Education, 2008 [4] P. Turney, and P. Pantel, From frequency to meaning: Vector Space Models of Semantics, J. Artif. Intell. Res.(JAIR), 2010 [5] Baroni M., G. Dinu, G. Kruszewski, Don’t count, predict! A systematic comparison of context-counting vs. context-predicting semantic vectors, Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics, 2014 [6] E. M. Ponti, M. Budassi, Compter, parler, soigner. Tra linguistica e intelligenza artificiale. Atti del Convegno, Pavia University Press, 2016 Sitografia |