=Paper=
{{Paper
|id=Vol-1702/tass2016_proceedings_v212
|storemode=property
|title=Participación de SINAI en TASS 2016
|pdfUrl=https://ceur-ws.org/Vol-1702/tass2016_proceedings_v212.pdf
|volume=Vol-1702
|authors=Arturo Montejo-Raez,Manuel Carlos Díaz-Galiano
|dblpUrl=https://dblp.org/rec/conf/sepln/Montejo-RaezD16
}}
==Participación de SINAI en TASS 2016==
TASS 2016: Workshop on Sentiment Analysis at SEPLN, septiembre 2016, pág. 41-45
Participación de SINAI en TASS 2016∗
SINAI participation in TASS 2016
A. Montejo-Ráez M.C. Dı́az-Galiano
University of Jaén University of Jaén
23071 Jaén (Spain) 23071 Jaén (Spain)
amontejo@ujaen.es mcdiaz@ujaen.es
Resumen: Este artı́culo describe el sistema de clasificación de la polaridad utilizado
por el equipo SINAI en la tarea 1 del taller TASS 2016. Como en participaciones
anteriores, nuestro sistema se basa en un método supervisado con SVM a partir
de vectores de palabras. Dichos vectores se calculan utilizando la técnicas de deep-
learning Word2Vec, usando modelos generados a partir de una colección de tweets
expresamente generada para esta tarea y el volcado de la Wikipedia en español. Nues-
tros experimentos muestran que el uso de colecciones de datos masivos de Twitter
pueden ayudar a mejorar sensiblemente el rendimiento del clasificador.
Palabras clave: Análisis de sentimientos, clasificación de la polaridad, deep-
learning, Word2Vec
Abstract: This paper introduces the polarity classification system used by the SI-
NAI team for the task 1 at the TASS 2016 workshop. Our approach is based on a
supervised learning algorithm over vectors resulting from a weighted vector. This
vector is computed using a deep-learning algorithm called Word2Vec. The algorithm
is applied so as to generate a word vector from a deep neural net trained over a spe-
cific tweets collection and the Spanish Wikipedia. Our experiments show massive
data from Twitter can lead to a slight improvement in classificaciones accuracy.
Keywords: Sentiment analysis, polarity classification, deep learning, Word2Vec,
Doc2Vec
1 Introducción de dichos vectores para obtener una única
representación vectorial. Nuestros resultados
En este trabajo describimos las aportacio-
demuestran que el rendimiento del sistema de
nes realizadas para participar en la ta-
clasificación puede verse sensiblemente mejo-
rea 1 del taller TASS (Sentiment Analy-
rado gracias a la introducción de estos datos
sis at global level), en su edición de 2016
en la generación del modelo de palabras, no
(Garcı́a-Cumbreras et al., 2016). Nuestra so-
ası́ en el entrenamiento del clasificador de po-
lución continúa con las técnicas aplicadas
laridad final.
en el TASS 2014 (Montejo-Ráez, Garcı́a-
Cumbreras, y Dı́az-Galiano, 2014) y 2015 La tarea del TASS en 2016 denominada
(Dı́az-Galiano y Montejo-Ráez, 2015), utili- Sentiment Analysis at global level consiste en
zando aprendizaje profundo para represen- el desarrollo y evaluación de sistemas que de-
tar el texto y una colección de entrenamiento terminan la polaridad global de cada tweet
creada con tweets que contienen emoticonos del corpus general. Los sistemas presentados
que expresan emociones de felicidad o triste- deben predecir la polaridad de cada tweet uti-
za. Para ello utilizamos el método Word2Vec, lizando 6 o 4 etiquetas de clase (granularidad
ya que ha obtenido los mejores resultados en fina y gruesa respectivamente).
años anteriores. Por lo tanto, generamos un El resto del artı́culo está organizado de la
vector de pesos para cada palabra del tweet siguiente forma. El apartado 2 describe el es-
utilizando Word2Vec, y realizamos la media tado del arte de los sistemas de clasificación
∗
de polaridad en español. A continuación, se
Este estudio está parcialmente financiado por el
proyecto TIN2015-65136-C2-1-R otorgado por el Mi-
describe la colección de tweets con emotico-
nisterio de Economı́a y Competitividad del Gobierno nos utilizada para entrenar el clasificador. En
de España. el apartado 4 se describe el sistema desarro-
ISSN 1613-0073
A. Montejo-Ráez, M. C. Díaz-Galiano
llado y en el apartado 5 los experimentos rea- tado y Pla, 2014). Abordaron la tarea co-
lizados, los resultados obtenidos y el análisis mo un problema de clasificación, utilizando
de los mismos. Finalmente, en el último apar- SVM. Utilizaron una estrategia uno-contra-
tado exponemos las conclusiones y el trabajo todos donde entrenan un sistema binario pa-
futuro. ra cada polaridad. Los tweets fueron tokeni-
nizados para utilizar las palabras o los lemas
2 Clasificación de la polaridad en como caracterı́sticas y el valor de cada carac-
español terı́stica era su coeficiente tf-idf. Posterior-
La mayor parte de los sistemas de clasifica- mente realizaron una validación cruzada para
ción de polaridad están centrados en textos determinar el mejor conjunto de caracterı́sti-
en inglés, y para textos en español el sistema cas y parámetros a utilizar.
más completo, en cuanto a técnicas lingüı́sti- El equipo ELiRF-UPV (Hurtado, Pla, y
cas aplicadas, posiblemente sea The Spanish Buscaldi, 2015) volvió a obtener los mejores
SO Calculator (Brooke, Tofiloski, y Taboada, resultados en la edición de TASS 2015 con
2009), que además de resolver la polaridad de una técnica muy similar a la edición anterior
los componentes clásicos (adjetivos, sustanti- (SVM, tokenización, clasificadores binarios y
vos, verbos y adverbios) trabaja con modifi- coeficientes tf-idf). En este caso utilizaron un
cadores como la detección de negación o los sistema de votación simple entre un mayor
intensificadores. número de clasificadores con parámetros dis-
Los algoritmos de aprendizaje profundo tintos. Los mejores resultados los obtuvieron
(deep-learning en inglés) están dando buenos con un sistema que combinaba 192 sistemas
resultados en tareas donde el estado del ar- SVM con configuraciones diferentes, utilizan-
te parecı́a haberse estancado (Bengio, 2009). do un nuevo sistema SVM para realizar dicha
Estas técnicas también son de aplicación en combinación.
el procesamiento del lenguaje natural (Collo-
bert y Weston, 2008), e incluso ya existen sis-
3 Colección de tweets con
temas orientados al análisis de sentimientos, emoticonos
como el de Socher et al. (Socher et al., 2011). Los algoritmos de deep-learning necesitan
Los algoritmos de aprendizaje automático no grandes volúmenes de datos para su entre-
son nuevos, pero sı́ están resurgiendo gracias namiento. Por ese motivo se ha creado una
a una mejora de las técnicas y la disposición colección de tweets especı́fica para la detec-
de grandes volúmenes de datos necesarios pa- ción de polaridad. Para crear dicha colección
ra su entrenamiento efectivo. se han recuperado tweets con las siguientes
En la edición de TASS en 2012 el equipo caracterı́sticas:
que obtuvo mejores resultados (Saralegi Uri-
zar y San Vicente Roncal, 2012) presentaron Que contengan emoticonos que expresen
un sistema completo de pre-procesamiento de la polaridad del tweet. En este caso se
los tweets y aplicaron un lexicón derivado del han utilizado los siguientes emoticonos:
inglés para polarizar los tweets. Sus resulta-
• Positivos: :) :-) :D :-D
dos eran robustos en granularidad fina (65 %
de accuracy) y gruesa (71 % de accuracy). • Negativos: :( :-(
En la edición de TASS en 2013 el mejor
Que los tweets no contengan URLs, para
equipo (Fernández et al., 2013) tuvo todos
evitar tweets cuyo contenido principal se
sus experimentos en el top 10 de los resul-
encuentra en el enlace.
tados, y la combinación de ellos alcanzó la
primera posición. Presentaron un sistema con Que no sean retweets, para reducir el
dos variantes: una versión modificada del al- número de tweets repetidos.
goritmo de ranking (RA-SR) utilizando bi-
gramas, y una nueva propuesta basada en La captura de dichos tweets se realizó
skipgrams. Con estas dos variantes crearon durante 22 dı́as, del 18/07/2016 hasta el
lexicones sobre sentimientos, y los utilizaron 9/08/2016, recuperando unos 100.000 tweets
junto con aprendizaje automático (SVM) pa- diarios aproximadamente. Tal y como se ve
ra detectar la polaridad de los tweets. en la Figura 1 la recuperación fue muy ho-
En 2014 el equipo con mejores resultados mogénea y se obtuvieron más de 2.000.000
en TASS se denominaba ELiRF-UPV (Hur- de tweets.
42
Participación de SINAI en TASS 2016
anterior, pero en la que se intenta predecir
los términos acompañantes a partir de un
término dado. Con estas topologı́as, si dis-
ponemos de un volumen de textos suficiente,
esta representación puede llegar a capturar
Figura 1: Número de tweets recuperados cada la semántica de cada palabra. El número de
12 horas dimensiones (longitud de los vectores de ca-
da palabra) puede elegirse libremente. Para
Posteriormente, se realizó un filtrado de el cálculo del modelo Word2Vec hemos re-
dichos tweets eliminando aquellos que con- currido al software indicado, creado por los
tubieran menos de 5 palabras, teniendo propios autores del método.
en cuenta que consideramos palabra todo Tal y como se ha indicado, para obtener
término que sólo contenga letras (sin núme- los vectores Word2Vec representativos para
ros, ni caracteres especiales). cada palabra tenemos que generar un modelo
Al final quedaron 1.777.279 clasificados a partir de un volumen de texto grande. Para
según el emoticono que contienen de la si- ello hemos utilizado los parámetros que me-
guiente manera: jores resultados obtuvieron en nuestra par-
ticipación del 2014 (Montejo-Ráez, Garcı́a-
Positivos: 869.339 tweets
Cumbreras, y Dı́az-Galiano, 2014). Por lo
Negativos: 907.940 tweets tanto, a partir de un volcado de Wikipedia2
en Español de los artı́culos en XML, hemos
Por último, se realiza la siguiente limpieza
extraı́do el texto de los mismos. Obtenemos
de tweets:
ası́ unos 2,2 GB de texto plano que alimen-
Convertir el texto a minúsculas. ta al programa word2vec con los parámetros
siguientes: una ventana de 5 términos, el mo-
Eliminar menciones (nombres de usuario
delo skip-gram y un número de dimensiones
que empiezan el caracter @).
esperado de 300, logrando un modelo con más
Sustituir letras acentuadas por sus ver- de 1,2 millones de palabras en su vocabulario.
siones sin acentuar. Como puede verse en la Figura 2, nuestro
Quitar las palabras vacı́as de contenido sistema realiza la clasificación de los tweets
(stopwords). utilizando dos fases de aprendizaje, una en
la que entrenamos el modelo Word2Vec ha-
Normalizar las palabras para que no con- ciendo uso de un volcado de la enciclopedia
tengan letras repetidas, sustituyendo las on-line Wikipedia, en su versión en español,
repeticiones de letras contiguas para de- como hemos indicado anteriormente. De esta
jar sólo 3 repeticiones. forma representamos cada tweet con el vector
resultado de calcular la media de los vectores
4 Descripción del sistema Word2Vec de cada palabra en el tweet y su
Word2Vec1 es una implementación de la ar- desviación tı́pica (por lo que cada vector de
quitectura de representación de las palabras palabras por modelo es de 600 dimensiones).
mediante vectores en el espacio continuo, ba- Se lleva a cabo una simple normalización pre-
sada en bolsas de palabras o n-gramas con- via sobre el tweet, eliminando repetición de
cebida por Tomas Mikolov et al. (Mikolov letras y poniendo todo a minúsculas. La se-
et al., 2013). Su capacidad para capturar la gunda fase de entrenamiento utiliza el algo-
semántica de las palabras queda comproba- ritmo SVM y se entrena con la colección de
da en su aplicabilidad a problemas como la tweets con emoticonos explicada en el aparta-
analogı́a entre términos o el agrupamiento de do 3. La implementación de SVM utilizada es
palabras. El método consiste en proyectar las la basada en kernel lineal con entrenamiento
palabras a un espacio n-dimensional, cuyos SGD (Stochastic Gradient Descent) propor-
pesos se determinan a partir de una estruc- cionada por la biblioteca Sci-kit Learn3 (Pe-
tura de red neuronal mediante un algoritmo dregosa et al., 2011).
recurrente. El modelo se puede configurar pa- Esta solución es la utilizada en las dos va-
ra que utilice una topologı́a de bolsa de pa- riantes de la tarea 1 del TASS con predicción
labras (CBOW) o skip-gram, muy similar al 2
http://dumps.wikimedia.org/eswiki
1 3
https://code.google.com/p/word2vec/ http://scikit-learn.org/
43
A. Montejo-Ráez, M. C. Díaz-Galiano
de 4 clases: la que utiliza el corpus de tweets
Tabla 1: Resultados obtenidos sobre el con-
completo (full test corpus) y el que utiliza el
junto full
corpus balanceado (1k test corpus).
w2v SVM Accuracy Macro-F1
W TASS 61,31 % 48,55 %
W+T TASS 62,39 % 50,44 %
W TASS+T 49,28 % 40,20 %
W+T TASS+T 53,72 % 44,10 %
nerado solamente con Wikipedia, pasando de
61,31 % de ajuste a un 62,39 %. En cambio,
utilizar los tweets capturados para la fase
de entrenamiento supervisado no lleva sino
a una caı́da del rendimiento del sistema.
Figura 2: Flujo de datos del sistema completo Esto nos lleva a plantearnos la pregunta
de qué ocurrirı́a si utilizáramos sólo los tweets
recopilados para generar un modelo de vecto-
5 Resultados obtenidos res de palabras. Los resultados que se obtie-
Hemos experimentado con el efecto que tie- nen son un 59,05 % de ajuste y un 44,43 % de
nen en el rendimiento del sistema el uso de F1. No cabe duda de que conviene explorar el
una colección de datos generada a partir de uso de modelos de generación de caracterı́sti-
la captura de tweets y que han sido etique- cas a partir de vectores de palabras.
tados según los emoticonos que contienen en Estos resultados mejoran nuestros datos
la forma comentada anteriormente. La colec- del año pasado, en los que obtuvimos un ajus-
ción de más de 1,7 millones de tweets ha sido te del 61,19 % combinando vectores de pala-
utilizada al completo para generar un mode- bras (Word2Vec) y vectores de documentos
lo de vectores de palabras, cuya combinación (Doc2Vec).
con el de Wikipedia se ha analizado. También
hemos comprobado cómo el uso de dicha co- 6 Conclusiones y trabajo futuro
lección de tweets afecta cuando se usa para A partir de los resultados obtenidos, encon-
el entrenamiento del modelo de clasificación tramos que resulta interesante la incorpora-
de la polaridad. Para ello se han selecciona- ción de texto no formal (tweets) para la ge-
do 500,000 tweets aleatoriamente de esta co- neración de los modelos de palabras, lo cual
lección, con sus correspondientes etiquetas P tiene su sentido en una tarea de clasifica-
(positivo) o N (negativo) y se han combiando ción que, precisamente, trabaja sobre textos
con la colecciónd de entrenamiento de TASS. no formales que tienen la misma red social
Los resultados según las medidaas de Ac- como fuente. En cambio, el considerar que
curacy y Macro F1 obtenidas se muestran los emoticonos en un tweet pueden ayudar a
en la tabla 1. La primera columna nos in- un clasificador como SVM a mejorar en la
dica a partir de cuáles datos se han genera- determinación de la polaridad ha resultado
do los modelos de vectores de palabras, bien una hipótesis fallida. Esto puede entenderse
sólo con Wikipedia (W) o como combinación echando un vistazo a algunos de los tweets
de ésta con los tweets del corpus construido capturados por el sistema, donde se eviden-
(W+T). La segunda columna indica cómo se cia la dificultad, incluso para una persona,
ha entrenado el clasificador de polaridad a de poner en contexto el sentido del tweet y
partir de los textos etiquetados vectorizados su consideración como positivo o negativo si
con los modelos generados en el paso previo, no disponemos de un emoticono asociado.
bien sólo usando los datos de entrenamiento Como trabajo futuro nos proponemos di-
proporcionados por la organizacion (TASS) o señar una red neuronal profunda más elabo-
incorporando los etiquetados a partir de emo- rada, pero que parta también de textos de
ticonos (TASS+T). entrenamiento tanto formales como no for-
Como podemos observar, el uso de una co- males, si bien teniendo en cuanta información
lección de tweets para ampliar la capacidad lingüı́stica más avanzada como la sintáctica,
de representar un modelo basado en vecto- en lugar de trabajar con simples bolsas de
res de palabras mejora sensiblemente al ge- palabras. También queremos explorar el uso
44
Participación de SINAI en TASS 2016
de redes de este tipo en el proceso de clasfi- Hurtado, Lluı́s F y Ferran Pla. 2014. Elirf-
cación en sı́, y no sólo en la generación de ca- upv en tass 2014: Análisis de sentimien-
racterı́sticas. Una posibilidad es utilizar una tos, detección de tópicos y análisis de sen-
red de tipo DBN (Deep Belief Network) (Hin- timientos de aspectos en twitter. En In
ton y Salakhutdinov, 2006) en la que se añade Proc. of the TASS workshop at SEPLN
una última fase donde se realiza el etiquetado 2014.
de los ejemplos.
Hurtado, Lluı́s-F, Ferran Pla, y Davide Bus-
caldi. 2015. Elirf-upv en tass 2015: Análi-
Bibliografı́a
sis de sentimientos en twitter. En In Proc.
Bengio, Yoshua. 2009. Learning deep archi- of TASS 2015: Workshop on Sentiment
tectures for ai. Foundations and trends in Analysis at SEPLN. CEUR-WS.org, volu-
Machine Learning, 2(1):1–127. men 1397, páginas 35–40.
Brooke, Julian, Milan Tofiloski, y Maite Ta- Mikolov, Tomas, Kai Chen, Greg Corrado, y
boada. 2009. Cross-linguistic sentiment Jeffrey Dean. 2013. Efficient estimation
analysis: From english to spanish. En of word representations in vector space.
Galia Angelova Kalina Bontcheva Ruslan CoRR, abs/1301.3781.
Mitkov Nicolas Nicolov, y Nikolai Nikolov,
editores, RANLP, páginas 50–54. RANLP Montejo-Ráez, A., M.A. Garcı́a-Cumbreras,
2009 Organising Committee / ACL. y M.C. Dı́az-Galiano. 2014. Participación
de SINAI Word2Vec en TASS 2014. En
Collobert, Ronan y Jason Weston. 2008. In Proc. of the TASS workshop at SEPLN
A unified architecture for natural langua- 2014.
ge processing: Deep neural networks with
multitask learning. En Proceedings of the Pedregosa, Fabian, Gaël Varoquaux, Alexan-
25th International Conference on Machi- dre Gramfort, Vincent Michel, Bertrand
ne Learning, ICML ’08, páginas 160–167, Thirion, Olivier Grisel, Mathieu Blondel,
New York, NY, USA. ACM. Peter Prettenhofer, Ron Weiss, Vincent
Dubourg, y others. 2011. Scikit-learn:
Dı́az-Galiano, M.C. y A. Montejo-Ráez. Machine learning in python. The Journal
2015. Participación de SINAI DW2Vec of Machine Learning Research, 12:2825–
en TASS 2015. En In Proc. of TASS 2830.
2015: Workshop on Sentiment Analysis at
Saralegi Urizar, Xabier y Iñaki San Vicen-
SEPLN. CEUR-WS.org, volumen 1397.
te Roncal. 2012. Tass: Detecting senti-
Fernández, Javi, Yoan Gutiérrez, José M. ments in spanish tweets. En TASS 2012
Gómez, Patricio Martı́nez-Barco, Andrés Working Notes.
Montoyo, y Rafael Muñoz. 2013. Sen-
Socher, Richard, Jeffrey Pennington, Eric H.
timent analysis of spanish tweets using a
Huang, Andrew Y. Ng, y Christopher D.
ranking algorithm and skipgrams. En In
Manning. 2011. Semi-supervised recursi-
Proc. of the TASS workshop at SEPLN
ve autoencoders for predicting sentiment
2013.
distributions. En Proceedings of the Con-
Garcı́a-Cumbreras, Miguel Ángel, Julio ference on Empirical Methods in Natural
Villena-Román, Eugenio Martı́nez- Language Processing, EMNLP ’11, pági-
Cámara, Manuel Carlos Dı́az-Galiano, nas 151–161, Stroudsburg, PA, USA. As-
Ma . Teresa Martı́n-Valdivia, y L. Alfonso sociation for Computational Linguistics.
Ureña-López. 2016. Overview of tass
2016. En Proceedings of TASS 2016:
Workshop on Sentiment Analysis at
SEPLN co-located with the 32nd SEPLN
Conference (SEPLN 2016), Salamanca,
Spain, September.
Hinton, Geoffrey E y Ruslan R Salakhutdi-
nov. 2006. Reducing the dimensionality
of data with neural networks. Science,
313(5786):504–507.
45