Entenda a Detecção Automática de Fake News por Similaridade Difusa com Machine Learning - Natural Language Processing (NLP) - Instituto Eldorado
30 de Setembro de 2021

Entenda a Detecção Automática de Fake News por Similaridade Difusa com Machine Learning – Natural Language Processing (NLP)

Thais

Thais Silva Galho

Analista de Desenvolvimento de Software Sênior

Author

As notícias falsas, do inglês fake news, como são amplamente conhecidas, têm causado grande influência na sociedade, na maioria das vezes, influência negativa. De acordo com a análise de H.Ahmed, I.Traore e S.Saad [1], fake news é um fenômeno que tem impactado significativamente a nossa vida social, em particular no mundo da política. A exemplo do que aconteceu nas eleições presidenciais dos EUA no ano de 2016, aqui no Brasil, também vivenciamos essa manifestação em larga escala nas eleições presidenciais ocorridas no ano de 2018. Em ambos os casos, muito ainda se discute, internacionalmente, sobre o fato de as tais notícias terem ou não influenciado diretamente nos resultados finais das eleições. Outro problema grave fomentado pelas notícias mentirosas é o aumento do discurso de ódio online. De acordo com o que foi publicado pela BBC News Brasil em [9] “Detection of online fake news using n-gram analysis and machine learning techniques”, o Ministério Público Federal Brasileiro em cooperação com a ONG SaferNet, que mantém disponível o site denuncie.org.br, vêm recebendo um crescente número de denúncias de xenofobia, homofobia, neonazismo, racismo, intolerância religiosa, etc. Muito se especula também com relação ao impacto das notícias enganosas na área de saúde, onde podemos observar um aumento bastante significativo durante o período de pandemia do Coronavírus, o que levou o Ministério da Saúde Brasileiro a lançar um canal, via whatsapp, onde a população pode encaminhar uma notícia que trate de saúde, e o portal responde com um selo oficial identificando se a notícia é verdade ou mentira [8]. Este amplo crescimento da proliferação de notícias falsas via internet e seu impacto, nem sempre positivo, tem atraído a atenção de pesquisadores pelo mundo todo. 

Devido à sua natureza atrativa, as notícias falsas se espalham rapidamente, influenciando o comportamento das pessoas, afirma S. Vosoughi, D. Roy, and S. Aral [6]. Produtos, serviços, marcas, regiões, pessoas, etc. são severamente prejudicadas por publicações falsas. Uma pesquisa realizada em 27 países, nos meses de Junho e Julho/2018, aponta o Brasil em primeiro lugar entre os países onde as pessoas mais acreditam em fake news, tendo 62% da sua população admitido já ter, em algum momento, acreditado em alguma notícia falsa, conforme D. Cersosimo [2]. Este mesmo índice foi divulgado em 2016 em uma pesquisa realizada com a população norte-americana, por J. Gottfried and E. Shearer [3]. Os números demonstram que a maioria do público geral não está capacitado para identificar, com precisão, informações enganosas, muitas vezes acredita que uma notícia verdadeira é falsa e vice-versa, ficando assim suscetível a formar suas opiniões com base em informações errôneas. Todos estes fatos evidenciam que é necessário oferecer recursos para combater a proliferação de notícias falsas e/ou que apoiem a população na identificação das mesmas, mas para isto há muito trabalho a ser feito. 

De acordo com R. A. Monteiro, R. L. S. Santos, T. A. S. Pardo, T. A. de Almeida, E. E. S. Ruiz, and O. A. Vale [5], esforços acadêmicos vêm sendo aplicados para identificar como estas notícias se espalham, o comportamento dos usuários que as produzem e dos que as lêem, as características da linguagem utilizada, etc. cujo objetivo é poder identificar tais notícias. Um dos recursos utilizado nestes esforços é o processamento de linguagem natural (PLN), que é uma subárea da inteligência artificial que busca preencher a lacuna entre a comunicação humana e o entendimento dos computadores ajudando a entender e interpretar a linguagem humana. 

Neste contexto, ficou clara a urgência da necessidade de intensificar as pesquisas e disponibilizar tecnologias para desacelerar a proliferação deste tipo de notícias e apoiar os usuários de internet a identificar fontes confiáveis para obtenção de informação. Decidiu-se realizar esta pesquisa utilizando-se do conceito de lógica difusa através do cálculo de similaridade para a detecção automática de fake news publicadas na língua portuguesa. 

Técnicas Utilizadas 

A categorização de textos é uma técnica usada em PLN que permite a definição automática de categorias, bem como a classificação de um conjunto de documentos nessas classes. Desta forma, quando se tem a necessidade de buscar um documento, ou conteúdo, o espaço de busca é reduzido facilitando o acesso de quem busca à informação, pois ao invés de selecionar um documento entre milhares diferentes, pode-se analisar apenas os documentos pertencentes às categorias de interesse. Neste contexto, a categorização de textos foi usada em combinação com a aprendizagem de máquina supervisionada que, de acordo com T. Mitchell [4], consiste em ensinar ao computador, com base em pares de perguntas e respostas conhecidas que são apresentados a ele, como encontrar a resposta para uma entrada desconhecida, porém do mesmo contexto das que foram utilizadas para ensiná-lo. 

Um sistema de categorização de textos compreende duas fases: definição das categorias e classificação de novos documentos nas categorias pré-definidas. A fase de definição das categorias, normalmente, é realizada em três etapas: preparação de textos, seleção de características e definição das categorias. 

O protótipo desenvolvido nesta pesquisa implementa a Detecção Automática de Fake News, chamada DAFN, sob uma coleção de notícias em língua portuguesa criada por R. A. Monteiro, R. L. S. Santos, T. A. S. Pardo, T. A. de Almeida, E. E. S. Ruiz, and O. A. Vale [5]. 

Os textos da coleção foram obtidos a partir dos sites de jornais e revistas, aplicativos de comunicação, sites de checagem de fatos e redes sociais, do período relativo aos anos de 2017 e 2018. A coleção totaliza 7200 documentos, sendo que cada categoria contém 3600 notícias. Parte dessa coleção foi usada para definir as categorias, considerando 3240 textos de cada categoria. O restante da coleção, ou seja 720 notícias, sendo 360 notícias falsas e 360 notícias verdadeiras, foram usadas para testes do processo de DAFN implementado. 

O protótipo realiza a DAFN através da técnica de categorização de textos nas fases e etapas descritas acima.

Preparação do Texto 

Para a preparação do texto, o protótipo implementa as técnicas de identificação de termos, remoção de caracteres inválidos, e remoção de stopwords. 

O processo de preparação de texto ocorre da seguinte maneira: sobre uma base de documentos conhecidos e pertencentes a uma mesma classe, cada um dos textos é apresentado ao protótipo que então faz a identificação de cada termo individualmente, removendo os caracteres especiais e os números. 

Logo após, realiza-se a conversão de todas as letras por sua correspondente maiúscula e eliminam-se as acentuações. Esse processo, além de evitar que palavras iguais sejam consideradas diferentes por estarem em caixa alta ou baixa, minimiza em parte o problema dos erros ortográficos quanto à acentuação, visto que desconsidera o uso de acentos. 

Em seguida são eliminadas as palavras que não são passíveis de serem representantes de alguma categoria e são conhecidas como stop words ou palavras negativas e podem ser representadas por artigos, pronomes, preposições, advérbios e outras palavras que se apresentem com elevada ou baixa frequência nos textos. 

Para realizar esta tarefa, deve-se elaborar uma lista com todas as stopwords referentes ao domínio que o sistema deverá tratar. Essa lista é chamada de stoplist. Para efetuar a remoção das stop words do texto, o sistema compara cada palavra presente no texto com as da stoplist. Caso o termo esteja presente na lista, ele é excluído do texto. 

Seleção de Características

Depois de concluído o processo de preparação do texto, a tarefa é definir o conjunto de termos que melhor representem o assunto a ser categorizado, ou seja, encontrar as palavras ou conceitos que podem definir uma categoria. Esta etapa é chamada de seleção de características e este conjunto de termos também é reconhecido por índice representativo da categoria. 

Para esta fase, a técnica escolhida para ser aplicada pelo protótipo, atribui a importância de cada termo dentro do contexto, é denominada escore de relevância. Identificar a relevância do termo é essencial para análise de similaridade visto que diferentes assuntos podem possuir termos iguais como sendo relevantes, porém com graus de importância diferentes. 

A ideia desta técnica está baseada na frequência de um termo em uma categoria e na sua frequência nas demais categorias, neste caso as categorias são de notícia falsa ou verdadeira. A partir destes dados é calculada a relevância do termo para uma dada categoria. Naquela(s) categoria(s) em que o termo alcançar um escore de relevância maior ele então será escolhido para representá-la(s). 

Para a criação do índice, adotou-se a técnica de truncagem, que é o ato de cortar uma parte de um todo. Para a realização da truncagem, calcula-se a importância dos termos do texto e os ordena por este valor. Logo após, é estabelecido o limite máximo de características a compor o índice da categoria. 

Nesta etapa de seleção das características aplicou-se também o método de validação cruzada, em resumo esse método consiste em dividir a coleção de textos em conjuntos iguais, neste caso a coleção foi dividida em 5 conjuntos por terem sido alcançados melhores resultados com esta quantidade. Então usou-se 4 partes para fazer a seleção das características das categorias e 1 parte para testes, para permitir avaliar o quanto o protótipo consegue generalizar para notícias ainda não conhecidas, esse processo foi repetido 5 vezes. 

Etapa de Categorização

Nesta etapa do processo é executada a categorização de novas notícias. Para qual o protótipo usa a técnica de similaridade por lógica difusa, apresentada por L. K. Wives. [7], que permite efetuar a categorização graduada de uma notícia para uma ou mais categorias. 

A lógica difusa, do inglês Fuzzy Logic, pode ser definida como sendo uma ferramenta capaz de capturar informações vagas, em geral descritas em uma linguagem natural e convertê-las para um formato numérico o que torna fácil a manipulação por computadores. Escolheu-se esta técnica por não terem sido encontrados muitos relatos de utilização da lógica difusa para categorização automática de documentos de texto. 

A partir da aplicação desta técnica cada vez que um termo é encontrado em ambos os índices, da categoria e do novo texto, aplica-se o cálculo do grau de igualdade baseado em funções difusas que define a similaridade entre os pesos do termo nos dois vetores, e o valor encontrado é acumulado. Esse valor total acumulado vai definir o grau de similaridade entre a notícia que está sendo analisada e o índice representativo da categoria. 

O resultado deste processo é um valor entre zero e um, como todo resultado difuso. Quanto mais próximos de zero, menos similares serão os documentos e quanto mais próximos a um, mais similares. 

Após gerado o grau de similaridade entre a notícia e as categorias, no caso notícia falsa ou verdadeira, naquela categoria em que obtiver maior grau de similaridade, a notícia será categorizada. 

Conclusões

Identificar a veracidade de uma notícia é uma tarefa de altíssima complexidade devido ao fato de que uma notícia, em sua essência, traz alguma informação nova e, portanto,  nem sempre existe um padrão para comparação e identificação da autenticidade. Talvez a forma mais assertiva de garantir que a notícia é real, seja confirmando se a fonte da publicação da notícia é confiável e se as partes envolvidas confirmam o fato; devido ao grande número de informações que são divulgadas diariamente, essa é uma ideia impraticável. Diante desta dificuldade, a comunidade científica vem buscando soluções em diferentes áreas de conhecimento no intuito de conter o avanço das fake news, problema este, talvez não tão novo, mas que vem se agravando recentemente. Desta forma entende-se que a pesquisa realizada contribui nessa busca apresentando a possibilidade da detecção automática de fake news alcançando resultados significativos, como podemos ver a seguir. 

Durante a fase de categorização de novas notícias foram apresentadas ao protótipo as 720 notícias desconhecidas pelo mesmo, sendo 360 notícias de cada categoria. O protótipo conseguiu categorizar corretamente 331 notícias da categoria de falsas e 324 notícias da categoria de verdadeiras. 

Analisando os dados apresentados acima conclui-se que o processo implementado alcançou o seu objetivo e se mostrou eficiente. A combinação das técnicas utilizadas em cada fase do processo foi muito importante para que o objetivo final fosse alcançado.

A técnica de similaridade difusa, utilizada na categorização, apresentou excelentes resultados. O processo simples, baseado em funções de inferência da lógica difusa, permite definir o quão similar são dois índices e não apenas se eles são similares ou não. 

Referências 

[1] H. Ahmed, I.Traore, and S. Saad. Detection of online fake news using n-gram analysis and machine learning techniques. In In: Traore I., Woungang I., Awad A. (eds) Intelligent, Secure, and Dependable Systems in Distributed and Cloud Environments. ISDDC 2017. Lecture Notes in Computer Science, volume 10618, 2017. 1 

[2] D. Cersosimo. Global advisor: Fake news, filter bubbles, post-truth and truth, 2018. 1 

[3] J. Gottfried and E. Shearer. News use across social media platforms 2016, 2016. 1 

[4] T. Mitchell. Machine Learning. McGraw-Hill, 1997. 2 

[5] R. A. Monteiro, R. L. S. Santos, T. A. S. Pardo, T. A. de Almeida, E. E. S. Ruiz, and O. A. Vale. Contributions to the study of fake news in portuguese: New corpus and automatic detection results. In In: Proceedings of the 13th International Conference, PROPOR 2018, pages 324–334, September 2018. 1, 2 

[6] S. Vosoughi, D. Roy, and S. Aral. The spread of true and false news online. Science, 359:1146–1151, March 2018. 1 

[7] L. K. Wives. Um estudo sobre agrupamento de documentos textuais em processamento de informações não estruturadas usando técnicas de “clustering”. 1999

[8] https://portalms.saude.gov.br/fakenews/

[9] https://www.bbc.com/portuguese/brasil-46146756 

Subscribe to our newsletter.

Created By Avanti