Escolar Documentos
Profissional Documentos
Cultura Documentos
SENTIMENTO
Belo Horizonte
Maro de 2012
vii
Agradecimentos
Muito Obrigado,
Pai (Samuel), Me (Sebastiana), Irms (Tatiana e Cristiane), todos os Tios e
Tias. Sem vocs para me espelhar provavelmente no teria caminhado at aqui. Vocs
so fontes de inspirao, carinho e amor. Exemplos de superao! A melhor famlia do
mundo. Um agradecimento especial para meu Pai (Samuel) e minha Me (Sebastiana)
que souberam me educar e me guiar at aqui com muito amor.
Glvia (minha namorada), sempre companheira e sempre agraciando a todos
com sua ateno e empenho. Muito obrigado por me acompanhar pelos mais longos
caminhos e pelas incansveis revises nos nossos trabalhos. Agradeo tambm, por
aprender tanto sobre aprendizado de mquina e minerao de dados durante as minhas
repedidas explicaes em busca de uma inspirao.
A todos os colegas que conheci durante o meu mestrado. Soraia e Daniel, por
revisar vrios dos meus textos e muitos momentos de conversa. Rodrigo Silva e
Thatyene pelo apoio quando eu iniciei o mestrado. Janana pela participao em alguns
trabalhos. Walter e toda equipe do Observatrio da Web pela ajuda na obteno de
dados e construo de uma aplicao para demonstrao. Aos companheiros, Flvio
Roberto e Luiz Damilton. A todos os integrantes do laboratrio e-speed e PENSI.
Aos meus orientadores Renato Ferreira e Adriano Veloso, pela confiana, incentivo
e ajuda em todo o trabalho, foi um honra trabalhar com vocs. Muito obrigado
Professor Wagner, pela ajuda na pesquisa e revises nos trabalhos enviados para
conferncias. Agradeo ao Professor Mohammed Zaki, por orientar minhas pesquisas
durante perodo no Rensselaer Polytechnic Institute (RPI) e viabilizar minha estadia
nos EUA. Obrigado Professora Gisele por ter sido a primeira pessoa que me ajudou
com um tema de pesquisa.
Membros da banca, (Nivio, Wagner e Gisele), obrigada por aceitar o convite em
colaborar com essa pesquisa. Finalmente, a todos os funcionrios da UFMG e aos
rgos CAPES e UOL pela ajuda financeira durante o mestrado.
ix
Resumo
Nos ltimos anos, a tarefa de anlise de sentimentos tem atrado muito interesse
por parte da comunidade de Aprendizado de Mquina. Com o advento dos canais
de mdias sociais essa anlise tem ganhado fora, isso porque nessas aplicaes, os
usurios so convidados, continuamente, a compartilhar suas opinies e sentimento
sobre diferentes tpicos de discusso. Como consequncia, uma grande massa de
contedo opinativo gerada em tempo real. Muitas tcnicas de classificao automtica
tm sido utilizadas para realizar a anlise de sentimento, contudo consenso que o
modelo de chegada de mensagens a partir de mdias sociais segue o paradigma de fluxo
de dados e as tcnicas de classificao tradicionais no esto adequadas para tratar
as caractersticas especificas desse fluxo de sentimento. Entre os desafios impostos
s tcnicas classificao podemos destacar: (1) o sentiment drift (i.e., constantes
mudanas nas caractersticas dos dados), (2) a necessidade de atualizao em tempo
real do modelo de classificao a partir de mensagens mais recentes e (3) a quantidade
limitada de dados para treinamento dos algoritmos.
Neste trabalho, esses problemas foram estudados a partir de uma proposta de
aprendizado semi-supervisionado. O algoritmo proposto auto expande o conjunto de
treino, a partir de novas mensagens do fluxo e uma pequena semente de treinamento
inicial. Modelos de classificao so produzidos em tempo real a partir de regras de
associao, mantendo o modelo atualizado de maneira incremental. Dessa forma em
qualquer momento do evento, o modelo reflete o sentimento que est sendo transmitido.
Com intuito de tratar o sentiment drift, mensagens de treinamento so projetadas sobdemanda, de acordo com o contedo da mensagem sendo classificada. A projeo
de dados de treinamento oferece uma srie de vantagens, incluindo a habilidade de
rapidamente detectar tpicos de informao emergindo no fluxo.
Um estudo de caso foi realizado a partir das mensagens do Twitter, postadas
em tempo real em relao a trs importantes eventos de 2010: (1) Copa do Mundo de
Futebol; (2) Eleies Presidenciais do Brasil; e (3) Escolha da personalidade do ano pela
revista TIME. Atravs desse experimento observou-se que o desempenho da predio se
xiii
xiv
Abstract
Over the past years, the sentiment analysis task has attracted the interest of the
machine learning researchers. This interest has grown significantly due to the large
volume of opinionative content generated and shared via social media. Considering
the benefits of knowing the sentiment of the population regarding different topics and
entities, the analysis of the content generated by social medias it is a promising and
necessary task. Many automatic classification techniques have been used to perform
sentiment analysis, however it is consensus that the arrival pattern of messages from
social medias follows the data stream paradigm and the traditional classification
techniques are not adequate to address the specific characteristics of this sentiment
stream. Among the challenges imposed to classification techniques we can be highlight:
(1) concept drift (i.e., constant changes in data characteristics, which in this study was
approached as sentiment drift), (2) the need of real-time update of the classification
model from the most recent messages and (3) the limitation of computing and training
resource, which makes the two firsts challenges mentioned more difficult.
We analyzed these problems from a semi-supervised learning proposal. Our
algorithm adapts the training set, to the changes in the data, from a self-augmenting
training process with the passes of the stream. It uses a small seed as an initial
training and then classification models are produced in real-time using association
rules. This strategy keeps the model up-to-date incrementally, so that at any time
of the event the model reflects the sentiment that is being transmitted. In order to
address the sentiment drift, messages to training are projected on-demand, according
to the message content that is being classified. Projection of the training data offers
a number of advantages including the ability to quickly detect emerging trends in the
information stream. We conducted a case study using the Twitter messages, posted
in real-time, related to major events in 2010. In these experiments the performance
of the prediction kept the same or increased, with the passes of the stream and the
inclusion of new messages in the training set. We evaluated the proposed solution in
different languages, in cases where the sentiment distribution changed in different way
xv
over time and in cases where the initial training seed is rather small.
In order to complement our experiments, we performed a comparative analysis
with the static version (i.e., the model is not updated after the initial training) of
the most popular classification algorithms, which were defined as a lower bound.
Our approach showed extreme effective in these analyzed scenarios, providing gains
from 14% to 41%. We define an upper bound from experiments using the evaluation
methodology "interleaved test-then-train"and the search for the best sliding window
size to train each data set. Thereafter, we proposed a new forgetting technique in
the data stream, based on an active sampling process, called Active Sliding Window
(ASW). ASW was able to achieve results equivalent to the best window size (set by
exhaustive search) without prior setting of the window size, since the configuration
of this parameter by the user can be unfeasible, as shown in the experiments. We
analyzed how our semi-supervised approach approaches to the upper bound and we
found that it achieves up to 87% of the upper bound, using only a small seed of labeled
data.
xvi
Lista de Figuras
3.1
3.2
3.3
3.4
xvii
25
27
31
34
39
41
43
44
45
47
54
57
Lista de Tabelas
3.1
3.2
3.3
3.4
4.1
Colees de Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Melhores parmetros para cada algoritmo avaliado . . . . . . . . . . .
MSE alcanado pelo algoritmo de auto treinamento e verses estticas
diferentes algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Tempo de Execuo . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. .
de
. .
. .
xix
24
36
37
48
55
Sumrio
Agradecimentos
ix
Resumo
xiii
Abstract
xv
Lista de Figuras
xvii
Lista de Tabelas
xix
1 Introduo
1.1
Motivao e Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2
Contribuies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3
Organizao do texto . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Trabalhos Relacionados
13
13
3.1.1
. . . . . . . . . . . . . . . . . . . .
14
3.1.2
Predio de Sentimentos . . . . . . . . . . . . . . . . . . . . . .
15
3.1.3
16
Avaliao Experimental . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
3.2.1
Colees de Dados . . . . . . . . . . . . . . . . . . . . . . . . .
24
3.2.2
. . . . . . . . . . . . . . . .
29
3.2.3
35
49
3.2
4.1
50
4.2
50
51
53
59
Referncias Bibliogrficas
61
xxii
Captulo 1
Introduo
A Web deixou de ser um espao que interliga exclusivamente documentos, pginas ou
recursos para tornar um ambiente de comunicao, no qual produtores e consumidores
de contedo se misturam e interagem, estabelecendo assim novas formas de criar,
organizar, compartilhar e utilizar o conhecimento [Easley & Kleinberg, 2010]. Uma
das fontes para gerao desse contedo so as mdias sociais (e.g., Orkut, Twitter
e Facebook), onde milhes de usurios so encorajados a compartilhar e expressar
suas opinies e sentimentos sobre os mais diversos tpicos e entidades. A ascenso
destes canais de mdias sociais baseados em texto tem atrado ateno da comunidade
cientifica. Isso porque a descoberta de conhecimento a partir do contedo expresso pelos
usurios da web oferece oportunidades estratgicas para diferentes reas [Bermingham
& Smeaton, 2010].
Nos ltimos anos a tarefa de analisar contedo, a partir dos sentimentos nele
expressos, tem sido amplamente estudada [Pang et al., 2002; Pang & Lee, 2008; Bifet
& Frank, 2010]. Nessa tarefa, a mensagem basicamente classificada de acordo com o
sentimento expresso pelo escritor a respeito de um tpico ou entidade. Considerando os
benefcios da anlise de sentimento e o potencial dos canais de mdias social como fonte
de contedo opinativo, cada vez mais se faz necessrio realizar anlise de sentimentos
a partir dos dados gerados nas mdias sociais.
A partir dessas aplicaes possvel mensurar o sentimento compartilhado
continuamente pela populao online sobre diversos assuntos (e.g., epidemias [Chew &
Eysenbach, 2010], eleies [Diakopoulos & Shamma, 2010] e eventos esportivos [Silva
et al., 2011c]), e o conhecimento obtido podem ser utilizado por diversas reas no
processo de tomada de deciso.
Existe uma crescente tendncia em executar anlise de sentimentos utilizando
tcnicas relacionadas a classificao [Pang et al., 2002; Bifet & Frank, 2010], um
1
Captulo 1. Introduo
1.1
Motivao e Objetivo
1.2
Contribuies
Captulo 1. Introduo
fazem a nossa proposta uma soluo diferenciada para tratar com diferentes
configuraes de sentiment drift, operando com recursos limitados:
1. A aplicao de um procedimento de auto aumento de treino, o qual incorpora
confiveis predies como novas informaes de treinamento, e como resultado
os dados de treinamento so automaticamente aumentados como o passar das
mensagens do fluxo. O modelo de classificao imediatamente renovado
mantendo as regras atualizadas incrementalmente, ento a prxima mensagem
no fluxo pode ter vantagens pela informao includa recentemente;
2. Uma estrtegia de sub judice, de acordo com a dificuldade do fluxo, o classificador
pode abster de predies duvidosas, criando um bloco de mensagens que
esto temporariamente esperando por uma predio de confiana. Estas
mensagens para as quais nenhuma predio possvel com somente as mensagens
de treinamento disponvel at o momento, se beneficiam de informaes de
treinamento futuras, adquiridas enquanto elas estavam esperando;
3. Execuo de projeo dos dados de treinamento sob demanda [Veloso & Meira Jr.,
2011], o que determina uma especfica (potencialmente diferente) projeo de
treinamento para cada mensagem que chega atravs do fluxo. As mensagens de
treinamento que compem cada projeo so automaticamente selecionadas de
acordo com o contedo da mensagem que est sendo analisada. Argumentamos
que esta uma poderosa estratgia para tratar diferentes tipos de sentiment
drift, uma vez que elimina mensagens de treinamento que no significativas
para a mensagem que est sendo analisada. Demonstramos que as mensagens
removidas no so prejudiciais para o desempenho de predio, e que o nmero
de regras extradas a partir de cada projeo de treino cresce polinomialmente
com o tamanho do vocabulrio, no importando o valor de suporte mnimo. Isso
permite que o classificador concentre-se em tendncias de informao que esto
emergindo no fluxo, enquanto permanece livre de uma enorme quantidade de
informaes inteis.
Essas caractersticas foram propostas de forma a se complementar. Isso porque
elas produzem um efeito sinrgico no sentido de que ambas precisam uma da outra
para funcionar corretamente. A capacidade de auto aumentar o treino assegura a
incluso de novas mensagens no conjunto de treinamento, que so necessrias para
produzir projees de treinamento atualizadas. Neste ponto, o uso de restries tpicas
de custo computacional baseadas em limiares de suporte mnimo poderia comprometer
1.2. Contribuies
o processo, uma vez que padres importantes que esto emergindo no fluxo seriam
podados, e como resultado, o modelo de classificao se tornaria obsoleto e incapaz de
responder s tendncias de opinio.
Portanto, a fim de detectar rapidamente o surgimento de novas informaes no
fluxo de mensagens, o classificador deve extrair regras sem empregar restries de
frequncia com base no suporte. Como ser demonstrado, a abordagem de projeo
sob demanda assegura que regras so eficientemente extradas a partir da projeo
de treinamento, mesmo sem aplicar restries de suporte. Alm disso, o custo
associado com a extrao de regras grandemente amortizado devido a uma abordagem
incremental sem perdas, o que reduz drasticamente o nmero de acessos para os dados
de treino.
Para avaliar a eficcia da soluo proposta, um conjunto de experimentos
sistemticos utilizando colees de mensagens do Twitter (ricas em sentimentos que
retratam trs eventos importantes no ano de 2010) foi utilizado. Analisamos diferentes
cenrios de aprendizagem (i.e., diferentes sentimentos, idiomas, tamanhos de sementes
treinamento e diferentes tipos de mudanas nos sentimentos). Comparamos nossa
abordagem com as verses estticas de algoritmos estado da arte e os resultados
mostram que nossa proposta mais efetiva sobre diversos cenrios de aprendizado,
alcanando ganhos que variam de 14% a 41%. Embora tenhamos realizado um estudo
de caso no Twitter, as tcnicas propostas so aplicveis a qualquer fonte de dado que
compartilhe as mesmas caracteristicas deste sistema.
Definimos uma aproximao do limite superior para o problema abordado no
trabalho com a executamos uma srie de experimentos utilizando a metodologia de
avaliao interleaved test-then-train [Gama et al., 2009; Dawid, 1984; Bifet & Frank,
2010], a qual considera que todas as mensagens esto disponveis com o seu rtulo
correto para atualizao do modelo logo aps o seu processamento.
Durante a definio do limite superior, foi apresentada uma contribuio que se
trata de uma nova proposta para remoo de exemplos desatualizados do conjunto de
treinamento (i.e., esquecimento) na anlise de sentimento em fluxo de dados.
Essa proposta baseada na teoria de Aprendizado Ativo e foi denominada de
Janela Deslizante Ativa (JDA). Ela pode ser aplicada em uma outra perspectiva do
problema de anlise de fluxos de sentimento, ou seja, em cenrios que os exemplos
para treinamento so disponibilizado ao decorrer do fluxo (i.e., mensagens chegam
rotuladas). O objetivo dessa proposta foi prover ao classificador a capacidade de manter
os exemplos mais significativos no conjunto de treino com um vis temporal. Isto
porque, conforme descrito anteriormente, neste cenrio, aprender com o decorrer do
fluxo to relevante quanto esquecer o que j no descreve o sentimento atual.
Captulo 1. Introduo
1.3
Organizao do texto
Captulo 2
Trabalhos Relacionados
Nos ltimos anos a tarefa de analisar contedo, a partir dos sentimentos nele expressos,
tem sido amplamente estudada [Bifet & Frank, 2010]. Considerando os benefcios
da anlise de sentimento e o potencial dos canais de mdias social como fonte de
contedo opinativo, cada vez mais se faz necessrio realizar anlise de sentimentos
a partir do fluxo de dados gerados atravs dessas aplicaes. No entanto, esse tipo de
anlise apresenta vrios desafios a serem contornados pelas tcnicas de minerao de
dado. Isto porque classificadores devem operar com recursos limitados de computao
e treinamento e tratar do concept drift. A seguir so apresentadas diferentes estratgias
propostas para lidar com concept drift em fluxos de dados.
Na tentativa de contornar os problemas advindos do concept drift, muitos
trabalhos abordam tcnicas de manuteno de reservatrio de amostragem em fluxo
de dados. Essa amostragem realizada com uma funo probabilstica de um registro
ser includo ou retirado do reservatrio. Aggarwal [2006] apresenta uma soluo para o
vis temporal das amostras em um reservatrio. Os autores fazem uso de uma funo
temporal para regular a escolha da amostra no fluxo de dados. Tal soluo eficiente
em casos onde desejvel obter resultados com e sem vis temporal. No artigo foram
apresentadas as vantagens do mtodo para o problema de estimativa de consultas,
anlise de evoluo e classificao.
Al-Kateb et al. [2007] estudaram reservatrios de amostragens em fluxos de
dados com tamanho adaptativo sob duas perspectivas: (1) tamanho do reservatrio
e a (2) uniformidade da amostra. A partir desse estudo, os autores apresentaram 4
contribuies. Primeiro, os resultados baseados em estudos tericos mostraram que o
ajuste do tamanho de um reservatrio de amostragem pode impactar de forma negativa
sobre a probabilidade da amostra se tornar uniforme. Em seguida, eles propem um
novo algoritmo para manuteno da amostra aps o ajuste no reservatrio. A terceira
7
o valor de peso timo para os classificadores treinados com os dados mais recentes.
Dessa forma, classificadores podem formar um conjunto preciso para prever os prximos
casos nos dados. Experimentos em bases de dados reais e sintticas mostram que a
abordagem de instncia ponderada prefervel quando o concept drift a principal
causa pela mudana na distribuio dos dados.
Zhang et al. [2009] prope um SVM de aprendizado cooperativo baseado na
estratgia de sistema de multi-agente de acordo com as caractersticas cooperativas e de
sistemas distribudos. Isso porque o SVM normalmente no escalvel para problemas
de classificao em grandes conjuntos de dados devido a sua alta complexidade no
processo de treino. Neste arcabouo o fluxo de dados chega aos agentes mestres que o
particionam em pequenas sees, as quais podem ser atribudas aos agentes escravos.
As sees de dados em cada agente escravo so utilizadas para treinar os SVMs, esses
por sua vez, so combinados de acordo com suas compatibilidades.
Outros trabalhos utilizam algoritmos de aprendizado incremental.
Esses
algoritmos tendem a evoluir ao longo do tempo de acordo com o fluxo de dados que
eles recebem e, alm disso, visam detectar e reagir a mudanas no ambiente de gerao
de dados. Gama et al. [2009] realizam um trabalho cujo objetivo consistiu em propor
um arcabouo que visa avaliar a qualidade de algoritmos de aprendizagem de fluxo de
dados. Os autores utilizaram estimativas de erro sequencial preditiva (ou Interleaved
Test-Then-Train), atravs de uma janela deslizante para avaliar o desempenho desses
algoritmos.
Seidl et al. [2009] propem uma tcnica baseada em ndice para lidar com 3
desafios utilizando um classificador Bayesiano, os desafios consistem em: (1) lidar com
um grande montante de dados, (2) o tempo variado entre dois itens do fluxo deve ser
utilizado da melhor forma possvel e (3) dados adicionais no treino devem ser aprendidos
de forma incremental.
Outros trabalhos como os realizados por [Fukuhara et al., 2007] e [Bifet &
Frank, 2010] tratam de anlise de sentimento em fluxos de dados. O artigo de
Fukuhara et al. [2007] apresenta uma abordagem que avalia tendncias temporais de
sentimentos e de tpicos. O mtodo baseado na presena de palavras chaves tais
como "happy"ou "delighted at". Bifet & Frank [2010] apresentam uma discusso sobre
o desafio de minerao em fluxo de dados do Twitter focando no problema de anlise
de sentimentos. Neste trabalho foram avaliados os algoritmos Multinomial Naive
Bayes (MNB), Stochastic Gradient Descent (SGD) e Hoeffding Tree. Para o primeiro
experimento foi utilizado um conjunto de treino rotulado a partir dos emoticons
contidos na mensagem (e.g. :) :( ) e o conjunto de teste foi rotulado manualmente
e o algoritmo que mostrou maior eficcia foi o MNB. Um segundo experimento foi
10
realizado com o conjunto de dados rotulados somente a partir dos emoticons contidos
nas mensagens, nesse experimento o algoritmo que apresentou melhor resultado foi o
SGD.
Embora os trabalhos acima citados estejam utilizando tcnicas de comit
(ensemble), aprendizado incremental, janela deslizante e amostragem adaptativas para
adaptar as tcnicas de aprendizado de mquina s mudanas em fluxos de dados, o alto
custo da rotulagem ainda persiste, principalmente se considerarmos aplicaes onde o
tempo de resposta pequeno (e.g. a cada 1 minuto a classificao de todos os dados do
minuto anterior deve ser realizada) ou imediato. Alm disso, algumas dessas tcnicas
apresentam um custo computacional elevado [Hulten et al., 2001], uma vez que utilizam
mais de um classificador para classificao dos dados ou detectores de mudanas.
Com o intuito de contornar esse problemas, Masud et al. [2008] apresentam uma
tcnica para classificao a partir de um conjunto de treinamento com dados no
rotulados e um pequeno nmero de exemplos rotulados de cada uma das partes do
fluxo. Esta tcnica constri micro-grupos com agrupamento semi-supervisionado e
a classificao realizada com o algoritmo de k vizinhos mais prximos (K-Nearest
Neighbor - KNN). Um conjunto desses modelos utilizado para classificar os dados
no rotulados. Nas avaliaes realizadas utilizando apenas uma pequena quantidade
de dados rotulados, essa abordagem superou o algoritmo para classificao em fluxo de
dados On Demand Stream, o qual utilizou vinte vezes mais dados rotulados.
Zhu et al. [2010] prope um arcabouo de aprendizado ativo baseado em um
comit de classificadores, com o objetivo de reduzir o custo na rotulao de exemplos
para treinamento. Esse arcabouo rotula seletivamente instncias do fluxo de dados
para construir um conjunto de classificadores. Os autores argumentam que a varincia
do conjunto de classificadores corresponde diretamente a taxa de erro, ento reduzir a
varincia do conjunto equivalente a melhorar a preciso das predies. Sendo assim
as instncias que devem ser rotuladas so aquelas que minimizam a varincia do comit
de classificadores.
No trabalho proposto o princpio de varincia mnima para guiar a rotulao dos
exemplos, alm disto, um mtodo de clculo de peso timo derivado, para determinar
os valores dos pesos para cada classificador no conjunto. Estes so combinados para
formar um arcabouo de aprendizado ativo para fluxo de dados. Os autores avaliaram
o desempenho do classificador comparando-o com outras abordagens utilizando dados
sintticos e reais. Os resultados mostraram que a natureza dinmica do fluxo de dados
impe desafios significativos aos algoritmos de aprendizado ativo.
O trabalho aqui proposto se diferencia dos apresentados anteriormente uma vez
que apresenta uma abordagem para gerao de treino automaticamente minimizando
11
interveno humana de forma a capturar o concept drift. Alm disso, essa abordagem
no gera o custo computacional proveniente das tcnicas de ensemble, j que utiliza
apenas um classificador e um algoritmo, baseado em regras de associao, para
aprendizado incremental.
Em termos de trabalhos relacionados a aprendizado semi-supervisionado em fluxo
de dados podemos citar os realizados por [Wu et al., 2006; Seidl et al., 2009; Li
et al., 2010]. Wu et al. [2006] propem o clustering-training, um algoritmo semisupervisionado que tem como objetivo agrupar exemplos no rotulados do fluxo, em
uma das suas partes, aps a classificao dos mesmos. Nesta abordagem, se o exemplo
agrupado em um grupo equivalente a classe atribuda ao mesmo pelo classificador,
esse se torna um exemplo de confiana e passa a ser utilizado para treinar novamente
o classificador de uma maneira incremental.
Li et al. [2010] apresentam um algoritmo semi-supervisionado para classificao
em fluxo de dados com concept drift e dados no rotulados (SUN) baseado em rvore de
deciso. Nessa abordagem os dados no fluxo so rotulados a partir do agrupamento com
dados rotulados e a classe atribuda a eles majoritria no grupo ao qual o exemplo
atribudo. O concept drift dividido nos tipos: potencial, plausvel e brusco, de
acordo com o nvel de rudo do fluxo identificado pela diferena entre o histrico de
clusters gerados e o cluster dos dados que chegam. Os resultados do algoritmo so bons
se comparados aos algoritmos Concept-adapting Very Fast Decision Trees (CVFDT)
[Hulten et al., 2001] e Concept drifting Detection based on an ensembling model of
Random Decision Trees (CDRDT).
Em trabalhos como os realizados por [Jansen et al., 2009; Bermingham &
Smeaton, 2010; Diakopoulos & Shamma, 2010], so realizadas caracterizaes dos
sentimentos expressos atravs de mensagens do Twitter em relao a marcas e eventos
do mundo real (e.g., debates). Jansen et al. [2009] apresentam os resultados de uma
pesquisa realizada em micro-blogs. O objetivo foi verificar se esses micro-blogs podem
ser considerados um mecanismo para propaganda online a ser explorado por marcas de
produtos.
No trabalho os autores analisaram os comentrios, sentimentos e opinies
expressos sobre algumas marcas. Como resultado Jansen et al. [2009] identificaram
que os micro-blogs podem ser utilizados pelas marcas tanto para obter quanto para
distribuir informaes aos clientes. Constatou-se que, atravs dos micro-blogs, eles
podem identificar a aceitao do seu produto, divulg-los e fazer campanha de
marketing a partir dos sentimentos expressos pelos consumidores. Logo, os autores
concluem que evidente a contribuio dos micro-blogs para esse seguimento e que
esses podem se tornar uma fonte promissora de inteligncia competitiva.
12
Bermingham & Smeaton [2010] apresentam a web em tempo real como uma nova
rea de foco para anlise de sentimentos e discute as motivaes e desafios por trs
desta. Os autores apontam aplicaes como o Twitter como um bom exemplo de fonte
para obteno dessas informaes. O trabalho apresenta uma reviso da anlise de
sentimentos na web em tempo real como uma futura orientao para pesquisas.
Diakopoulos & Shamma [2010] caracterizam as mensagens enviadas atravs do
Twitter em relao a um debate poltico de acordo com a forma com que as pessoas
esto reagindo a ele e demonstram metodologias analticas e representaes visuais que
podem ajudar a compreender melhor a dinmica temporal do sentimento em relao
ao debate. No entanto, os autores no esto interessados na deteco automtica dos
sentimentos ou de um vencedor ou perdedor. Para cada minuto do debate a agregao
dos tweets foi realizada como o nmero de tweets positivos menos o nmero de tweets
negativos.
Os trabalhos acima apresentados mostram que o Twitter utilizado como mdia
de expresso de sentimento. Contudo, eles apontam a necessidade de tcnicas de
classificao automtica das mensagens em relao aos sentimentos. Diante desse
cenrio, no trabalho aqui proposto, apresentamos uma soluo para esta necessidade,
tratando peculiaridades da tarefa como o sentiment drift e necessidade de resposta de
tempo real.
Embora alguns trabalhos abordem anlise de sentimento em fluxo de dados (e.g.,
[Bifet & Frank, 2010; Fukuhara et al., 2007]), nenhum deles apresentou uma soluo
como a aqui proposta. Soluo essa que no utiliza emoticons ou expresses, como em
[Bifet & Frank, 2010; Fukuhara et al., 2007], para a classificao das mensagens, uma
vez que essas abordagens so propensas a erros de interpretao e no so capazes de
capturar tipos de sentimentos aos quais nenhum emoticon (ou expresso) associado.
Captulo 3
Aprendizado de Fluxo de
Sentimento
Neste captulo ser apresentada a soluo proposta para aprendizado de sentimentos
que so expressos em um fluxo de mensagens.
3.1
14
3.1.1
(X si )
(X )
(3.1)
15
Existem vrias estratgias de suporte inteligentes [Han et al., 2004; Agrawal et al.,
1993; Zaki et al., 1997] e muitas extratgias para reduzir a ordem de complexidade
[Bayardo et al., 2004] podem ser utilizadas.
Geralmente, o clculo do suporte para o conjunto de termos em D inicia com
a explorao de todas as mensagens em D e clculo do suporte de cada termo
isoladamente. Na prxima iterao, conjuntos de termos 2 (i.e., conjunto de tamanho
2) so enumerados utilizando os conjuntos de termos de tamanho 1, e seus valores de
suporte so calculados acessando os dados de treinamento. A pesquisa pelos conjuntos
de termos prossegue, e o processo de enumerao repetido at os valores de suporte,
para todos os conjuntos de termos em D, serem finalmente calculados.
Obviamente, o nmero de regras aumenta exponencialmente com o tamanho
do vocabulrio (i.e., o nmero de termos distintos em D) e restries de custo
computacional devem ser impostas durante a extrao de regras. Tipicamente, a
espao de pesquisa para regras restringido a partir de poda de regras que no
aparecem frequentemente em D (i.e., abordagem de suporte mnimo). Enquanto tais
restries fazem a extrao de regra factvel, elas tambm levam a perdas nos modelos
de classificao, uma vez que algumas regras so podadas e no so inclusas em R.
3.1.2
Predio de Sentimentos
16
(X
si )
si
|Rt |
(3.2)
s(t, si )
k
X
s(t, sj )
(3.3)
j=0
3.1.3
17
l(si , t) = min
0.5 +
Pm(t)1
u=0
m(t)
p(si |tu )
(3.4)
18
o uso de suporte baseado em poda durante a extrao das regras impede o pleno
potencial do auto aumento do treino, uma vez que altamente provvel que o modelo
de classificao R ser composto apenas das regras mais gerais em D, e a maioria destas
regras podem no ser aplicveis a mensagens futuras que transportam informaes de
tendncias.
Definio 5. Dada uma mensagem t T , dizemos que o modelo R agnstico para
t, se Rt = . Ou seja, se R no contm regras que so aplicveis a t. Um modelo R
dito gnstico se Rt 6= t T .
Considerando que um valor de suporte mnimo ideal que garante um modelo de
classificao gnstico improvvel de existir, como discutiremos na prxima seo,
nossa extrao de regras deve ser livre de suporte, a fim de produzir modelos gnsticos
e explorar todo potencial e benefcios do auto aumento de treinamento.
3.1.3.2
19
Prova Seja n o nmero de termos distintos em D. Uma vez que uma mensagem
arbitrria t T contm no mximo l termos (com l n), ento qualquer regra
aplicvel a t pode ter no mximo l termos no seu antecedente. Isto , para qualquer
regra {X
si }, tal que X t, |X | l. Consequentemente, o nmero de possveis
regras que so aplicveis a t l + 2l + . . . + ll = O(2l ) O(nl ). Assim, o nmero
de regras aplicveis aumenta polinomialmente em n. .
Outra vantagem proporcionada pela projeo de treino sob demanda vem do fato
de que a projeo tambm explora, como um efeito colateral, a localidade temporal
associada aos termos em D. Isto particularmente importante para lidar com o
sentiment drift, uma vez que, projetando os dados de treinamento de acordo com o
contedo de uma mensagem t T , o classificador est essencialmente concentrandose nas informaes para treinamento representativas em quadros temporais de dados
praticamente contnuos. No entanto, decidir o quo recentes estes quadros devem ser
uma questo complicada, uma vez que diferentes mensagens em T podem exigir
quadros de treinamento posicionados em diferentes pontos da linha do tempo do fluxo.
Ou seja, algumas mensagens em T podem exigir quadros de treinamento mais
recentes, enquanto as outras mensagens em T pode exigir mais antigas. Assim, em vez
de empregar um tamanho fixo de quadros temporais para todas as mensagens em T
(o que equivale ao uso de uma janela deslizante de tamanho fixo), nosso classificador
emprega um quadro diferente (ou seja, Dt ) para cada mensagem t T . A proximidade
no tempo dos quadros de treinamento para uma mensagem arbitrria t decidido
com base nos termos que esto na prpria mensagem. Uma vez que estes termos so
cronologicamente relacionados de alguma forma, os dados de treinamento projetados a
partir de Dt so susceptveis a conter mensagens de treinamento representativas para
mensurar os sentimentos na mensagem t.
20
3.1.3.3
3.1.3.4
21
22
1:
2:
3:
3.1.3.5
Dada a restrio de que p(si |t) deve ser maior ou igual a l(si , t) para que a mensagem
t seja inserida em D, algumas predies podem no ser confiveis o suficiente, dado
certo valor de l(si , t) (i.e., p(si |t) < min ). A estratgia de sub judice 1 consiste em no
utilizar tais predies duvidosas e no informar a predio realizada para a mensagem
imediatamente, como o classificador no tem evidncias suficientes para realizar um
julgamento confivel, as mensagens so mantidas em uma fila de espera S, ou seja,
mantidas em sub judice.
Quando novas mensagens confiveis so inclusas em D, novas evidncias de
sentimentos so exploradas, esperanosamente aumentando a confiana das mensagens
em S que foram previamente mantidas em sub judice, fazendo que elas possam
ser classificadas. Mais especificamente, quando uma mensagem rotulada confivel
inclusa em D, o classificador reavalia todas as mensagens que esto em S (sub judice).
No fim do processo, ou as mensagens duvidosas se tornam confiveis (provavelmente
melhorando a desempenho da predio), ou no existem mais mensagens rotuladas
confiveis para serem includas em D e, portanto, as mensagens restantes que esto
em sub judice devem ser processadas normalmente. O processo termina quando todas
as mensagens em T so processadas pelo classificador. Os passos principais esto
resumidos no Algoritmo 3.
As mensagens so mantidas em sub judice em uma fila de tamanho |S|, e so
retiradas de sub judice em dois casos: (1) Quando p(si |t), t S, se torna maior ou
igual a l(si , t); e (2) Quando o nmero de mensagens em sub judice for igual a |S|,
necessariamente, a primeira mensagem da fila removida e processada.
A estratgia de sub judice uma importante ferramenta para tratar o sentiment
drift, uma vez que, na ocorrncia de um drift esperado que a confiana na predio
diminua, uma vez que a entropia dos dados aumenta nesse momento como demonstrado
1
Sub judice uma expresso do latim que designa um caso ou problema que ainda est sob a
apreciao jurdica (sem uma sentena final)
23
24
3.2
Avaliao Experimental
3.2.1
Colees de Dados
Esta seo apresenta a caracterizao das colees de dados criadas para avaliao
da soluo proposta. As principais caractersticas das colees so apresentadas na
Tabela 3.1. A partir destas colees foi possvel avaliar a soluo proposta em diferentes
idiomas, tipos de sentimentos rastreados e em cenrios que os sentimentos mudam de
diferentes maneiras no decorrer do tempo (i.e., diferentes tipos de sentiment drift).
Os grficos da Figura 3.2 evidenciam a ocorrncia de mudanas na distribuio
de sentimentos nas colees analisadas. Nestes grficos em cada janela de tempo
t (minutos e dias) calculamos a porcentagem de mensagens positivas em t. Essas
mudanas podem afetar fortemente o desempenho de muitos classificadores [Bifet,
2010]. A seguir detalhada cada coleo de dados e o evento a que ela se refere.
Tabela 3.1. Colees de Dados
Coleo
Sentimentos
Rastreados
Taxa de Chegada de
Mensagens por
Segundo
Idioma
# Mensagens
Portugus
66.643
Positivo e negativo
0.02
Ingls
5.616
Aprovao, surpresa,
sarcasmo, reprovao e
revolta
0.2
Portugus
3.214
Positivo e negativo
Ingls
1.432
Positivo e negativo
Eleies
Brasil
Presidenciais
Personalidade do Ano
no
1.12
25
Frequncia do Termo
100000
10000
1000
100
10
1
1
10
100
1000 10000 100000
Ranque dos Termos
Na Figura 3.2(a), por exemplo, possvel verificar que a opinio dos usurios do
Twitter, que postaram mensagens em portugus, em relao ao jogador Felipe Melo
mudou durante a partida. No primeiro tempo do jogo possvel observar uma maior
porcentagem de mensagens positivas em relao ao jogador uma vez que ele foi o
responsvel pelo passe que finalizou em um gol a favor da seleo Brasileira. Contudo,
no segundo tempo, houve uma mudana inesperada de opinio - aumento de mensagens
negativas. Essa mudana reflete o sentimento das pessoas a partir do momento em que
o jogador faz um gol contra e posteriormente expulso. O sentimento negativo tende
a se intensificar no final da partida, isso porque o Brasil foi eliminado da copa nessa
ocasio e a responsabilidade da derrota foi atribuda ao jogador.
Na Figura 3.2(b), possvel verificar a distribuio dos sentimentos nas
mensagens em ingls. possvel perceber que a variao dos sentimentos bastante
ruidosa, em outras palavras, ao mesmo tempo em que muitas pessoas se mostram
26
% Mensagens Positivas
% Mensagens Positivas
0.4
0.2
0.4
0.2
0
01/05
0.2
0.4
0.6
0.8
01/11
02:30
0
02:00
0.6
0.6
0
02:00 02:30 03:00 03:30 04:00 04:30 05:00
Minutos de Jogo
0.8
0.8
04:30
05:00
28
http://yearinreview.twitter.com/2010/trends/
https://www.facebook.com
4
http://www.wikileaks.org
5
http://www.cbsnews.com/8301-505123_162-40043859/twittersphere-battle-is-still-onzuckerberg-vs-assange/
3
29
3.2.2
30
alm do classificador se deparar com o sentiment drift, existe um outro problema que
a falta de informao sobre esse grande volume de termos que surgiram repentinamente,
essa evidncia refora na necessidade de atualizao continua do modelo com mensagens
mais recentes de T .
0
01/05 01/06 01/07 01/08 01/09 01/10 01/11
Dias
10000
20000
30000
40000
50000
60000
70000
1200
15/12 16/12 17/12 18/12 19/12 20/12 21/12
Dias
1400
1600
1800
2000
2200
2400
2600
2800
0
02:00 02:30 03:00 03:30 04:00 04:30 05:00
Minutos
1000
2000
3000
4000
5000
6000
7000
8000
Mensagens em Portugus
Mensagens em Ingls
9000
32
33
caso da coleo em Portugus, aps a mensagem 1.000, novos termos surgem tornando
necessria a atualizao do modelo com mensagens mais recentes para que a eficcia
do classificador no se deteriore rapidamente. Em contraste, como apresentado na
entropia, se novas mensagens forem inseridas a predio dos sentimentos das mensagens
aps mensagem 1.000 se torna cada vez mais fcil.
0.02
0.04
0.06
0.08
0.1
0.12
50000
0.05
0.1
0.15
0.2
0.25
0.3
1000
Entropia
% termos com sentiment drift
5000
200
Entropia
% termos com sentiment drift
Entropia
% termos com sentiment drift
0.35
0.02
0.02
1000 1500 2000 2500 3000
Mensagens Processadas
0.04
0.04
500
0.06
0.06
0.08
0.08
0.12
0.14
0.1
Entropia
% termos com sentiment drift
0.1
0.12
0.14
34
Captulo 3. Aprendizado de Fluxo de Sentimento
35
Nas Figuras 3.4(c) e (d), possvel verificar que existe uma variao na quantidade
de termos que mudaram de sentimento no comeo do evento. Contudo, no existe um
acontecimento que faa essa porcentagem mudar repentinamente. preciso ressaltar
que mesmo assim pelo menos 7% dos termos mudaram de sentimento pelo menos uma
vez durante as Eleies Presidenciais no Brasil e 14% na coleo Personalidade do Ano.
Na coleo Personalidade do Ano a entropia bem mais alta nas primeiras mensagens
de T , isto indica que este ser o intervalo que apresentar maior dificuldade para
predio dos sentimentos, uma vez que aps a mensagem 1.000 a entropia inicia um
decaimento.
H(p(T |q)) =
k
X
(3.5)
i=1
|V|
1 X
H(p(T |qi ))
entropia =
|V| i=1
(3.6)
3.2.3
36
1995]; (4) rvore de Deciso [Quinlan, 1993]; e (5) o Lazy Associative Classifier (LAC)
[Veloso et al., 2006], este ltimo consiste basicamente da verso esttica da soluo
proposta. Para realizarmos os experimentos, otimizamos os parmetros de cada um
destes algoritmos. Para o SVM avaliamos o kernel, o custo C, gamma, coeficiente
(coef0) e grau, alm desses parmetros para o SRV avaliamos suas formas -SVR e
-SVR. Para o kNN o nmeros de vizinhos (k), na Tabela 3.2 so apresentados os
melhores parmetros para cada algoritmo nas coleo analisadas.
kNN
Copa do Mundo
de
Futebol
(Portugus)
k=6
Copa do Mundo de
Futebol (Ingls)
Eleies
Presidenciais
no Brasil
Personalidade
Ano
do
SVM
kernel=polinomial, C=11,
exponte=6
SVR
tipo=-SVR, C=11,
kernel=polinomial, coef0=9,
k=16
kernel=polinomial, C=11,
exponte=1
tipo=-SVR,
C=16,
gamma=1/ # termos
k=26
kernel=RBF,
C=11, gamma=0.01
tipo=-SVR, C=21,
kernel=polinomial, coef0=0, exponte=3
k=1
kernel=RBF,
C=10, gamma=0.11
tipo=-SVR,
gamma=0.1
C=15,
exponte=14
kernel=radial,
kernel=radial,
37
em relao aos algoritmos estticos, estes ganhos variam de 14,84%, na coleo sobre
as Eleies Presidenciais no Brasil, a 41,38% na coleo a respeito da Copa do Mundo
(pt). Calculamos o ganho como a porcentagem do melhor algoritmo esttico em relao
ao algoritmo de auto treinamento menos 1.
Tabela 3.3. MSE alcanado pelo algoritmo de auto treinamento e verses
estticas de diferentes algoritmos
Modelos Estticos (ME)
rvore
NB
SVM
SVR
LAC
Auto Treinamento
Julgamento
Sub
Imediato
Judice
(JI)
(SJ)
0.0814
0.08134
Coleo de Dados
kNN
Copa do Mundo
de
Futebol
(Portugus)
Copa do Mundo de
Futebol (Ingls)
Eleies
Presidenciais
no Brasil
Personalidade do
Ano
0.2066
0.373
0.4999
0.1150
0.1732
0.1522
0.3572
0.441
0.5
0.4819
0.2957
0.3315
0.2384
0.3708
0.437
0.4996
0.4303
0.2500
0.2795
0.5992
0.572
0.6581
0.5728
1.658
0.5461
Ganhos (%)
SJ vs.
SJ vs.
ME
JI
41.38
0.07
0.2291
29.07
4.06
0.2708
0.2177
14.84
24.39
0.5419
0.4487
21.71
20.77
38
lado regies escuras so mensagens que no aparecem nos dados projetados para a
mensagem no eixo x.
Uma vez que mensagens no eixo x e y esto cronologicamente ordenadas,
podemos entender o quo frequente estas mensagens so utilizadas com o passar
do tempo. possvel perceber que as mensagens so gradualmente menos e menos
utilizadas com o passar do fluxo e mensagens futuras tendem a demandar mensagens
que foram inclusas recentemente em D.
MSE
MSE
0.21
0.22
0.23
0.24
0.25
0.26
0.27
0.28
0.29
0.3
0.08
0.09
0.1
0.11
0.12
0.13
0.14
0.15
1.2
min
1.5
1.8
1.2
min
1.5
1.8
0.4
0.45
0.5
0.55
0.6
0.65
0.22
0.24
0.26
0.28
0.3
0.32
0.34
1.2
min
1.5
1.5
min
Sub Judice
Jugamento Imediato
Esttico
MSE
MSE
0.16
2.5
1.8
40
41
0.6
2500
0.5
2000
0.4
1500
MSE
Id da Mensagem
3000
1000
min=1.0
min=1.2
min=1.5
min=1.8
Esttico
SVM
SVR (melhores parmetros
antes do sentiment drift)
0.3
0.2
500
0.1
0
0
0
0
3000
No Incluso
Incorretamente Incluso
Corretamente Incluso
0.8
Apreciao
% do total
500
SJ min=1
Modelo Esttico
Dados
0.6
0.4
0.2
1.
1.
1.
min
0
02:00 02:30 03:00 03:30 04:00 04:30 05:00
Minutos
de
42
43
0.4
0.35
0.3
MSE
0.25
0.2
0.15
min=1.0
min=1.2
min=1.5
min=1.8
Esttico
0.1
0.05
0
0
200
% do total
No Incluso
Incorretamente Incluso
Corretamente Incluso
1.
1.
1.
min
(b) Porcentagem de mensagens em T que so corretamente,
erroneamente e no inclusas em D, para diferentes valores de min
(permitindo o sub judice).
No Incluso
Incorretamente Incluso
Corretamente Incluso
50k
40k
% do total
Id da Mensagem
44
30k
20k
10k
0
min
0.4
min=1.0
min=1.2
min=1.5
min=1.8
Modelo Esttico
KNN
NB
SVM
SVR
0.65
0.35
0.6
0.3
0.55
0.25
0.5
0.2
MSE
MSE
1.
50k
1.
1.
10k
min=1.0
min=1.2
min=1.5
min=1.8
Esttico
0.15
0.1
0.45
0.4
0.35
0.3
0.05
0.25
0.2
5000
20000
35000
50000
Mensagens Processadas
65000
100
500
1000
Tamanho da Semente de Treinamento
45
min=1.0
min=1.5
min=2.0
min=2.5
Jugamento
Imediato
5000
4000
3000
2000
1000
0
0
1000
2000
3000
4000
Chegada das Mensagens
5000
% do total
No Incluso
Incorretamente Incluso
Corretamente Incluso
2.
1.
min
(b) Porcentagem de mensagens em T que so corretamente,
erroneamente e no inclusas em D, para diferentes valores de min
(permitindo o sub judice)
46
0.22
0.24
0.26
0.28
0.3
0.32
0.34
0.36
100 200 300 400 500 600 700 800 900 1000
Tamanho da Semente de Treinamento
200
400
600
800
1000
Tamanho da Semente de Treinamento
0.3
0.35
0.4
0.45
0.5
0.55
0.6
0.65
MSE
Auto treinamento (min=1.5)
Modelo esttico
100 200 300 400 500 600 700 800 900 1000
Tamanho da Semente de Treinamento
0.05
0.1
0.15
0.2
0.25
MSE
MSE
0.3
48
Tempo de Execuo
(segundos)
12
5
289752
636
Taxa de
Processamento
267.83
286.4
0.23
8.83
Taxa de Chegada
1.12
1.12
0.02
0.2
Captulo 4
Aproximao Experimental do
Limite Superior para Anlise de
Fluxos de Sentimento
O melhor caso para a abordagem de auto treinamento pode ser alcanado se relaxarmos
a restrio de recursos limitados para treinamento do algoritmo e considerarmos que
aps o seu processamento todas as mensagens esto disponveis, com o seu rtulo
correto, para a atualizao do modelo. Esse processo de relaxamento das restries
considerando todos os dados rotulados equivalente a metodologia de avaliao de
algoritmos em cenrios de fluxos dados, conhecida como Interleaved Test-Then-Train
(ou Prequential ) [Dawid, 1984], utilizada em muitos trabalhos como [Bifet et al., 2009;
Gama et al., 2009].
Nesta metodologia o exemplo utilizado para testar o classificador e logo em
seguida para treina-lo. Desta forma possvel verificar o comportamento do modelo
que est sendo avaliado em exemplos que ele ainda desconhece. A vantagem em
utilizar o Interleaved Test-Then-Train, na avaliao de algoritmos em fluxos de dados,
consiste no fato dessa abordagem no exigir um conjunto de reservado para o teste, em
outras palavras, ele utiliza ao mximo os dados disponveis [Bifet et al., 2009]. Essa
metodologia exemplificada no Algoritmo 4.
Como o classificador conhece o rtulo de todos os dados anteriores mensagem
que est sendo analisada, consideramos esta configurao como um limite superior para
nossa abordagem de auto treinamento. No entanto, mesmo o classificador contendo essa
informao sobre os rtulos dos dados, o sentiment drift impem um prazo de validade
para as mensagens de treinamento, como visto na Seo 3.2.1. Com o intuito de
contornar os efeitos causados na eficcia do classificador pelo sentiment drift, diferentes
49
50
for all t T do
predio(t) = mensurar o sentimento de t utilizando R
avaliar predio(t)
incrementar R com < t, sc >, onde sc sempre o sentimento correto
end for
4.1
4.1.1
51
4.1.2
52
algoritmo possa aprender com eficcia). Tal resultado pode ser alcanado, uma vez que
a teoria do aprendizado ativo sustenta a possibilidade de diminuir exponencialmente
o conjunto de treino necessrio para que o classificador aprenda [Kivinen & Mannila,
1994].
Com o intuito de alcanarmos o objetivo anteriormente descrito utilizamos uma
funo de rank que elege potenciais candidatos a serem removidos da janela atual, a
cada nova mensagem rotulada (t) inserida em D, esta funo descrita na Equao 4.1.
Para que a operao seja realizada com eficincia computacional o treino projetado,
de acordo com os termos em t [Veloso & Meira Jr., 2011].
r(tj ) =
s(ti , tj ) + (1
m(tj )
)
m(ti )
(4.1)
2
Na funo de rank (Equao 4.1) ti T uma mensagem a ser inserida em D, tj
uma mensagem D e tj 6= ti , m(t) denota o momento que o exemplo foi inserido no
treino (uma vez que os exemplos so inseridos sequencialmente), e finalmente, s(ti , tj )
indica a similaridade entre dois exemplos. Nesse caso, quanto maior a similaridade entre
os exemplos e a idade do exemplo do treino, maior o rank. A funo de similaridade
utilizada no trabalho consiste no coeficiente de Jaccard, esta que apresentada na
Equao 4.2.
s(ti , tj ) =
|ti tj |
|ti tj |
(4.2)
4.2
53
Avaliao Experimental
MSE
MSE
0.08
0.09
0.1
0.11
0.12
0.13
0.14
0.15
0.05
0.052
0.054
0.056
0.058
0.06
0.062
0.064
0.066
00
15
20
00
30
00
0
00
40
00
0
50
00
20
00
0
60
30
00
0.27
0.275
0.28
0.285
0.29
0.295
0.3
0.305
0.31
0.2
0.205
0.21
0.215
0.22
0.225
0.23
0.235
0.24
0.245
60
0
80
0
10
00
40
00
20
30
00
40
00
00
10
20
00
10
00
25
00
10
50
MSE
MSE
12
00
50
00
14
00
54
Captulo 4. Aproximao Experimental do Limite Superior para
Anlise de Fluxos de Sentimento
55
Atravs dos resultados descritos na Tabela 4.1 possvel realizar uma comparao
entre a JDA e o melhor tamanho de janela encontrada nos experimento. A JDA
alcanou resultados equivalentes ou melhores que a utilizao de uma janela de tamanho
fixo. Contudo, enquanto a JDA no exigiu a configurao prvia do parmetro de
tamanho de janela (w), os resultados com a janela de tamanho fixo foram alcanados
a partir de uma busca exaustiva pelo melhor tamanho (ver Figura 4.1). A dificuldade
de configurar o tamanho da janela evidenciada ao verificar que o valor que alcanou
melhor eficcia diferente para cada coleo de dados, alm disso, o comportamento
do algoritmo com a variao do tamanho da janela de treinamento diferente em cada
coleo.
Tabela 4.1. MSE alcanado com o limite superior e utilizando o algoritmo de
auto treinamento.
Limite Superior
Coleo de Dados
Copa do Mundo de Futebol
(Portugus)
Copa do Mundo de Futebol
(Ingls)
Eleies
Presidenciais
no
Brasil
Personalidade do Ano
Janela
Deslizante
de
Tamanho Fixo (melhor w)
Janela Deslizante
Ativa (JDA)
0.05133 (w=200)
0.0531 (w mdio=73)
0.08134
0.2015 (w=1200)
0.2030 (w mdio=69)
0.2291
0.0858
(w=600)
0.0820 (w mdio=526)
0.2177
0.271
(w=100)
0.2690 (w mdio=104)
0.4487
Auto Treinamento
56
MSE
MSE
0.55
0.5
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
1000
2000
3000
4000
Mensagens processadas
Todos os Dados
Janela Deslizante (W=100)
Janela Deslizante Ativa
Auto Treinamento (min=2)
5000
200
Todos os Dados
Janela Deslizante (W=200)
Janela Deslizante Ativa
Auto Treinamento (min=1)
Todos os Dados
Janela Deslizante (W=600)
Janela Deslizante Ativa
Auto Treinamento (min=1.2)
500
Todos os Dados
Janela Deslizante (W=200)
Janela Deslizante Ativa
Auto Treinamento (min=1)
MSE
MSE
0.35
58
Captulo 5
Concluso e Trabalhos Futuros
Este trabalho concentrou-se no importante problema de anlise de sentimento em
ambientes de fluxo de dados. Motivados pelos desafios impostos pela anlise de
sentimento em fluxo de dados, bem como pela carncia de tcnicas para resolver os
problemas existentes nesse cenrio, o objetivo deste trabalho consistiu em analisar e
propor solues tanto para o problema relacionado a falta de dados de treinamento
para o classificador, quanto para minimizar os desafios em relao a identificao,
caracterizao e tratamento do sentiment drift.
A partir de uma abordagem que faz uso de aprendizado semi-supervisionado,
foi proposto um algoritmo de auto treinamento, que mantm o classificador atualizado
automaticamente. O algoritmo proposto auto expande o conjunto de treino, a partir de
novas mensagens do fluxo e uma pequena semente de treinamento inicial. Alm disso,
as regras de sentimento so extradas a partir dos dados de treinamento sob demanda,
projetando o espao de busca para extrao das regras sentimento de acordo com as
informaes contidas na mensagem analisada, permitindo uma extrao eficiente.
Atravs da projeo dos dados de treinamento, o classificador elimina informaes
irrelevantes e desatualizadas. Isto acontece porque as mensagens que vm no fluxo
apresentam uma localidade temporal, de forma que mensagens antigas so pouco
susceptveis a serem demandadas para as mensagens mais recente que passam atravs
do fluxo. Para melhorar o desempenho de predio do classificador, foi introduzida
uma estratgia inovadora denominada sub judice. Essa estratgia faz com que
os classificadores sejam capazes de abster-se de predies duvidosas e bloquear
temporariamente estas previses at que mais evidncias sejam recolhidas com a
incluso de novas mensagens confiveis.
O algoritmo proposto foi avaliado a partir da anlise do fluxo de sentimento
expresso sobre importantes eventos no ano de 2010: (1) Copa do Mundo de Futebol;
59
60
(2) Eleies Presidenciais do Brasil; e (3) Escolha da personalidade do ano pela revista
TIME. Nessa avaliao a eficcia da soluo proposta foi comparada com algoritmos
estado da arte e os resultados monstraram que as estratgias fornecem ganhos de at
41%.
Posteriormente, nossa abordagem foi contrastada com um limite superior definido
experimentalmente. O limite superior foi definido a partir do relaxamento de uma
restrio do problema em anlise. Nesse caso, o algoritmo de aprendizado considera
que para cada mensagem processada, o rtulo de todas as mensagens anteriormente
recebidas conhecido. Alm disso, esse classificador faz uso de tcnicas para o
esquecimento de mensagens desatualizadas presentes no conjunto de treino. Nesses
cenrios propomos uma tcnica de esquecimento, denominada Janela Deslizante Ativa,
a qual capaz de atingir o mesmo (ou superior) desempenho do melhor tamanho
de janela deslizante de tamanho fixo sem que seja necessrio a configurao prvia
deste parmetro. Dessa forma, ao contrastarmos nossa soluo proposta com o limite
superior, foi possvel verificar que o algoritmo de auto treinamento alcana at 87%
desse limite superior.
Apesar dos resultados favorveis a soluo proposta apresentados devemos citar
que a esta possui limitaes, como a sensibilidade do parmetro min e |S|. Contudo,
os experimentos realizados o min =1.5, juntamente com o sub judice, apresentam
resultados superiores ao uso de um modelo esttico em todas as colees. Em relao
ao |S|, tamanho da fila do sub judice, argumentamos que a partir de uma caracterizao
do tipo de evento este parmetro pode ser configurado com um nvel de segurana.
Outra limitao o caso de no garantirmos que o modelo continue consistente
durante toda a anlise, uma vez que a insero de mensagens com o rtulo incorreto
pode deteriorar o modelo. Entretanto, foram impostas restries severas de volume de
dados rotulados para treinamento, e ainda assim o modelo continuou consistente e com
desempenho em predio superior aos algoritmos no estado da arte. Alm disso, formas
de verificar se o modelo continua consistente podem ser implementadas facilmente. Por
exemplo, com a avaliao peridica do modelo com novas sementes de dados rotulados
ao decorrer do fluxo.
Como trabalhos futuros pretende-se minimizar a dependncia do parmetro do
tamanho da fila do sub judice. Esta dependncia pode ser diminuda a partir de um
tamanho de fila adaptativo. Este tamanho pode ser adaptado a partir de detectores de
mudanas do fluxo. Alm disso, espera-se integrar a tcnica de esquecimento, Janela
Deslizante Ativa, propostas neste trabalho ao algoritmo de auto treinamento.
Referncias Bibliogrficas
Abdulsalam, H.; Skillicorn, D. B. & Martin, P. (2008). Classifying evolving data
streams using dynamic streaming random forests. Em Proceedings of the 19th
international conference on Database and Expert Systems Applications, DEXA 08,
pp. 643--651, Berlin, Heidelberg. Springer-Verlag.
Aggarwal, C. C. (2006). On biased reservoir sampling in the presence of stream
evolution. Em Proceedings of the 32nd international conference on Very large data
bases, VLDB 06, pp. 607--618. VLDB Endowment.
Agrawal, R.; Imielinski, T. & Swami, A. (1993). Mining association rules between sets
of items in large databases. Em SIGMOD, pp. 207--216. ACM.
Aha, D. W.; Kibler, D. & Albert, M. K. (1991). Instance-based learning algorithms.
Mach. Learn., 6:37--66.
Al-Kateb, M.; Lee, B. S. & Wang, X. S. (2007). Adaptive-size reservoir sampling over
data streams. Em Proceedings of the 19th International Conference on Scientific
and Statistical Database Management, SSDBM 07, pp. 22--, Washington, DC, USA.
IEEE Computer Society.
Balcan, M.-f. & Blum, A. (2005). A pac-style model for learning from labeled and
unlabeled data. Em In Proceedings of the 18th Annual Conference on Computational
Learning Theory (COLT, pp. 111--126. COLT.
Bayardo, R.; Goethals, B. & Zaki, M., editores (2004). Workshop on Frequent Itemset
Mining Implementations, volume 126.
Ben-Haim, Z. & Eldar, Y. (2009). A lower bound on the bayesian mse based on the
optimal bias function. Information Theory, IEEE Transactions on, 55(11):5179
5196.
61
62
Referncias Bibliogrficas
Support-vector networks.
Machine Learning,
Referncias Bibliogrficas
63
64
Referncias Bibliogrficas
Li, P.-P.; Wu, X. & Hu, X. (2010). Learning from concept drifting data streams with
unlabeled data. Em AAAI.
Li, W.; Jin, X. & Ye, X. (2007). Detecting change in data stream: Using sampling
technique. Em Proceedings of the Third International Conference on Natural
Computation - Volume 01, ICNC 07, pp. 130--134, Washington, DC, USA. IEEE
Computer Society.
Masud, M. M.; Gao, J.; Khan, L.; Han, J. & Thuraisingham, B. (2008). A practical
approach to classify evolving data streams: Training with limited amount of labeled
data. Em Proceedings of the 2008 Eighth IEEE International Conference on Data
Mining, pp. 929--934, Washington, DC, USA. IEEE Computer Society.
Pang, B.; Lee, L.; & Vaithyanathan, S. (2002). Thumbs up? sentiment classification
using machine learning techniques. Em EMNLP, pp. 7986.
Pang, B. & Lee, L. (2008). Opinion mining and sentiment analysis. Found. Trends Inf.
Retr., 2:1--135.
Platt, J. C. (1999). Fast training of support vector machines using sequential minimal
optimization, pp. 185--208. MIT Press, Cambridge, MA, USA.
Quinlan, J. R. (1993). C4.5: programs for machine learning. Morgan Kaufmann
Publishers Inc., San Francisco, CA, USA.
Seidl, T.; Assent, I.; Kranen, P.; Krieger, R. & Herrmann, J. (2009). Indexing density
models for incremental learning and anytime classification on data streams. Em
Proceedings of the 12th International Conference on Extending Database Technology:
Advances in Database Technology, EDBT 09, pp. 311--322, New York, NY, USA.
ACM.
Settles, B. (2009). Active Learning Literature Survey.
University of WisconsinMadison.
Referncias Bibliogrficas
65
Silva, I. S.; Gomide, J.; Barbosa, G.; Veloso, A.; Santos, W.; Ferreira, R. & Jr., W. M.
(2011b). Observatrio da dengue: Surveillance based on twitter sentiment stream
analysis. Em Simpsio Brasileiro de Banco de Dados (SBBD).
Silva, I. S.; Gomide, J.; Veloso, A.; Meira, Jr., W. & Ferreira, R. (2011c).
Effective sentiment stream analysis with self-augmenting training and demand-driven
projection. Em Proc SIGIR, pp. 475--484.
Tan, P.; Kumar, V. & Srivastava, J. (2002). Selecting the right interestingness measure
for association patterns. Em SIGKDD, pp. 3241.
Veloso, A. & Meira Jr., W. (2011).
SpringerBriefs Computer Science.
Veloso, A.; Meira Jr., W. & Zaki, M. J. (2006). Lazy associative classification. Em
Proceedings of the Sixth International Conference on Data Mining, ICDM 06, pp.
645--654, Washington, DC, USA. IEEE Computer Society.
Vorburger, P. & Bernstein, A. (2006). Entropy-based concept shift detection. Em
Proceedings of the Sixth International Conference on Data Mining, ICDM 06, pp.
1113--1118, Washington, DC, USA. IEEE Computer Society.
Widmer, G. & Kubat, M. (1996). Learning in the presence of concept drift and hidden
contexts. Machine Learning, 23(1):69101.
Wu, S.; Yang, C. & Zhou, J. (2006). Clustering-training for data stream mining. Em
Proc ICDM, pp. 653656.
Zaki, M.; Parthasarathy, S.; Ogihara, M. & Li, W. (1997). New algorithms for fast
discovery of association rules. Em SIGKDD, pp. 283286.
Zhang, P.; Zhu, X. & Shi, Y. (2008). Categorizing and mining concept drifting data
streams. Em Proceedings of the 14th ACM SIGKDD international conference on
Knowledge discovery and data mining, KDD 08, pp. 812--820, New York, NY, USA.
ACM.
Zhang, Y.-s.; Zhang, J.-p.; Yang, J. & Yin, Z.-W. (2009). Svms cooperative learning
strategy based on mas to data streams mining. Em Proc ICICSE, pp. 156159,
Washington, DC, USA. IEEE Computer Society.
Zhu, X.; Zhang, P.; Lin, X. & Shi, Y. (2007). Active learning from data streams. Em
Proc ICDM, pp. 757762.
66
Referncias Bibliogrficas
Zhu, X.; Zhang, P.; Lin, X. & Shi, Y. (2010). Active learning from stream data using
optimal weight classifier ensemble. Trans. Sys. Man Cyber. Part B, 40:1607--1621.