=Paper=
{{Paper
|id=Vol-1397/sinai-Word2Vec
|storemode=property
|title=Participación de SINAI DW2Vec en TASS 2015
|pdfUrl=https://ceur-ws.org/Vol-1397/sinai-Word2Vec.pdf
|volume=Vol-1397
|dblpUrl=https://dblp.org/rec/conf/sepln/Diaz-GalianoM15
}}
==Participación de SINAI DW2Vec en TASS 2015==
TASS 2015, septiembre 2015, pp 59-64 recibido 20-07-15 revisado 24-07-15 aceptado 29-07-15
Participación de SINAI DW2Vec en TASS 2015∗
SINAI DW2Vec participation in TASS 2015
M.C. Dı́az-Galiano A. Montejo-Ráez
University of Jaén University of Jaén
23071 Jaén (Spain) 23071 Jaén (Spain)
mcdiaz@ujaen.es amontejo@ujaen.es
Resumen: Este artı́culo describe el sistema de clasificación de la polaridad utiliza-
do por el equipo SINAI-DW2Vec en la tarea 1 del workshop TASS 2015. Nuestro
sistema no sigue el modelo espacio vectorial clásico ni aplica análisis sintáctico o
léxico alguno. Nuestra solución se basa en un método supervisado con SVM sobre
vectores de pesos concatenados. Dichos vectores se calculan utilizando dos técnicas:
Word2Vec y Doc2Vec. La primera obtiene la sumatoria de vectores de palabras con
un modelo generado a partir de la Wikipedia en español. Con la técnica Doc2Vec
se generan vectores de caracterı́sticas a partir de la colección de tweets de entre-
namiento, en este caso a nivel de párrafo (o tweet) en lugar de a nivel de palabra
como lo hace Word2Vec. La experimentación realizada demuestra que ambas técni-
cas conjuntas consiguen mejorar al uso de cada técnica por separado.
Palabras clave: Análisis de sentimientos, clasificación de la polaridad, deep-
learning, Word2Vec, Doc2Vec
Abstract: This paper introduces the polarity classification system used by the
SINAI-DW2Vec team for the task 1 at the TASS 2015 workshop. Our approach
does not follow the Vector Space Model nor applies syntactic or lexical analyses.
This solution is based on a supervised learning algorithm over vectors resulting from
concatenating two different weighted vectors. Those vectors are computed using two
different, yet related, algorithms: Word2Vec and Doc2Vec. The first algorithm is
applied so as to generate a word vector from a deep neural net trained over Spanish
Wikipedia. For Doc2Vec, the vector is generated with paragraph vectors (instead of
word vectors) from a neural net trained over the tweets of the training collection.
The experiments show that the combination of both vector distributions leads to
better results rather than using them isolated.
Keywords: Sentiment analysis, polarity classification, deep learning, Word2Vec,
Doc2Vec
1 Introducción utilizado con buenos resultados el año an-
En este artı́culo describimos el sistema cons- terior, junto con la técnica Doc2Vec que
truido para participar en la tarea 1 del works- nos permite representar un trozo variable de
hop TASS (Sentiment Analysis at global le- texto, por ejemplo una frase, en un espa-
vel), en su edición de 2015 (Villena-Román cio n-dimensional. Por lo tanto, utilizando
et al., 2015). Nuestra solución continúa con Word2Vec generamos un vector para cada pa-
las técnicas aplicadas en el TASS 2014, uti- labra del tweet, y realizamos la media de di-
lizando aprendizaje profundo para represen- chos vectores para obtener una única repre-
tar el texto, y dando un paso más generan- sentación con Word2Vec. A dicho vector le
do una representación no sólo a nivel de pa- concatenamos el vector obtenido con el mode-
labras sino también de frases o documen- lo Doc2Vec, para generar una única represen-
tos. Para ello utilizamos el método Word2Vec tación del tweet. Una vez obtenidos los vec-
tores de todos los tweets utilizamos un pro-
∗
Esta investigación ha sido subvencionada parcial- ceso de aprendizaje supervisado, a partir del
mente por el proyecto del gobierno español ATTOS
(TIN2012-38536-C03-0), por la Comisión Europea
conjunto de entrenamiento facilitado por la
bajo el Séptimo programa Marco (FP7 - 2007-2013) organización y el algoritmo SVM. Nuestros
a través del proyecto FIRST (FP7-287607). resultados demuestran que el uso conjunto de
Publicado en http://ceur-ws.org/Vol-1397/. CEUR-WS.org es una publicación en serie con ISSN reconocido ISSN 1613-0073
M. C. Díaz-Galiano, A. Montejo-Ráez
ambas técnicas mejora los resultados obteni- como el de Socher et al. (Socher et al., 2011).
dos utilizando sólo una de las técnicas pre- Los algoritmos de aprendizaje automático no
sentadas. son nuevos, pero sı́ están resurgiendo gracias
Estos experimentos se presentan al ampa- a una mejora de las técnicas y la disposición
ro del TASS (Taller de Análisis de Sentimien- de grandes volúmenes de datos necesarios pa-
tos en la SEPLN), que es un evento satélite ra su entrenamiento efectivo.
del congreso SEPLN, que nace en 2012 con la
finalidad de potenciar dentro de la comuni- En la edición de TASS en 2012 el equipo
dad investigadora en tecnologı́as del lenguaje que obtuvo mejores resultados(Saralegi Uri-
(TLH) la investigación del tratamiento de la zar y San Vicente Roncal, 2012) presentaron
información subjetiva en español. En 2015 se un sistema completo de pre-procesamiento de
vuelven a proponer los mismos dos objetivos los tweets y aplicaron un lexicón derivado
que en la convocatoria anterior. Por un lado del inglés para polarizar los tweets. Sus re-
observar la evolución de los sistemas de análi- sultados eran robustos en granularidad fina
sis de sentimientos, y por otro lado evaluar (65 % de accuracy) y gruesa (71 % de accu-
sistemas de detección de polaridad basados racy). Otros sistemas, compararon diferentes
en aspectos. técnicas de clasificación (Fernández Anta et
La tarea del TASS en 2015 denominada al., 2012) implementadas en WEKA (Hall et
Sentiment Analysis at global level consiste en al., 2009), o trataron la clasificación de for-
el desarrollo y evaluación de sistemas que de- ma binaria (Batista y Ribeiro, 2012), lanzan-
terminan la polaridad global de cada tweet do en paralelo distintos clasificadores binarios
del corpus general. Los sistemas presentados y combinando posteriormente los resultados.
deben predecir la polaridad de cada tweet uti- También se utilizó naive-bayes multinomial
lizando 6 o 4 etiquetas de clase (granularidad para construir un modelo del lenguaje (Trilla
fina y gruesa respectivamente). y Alı́as, 2012), un lexicón afectivo para repre-
El resto del artı́culo está organizado de la sentar el texto como un conjunto de emocio-
siguiente forma. El capı́tulo 2 describe el esta- nes (Martı́n-Wanton y Carrillo de Albornoz,
do del arte de los sistemas de clasificación de 2012), recuperación de información (RI) ba-
polaridad en español. En el capı́tulo 3 se des- sado en divergencia del lenguaje para generar
cribe el sistema desarrollado y en el capı́tulo modelos de polaridad (Castellanos, Cigarrán,
4 los experimentos realizados, los resultados y Garcı́a-Serrano, 2012), y un enfoque basa-
obtenidos y el análisis de los mismos. Final- do en el recurso léxico Sentitext, asignando
mente, en el último capı́tulo exponemos las una etiqueta de polaridad a cada término en-
conclusiones y el trabajo futuro. contrado (Moreno-Ortiz y Pérez-Hernández,
2012).
2 Clasificación de la polaridad en
español En la edición de TASS en 2013 el me-
La mayor parte de los sistemas de clasifica- jor equipo (Fernández et al., 2013) tuvo to-
ción de polaridad están centrados en textos dos sus experimentos en el top 10 de los
en inglés, y para textos en español el sistema resultados, y la combinación de ellos alcan-
más relevante posiblemente sea The Spanish zaron la primera posición. Presentaron un
SO Calculator (Brooke, Tofiloski, y Taboada, sistema con dos variantes: una versión mo-
2009), que además de resolver la polaridad de dificada del algoritmo de ranking (RA-SR)
los componentes clásicos (adjetivos, sustanti- utilizando bigramas, y una nueva propues-
vos, verbos y adverbios) trabaja con modifi- ta basada en skipgrams. Con estas dos va-
cadores como la detección de negación o los riantes crearon lexicones sobre sentimientos,
intensificadores. y los utilizaron junto con aprendizaje au-
Los algoritmos de aprendizaje profundo tomático (SVM) para detectar la polaridad
(deep-learning en inglés) están dando buenos de los tweets. Otro equipo (Martı́nez Cámara
resultados en tareas donde el estado del ar- et al., 2013) optó por una estrategia comple-
te parecı́a haberse estancado (Bengio, 2009). mente no supervisada, frente a la supervisa-
Estas técnicas también son de aplicación en da desarrollada en 2012. Usaron como recur-
el procesamiento del lenguaje natural (Collo- sos lingüı́sticos SentiWordNet, Q-WordNet y
bert y Weston, 2008), e incluso ya existen sis- iSOL, combinando los resultados y normali-
temas orientados al análisis de sentimientos, zando los valores.
60
Participación de SINAI DW2Vec en TASS 2015
3 Descripción del sistema ticipación del 2014 (Montejo-Ráez, Garcı́a-
Cumbreras, y Dı́az-Galiano, 2014). Por lo
Word2Vec1 es una implementación de la ar-
tanto, a partir de un volcado de Wikipedia3
quitectura de representación de las palabras
en Español de los artı́culos en XML, hemos
mediante vectores en el espacio continuo, ba-
extraı́do el texto de los mismos. Obtenemos
sada en bolsas de palabras o n-gramas con-
ası́ unos 2,2 GB de texto plano que alimen-
cebida por Tomas Mikolov et al. (Mikolov
ta al programa word2vec con los parámetros
et al., 2013). Su capacidad para capturar la
siguientes: una ventana de 5 términos, el mo-
semántica de las palabras queda comproba-
delo skip-gram y un número de dimensiones
da en su aplicabilidad a problemas como la
esperado de 200, logrando un modelo con más
analogı́a entre términos o el agrupamiento de
de 1,2 millones de palabras en su vocabulario.
palabras. El método consiste en proyectar las
Para crear el modelo de Doc2Vec hemos
palabras a un espacio n-dimensional, cuyos
utilizado los propios tweets de entrenamien-
pesos se determinan a partir de una estruc-
to y test. El motivo de esta decisión se de-
tura de red neuronal mediante un algoritmo
be principalmente a que la biblioteca Python
recurrente. El modelo se puede configurar pa-
para la creación de vectores Doc2Vec no nos
ra que utilice una topologı́a de bolsa de pa-
ha permitido procesar toda la wikipedia (la
labras (CBOW) o skip-gram, muy similar al
misma que la utilizada para Word2Vec). Pa-
anterior, pero en la que se intenta predecir
ra utilizar los propios tweets hemos etiqueta-
los términos acompañantes a partir de un
do cada uno con un identificador único que
término dado. Con estas topologı́as, si dis-
nos permita recuperar su vector del mode-
ponemos de un volumen de textos suficiente,
lo. Además hemos generado un modelo con
esta representación puede llegar a capturar
los siguientes parámetros: una ventana de 10
la semántica de cada palabra. El número de
términos, el modelo DM y un número de di-
dimensiones (longitud de los vectores de ca-
mensiones de 300. Estos parámetros se han
da palabra) puede elegirse libremente. Para el
eligido a partir de distintas pruebas empı́ricas
cáculo del modelo Word2Vec hemos recurrido
realizadas con los tweets de entrenamiento.
al software indicado, creado por los propios
Como puede verse en la Figura 1, nuestro
autores del método.
sistema tiene tres fases de aprendizaje, una
Basándose en Word2Vec, Le y Mikolov
en la que entrenamos el modelo Word2Vec
crearon el modelo Doc2Vec (Le y Mikolov,
haciendo uso de un volcado de la enciclopedia
2014). Este nuevo modelo calcula directa-
on-line Wikipedia, en su versión en español,
mente un vector para cada párrafo o tro-
como hemos indicado anteriormente. Otra en
zo de texto de longitud variable. El siste-
la que se entrena el modelo Doc2Vec con to-
ma para calcular dichos vectores es similar
dos los tweets disponibles, tanto los tweets de
a Word2Vec, con la salvedad de que el con-
entrenamiento como los de test. Y por últi-
texto de cada palabra es inicializado en cada
mo, otra en la que representamos cada tweet
frase. Al igual que Word2Vec también exis-
como la concatenación del vector obtenido
ten dos topologı́as para dichos contextos de la
con Doc2Vec y el vector como la media de
palabras, bolsa de palabras distribuida (DC-
los vectores Word2Vec de cada palabra en el
BOW) o memoria distribuida (DM - Distri-
tweet. Una simple normalización previa sobre
buted Memory).
el tweet es llevada a cabo, eliminando repe-
Para calcular y utilizar el modelo Doc2Vec tición de letras y poniendo todo a minúscu-
se ha utilizado una biblioteca para Python, las. Ası́, el algoritmo SVM se entrena con un
denominada gensim 2 . Esta biblioteca tam- vector de 500 caracterı́sticas como dimensión,
bién nos permite trabajar con el modelo resultado de dicha concatenación. La imple-
Word2Vec generado anteriormente. mentación de SVM utilizada es la basada en
Tal y como se ha indicado, para obtener kernel lineal con entrenamiento SGD (Sto-
los vectores Word2Vec representativos para chastic Gradient Descent) proporcionada por
cada palabra tenemos que generar un modelo la biblioteca Sci-kit Learn4 (Pedregosa et al.,
a partir de un volumen de texto grande. Para 2011).
ello hemos utilizado los parámetros que me- Obtenemos ası́ tres modelos: uno para los
jores resultados obtuvieron en nuestra par- vectores de palabras según Wikipedia con
1 3
https://code.google.com/p/word2vec/ http://dumps.wikimedia.org/eswiki
2 4
http://radimrehurek.com/gensim/ http://scikit-learn.org/
61
M. C. Díaz-Galiano, A. Montejo-Ráez
Word2Vec, otro con los vectores de tweets Según la colección de evaluación utiliza-
según Doc2Vec, y otro para la clasificación da: Los organizadores pusieron a dispo-
de la polaridad con SVM. Esta solución es la sición de los participantes la colección
utilizada en las dos variantes de la tarea 1 completa (full ) y una colección con un
del TASS con predicción de 4 clases: la que número de etiquetas más homogéneo que
utiliza el corpus de tweets completo (full test sólo contiene 1.000 tweets. Los experi-
corpus) y el que utiliza el corpus balanceado mentos con esta última colección han si-
(1k test corpus). do nombrados como 1k.
Como se puede observar en la Tabla 1,
los experimentos con mejores resultados son
aquellos que utilizan los vectores generados
por ambos modelos y la colección más homo-
genea llegando a alcanzar una precisión del
63 % y un 46 % de Macro-F1. Con la colec-
ción completa, también se alcanzan los mejo-
res resultados utilizando ambos modelos a la
vez, obteniendo una precisión del 62 % apro-
ximadamente y un 47 % de Macro-F1.
Modelo Test coll Accuracy Macro-F1
wd2v full 0,619 0,477
d2v full 0,429 0,360
w2v full 0,604 0,466
wd2v 1k 0,633 0,460
d2v 1k 0,510 0,306
w2v 1k 0,627 0,466
Tabla 1: Resultados obtenidos en los experi-
mentos
Estos datos nos indican que, aún siendo un
sistema bastante sencillo, se obtienen unos re-
sultados prometedores. En ambas colecciones
se han mejorado los resultados obtenidos con
un único modelo (w2v y d2v) utilizando la
conscatenación de ambos (wd2v). Sin embar-
go nuestra clasificiación no ha obtenido los
resultados esperados, debido a que la mejora
obtenida uniendo ambos modelos es muy pe-
queña en comparación con la utilización del
modelo Word2Vec. Esto significa, que la uti-
lización del modelos Doc2Vec en nuestros ex-
Figura 1: Flujo de datos del sistema completo perimentos no es la correcta.
5 Conclusiones y trabajo futuro
4 Resultados obtenidos Este trabajo describe una novedosa aplica-
Para evaluar nuestro sistema hemos realiza- ción de los vectores de palabras generados por
do diversos tipos de experimentos. Estos se el método Word2Vec y Doc2Vec a la clasifi-
diferencian según dos aspectos: cación de la polaridad, consiguiendo una pe-
queña mejora en los resultados de precision y
Según el modelo utilizado para crear los Macro-F1 en la competición TASS 2015, ta-
vectores. Se han realizado experimen- rea 1. Estos resultados son destacables dada
tos utilizando sólo Word2Vec (w2v ), sólo la simplicidad de nuestro sistema, que realiza
Doc2Vec (d2v ) y concatenando los vec- un aprendizaje no supervisado para generar
tores de ambos modelos (dw2v ). un modelo para representar cada tweet. No
62
Participación de SINAI DW2Vec en TASS 2015
obstante, existen diseños experimentales que Galia Angelova Kalina Bontcheva Ruslan
no han podido ser acometidos y que espera- Mitkov Nicolas Nicolov, y Nikolai Nikolov,
mos poder realizar para evaluar mejor nues- editores, RANLP, páginas 50–54. RANLP
tro sistema, como por ejemplo utilizar una 2009 Organising Committee / ACL.
colección de tweets mucho mayor para en-
trenar el sistema Doc2Vec, o incluso la pro- Castellanos, Angel, Juan Cigarrán, y Ana
pia Wikipedia segmentada en frases o párra- Garcı́a-Serrano. 2012. Unedtass: Using
fos. Aunque para el uso de la Wikipedia con information retrieval techniques for topic-
Doc2Vec es necesario un gran sistema compu- based sentiment analysis through diver-
tacional, nuestro primer objetivo serı́a redu- gence models. En TASS 2012 Working
cir el número de párrafos seleccionando estos Notes.
de forma aleatoria o utilizando alguna métri- Collobert, Ronan y Jason Weston. 2008.
ca de selección de caracterı́sticas. De esta for- A unified architecture for natural langua-
ma, podrı́amos observar si esta gran fuente de ge processing: Deep neural networks with
conocimiento es un recurso útil para Doc2Vec multitask learning. En Proceedings of the
y posteriormente estudiar la manera de usar 25th International Conference on Machi-
el recurso completo. ne Learning, ICML ’08, páginas 160–167,
Los algoritmos de aprendizaje profundo New York, NY, USA. ACM.
prometen novedosas soluciones en el campo
del procesamiento del lenguaje natural. Los Fernández, Javi, Yoan Gutiérrez, José M.
resultados obtenidos con un modelo de pala- Gómez, Patricio Martı́nez-Barco, Andrés
bras general no orientado a dominio especı́fi- Montoyo, y Rafael Muñoz. 2013. Sen-
co alguno, ni a la tarea propia de clasifica- timent analysis of spanish tweets using a
ción de la polaridad, ası́ como la no necesi- ranking algorithm and skipgrams. En In
dad de aplicar técnicas avanzadas de análisis Proc. of the TASS workshop at SEPLN
de texto (análisis léxico, sintáctico, resolución 2013.
de anáfora, tratamiento de la negación, etc.)
nos llevan a continuar nuestra investigación Fernández Anta, Antonio, Philippe Morere,
en una adecuación más especı́fica de estos Luis Núñez Chiroque, y Agustı́n Santos.
modelos neuronales en tareas concretas. 2012. Techniques for sentiment analysis
Es nuestra intención, por tanto, construir and topic detection of spanish tweets: Pre-
un modelo propio de aprendizaje profundo liminary report. En TASS 2012 Working
orientado a la clasificación de la polaridad. Notes.
Gracias a los grandes volúmenes de datos, Hall, Mark, Eibe Frank, Geoffrey Holmes,
estas técnicas de aprendizaje profundo pue- Bernhard Pfahringer, Peter Reutemann, y
den aportar buenos resultados en este campo Ian H. Witten. 2009. The weka data mi-
cientı́fico. En cualquier caso, es necesario un ning software: An update. SIGKDD Ex-
diseño cuidadoso de estas redes para lograr plor. Newsl., 11(1):10–18, Noviembre.
resultados mas ventajosos y cercanos a otros
grupos que han participado en esta edición Le, Quoc V y Tomas Mikolov. 2014. Distri-
del TASS 2015, siendo este nuestro objetivo buted representations of sentences and do-
futuro. cuments. arXiv preprint arXiv:1405.4053.
Bibliografı́a Martı́n-Wanton, Tamara y Jorge Carrillo de
Albornoz. 2012. Uned en tass 2012: Sis-
Batista, Fernando y Ricardo Ribeiro. 2012. tema para la clasificación de la polaridad
The l2f strategy for sentiment analysis and y seguimiento de temas. En TASS 2012
topic classification. En TASS 2012 Wor- Working Notes.
king Notes.
Martı́nez Cámara, Eugenio, Miguel Ángel
Bengio, Yoshua. 2009. Learning deep archi-
Garcı́a Cumbreras, M. Teresa Martı́n Val-
tectures for ai. Foundations and trends in
divia, y L. Alfonso Ureña López. 2013.
Machine Learning, 2(1):1–127.
Sinai-emml: Sinai-emml: Combinación de
Brooke, Julian, Milan Tofiloski, y Maite Ta- recursos lingüı́ticos para el análisis de la
boada. 2009. Cross-linguistic sentiment opinión en twitter. En In Proc. of the
analysis: From english to spanish. En TASS workshop at SEPLN 2013.
63
M. C. Díaz-Galiano, A. Montejo-Ráez
Mikolov, Tomas, Kai Chen, Greg Corrado, y
Jeffrey Dean. 2013. Efficient estimation
of word representations in vector space.
CoRR, abs/1301.3781.
Montejo-Ráez, A., M.A. Garcı́a-Cumbreras,
y M.C. Dı́az-Galiano. 2014. Participación
de SINAI Word2Vec en TASS 2014. En
In Proc. of the TASS workshop at SEPLN
2014.
Moreno-Ortiz, Antonio y Chantal Pérez-
Hernández. 2012. Lexicon-based senti-
ment analysis of twitter messages in spa-
nish. En TASS 2012 Working Notes.
Pedregosa, Fabian, Gaël Varoquaux, Alexan-
dre Gramfort, Vincent Michel, Bertrand
Thirion, Olivier Grisel, Mathieu Blondel,
Peter Prettenhofer, Ron Weiss, Vincent
Dubourg, y others. 2011. Scikit-learn:
Machine learning in python. The Journal
of Machine Learning Research, 12:2825–
2830.
Saralegi Urizar, Xabier y Iñaki San Vicen-
te Roncal. 2012. Tass: Detecting senti-
ments in spanish tweets. En TASS 2012
Working Notes.
Socher, Richard, Jeffrey Pennington, Eric H.
Huang, Andrew Y. Ng, y Christopher D.
Manning. 2011. Semi-supervised recursi-
ve autoencoders for predicting sentiment
distributions. En Proceedings of the Con-
ference on Empirical Methods in Natural
Language Processing, EMNLP ’11, pági-
nas 151–161, Stroudsburg, PA, USA. As-
sociation for Computational Linguistics.
Trilla, Alexandre y Francesc Alı́as. 2012.
Sentiment analysis of twitter messages ba-
sed on multinomial naive bayes. En TASS
2012 Working Notes.
Villena-Román, Julio, Janine Garcı́a-Morera,
Miguel A. Garcı́a-Cumbreras, Eugenio
Martı́nez-Cámara, M. Teresa Martı́n-
Valdivia, y L. Alfonso Ureña-López. 2015.
Overview of tass 2015. En In Proc.
of TASS 2015: Workshop on Sentiment
Analysis at SEPLN. CEUR-WS.org, volu-
men 1397.
64