• Nenhum resultado encontrado

Nas tarefas de predição buscamos a utilização de embeddings para classificar intenções e emoções, utilizando técnicas variadas. Também foram explorados diferentes tipos de targets para identificação de intenções e emoções.

Além dos clusters de intenções e emoções, foram criadas classes de intenções através dos verbos de ação mais frequentes para testes de de classificação. Para as intenções, as palavras utilizadas para criação dos novos grupos foram: “get”, “make”, “help”, “see”, “show”, “know”, “go”, “give”, “take”, “keep”, “fell”, “enjoy”, “work”, “wants”, “find”, “look”, “avoid”. Para as emoções foi feito o mesmo processo, criando-se agrupamentos de acordo com palavras-chave: “happy”, “glad”,

“satisfied”,“excited”, “relieved”,”proud”,”bad” ,”sad”, “better”, “tired”.

Para a tarefa de classificação foram utilizados dois tipos de modelos de redes neurais: Multilayer Perceptron e LSTM (Long Short Term Memory) que é um tipo de modelo cujos neurônios, diferentemente das redes Feed-forward, possuem retroalimentação. Também foi treinado um modelo do tipo K-Nearest Neighbors. Ao todo foram testados os seguintes modelos de classificação:

a) Multilayer Perceptron com uma camada escondida b) Multilayer Perceptron com duas camadas escondidas c) K-Nearest Neighbors com K=2

d) LSTM com uma camada escondida e) LSTM com duas camadas escondidas f) LSTM com três camadas escondidas

Para os modelos de Multilayer Perceptron o número de neurônios da primeira camada escondida foi calculado pela seguinte regra:

𝑛𝑒𝑢𝑟ô𝑛𝑖𝑜𝑠 𝑑𝑎 𝑝𝑟𝑖𝑚𝑒𝑖𝑟𝑎 𝑐𝑎𝑚𝑎𝑑𝑎

=

𝑐𝑎𝑚𝑎𝑑𝑎𝑠 𝑑𝑒 𝑒𝑛𝑡𝑟𝑎𝑑𝑎 + 𝑐𝑎𝑚𝑎𝑑𝑎𝑠 𝑑𝑒 𝑠𝑎í𝑑𝑎

2

Na segunda camada escondida do modelo Multilayer Perceptron, foi aplicada redução do número de neurônios pela metade.

Para os modelos de LSTM o número de neurônios em cada camada foi calculado com base em potências de dois de forma decrescente nas camadas. Foi aplicado

49

dropout (eliminação de neurônios de forma probabilística) de 20% a cada camada

escondida para evitar sobre ajuste. O tamanho do batch (tamanho do subconjunto da amostra de treinamento) definido foi de 32.

Os algoritmos de otimização utilizados para os modelos de redes neurais foram:

Stochastic Gradient Descent para o modelo Multilayer Perceptron e Adam para os

modelos LSTM, ajustados em 500 iterações. Para cálculo da acurácia foi utilizada uma amostra de teste de 20%.

Para os modelos LSTM a implementação do Phyton utilizada foi o Tensorflow-Keras (versão 2.2.4). Nesse modelo foi mantida, nas camadas intermediárias, a função de ativação default, que é a linear. Para o modelo do tipo Multilayer Perceptron foi utilizada a implementação da biblioteca Scikit learn (versão 0.23.1) cuja função de ativação default é a Relu, também mantida nas camadas intermediárias. Para os dois tipos de redes neurais, na camada de saída foi aplicada a função softmax. Nas tabelas 3 e 6 estão apresentados os resultados dos modelos de classificação. Alguns modelos foram testados com normalização e redução da dimensionalidade (PCA). É apresentada também a comparação com modelos cujas classes se mostraram com desbalanceamento (para os clusters feitos através de K-means o desbalanceamento de classes não foi um problema).

Tabela 3 - Resumo das acurácias nos modelos com input de embeddings de eventos.

Como visto na tabela 3, nos modelos com input de eventos as melhores performances foram encontradas para predição das classes de intenções, classes de emoções e polaridade das emoções.

50 Para a classe de intenções o melhor modelo foi a rede neural LSTM com três camadas escondidas, com acurácia de 80,3%. Para esse modelo a matriz de confusão na tabela 4 mostra que o desempenho varia bastante de acordo com as classes, tendo um desempenho melhor nas classes de intenções “fell” (99%), “wants” (89%), “avoid” (87%), “enjoy” (85%), “keep” (82%). Também foi apresentado bom desempenho em classes de intenções com alta frequência na base como “get” (64%) , “make” (72%), “help” (68%), “see” (76%), “show” (77%), “know” (84%).

Tabela 4 - Matriz de confusão de predição de classes de emoção a partir de eventos.

Na predição da classe de emoções o melhor modelo também foi a rede LSTM com três camadas apresentando acurácia de 74,05%. As classes de maior acerto foram “great” (93%), “bad” e “better” (ambas com 88%) e “sad” (83%). A classe “happy” mostra acerto baixo (49%), no entanto vemos que o modelo atribui essa classe para emoções muito similares como “glad”, “satisfied”, “excited” ou “relieved”, conforme apresentado na tabela 5.

Tabela 5 - Matriz de confusão de predição de classes de emoção a partir de eventos

No modelo de predição da polaridade de emoções, cuja acurácia total foi de 77,71%, (rede neural LSTM de três camadas), a tabela 6 mostra que a que a performance é melhor nas classes 1 e 2 (emoções negativas). A predição de emoções nas classes 1 e 2, atinge um acerto de 86% e 82% respectivamente. Na classe 5 (emoções muito positivas) atinge acerto de 75%. Nas classes intermediárias (3 e 4) o acerto é menor que a média (74% e 70% respectivamente)

51 Tabela 6 - Matriz de confusão de predição de polaridade de emoção a partir de

eventos

Na avaliação dos modelos com input de intenções com o objetivo de predição das emoções, encontramos uma performance em geral inferior aos modelos utilizando como input os eventos, como pode ser avaliado na tabela 7:

Tabela 7 - Resumo das acurácias nos modelos com input de embeddings de intenções

Nos modelos apresentados na tabela 7 a melhor performance foi da polaridade de emoções, com acurácia de 68,41%, treinado com o modelo LSTM de duas camadas escondidas. No entanto a matriz de confusão da predição de polaridade das emoções (tabela 8) mostra que o desempenho cai à medida que a polaridade de emoções aumenta. A polaridade 1 tem um bom acerto com 80% de acurácia, mas a polaridade 5, apenas 58%.

Tabela 8 - Matriz de confusão de predição da polaridade de emoção a partir de intenções

O próximo modelo, preditor das classes de palavras de emoções mostrou acurácia de 59% calculada pelo modelo LSTM com três camadas escondidas. No geral esse

52 modelo tem performance inferior ao mesmo modelo com input de eventos (tabela 5). A matriz de confusão na tabela 9 mostra que, assim como no modelo mostrado na tabela 5, os acertos variam bastante nas classes. Outro ponto em comum é o fato do modelo generalizar emoções positivas atribuindo a classe “happy”. As classes com maior acerto são “bad” (78%), “sad” (72%), “better” (71%) e “glad” (67%).

Tabela 9 - Matriz de confusão de predição da classe de emoção a partir de intenções

Em todos os classificadores cujo target da predição foram os clusters criados pela técnica de K-means (tanto intenções quanto emoções) o desempenho foi ineficiente como pode ser visto nas tabelas 3 e 6. Porém a etapa de criação de clusters foi importante para destacar os termos a serem usados na criação das classes, tendo sido consideradas as contagens de palavras nos clusters.

Também foram feitos testes para avaliar alguns exemplos utilizando os melhores modelos de classificação, conforme apresentado na tabela 10. As quatro primeiras frases descritivas de eventos foram retiradas do dataset Event2mind em casos que o preenchimento da intenção não foi feito. Os demais exemplos foram escolhidos ao acaso.

Tabela 10 - Avaliação de frases de eventos para predição de intenções e emoções utilizando os melhores modelos

A avaliação qualitativa do teste apresentado na tabela 10 mostra que em muitos exemplos a classificação foi coerente, como nas frases de eventos “It tastes

53

is hard work” a avaliação da emoção como “tired” foi correta, porém a polaridade

não classificou corretamente atribuindo valor muito positivo. Outro exemplo de classificação correta foi na frase “Teaches friend” que atribuiu a intenção “help”. Em outros casos a avaliação da intenção se mostrou subjetiva, embora possam ser feitas algumas hipóteses sobre o resultado. Como por exemplo na frase “gives

money poor” onde a intenção classificada é “show” (“mostrar”), que pode indicar que

nesses casos a percepção dos anotadores não foi de uma intenção nobre. De forma geral esses exemplos refletem as informações recebidas no dataset. Ou seja, como os inputs mostram pouca objetividade na anotação os outputs irão refletir os vieses de interpretação humanos. Para que o modelo pudesse ser utilizado em um sistema, as informações de entrada deveriam ser reestruturadas.

54 6 CONCLUSÕES E TRABALHOS FUTUROS

Os embeddings das descrições de intenções e emoções mostraram boa definição, fornecendo bons inputs para os modelos de classificação. O fato do modelo gerador dos embeddings ter sido treinado no próprio corpus não demonstra ser um fator determinante no resultado das tarefas de classificação, pois estas apresentam melhores resultados à medida que se define um target ideal.

Na análise dos agrupamentos gerados pelos embeddings nota-se que a vetorização de palavras capta nuances sutis nos grupos de intenções e emoções (como por exemplo: intenções de benefício material versus intenção de ajudar alguém fornecendo conhecimento). Isso mostra que a técnica permite uma inteligência na classificação de intenções e emoções que vai além da polaridade. No entanto, para trabalhos futuros indica-se a exploração de outras técnicas de clusterização visando atingir agrupamentos mais similares.

Quando o target dos modelos de classificação de intenções foi criado pelos agrupamentos através de k-means (utilizando como input os embeddings de eventos) a métrica de acurácia se mostrou insuficiente. No entanto, ao serem atribuídas classes baseadas nos verbos de ação (exemplo: buscar ou pegar, ajudar, ver, mostrar, dar, ir, manter etc.), o acerto aumentou consideravelmente. Isso é uma evidência de que a tarefa é possível, podendo-se beneficiar de agrupamentos de intenções elaborado de outra forma, e que os embeddings conseguem explicar a presença de palavras importantes nas descrições anotadas. É importante considerar que o trabalho de agrupamento permitiu destacar as palavras mais importantes, que foram utilizadas na nova criação de classes.

A predição de emoções utilizando embeddings de eventos demonstrou melhor acerto para classificar a polaridade das emoções, porém o modelo mostrou também uma boa acurácia nas classes de palavras descritivas das emoções. Verificou-se uma generalização das emoções positivas enquanto nas classes de emoções negativas o modelo foi mais preciso. Na polaridade das emoções as faixas negativas também tiveram acerto maior.

Os modelos utilizando os embeddings de intenções para classificação de emoções tiveram uma acurácia um pouco mais baixa, comparativamente ao modelo que teve como input os eventos. Ou seja, para esse corpus o aprendizado funciona melhor com base nas ações dos indivíduos. Uma hipótese é de que a anotação de intenções seja mais subjetiva.

Dessa forma, concluímos que o modelo funciona bem para classificar intenções e emoções com base em eventos, uma vez que o target da tarefa de classificação passe por uma revisão ou padronização, como foi realizado utilizando classes com as palavras mais frequentes.

Como o dataset teve preenchimento feito por anotadores humanos com um campo de descrição de resposta aberta, verifica-se que as expressões das emoções e intenções possuem pouca estrutura e falta de padrão sintático. Por exemplo, para as emoções são encontradas muitas descrições de objetos. Muitos casos não

55 podem ser resolvidos com técnicas como lematização e stemming. Estabelecer um conjunto de palavras para expressar as emoções de forma mais estruturada se mostra uma ação mais efetiva no aumento do aprendizado de intenções humanas. Um outro teste a ser feito é a utilização de uma etiquetagem morfológica para retirar palavras fora do padrão da base de aprendizado, sendo necessária a avaliação sobre perda de informação.

O trabalho de exploração e comparação de outras técnicas de representação vetorial como BERT, Glove dentre outras citadas neste trabalho, pode ser bem enriquecida com a utilização do dataset Event2Mind.

A pesquisa em PLN também poderia se beneficiar de trabalhos futuros explorando corpora da língua portuguesa para tarefas de senso comum, considerando que a diferença cultural na percepção de intenções e emoções e na forma como são expressos.

56

REFERÊNCIAS BIBLIOGRÁFICAS

ALM, C. O.; ROTH, D.; SPROAT, R. Emotions from text. Proceedings of the conference on Human Language Technology and Empirical Methods in Natural Language Processing - HLT '05, 2005. Big data now: current perspectives from O'Reilly Media. Traducao . [s.l.] O'Reilly Media, 2012. BIRD, S.; KLEIN, E.; LOPER, E. Natural language processing with Python. Traducao . [s.l.] O'Reilly, 2009.

BOS, J.; MARKERT, K. Recognising textual entailment with logical inference. Proceedings of the conference on Human Language Technology and Empirical Methods in Natural Language Processing - HLT '05, 2005.

BOWMAN, S. R. et al. A large annotated corpus for learning natural language inference. Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing, 2015.

CAMBRIA, E. Affective Computing and Sentiment Analysis. IEEE Intelligent Systems, v. 31, n. 2, p. 102–107, 2016.

CORPUS RELI. 2014. Disponível em: <https://www.linguateca.pt/Repositorio/ReLi/>. Acesso em 20 de Mar. 2020.

DA SILVA, Bento Carlos Dias. O estudo lingüístico-computacional da linguagem. Letras de Hoje, v. 41, n. 2, p. 103-138, 2006.

DEVLIN, Jacob et al. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805, 2018.

DUMBILL, Edd. Big data now: 2012 edition. Sebastopol: O‟ Reilley Media, 2012.

EBERENDU, A. C. Unstructured Data: an overview of the data of Big Data. International Journal of Computer Trends and Technology, v. 38, n. 1, p. 46–50, 2016.

Event2MindCommonsense Inference on Events, Intents and Reactions. Disponível em: <https://uwnlp.github.io/event2mind>

EVERETT, D. L. How language began: the story of humanity's greatest invention. Traducao . [s.l.] Liveright Publishing Corporation, a division of W.W. Norton &amp; Company, 2019.

FIORIN, José Luiz. Linguística? Que é isso?. 2013.

FREITAS, C. Sobre a construção de um léxico da afetividade para o processamento computacional do português. Revista Brasileira de Linguística Aplicada, v. 13, n. 4, p. 1031–1059, 2013.

57 Research: Facing Problems. Intelligent Virtual Agents Lecture Notes in Computer Science, p. 501– 501, 2005.

GANDOMI, A.; HAIDER, M. Beyond the hype: Big data concepts, methods, and analytics. International Journal of Information Management, v. 35, n. 2, p. 137–144, 2015.

GAZZANIGA, M. S. The new cognitive neurosciences. Traducao . [s.l.] MIT Press, 2000.

GOLDBERG, Y. Neural network methods in natural language processing. Traducao . [s.l.] Morgan &amp; Claypool Publishers, 2017.

GOLDBERG, Yoav; ORWANT, Jon. A dataset of syntactic-ngrams over time from a very large corpus of english books. 2013.

Google Code Archive - Long-term storage for Google Code Project Hosting. Disponível em: <https://code.google.com/archive/p/word2vec/>

GORDON, Andrew; SWANSON, Reid. Identifying personal stories in millions of weblog entries. In: Third International Conference on Weblogs and Social Media, Data Challenge Workshop, San Jose, CA. 2009.

HJELMSLEV, L. Prolegomenos a uma teoria da linguagem. Traducao . [s.l.] Perspectiva, 1975. In Cloud We Trust. Disponível em: <https://www.credit-suisse.com/eg/en/articles/asset- management/in-cloud-we-trust-uk-201905.tag*article-topic--asset-management---security.html> INDURKHYA, N.; DAMERAU, F. J. Handbook of natural language processing. Traducao . [s.l.] Chapman &amp; Hall/CRC, 2010.

JURAFSKY, D.; MARTIN, J. H. Speech and language processing: an introduction to natural language processing, computational linguistics, and speech recognition. Traducao . [s.l.] Dorling Kindersley Pvt, Ltd., 2014.

KENNEDY, G. D. An introduction to corpus linguistics. Traducao . [s.l.] Routledge, Taylor &amp; Francis group, 2016.

KLEIN, D.; MANNING, C. D. Accurate unlexicalized parsing. Proceedings of the 41st Annual Meeting on Association for Computational Linguistics - ACL '03, 2003.

LE, Quoc; MIKOLOV, Tomas. Distributed representations of sentences and documents. In: International conference on machine learning. 2014. p. 1188-1196.

58 Thirteenth International Conference on the Principles of Knowledge Representation and Reasoning. 2012.

MIKOLOV, Tomas et al. word2vec. URL https://code. google. com/p/word2vec, 2013.

MIKOLOV, Tomas et al. Efficient estimation of word representations in vector space. arXiv preprint arXiv:1301.3781, 2013.

MOSTAFAZADEH, N. et al. A Corpus and Cloze Evaluation for Deeper Understanding of Commonsense Stories. Proceedings of the 2016 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, 2016.

NORDQUIST, R. What Are Corpora in Language Studies? Disponível em: <http://thoughtco.com/what-is-corpus-language-1689806>

NPL IN PROGRESS. Common sense. Disponível em:

<http://nlpprogress.com/english/common_sense.html>. Acesso em 01 de mai. de 2020.

PARADEDA, Raul. IA Expert, 2020. Você já ouviu falar de computação afetiva? Disponível em: <https://iaexpert.com.br/index.php/2020/03/03/voce-ja-ouviu-falar-de-computacao-afetiva/>. Acesso em: 10 de mar. de 2020.

PENNINGTON, J.; SOCHER, R.; MANNING, C. Glove: Global Vectors for Word Representation. Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), 2014.

PERONE. Word Embeddings - Introduction. Disponível em: <https://www.slideshare.net/perone/word-embeddings-introduction>

RASHKIN, H. et al. Event2Mind: Commonsense Inference on Events, Intents, and Reactions. Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), 2018.

RECORD. Reading Comprehension with Commonsense Reasoning Dataset. Disponível em: <https://sheng-z.github.io/ReCoRD-explorer/>. Acesso em 10 de Mai. 2020.

SARDINHA, Berber. Corpus Brasileiro. 2013. Disponível em: <http://corpusbrasileiro.pucsp.br/cb/Acesso.html>. Acesso em 02 de Mar. 2020.

59 STIILPEN JÚNIOR, Milton. Um arcabouço de processamento de textos informais em português brasileiro para aplicações de mineração de dados. 2016.

STANFORD PARSER. Disponível em: <http://nlp.stanford.edu:8080/parser/index.jsp>. Acesso em 15 de Abr. 2020.

STROMSWOLD, Karin. The cognitive neuroscience of language acquisition. The new cognitive neurosciences, v. 2, p. 909-932, 2000.

SWAG: A Large-Scale Adversarial Dataset for Grounded Commonsense Inference (EMNLP 2018). Disponível em: <https://rowanzellers.com/swag/>

TRAPPENBERG, T. P. Machine learning with sklearn. Fundamentals of Machine Learning, p. 38–65, 2019.

VIEIRA, Renata. Lingüística Computacional: uma entrevista com Renata Vieira. Revista Virtual de Estudos da Linguagem - ReVEL. Vol. 2, n. 3, agosto de 2004. ISSN 1678-8931 [www.revel.inf.br]. Você já ouviu falar de computação afetiva? Disponível em: <https://iaexpert.com.br/index.php/2020/03/03/voce-ja-ouviu-falar-de-computacao-afetiva/>

WILSON, S.; MIHALCEA, R. Predicting Human Activities from User-Generated Content. Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, 2019.

YIN, H. et al. A temporal context-aware model for user behavior modeling in social media systems. Proceedings of the 2014 ACM SIGMOD international conference on Management of data - SIGMOD '14, 2014.

ZELLERS, R. et al. From Recognition to Cognition: Visual Commonsense Reasoning. 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2019.

ZELLERS, Rowan. Visual Commonsense Reasoning (VCR) is a new task and large-scale dataset for cognition-level visual understanding. Disponível em: <https://visualcommonsense.com/>

ZELLERS, R. et al. SWAG: A Large-Scale Adversarial Dataset for Grounded Commonsense Inference. Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, 2018.

ZHANG, Sheng et al. Record: Bridging the gap between human and machine commonsense reading comprehension. arXiv preprint arXiv:1810.12885, 2018.

Documentos relacionados