TASS 2015, septiembre 2015, pp 75-79 recibido 20-07-15 revisado 24-07-15 aceptado 24-07-15 ELiRF-UPV en TASS 2015: Análisis de Sentimientos en Twitter ELiRF-UPV at TASS 2015: Sentiment Analysis in Twitter Lluı́s-F. Hurtado, Ferran Pla Davide Buscaldi Universitat Politècnica de València Université Paris 13 Camı́ de Vera s/n Sorbonne Paris Cité, LIPN 46022 València F-93430 Villetaneuse, France {lhurtado, fpla}@dsic.upv.es davide.buscaldi@lipn.univ-paris13.fr Resumen: En este trabajo se describe la participación del equipo del grupo de in- vestigación ELiRF de la Universitat Politècnica de València en el Taller TASS2015. Este taller es un evento enmarcado dentro de la XXXI edición del Congreso Anual de la Sociedad Española para el Procesamiento del Lenguaje Natural. Este trabajo presenta las aproximaciones utilizadas para las todas las tareas del taller, los resul- tados obtenidos y una discusión de los mismos. Nuestra participación se ha centrado principalmente en explorar diferentes aproximaciones para combinar un conjunto de sistemas. Mediante esta técnica hemos conseguido mejorar las prestaciones de edi- ciones anteriores. Palabras clave: Twitter, Análisis de Sentimientos. Abstract: This paper describes the participation of the ELiRF research group of the Universitat Politècnica de València at TASS2015 Workshop. This workshop is a satellite event of the XXXI edition of the Annual Conference of the Spanish Society for Natural Language Processing. This work describes the approaches used for all the tasks of the workshop, the results obtained and a discussion of these results.Our participation has focused primarily on exploring different approaches for combining a set of systems. Using this technique we have improved the performance of previous editions. Keywords: Twitter, Sentiment Analysis. 1. Introducción blicados durante la final de la Copa del Rey 2014. En esta edición del TASS 2015 (Villena- El Taller de Análisis de Sentimientos Román et al., 2015), se propone una tarea si- (TASS) ha venido planteando una serie de ta- milar a la 2) pero utilizando un nuevo corpus reas relacionadas con el análisis de sentimien- llamado STOMPOL. Este corpus consta de tos en Twitter con el fin de comparar y eva- un conjunto de tweets sobre diferentes aspec- luar las diferentes aproximaciones presenta- tos pertenecientes al dominio de la polı́tica. das por los participantes. Además, desarrolla El presente artı́culo resume la participa- recursos de libre acceso, básicamente, corpora ción del equipo ELiRF-UPV de la Universi- anotados con polaridad, temática, tendencia tat Politècnica de València en todas las tareas polı́tica, aspectos, que son de gran utilidad planteadas en este taller. Primero se descri- para la comparación de diferentes aproxima- ben las aproximaciones y recursos utilizados ciones a las tareas propuestas. en cada tarea. A continuación se presenta la En esta cuarta edición del TASS se pro- evaluación experimental realizada y los resul- ponen dos tareas de ediciones anteriores tados obtenidos. Finalmente se muestran las (Villena-Román y Garcı́a-Morera, 2013): 1) conclusiones y posibles trabajos futuros. Determinación de la polaridad en tweets, con diferentes grados de intensidad en la polari- 2. Descripción de los sistemas dad: 6 etiquetas y 4 etiquetas y 2) Determi- Los sistemas presentados en el TASS 2015, nación de la polaridad de los aspectos en el utilizan muchas de las caracterı́sticas, desa- corpus Social TV, compuesto por tweets pu- rrollos y recursos utilizados en las ediciones Publicado en http://ceur-ws.org/Vol-1397/. CEUR-WS.org es una publicación en serie con ISSN reconocido ISSN 1613-0073 Lluís-F Hurtado, Ferran Pla, Davide Buscaldi en las que nuestro equipo ha participado (Pla las caracterı́sticas consideradas. En toda la y Hurtado, 2013) (Hurtado y Pla, 2014). El experimentación realizada, las caracterı́sticas preproceso de los tweets utiliza la estrategia y los parámetros de los clasificadores se han descrita en el trabajo del TASS 2013 (Pla y elegido mediante una validación cruzada de Hurtado, 2013). Esta consiste básicamente en 10 iteraciones (10-fold cross-validation) sobre la adaptación para el castellano del tokeniza- el conjunto de entrenamiento. dor de tweets Tweetmotif (Connor, Krieger, y Ahn, 2010)1 . También se ha usado Free- 3. Tarea 1: Análisis de ling (Padró y Stanilovsky, 2012)2 como lema- sentimientos en tweets tizador, detector de entidades nombradas y etiquetador morfosintáctico, con las corres- Esta tarea consiste en determinar la pola- pondientes modificaciones para el dominio de ridad de los tweets y la organización ha defi- Twitter. Usando esta aproximación, la toke- nido dos subtareas. La primera distingue seis nización ha consistido en agrupar todas las etiquetas de polaridad: N y N+ que expresan fechas, los signos de puntuación, los números polaridad negativa con diferente intensidad, y las direcciones web. Se han conservado los P y P+ para la polaridad positiva con dife- hashtags y las menciones de usuario. Se ha rente intensidad, NEU para la polaridad neu- considerado y evaluado el uso de palabras y tra y NONE para expresar ausencia de pola- lemas como tokens ası́ como la detección de ridad. La segunda sólo distinguen 4 etiquetas entidades nombradas. de polaridad: N, P, NEU y NONE. El corpus proporcionado por la organiza- Todas las tareas se han abordado como ción del TASS consta de un conjunto de en- un problema de clasificación. Se han utiliza- trenamiento, compuesto por 7219 tweets eti- do Máquinas de Soporte Vectorial (SVM) por quetados con la polaridad usando seis etique- su capacidad para manejar con éxito gran- tas, y un conjunto de test, de 60798 tweets, des cantidades de caracterı́sticas. En concreto al cual se le debe asignar la polaridad. La dis- usamos dos librerı́as (LibSVM3 y LibLinear4 ) tribución de tweets según su polaridad en el que han demostrado ser eficientes implemen- conjunto de entrenamiento se muestra en la taciones de SVM que igualan el estado del Tabla 1. arte. El software se ha desarrollado en Pyt- hon y para acceder a las librerı́as de SVM se Polaridad # tweets % ha utilizado el toolkit scikit-learn5 . (Pedrego- N 1335 18.49 sa et al., 2011). N+ 847 11.73 En este trabajo se ha explotado la técni- NEU 670 9.28 ca de combinación de diferentes configuracio- NONE 1483 20.54 nes de clasificadores para aprovechar su com- P 1232 17.07 plementariedad. Se ha utilizado la técnica de P+ 1652 22.88 votación simple utilizada en trabajos ante- TOTAL 7219 100 riores (Pla y Hurtado, 2013) (Pla y Hurta- do, 2014b) pero en este caso extendiéndola a un número mayor de clasificadores, con di- Tabla 1: Distribución de tweets en el conjunto ferentes parámetros y caracterı́sticas (pala- de entrenamiento según su polaridad. bras, lemas, n-gramas de palabras y lemas) ası́ como estrategias de combinación alterna- A partir de la tokenización propuesta se tivas. Además, se ha incluido un nuevo recur- realizó un proceso de validación cruzada (10- sos léxico, el diccionario Afinn (Hansen et al., fold cross validation) para determinar el me- 2011), que se ha traducido automáticamente jor conjunto de caracterı́sticas y los paráme- del inglés al castellano y se ha adaptado para tros del modelo. Como caracterı́sticas se pro- las tareas consideradas. baron diferentes tamaños de n-gramas de pa- Cada tweet se ha representado como un labras y de lemas. También se exploró la com- vector que contiene los coeficientes tf-idf de binación de los modelos mediante diferentes 1 técnicas de votación para aprovechar su com- https://github.com/brendano/tweetmotif. 2 http://nlp.lsi.upc.edu/freeling/ plementariedad y mejorar las prestaciones fi- 3 http://www.csie.ntu.edu.tw/˜cjlin/libsvm/ nales. Algunas de éstas técnicas proporcio- 4 http://www.csie.ntu.edu.tw/˜cjlin/liblinear/ naron mejoras significativas sobre el mismo 5 http://scikit-learn.org/stable/ conjunto de datos, como se muestra en (Pla 76 ELiRF-UPV en TASS 2015: Análisis de Sentimientos en Twitter y Hurtado, 2014b). En todos los casos se Run Accuracy han utilizado diccionarios de polaridad, tan- run1 0.648 to de lemas (Saralegi y San Vicente, 2013), 6-ETIQUETAS run3 0.658 como de palabras (Martı́nez-cámara et al., run4 0.673 2013). Además se ha incorporado el diccio- run1 0.712 nario Afinn traducido automáticamente del 4-ETIQUETAS run3 0.721 inglés al castellano y adaptado a la tarea. run4 0.725 Se han considerado tres alternativas para abordar la tarea: Tabla 2: Resultados oficiales del equipo run1 La primera alternativa combina ELiRF-UPV en la Tarea 1 de la competición mediante votación simple los 3 sistemas TASS-2015 sobre el conjunto de test para 6 presentados en la edición del TASS de y 4 etiquetas. 2014. run2-run4 La segunda alternativa del TASS 2013, propusimos una segmenta- explora diferentes combinaciones de ción de los tweets basada en un conjunto de parámetros y caracterı́sticas de un mo- heurı́sticas (Pla y Hurtado, 2013). Esta apro- delo SVM. Para ello se han tenido en ximación también se utilizó para la tarea de cuenta 192 configuraciones. A partir de detección de la tendencia polı́tica de los usua- éstas, se ha aprendido un segundo mo- rios de Twitter (Pla y Hurtado, 2014a) y pa- delo SVM que sirve para proporcionar ra este caso proporcionó buenos resultados. la nueva salida combinada. La diferen- En este trabajo se propone una aproximación cia entre el run2 y el run4 es que en el más simple que consiste en determinar el con- primero no se ajustan los parámetros del texto de cada aspecto a través de una venta- modelo SVM mientras que en el segun- na fija definida a la izquierda y derecha de do, se elige una parte del entrenamiento la instancia del aspecto. Esta aproximación para ajustar los parámetros. El sistema es similar a la que se utilizó en nuestro sis- que se considera para la competición ba- tema del TASS 2014, pero para esta edición jo esta aproximación es el run4. hemos considerado ventanas de diferente lon- run3 La tercera alternativa combina gitud. La longitud de la ventana óptima se mediante un sistema de votación de ma- ha determinado experimentalmente sobre el yorı́a simple las 192 configuraciones con- conjunto de entrenamiento mediante una va- templadas. lidación cruzada. Para entrenar nuestro sis- tema, se ha considerado el conjunto de entre- Para la subtarea de 4 etiquetas no se ha namiento únicamente, se han determinado los construido ningún sistema especı́fico. Los tres segmentos para cada aspecto y se ha seguido sistemas enviados utilizan las salidas de la una aproximación similar a la Tarea 1. subtarea de 6 etiquetas uniendo P y P+ como La organización del TASS ha planteado P y N y N+ como N. dos subtareas. La primera utiliza el corpus En la Tabla 2 se muestran los valores de Social TV y la segunda el corpus STOMPOL. Accuracy obtenidos para las dos subtareas. Con los sistemas presentados se obtienen me- joras respecto a los resultados presentados en 4.1. Corpus Social TV la edición anterior. El corpus Social TV fue proporcionado por la organización y se compone de un con- 4. Tarea 2: Análisis de Polaridad junto de tweets recolectados durante la final de Aspectos en Twitter de la Copa del Rey de fútbol de 2014. Está Esta tarea consiste en asignar la polari- dividido en 1773 tweets de entrenamiento y dad a los aspectos que aparecen marcados en 1000 tweets de test. El conjunto de entrena- el corpus. Una de las dificultades de la tarea miento está anotado con los aspectos y su consiste en definir qué contexto se le asigna a correspondiente polaridad, utilizando en este cada aspecto para poder establecer su polari- caso sólo tres valores: P, N y NEU. El con- dad. Para un problema similar, detección de junto de test está anotado con los aspectos y la polaridad a nivel de entidad, en la edición se debe determinar la polaridad de éstos. 77 Lluís-F Hurtado, Ferran Pla, Davide Buscaldi 4.2. Corpus STOMPOL 5. Conclusiones y trabajos El corpus STOMPOL se compone de un futuros conjunto de tweets relacionados con una se- En este trabajo se ha presentado la parti- rie de aspectos polı́ticos, como economı́a, sa- cipación del equipo ELiRF-UPV en las 2 ta- nidad, ...etc. que están enmarcado en la cam- reas planteadas en TASS 2015. Nuestro equi- paña polı́tica de las elecciones andaluzas de po ha utilizado técnicas de aprendizaje au- 2015. Cada aspecto se relaciona con una o va- tomático, en concreto, aproximaciones basa- rias entidades que se corresponden con uno das en máquinas de soporte vectorial. Para de los principales partidos polı́ticos en Es- ello hemos utilizado la librerı́a para Python paña (PP, PSOE, IU, UPyD, Cs y Podemos). scikit-learn y las librerı́as externas LibSVM y El corpus consta de 1.284 tweets, y ha si- LibLinear. Nuestra participación se ha cen- do dividido en un conjunto de entrenamiento trado principalmente en explorar diferentes (784 tweets) y un conjunto de evaluación (500 aproximaciones para combinar un conjunto tweets). de sistemas. Mediante esta técnica hemos conseguido mejorar las prestaciones de edi- 4.3. Aproximación y resultados ciones anteriores. Nuestro grupo esta interesado en seguir A continuación presentamos una pequeña trabajando en la minerı́a de textos en redes descripción de las caracterı́sticas de nuestro sociales y especialmente en incorporar nuevos sistema ası́ como el proceso seguido en la fase recursos a los sistemas desarrollados y estu- de entrenamiento. El sistema utiliza un cla- diar nuevas estrategias y métodos de apren- sificador basado en SVM. Para aprender los dizaje automático. modelos sólo se utiliza el conjunto de entre- Como trabajo futuro nos planteamos desa- namiento proporcionado para la tarea y los rrollar nuevos métodos de combinación de sis- diccionarios de polaridad previamente descri- temas. También estamos interesados en con- tos. Antes de abordar el entrenamiento se de- siderar diferentes paradigmas de clasificación terminan los segmentos de tweet que cons- más heterogéneos (distintos de los SVM) para tituyen el contexto de cada una de los as- aumentar la complementariedad de los siste- pectos presentes. Se ha tenido en cuenta tres mas combinados. tamaños de ventana de longitudes 5, 7 y 10 palabras a la izquierda y derecha del aspec- to. Cada uno de los segmentos se tokeniza y Agradecimientos se utiliza Freeling para determinar sus lemas Este trabajo ha sido parcialmente sub- y ciertas entidades. A continuación se apren- vencionado por los proyectos DIANA: DIs- den diferentes modelos combinando tamaños course ANAlysis for knowledge understan- de ventana, parámetros del modelo y diferen- ding (MEC TIN2012-38603-C02-01) y ASLP- tes caracterı́sticas (palabras, lemas, NE, etc). MULAN: Audio, Speech and Language Pro- Mediante validación cruzada se elige el mejor cessing for Multimedia Analytics (MEC modelo. Para esta tarea sólo hemos presenta- TIN2014-54288- C4-3-R). do un modelo. Bibliografı́a Run Accuracy Connor, Brendan O, Michel Krieger, y Da- SocialTV run1 0.655 vid Ahn. 2010. Tweetmotif: Exploratory STOMPOL run1 0.633 search and topic summarization for twit- ter. En William W. Cohen y Samuel Gos- Tabla 3: Resultados oficiales del equipo ling, editores, Proceedings of the Fourth ELiRF-UPV en la Tarea2 de la competi- International Conference on Weblogs and ción TASS-2015 para los corpus SocialTV y Social Media, ICWSM 2010, Washington, STOMPOL respectivamente. DC, USA, May 23-26, 2010. The AAAI Press. En la tabla 3 se presentan los resultados Hansen, Lars Kai, Adam Arvidsson, obtenidos para la Tarea 2 sobre los dos corpus Finn Årup Nielsen, Elanor Colleoni, propuestos. Nuestra aproximación ha obteni- y Michael Etter. 2011. Good friends, bad do la primera posición en ambos corpus. news-affect and virality in twitter. En 78 ELiRF-UPV en TASS 2015: Análisis de Sentimientos en Twitter Future information technology. Springer, the TASS workshop at SEPLN 2013. IV páginas 34–43. Congreso Español de Informática. Hurtado, LLuı́s F y Ferran Pla. 2014. Elirf- Villena-Román, Julio y Janine Garcı́a- upv en tass 2014: Análisis de sentimien- Morera. 2013. Workshop on sentiment tos, detección de tópicos y análisis de analysis at sepln 2013: An over view. sentimientos de aspectos en twitter. En En Proceedings of the TASS workshop at TASS2014. SEPLN 2013. IV Congreso Español de In- Martı́nez-cámara, E., M. T. Martı́n-valdivia, formática. M. D. Molina-gonzález, y L. A. Ureña- Villena-Román, Julio, Janine Garcı́a-Morera, lópez. 2013. Bilingual Experiments on an Miguel A. Garcı́a-Cumbreras, Eugenio Opinion Comparable Corpus. En Procee- Martı́nez-Cámara, M. Teresa Martı́n- dings of the 4th Workshop on Computatio- Valdivia, y L. Alfonso Ureña-López. 2015. nal Approaches to Subjectivity, Sentiment Overview of tass 2015. and Social Media Analysis, página 87–93. Padró, Lluı́s y Evgeny Stanilovsky. 2012. Freeling 3.0: Towards wider multilingua- lity. En Proceedings of the Langua- ge Resources and Evaluation Conference (LREC 2012), Istanbul, Turkey, May. EL- RA. Pedregosa, F., G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Grisel, M. Blon- del, P. Prettenhofer, R. Weiss, V. Du- bourg, J. Vanderplas, A. Passos, D. Cour- napeau, M. Brucher, M. Perrot, y E. Du- chesnay. 2011. Scikit-learn: Machine lear- ning in Python. Journal of Machine Lear- ning Research, 12:2825–2830. Pla, Ferran y Lluı́s-F Hurtado. 2013. Tass- 2013: Análisis de sentimientos en twitter. En Proceedings of the TASS workshop at SEPLN 2013. IV Congreso Español de In- formática. Pla, Ferran y Lluı́s-F. Hurtado. 2014a. Po- litical tendency identification in twitter using sentiment analysis techniques. En Proceedings of COLING 2014, the 25th International Conference on Computatio- nal Linguistics: Technical Papers, pági- nas 183–192, Dublin, Ireland, August. Du- blin City University and Association for Computational Linguistics. Pla, Ferran y Lluı́s-F. Hurtado. 2014b. Sen- timent analysis in twitter for spanish. En Elisabeth Métais Mathieu Roche, y Ma- guelonne Teisseire, editores, Natural Lan- guage Processing and Information Sys- tems, volumen 8455 de Lecture Notes in Computer Science. Springer International Publishing, páginas 208–213. Saralegi, Xabier y Iñaki San Vicente. 2013. Elhuyar at tass 2013. En Proceedings of 79