FRAMEWORK DE EXPANSÃO DE RECURSOS
5.1.2 Resumo dos experimentos com o TTsBR
Exceto nos córpus Pelesent e ReLi, conseguimos atingir valores acima de 80% de F- Measurenos córpus utilizados. Os córpus que obtiveram os maiores valores foram o Mercado Livre e os córpus de Eleições. Pelo comportamento do córpus de Eleições na classificação, podemos dizer que as features escolhidas conseguiram discriminar corretamente os dados, visto que, mesmo alterando os classificadores, seus valores continuaram sempre entre os maiores em comparação com os demais córpus.
Ainda existe uma lacuna muito grande nas representações para a classe neutra, uma causa disso pode ser a ausência de uma definição formal para a classe.
Os valores obtidos com os classificadores implementados foram condizentes com os obtidos na literatura, e alguns podem ser utilizados como baselines para motivar mais pesquisa na AS - em especial com os córpus das Eleições que não haviam sido avaliados para essa tarefa.
Os valores obtidos com o TTsBR na classificação em três classes são importantes para a avaliação da extensão do córpus, apresentada na próxima seção. ATabela 23apresenta o resumo dos melhores valores obtidos em cada córpus.
5.2. Experimentos com expansão semissupervisionada 89
Tabela 23 – Visão geral da classificação de polaridades nos córpus da literatura (córpus ReLi e TTsBR possuem duas entradas assinaladas com * para indicar classificação em três classes).
Córpus Classificador F-Pos F-Neu F-Neg F-Measure ReLi* Regressão Logística 60,0 87,8 22,4 56,78 TTsBR* MLP 74,1 45,5 63,9 61,23 Buscapé-1 Regressão Logística 85,51 - 84,31 84,91 Buscapé-2 MLP 88,06 - 87,27 87,66 Mercado Livre MLP 94,81 - 94,72 94,76 Eleições Dilma Random Forest 96,11 - 90,19 93,15 Eleições Serra SVM 89,03 - 98,22 93,63 Pelesent MLP 78,16 - 69,95 74,05 Reli SVM 91,35 - 51,54 71,45 TTsBR MLP 85,08 - 76,85 80,96
Fonte: Elaborada pelo autor.
5.2
Experimentos com expansão semissupervisionada
Nossa avaliação do framework de expansão fez uso do TTsBR como treinamento inicial para a classificação de 117.050 tweets extraídos anteriormente junto do material anotado. Esses tweetsforam pré-processados da mesma forma e compreendem o mesmo domínio, gênero e compartilham o suporte linguístico do ambiente virtual.
Para cada classificador utilizado na pesquisa (SVM, Naive Bayes, Regressão Logís- tica, MLP, Árvore de Decisão e Random Forest) geramos um córpus, utilizando o mesmo na anotação dos documentos. Inicialmente fizemos uma busca pelos melhores hiperparâmetros e representações para a classificação do TTsBR, essas configurações serão apresentadas na
Subseção 5.2.1.
Para avaliar nosso método, utilizamos o conjunto de teste do TTsBR como conjunto de held-out, ou seja, avaliamos cada córpus gerado no treinamento de um modelo de classificação e utilizamos esse modelo no conjunto de teste do TTsBR. Dessa maneira comparamos os resultados obtidos com cada córpus entre si e com a classificação usando somente os dados anotados manualmente.
Esse método de anotação indica se o córpus anotado semi-automaticamente consegue resultados equivalentes ou melhores do que os obtidos usando um conjunto anotado manualmente, porém consideravelmente menor. Isso não exclui a possibilidade de se realizar a anotação dos 117.050 documentos, medindo assim exatamente a acurácia da classificação semi-automática, porém isso foi inviável devido aos altos custos de anotação envolvidos na tarefa.
Como descrito naSubseção 4.2.4, utilizamos um threshold fixo para definir a quantidade de documentos a serem adicionados ao córpus de treinamento em cada iteração do aprendizado. Outros trabalhos da literatura exploram outras maneiras de se aplicar um modelo semissupervisi-
onado iterativo, como adicionar um threshold de confiança na anotação (SILVA,2016;SILVA; COLETTA; HRUSCHKA,2016).
Optamos por não utilizar a abordagem do threshold na confiança, pois experimentos iniciais apontaram para a dificuldade de se definir um valor fixo que garanta a confiabilidade na classificação e faça uso de boa parte dos documentos disponibilizados para a anotação.
No primeiro momento, a maioria dos trabalhos da literatura que trabalha com duas classes consegue valores de F-Measure e Acurácia altos em comparação com a classificação em três polaridades, portanto thresholds altos se mostram eficientes em manter a confiança e garantir em parte o balanceamento do conjunto de treino. Quando um threshold muito alto foi definido em nossos experimentos, rapidamente uma classe (positiva) tornou-se desproporcionalmente majoritária, reunindo mais de 70% dos documentos do córpus, visto que o próprio TTsBR possui certo enviesamento (como pode ser visto na F1 obtida na classe positiva nos experimentos da seção anterior). Devido a isso, a classe neutra (minoritária) acabou crescendo menos de 5% e logo nenhum documento classificado era adicionado ao córpus, por conta da baixa confiança dos modelos.
Experimentamos adicionar um número fixo de documentos de cada classe respeitando o threshold, mas limitando a adição à classe minoritária. Nesses casos, após uma ou duas iterações os modelos sofreram com a vazão limitada da classe minoritária, a classe neutra começou a obter somente 1 ou 2 documentos por iteração, aumentando o número de iterações (visto que as demais classes eram limitadas por essa) e rapidamente não possuindo mais documentos para serem adicionados - encerrando a adição. Nos poucos experimentos que fizemos, pouco mais de cinco mil documentos foram incorporados ao córpus final.
Por essas razões, utilizamos um valor fixo de adição, ou threshold de adição, onde definimos uma porcentagem e, a cada iteração, adicionamos um número fixo de documentos, ordenados pela confiança de cada modelo. Discutimos os resultados obtidos com essa abordagem naSubseção 5.2.2.
Para tentar reduzir o enviesamento de classes, realizamos experimentos também fazendo under-samplingdo TTsBR, ou seja, retirando documentos das classes positiva e negativa até que o córpus se tornasse balanceado. Essa abordagem surtiu o efeito esperado e em alguns casos conseguiu gerar córpus finais que se destacaram na classificação. Os resultados com o TTsBR reduzido são discutidos naSubseção 5.2.3.
Variamos os threshold em 1%, 5%, 10%, 20%, 25%, 30% e 40% para experimentar desde córpus gerados com muitas iterações (onde o enviesamento foi consideravelmente superior ao longo do aprendizado), até córpus gerados com poucas iterações (onde o risco de ruído na classificação é extremamente alto).
Além de avaliar a classificação em três classes, avaliamos também a classificação binária, descartando a classe neutra. A expansão do TTsBR em duas classes não deve ser realizada,
5.2. Experimentos com expansão semissupervisionada 91
pois provavelmente existem documentos neutros no córpus não anotado, portanto utilizamos os mesmos córpus avaliados com três classes.
Apesar dos nossos experimentos indicarem a eficiência do framework na anotação semissupervisionada, é muito difícil garantir que tenhamos atingido 100% de certeza em qualquer dos córpus. Sendo nosso objetivo fornecer uma alternativa na anotação semi-automática de córpus, os resultados apresentados indicam somente se os córpus anotados semi-automaticamente são tão bons quanto aqueles com o uso de um conjunto de dados consideravelmente menor, porém anotado manualmente. Buscando avaliar um pouco mais nosso framework, aplicamos a mesma técnica de self-training usada nos dados não anotados em córpus da literatura.
Nesses experimentos usamos 10% dos córpus para o treinamento inicial do modelo e, usando os mesmos thresholds de adição já apresentados, realizamos a classificação dos demais documentos. De posse das etiquetas corretas, podemos avaliar a Acurácia do nosso método. A vantagem desses experimentos é que eles nos ajudam a verificar mais precisamente a eficiência do framework e nos permitem observar como ele se comporta em outros domínios. A desvantagem é que existem poucos córpus de sentimentos anotados em três classes, portanto os experimentos nesses córpus não podem ser comparados diretamente aos relizados na expansão do TTsBR. Além disso, o tamanho dos córpus também limita o experimento a usar menos dados do que o TTsBR no treinamento (somente 10% dos córpus) e na expansão dos dados. Esses resultados são apresentados e discutidos naSubseção 5.2.4.
5.2.1
Seleção de features e hiperparâmetros
Antes de realizarmos os experimentos com os métodos de classificação e expansão, buscamos a melhor combinação de features e hiperparâmetros para potencializar a classificação de polaridades.
Para isso, utilizamos o TTsBR para avaliar diferentes configurações de hiperparâmetros e features de representação (apresentadas naSubseção 4.2.2). Os valores apresentados para cada parâmetro foram estipulados empiricamente.
A avaliação de tais configurações foi feita levando em consideração a F-Measure devido ao desbalanceamento de classes do TTsBR. A utilização do subconjunto de teste também não pôde ser feita, pois enviesaria os parâmetros escolhidos para o conjunto avaliado.
Utilizamos uma parcela do córpus de treinamento para validar os parâmetros escolhidos com 10% do tamanho total do córpus, garantindo assim que os resultados obtidos são comple- tamente independentes do conjunto de teste avaliado nos experimentos posteriores. Usamos a média de 5 execuções para ranquear as combinações., mantendo o mesmo subconjunto de validação.
Por conta do elevado número de execuções relacionadas a cada experimento (cerca de 8 mil tuplas) optamos por disponibilizar as tabelas completas virtualmente em<https://bitbucket.
org/HBrum/tweetsentbr/>.
NaSubsubseção 5.2.1.7fazemos um resumo dos hiperparâmetros utilizados no decorrer dos experimentos e discutimos algumas possibilidades para trabalhos futuros.
5.2.1.1 SVM Linear
A representação que obteve os melhores resultados com SVM foram o Bag-of-words, a contagem de emoticons e a distribuição de emojis. Além disso, a seleção de features também obteve os melhores resultados na classificação. Para definir um valor de C, usamos 0, 01, 0, 01, 1 e 10, sendo que o valor que obteve os melhores resultados foi 1. ATabela 24apresenta os 5 melhores resultados obtidos.
O método de seleção de features utilizado foi o mesmo apresentado em (AVANÇO,
2015), ele diminui o número de features treinando um classificador para identificar as features menos variantes nos dados. O mesmo método foi aplicado em todos os classificadores abaixo.
Tabela 24 – Melhores resultados obtidos na avaliação de hiperparâmetros com classificador SVM.
BoW Neg Emot Emoj Sent. PoS FS C F-Pos F-Neu F-Neg F-Measure X X X X 1 73,47 50,29 64,32 62,69 X X X X X 0.1 74,26 47,85 65,29 62,47 X X X X X 1 73,07 49,92 64,17 62,38 X X X X X X 1 72,99 49,44 64,60 62,34 X X X X 1 72,91 49,75 64,21 62,29
Fonte: Elaborada pelo autor.
5.2.1.2 Naive Bayes
A representação que obteve os melhores resultados com o classificador Naive Bayes foi bag-of-words, contagem de emoticons, distribuição de emojis, léxico de sentimentos e etiquetas morfossintáticas - assim como com o SVM, a seleção de features melhorou os resultados. Para os valores do alpha do classificador, experimentamos 0, 1, 0, 5 e 1, sendo que o melhor valor obtido foi com o alpha como 0, 1. ATabela 25apresenta os resultados para as melhores configurações do classificador bayesiano.
5.2.1.3 Regressão Logística
Realizamos experimentos somente com as representações usando regressão logística (não modificamos nenhum hiperparâmetro), a combinação de features que obteve os melhores resulta- dos foi com bag-of-words, emoticons, emojis e etiquetas morfossintáticas. ATabela 26apresenta os melhores resultados obtidos.
5.2. Experimentos com expansão semissupervisionada 93
Tabela 25 – Melhores resultados obtidos na avaliação de hiperparâmetros com classificador Naive Bayes.
BoW Neg Emot Emoj Sent. PoS FS Alpha F-Pos F-Neu F-Neg F-Measure
X X X X X X 0,1 67,67 42,14 54,17 54,66
X X X X X X 0,1 67,95 41,71 54,16 54,60
X X X X X X 0,5 68,31 41,20 54,21 54,57
X X X X X 0,1 67,72 41,31 54,22 54,42
X X X X 0,1 67,85 40,75 54,45 54,34
Fonte: Elaborada pelo autor.
Tabela 26 – Melhores resultados obtidos na avaliação de hiperparâmetros com Regressão Logística.
BoW Neg Emot Emoj Sent. PoS FS F-Pos F-Neu F-Neg F-Measure Acc
X X X X X 0,7416 0,4781 0,6476 0,6224 0,6509
X X X X X 0,7386 0,4749 0,6529 0,6221 0,6504
X X X X X X 0,7371 0,4768 0,6516 0,6218 0,6498
X X X X X 0,7390 0,4765 0,6498 0,6217 0,6501
X X X X X 0,7373 0,4781 0,6478 0,6210 0,6490
Fonte: Elaborada pelo autor.
5.2.1.4 Multilayer Perceptron
Por ser um método que compreende múltiplos cortes no espaço e um número elevado de hiperparâmetros, optamos por utilizar todas as features na representação dos dados durante os experimentos com a Multilayer Perceptron.
Quanto às variações, fizemos experimentos com uma e duas camadas, variando o número de neurônios (o mesmo para ambas as camadas) em 30, 60, 100 e 200. Variamos também o alphaem 0, 0001, 0, 001 e 0, 01 e a taxa de aprendizado (learning rate) entre 0, 001, 0, 1 e 0, 1.
Tabela 27 mostra os melhores resultados, sendo que a configuração escolhida foi usando 2 camadas com 200 neurônios, alpha de 0, 0001 e a taxa de aprendizado mais baixa, 0, 001.
Tabela 27 – Melhores resultados obtidos na avaliação de hiperparâmetros com Multilayer Perceptron.
BoW Neg Emot Emoj Sent. PoS FS Camadas Neurônios Alpha Learning-rate F-Pos F-Neu F-Neg F-Measure
X X X X X X X 2 200 0,0001 0,001 73,89 48,80 65,20 62,63
X X X X X X X 2 100 0,001 0,001 74,30 48,46 65,06 62,60
X X X X X X X 2 100 0,01 0,001 73,90 48,77 65,07 62,58
X X X X X X X 2 60 0,01 0,001 73,82 48,18 65,22 62,40
X X X X X X X 2 100 0,0001 0,001 73,98 47,75 65,35 62,36
Fonte: Elaborada pelo autor.
5.2.1.5 Árvore de Decisão
Para o classificador baseado em árvore de decisão variamos o critério de divisão usando o Coeficiente de Gini e Entropia. Também realizamos experimentos com a profundidade máxima
da árvore de decisão, usando os valores 4, 5, 8 e deixando sem limite. Optamos por experimentar a limitação da altura da árvore para reduzir o custo computacional, visto que reduziu conside- ravelmente o tempo de treinamento do modelo, porém os melhores valores foram obtidos sem limite de altura e usando o Coeficiente de Gini como critério de divisão.
A Tabela 28apresenta os resultados obtidos nas melhores configurações. Os valores com limite de profundidade estiveram abaixo de grande parte das execuções sem limite e nem figuraram entre as 5 melhores configurações. A representação utilizada é composta de bag-of- words, presença/ausência de negação, emoticons, emojis e esse foi o único classificador onde a seleção de features diminuiu a F-Measure.
Tabela 28 – Melhores resultados obtidos na avaliação de hiperparâmetros com Árvores de Decisão.
BoW Neg Emot Emoj Sent. PoS FS Critério Prof. Max. F-Pos F-Neu F-Neg F-Measure
X X X X gini - 65,66 41,39 53,80 53,61
X X X X X entropy - 65,88 42,28 52,00 53,39
X X X X X entropy - 65,86 42,04 52,03 53,31
X X X X X X gini - 65,30 42,68 51,88 53,29
X X X X X gini - 65,79 41,00 52,84 53,21
Fonte: Elaborada pelo autor.
5.2.1.6 Random Forest
Random Foresté basicamente um comitê de árvores de decisão, portanto seus hiperparâ- metros são muito semelhantes. Repetimos os experimentos com a profundidade das árvores (4, 5, 8 e sem limite) e usando o Coeficiente de Gini e Entropia como critérios. A principal diferença é o número de estimadores, ou seja, de árvores de decisão utilizadas no comitê. Utilizamos 30, 60, 100 e 200 estimadores, sendo que, como esperado, o maior número de estimadores atingiu os
melhores valores de F-Measure.
Um grande risco do grande número de estimadores é o overfitting, isso justifica no- vamente o uso de uma parcela aleatória do treinamento para a avaliação, visto que o uso do conjunto de teste enviesaria a classificação somente para esses dados. A representação utilizada foi semelhante à utilizada na classificação com Árvore de Decisão, porém aqui a seleção de fea- turesobteve os melhores resultados; o mesmo aconteceu com o critério de divisão por Entropia que obteve melhores resultados na Random Forest.
5.2.1.7 Resumo dos hiperparâmetros escolhidos
Os experimentos feitos sobre os hiperparâmetros e representações usados nos classifica- dores conseguiram aumentar um pouco a F-Measure obtida por estes, porém um dos maiores dilemas da nossa avaliação é justamente a avaliação dos modelos durante a etapa de expansão. Os 117.050 tweets que usamos para expandir o córpus não possuem qualquer anotação de etiqueta para avaliarmos a classificação, isso nos motivou ainda mais em tentar obter o melhor ambiente
5.2. Experimentos com expansão semissupervisionada 95
Tabela 29 – Melhores resultados obtidos na avaliação de hiperparâmetros com Random Forest.
BoW Neg Emot Emoj Sent. PoS FS Estimadores Critério Prof. Max. F-Pos F-Neu F-Neg F-Measure X X X X X 200 entropy - 71,94 44,87 60,91 59,23 X X X X X X 200 entropy - 71,80 44,71 61,10 59,20 X X X X 200 gini - 71,79 44,43 61,10 59,10 X X X X X 200 entropy - 71,75 45,22 60,28 59,08 X X X X X 200 gini - 71,67 44,56 61,01 59,07
Fonte: Elaborada pelo autor.
de classificação antes da aplicação do self-training. A definição dos hiperparâmetros ainda facilita a replicação dos experimentos em trabalhos comparativos futuros.
O bag-of-words é a representação que melhor discrimina nossos dados, visto que todos os modelos se comportaram consideravelmente melhor com essa feature. Apesar de não constar na tabela reduzida, realizamos experimentos com word-embeddings nos dados (nestes casos não agregamos nenhuma outra representação, ou efetuamos seleção de features), porém os resultados obtidos não foram satisfatórios.
Acreditamos que a densidade das word-embeddings funciona melhor na inicialização de arquiteturas de deep learning do que nos classificadores que utilizamos na nossa pesquisa.
A seguir está o resumo das configurações de cada classificador nos próximos experimen- tos reportados:
∙ SVM: bag-of-words, léxico de emoticons, distribuição de emojis e seleção de features. C: 1.
∙ Naive Bayes: bag-of-words, léxico de emoticons, distribuição de emojis, termos positivos e negativos, etiquetas morfossintáticas e seleção de features. alpha: 0,1.
∙ Regressão Logística: bag-of-words, léxico de emoticons, distribuição de emojis, etiquetas morfossintáticas e seleção de features.
∙ MLP: bag-of-words, presença de negação, léxico de emoticons, distribuição de emo- jis, termos positivos e negativos, etiquetas morfossintáticas e seleção de features. Duas camadas com 200 neurônios em cada uma, alpha: 0,0001, taxa de aprendizado: 0,001. ∙ Árvore de Decisão: bag-of-words, presença de negação, léxico de emoticons e distri-
buição de emojis, sem seleção de features. Critério de divisão: coeficiente de Gini, sem profundidade máxima.
∙ Random Forest: bag-of-words, presença de negação, léxico de emoticons, distribuição de emojise seleção de features. Número de estimadores: 200, critério de divisão: entropia, sem profundidade máxima.