Word embedding
Il word embedding (tradotto letteralmente immersione di parole) anche conosciuto come rappresentazione distribuita delle parole[1] permette di memorizzare le informazioni sia semantiche che sintattiche delle parole partendo da un corpus non annotato[2] e costruendo uno spazio vettoriale in cui i vettori delle parole sono più vicini se le parole occorrono negli stessi contesti linguistici, cioè se sono riconosciute come semanticamente più simili (secondo l'ipotesi della semantica distribuzionale).
Definizione
[modifica | modifica wikitesto]In una definizione più rigorosa il word embedding è un termine complessivo che indica, nell'elaborazione del linguaggio naturale, un insieme di tecniche di modellazione in cui parole o frasi di un vocabolario vengono mappate in vettori di numeri reali. Concettualmente consiste in un'operazione matematica di immersione in conseguenza della quale uno spazio costituito da una dimensione per parola viene trasformato in uno spazio vettoriale continuo di dimensione molto inferiore. Queste tecniche trovano applicazione nello studio della vicinanza semantica del discorso, in particolare nel mondo della semantica distribuzionale.
Metodi
[modifica | modifica wikitesto]I metodi per generare questa mappatura comprendono le reti neurali,[3] la riduzione dimensionale sulla matrice di co-occorrenza della parola,[4][5][6] modelli probabilistici,[7] e rappresentazione esplicita in base al contesto in cui la parola appare.[8]. Molte delle nuove tecniche di word embedding sono realizzati con l'architettura delle reti neurali invece che con le più tradizionali tecniche ad n-grammi e di apprendimento supervisionato.
I thought vector (letteralmente vettori di pensiero) sono un'estensione delle word embedding per intere frasi o anche documenti. Alcuni ricercatori sperano che questi possano aumentare la qualità della traduzione automatica.[9][10]
Applicazioni
[modifica | modifica wikitesto]Gli algoritmi più popolari proposti per l'apprendimento del word embedding sono Word2vec, sviluppato da Tomas Mikolov[11], e GloVe, sviluppato dalla Stanford University[12]. Sono anche disponibili alcuni software e librerie software, come Gensim[13] e Deeplearning4j[14], che offrono un'implementazione di questi algoritmi e ne permettono l'uso in altre applicazioni. Altri algoritmi, come l'Analisi delle componenti principali (PCA) e t-distributed stochastic neighbor embedding (t-SNE), sono usati per diminuire la dimensione dello spazio dei vettori di parole e per permetterne la visualizzazione in uno spazio bidimensionale o tridimensionale[15].
Note
[modifica | modifica wikitesto]- ^ Turian, Joseph, Lev Ratinov, and Yoshua Bengio. "Word representations: a simple and general method for semi-supervised learning." Proceedings of the 48th annual meeting of the association for computational linguistics. Association for Computational Linguistics, 2010.
- ^ Mikolov, Tomas, Wen-tau Yih, and Geoffrey Zweig. "Linguistic Regularities in Continuous Space Word Representations." Hlt-naacl. Vol. 13. 2013., su aclweb.org. URL consultato il 10 marzo 2017 (archiviato dall'url originale il 30 novembre 2016).
- ^ (EN) Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg Corrado e Jeffrey Dean, Distributed Representations of Words and Phrases and their Compositionality, su arxiv.org/archive/cs.CL, 2013.
- ^ Rémi Lebret e Ronan Collobert, Word Emdeddings through Hellinger PCA, in Conference of the European Chapter of the Association for Computational Linguistics (EACL), vol. 2014, 2013, arXiv:1312.5542.
- ^ Omer Levy e Yoav Goldberg, Neural Word Embedding as Implicit Matrix Factorization (PDF), NIPS, 2014.
- ^ Yitan Li e Linli Xu, Word Embedding Revisited: A New Representation Learning and Explicit Matrix Factorization Perspective (PDF), Int'l J. Conf. on Artificial Intelligence (IJCAI), 2015.
- ^ Amir Globerson, Euclidean Embedding of Co-occurrence Data (PDF), in Journal of Machine learning research, 2007.
- ^ Omer Levy e Yoav Goldberg, Linguistic Regularities in Sparse and Explicit Word Representations (PDF), CoNLL, 2014, pp. 171–180.
- ^ (EN) Ryan Kiros, Yukun Zhu, Ruslan Salakhutdinov, Richard S. Zemel, Antonio Torralba, Raquel Urtasun e Sanja Fidler, Skip-thought vectors, su arxiv.org/archive/cs.CL, 2015.
- ^ (EN) Thoughtvectors, su deeplearning4j.org. URL consultato il 6 marzo 2017 (archiviato dall'url originale l'11 febbraio 2017).
- ^ (EN) Thomas Mikolov, Efficient estimation of word representations in vector space (PDF), in Proceedings of NIPS, 2013. URL consultato il 4 settembre 2018.
- ^ (EN) GloVe, su nlp.stanford.edu.
- ^ (EN) Gensim, su radimrehurek.com. URL consultato il 6 marzo 2017 (archiviato dall'url originale il 3 gennaio 2017).
- ^ (EN) Deeplearning4j, su deeplearning4j.org. URL consultato il 4 settembre 2018 (archiviato dall'url originale il 18 novembre 2017).
- ^ (EN) Mohammad Ghassemi, Roger Mark e Shamim Nemati, A Visualization of Evolving Clinical Sentiment Using Vector Representations of Clinical Notes (PDF), in Computing in Cardiology, 2015.