A Avalanche de Dados e a Análise de Sentimentos

Autor Convidado: Este post foi escrito por Fabrício Aguiar Silva, engenheiro de software do Vetta Labs, que trabalha com pesquisa e desenvolvimento na área de processamento de linguagem natural. Fabrício também escreve para o blog Tecnologia Inteligente (vale a pena conferir!).

Já Ouviu Falar em Análise de Sentimentos?

É notável o crescimento da quantidade de informação disponível na Web nos últimos anos. Além do conteúdo disponibilizado por empresas de notícias, os usuários passaram a compartilhar na Web seus conhecimentos, críticas e opiniões em blogs pessoais, sites de relacionamentos, microblogs, dentre outros meios. Com este aumento da participação dos usuários nos conteúdos da Web, surgiu também uma nova área de pesquisa relacionada ao Processamento de Linguagem Natural, chamada de Análise de Sentimentos ou Mineração de Opinião.

A Análise de Sentimentos visa identificar o sentimento que os usuários apresentam a respeito de alguma entidade de interesse (um produto específico, uma empresa, um lugar, uma pessoa, dentre outros) baseado no conteúdo disponível na Web. O objetivo principal é permitir que um usuário obtenha um relatório contendo o que as pessoas andam dizendo sobre algum item sem precisar encontrar e ler todas as opiniões e notícias a respeito.

Existem diversas aplicações para o uso da análise de sentimentos, veja alguns exemplos abaixo abaixo:

  • Análise de empresas na bolsa de valores: quem acompanha o blog Tecnologia Inteligente da Vetta Labs deve se lembrar do projeto stockmood.com, um dos projetos brasileiros participantes do TC50 em 2008, cujo objetivo é identificar o humor do mercado em relação às empresas negociadas na bolsa de valores, baseado nas opiniões dos analistas, com o intuito de identificar a tendência dos preços das mesmas;
  • Análise de um produto: uma empresa pode ter interesse na opinião dos usuários sobre um determinado produto. Por exemplo, a Apple (ou uma concorrente) pode realizar uma análise de sentimentos para saber o que as pessoas andam dizendo sobre o iPhone 3G. Estes resultados podem ser usados com o intuito de melhorar os produtos ou mesmo para identificar estratégias de marketing.
  • Análise de lugares: uma pessoa que vai viajar pode utilizar as opiniões de outras sobre o lugar pretendido para planejar o roteiro da viagem, evitando passeios desinteressantes;
  • Análise de políticos: os eleitores podem identificar qual a opinião de outros eleitores sobre um determinado candidato político;
  • Análise de filmes e jogos: também é possível analisar a opinião das pessoas sobre filmes e jogos eletrônicos;

Mas Como é Feita a Análise de Sentimento?

Basicamente a análise de sentimentos passa por três etapas básicas:

1. Coleta de conteúdos: visa buscar na web conteúdos sobre o item de interesse, e também identificar se esse conteúdo é relativo a um fato ou uma opinião. Fatos devem ser descartados, já que o interesse é nas opiniões dos usuários;

2. Classificação: a polaridade do conteúdo recuperado deve ser identificada. Geralmente, as polaridades usadas são positiva, negativa ou neutra;

3. Sumarização dos resultados: as classificações das diversas opiniões devem ser sumarizadas para o usuário, com o intuito de facilitar o seu entendimento sobre as mesmas. Esta sumarização pode ser em forma de texto ou gráfico.

O passo de coleta dos conteúdos está relacionado com recuperação da informação. Porém, deve-se utilizar técnicas mais avançadas capazes de identificar se o conteúdo é uma opinião ou um fato, o que não é uma tarefa trivial. No entanto, nem todo fato deve ser descartado, já que mesmo fatos podem conter algum tipo de opinião, e vice-versa. Esta distinção é importante para se ter uma precisão maior no passo seguinte, de classificação.

A etapa de classificação dos conteúdos pode ser realizada com três técnicas diferentes:

  • Aprendizagem de máquina: esta técnica requer que um conjunto de conteúdos seja classificado para servir de base para o treinamento do modelo. A partir desse modelo treinado, novos conteúdos são classificados. Uma vantagem desta abordagem é a utilização de algoritmos já consolidados e eficientes. Como desvantagens, podemos citar a necessidade de o conjunto ser classificado para treinamento e que, para diferentes tópicos, diferentes conjuntos de treinamento são necessários. Por exemplo, um modelo treinado com um conjunto de conteúdos relacionados ao mercado financeiro não é adequado para classificar conteúdos sobre política;
  • Seleção de palavras: esta abordagem envolve avaliar as palavras dos conteúdos e identificar aquelas positivas e negativas com base em uma lista de palavras previamente selecionadas. Com isso, é possível executar algoritmos para classificar o conteúdo como positivo, negativo ou neutro. Vantagens dessa técnica são a sua simplicidade e o fato de ser desnecessário classificar documentos previamente para treinamento, como na abordagem anterior. No entanto, o conjunto de palavras positivas e negativas deve ser selecionado e deve ser específico para cada tópico;
  • Análise sintática: esta abordagem envolve analisar o conteúdo sintaticamente, identificando principalmente adjetivos e/ou advérbios que possam indicar polaridades dos textos. Como vantagem desta abordagem, pode-se citar não ser necessário classificar previamente um conjunto de textos. Porém, ela requer um analisador sintático eficiente e que os conteúdos sejam compostos por sentenças sintaticamente corretas.

Estas três abordagens podem ser adotadas em conjunto, formando um modelo híbrido, para tentar aumentar a precisão da classificação.

O último passo, de sumarização dos resultados, pode ser apresentado de forma textual ou gráfica. A sumarização em forma de texto não é uma tarefa trivial, e é um tópico de pesquisa por si só. Ela envolve geração de linguagem natural com base em diversos conteúdos e existem várias propostas de pesquisadores para tal. Porém, ainda é um tópico em aberto, com várias dificuldades para serem enfrentadas. A sumarização em forma de gráfico é mais simples, e exige somente que uma forma fácil de ser lida e interpretada seja adotada.

Desafios da Análise de Sentimento

Existem diversos desafios na área que devem ser tratados para que a análise de sentimento seja obtida com uma precisão representativa. Várias destas dificuldades estão relacionadas ao processamento de linguagem natural, que está diretamente relacionado à análise de sentimento.

  • Não é trivial distinguir se um texto é opinião ou fato, e principalmente identificar em um fato se existem opiniões embutidas;
  • Textos podem conter sarcasmos e ironias, o que também não são fáceis de serem identificados e podem impactar os resultados;
  • Um texto pode referenciar mais de um item de interesse (pode citar iPhone e iPod) com opiniões diferentes sobre os itens, o que pode confundir a classificação;
  • Uso de pronomes para referenciar itens pode dificultar a identificação de sentenças que mencionam o item de interesse;
  • Textos com palavras escritas erradas e com sentenças sintaticamente mal formadas (o que é bastante comum nos Blogs e redes sociais atualmente) dificultam a busca e classificação dos mesmos;
  • Uso de termos do “Internetês”, como por exemplo “vc”, “fds” e “:)”, devem ser considerados no vocabulário;
  • Propaganda disfarçada, em que blogueiros recebem dinheiro para falar bem de alguma empresa ou produto pode impactar os resultados.

Podemos perceber que a análise de sentimento é uma tendência da Web com diversas aplicações interessantes, dado o grande número de dados disponibilizados pelos usuários.  Twitter, Facebook, Orkut e várias outras plataformas sociais são um poço de informações sobre o que os usuários da web estão interessados e quais são as suas opiniões sobre um assunto qualquer. Apesar dos desafios, cada vez mais empresas e pesquisadores seguem trabalhando para que um dia seja possível obter com facilidade um sumário automático das opiniões divulgadas pelos internautas, com qualidade suficiente para ajudar pessoas e empresas nas diversas tomadas de decisão do cotidiano.

0 responses to “A Avalanche de Dados e a Análise de Sentimentos

  1. Excelente artigo. Acho interessante o paradoxo que causa com o atual cenário de preocupação sobre a Privacidade, sobretudo nas redes sociais. De um lado, o receio com a (má) utilização que pode ser feita com essas informações, do outro todo um novo campo cientifico e tecnológico que desponta, tendo por base exatamente essa disponibilização. Quem venceria este debate?

    Abraços

    @TSSVeloso

  2. Cada vez mais as pessoas produzem conteúdo na Internet e tratar esses dados sempre é uma boa sacada. Extrair sentido dos dados é um grande desafio, mas com tanto material sendo criado os benefícios dos resultados dessas pesquisas podem ser promissores.

    Tentando responder a pergunta do TSSVeloso eu acho que as pessoas podem abrir mão da privacidade se os resultados dessas tecnologias que usam informações pessoais trouxerem grandes vantagens para a vida delas. Isso tudo passa a ser uma questão de trade-off. Vale a pena disponibilizar minhas informações para usufruir da tecnologia? Pelo que eu posso perceber os usuários caminham para fornecer cada vez mais conteúdo pessoal, hoje temos Facebook, Orkut, Last.fm, Flickr, Twitter, entre outros, para onde enviamos muitas informações das nossas vidas.

  3. Oi TSSVeloso.

    Geralmente, estes sistemas lidam com a privacidade (que é um aspecto muito sério!) obtendo os dados e associando estes dados a códigos, de forma que mesmo que vc esteja analisando os dados, mesmo quem analisa não sabe exatamente a quem pertence cada opinião.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *