51
UNIVERSIDADE DE SÃO PAULO Instituto de Ciências Matemáticas e de Computação Detecção de notícias falsas usando técnicas de deep learning Lucas Guarise São Carlos – SP

UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

UNIVERSIDADE DE SÃO PAULOInstituto de Ciências Matemáticas e de Computação

Detecção de notícias falsas usando técnicas de deeplearning

Lucas Guarise

São Carlos – SP

Page 2: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 3: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

Detecção de notícias falsas usando técnicas de deep learning

Lucas Guarise

Orientadora: Prof. Dra. Solange Oliveira Rezende

Monografia final de conclusão de curso apresentadaao Instituto de Ciências Matemáticas e deComputação – ICMC-USP, como requisito parcialpara obtenção do título de Bacharel em Engenhariade Computação.Área de Concentração: Inteligência Computacio-nal

USP – São CarlosNovembro de 2019

Page 4: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

Guarise, LucasDetecção de notícias falsas usando técnicas de deep

learning / Lucas Guarise. – São Carlos – SP, 2019.49 p.; 29,7 cm.

Orientadora: Solange Oliveira Rezende.Monografia (Graduação) – Instituto de Ciências

Matemáticas e de Computação (ICMC/USP), São Carlos –SP, 2019.

1. Fake News. 2. Aprendizado Profundo. 3. HAN.4. Processamento de Linguagem Natural. 5. Word2Vec.I. Rezende, Solange Oliveira. II. Instituto de CiênciasMatemáticas e de Computação (ICMC/USP). III. Título.

Page 5: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

Este trabalho é dedicado à todos aqueles que buscam o conhecimento científico,

não para benefício próprio, mas sim para melhorar o mundo que nos cerca.

Em especial para os professores, que têm esse princípio como sua missão de vida.

Page 6: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 7: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

AGRADECIMENTOS

Os agradecimentos principais são para os meu pais que sempre deram apoio moral,afetivo e financeiro. Agradecimentos aos meu amigos de faculdade que fizeram desses anos umacaminhada mais leve, aos meus grandes amigos de infância e adolescência com os quais aindadivido dos melhores momentos da minha vida. Agradecimento especial para meu grande amigoJoão Victor sem o qual a realização desse trabalho não teria sido possível. A Universidadede São Paulo e todas as oportunidades que me foram dadas por fazer parte dessa instituição.Agradecimento especial a minha professora orientadora Solange, e a sua doutoranda Mariana,pela ajuda e diretrizes passadas durante a realização deste trabalho.

Page 8: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 9: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

“A vida não nos dá um propósito,

nós damos um propósito para a vida.”

(The Flash)

Page 10: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 11: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

RESUMO

GUARISE, L. Detecção de notícias falsas usando técnicas de deep learning. 2019. 49 f.Monografia (Graduação) – Instituto de Ciências Matemáticas e de Computação (ICMC/USP),São Carlos – SP.

Com a democratização da comunicação proporcionada pelo uso massivo das redes sociais surgeum problema que se mostra capaz de influenciar muitos e mudar o curso da atualidade, fala-sedo grande aumento da quantidade de notícias falsas e do escalonamento do compartilhamentodessas notícias pela rede. Devido ao grande número de notícias, e sua velocidade de propagaçãopela rede, a revisão de todo esse conteúdo por profissionais capacitados se torna infactível. Umadas formas mais promissoras de combate à disseminação de notícias falsas é a automatizaçãona detecção desse conteúdo, ou seja, a capacidade de classificar o conteúdo como verdadeiroou não sem a interação de um humano. Diversos esforços na tentativa de construir algoritmoscapazes de fazer essa classificação já existem, alguns por parte de vários pesquisadores e ou-tros até por parte de empresas como Google e Facebook. O uso de algoritmos de aprendizadode máquina e mais especificamente o uso de aprendizado profundo se mostram promissoresdevido a capacidade de reconhecer padrões semânticos de que escapam ao leitor comum, quepodem indicar se a notícia é verdadeira ou não. Além disso o avanço de técnicas de proces-samento de linguagem natural e de algoritmos para a criação de palavras vetorizadas contribuipara uma melhor performance de redes neurais sobre tarefas relacionadas com texto. Nesteprojeto explora-se o uso de modelos de aprendizado profundo para construir um classificadorsobre a veracidade de notícias. O modelo de rede de aprendizado profundo escolhido foi ohierarchical attention networks, ou HAN. Este modelo cria uma representação efetiva do textoe, diferentemente de outras arquiteturas de redes, permite a visualização dos dados de saída.Através de um mapa de calor obtêm-se uma indicação do porquê da classe escolhida, dandodestaque as palavras e sentenças consideradas mais importantes para a classificação. Neste pro-jeto também usa-se de modelos pré-treinados para a criação das palavras vetorizadas, usandoo algoritmo Word2vec. Após a construção, o modelo foi treinado e avaliado com base em umbanco de dados de notícias pré classificadas.

Palavras-chave: Fake News, Aprendizado Profundo, HAN, Processamento de Linguagem Na-tural, Word2Vec.

Page 12: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 13: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

ABSTRACT

GUARISE, L. Detecção de notícias falsas usando técnicas de deep learning. 2019. 49 f.Monografia (Graduação) – Instituto de Ciências Matemáticas e de Computação (ICMC/USP),São Carlos – SP.

With the democratization of communications provided by the massive use of social networks,rise a problem that seems to be able to influence many and make changes at the current socialcourse. The large increase in the amount of false news and the staggering sharing of this newsover the network. Due to the large number of news, and its speed of propagation through thenetwork, the review of all this content by qualified professionals becomes infactible. One of themost promising ways to combat the spread of fake news is by automating the detection of thiskind of content, in other words the ability to classify the content as true or not without humaninteraction. Several efforts to build algorithms capable of making this classification already ex-ist, some from various researchers and others even from companies like Google and Facebook.The use of machine learning algorithms and more specifically the use of deep learning seemspromising to resolve the issue due to its ability to recognize semantic patterns that escape theaverage reader, which may indicate whether or not the news is true. In addition, the advance-ment of techniques and algorithms for the creation of words embeddings contributes to a betterperformance of neural networks on natural language processing related tasks. This project ex-plores the use of deep learning models to build a classifier on the truth of news.The hierarchicalattention networks, or HAN, was chosen by the author. This model creates an effective rep-resentation of a given text and, unlike other network architectures, allows the visualization ofoutput data. A heat map gives an indication of why the label is chosen, highlighting the wordsand sentences considered most important for classification. This project also uses pre-trainedmodels for the creation of vectorized words, using the Word2vec algorithm. After constructionthe model was trained and evaluated based on a pre-labelled news database.

Key-words: Fake News, Deep Learning, HAN, Natural Language Process, Word2Vec.

Page 14: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 15: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

LISTA DE ILUSTRAÇÕES

Figura 1 – Atributos chaves para a definição de fake news . . . . . . . . . . . . . . . . 24Figura 2 – Exemplo de Arquitetura de Rede Neural Artificial Simples . . . . . . . . . 25Figura 3 – Exemplo de Arquitetura de Rede Neural Recorrente Simples . . . . . . . . 26Figura 4 – Exemplo de Arquitetura de Rede Neural Recorrente Bidirecional . . . . . . 27Figura 5 – Exemplo de Arquitetura da Rede LSTM . . . . . . . . . . . . . . . . . . . 28Figura 6 – Modelo Encoder - Decoder para tradução sem (superior) e com (inferior)

mecanismo de atenção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Figura 7 – Modelo de arquitetura de aprendizado profundo Rede de hierarquia de atenção. 30Figura 8 – Projeções dos vetores de word embeddings para visualização de alguma pro-

priedades matemáticas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Figura 9 – Exemplo de notícia falsa presente na base de dados. . . . . . . . . . . . . . 35Figura 10 – Diagrama das camadas do modelo. . . . . . . . . . . . . . . . . . . . . . . 37Figura 11 – Sumário das camadas do modelo emitido pelo Keras. . . . . . . . . . . . . 38Figura 12 – Valores da função de perda do modelo em relação as épocas de treinamento,

em azul valores para o conjunto de treinamento e em vermelho para o con-junto de validação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Figura 13 – Acurácia do modelo em relação as épocas de treinamento, em azul valorespara o conjunto de treinamento e em vermelho para o conjunto de validação. 39

Figura 14 – Mapa de calor obtido com os pesos de atenção para as palavras e as frasesem uma notícia falsa com predição correta. . . . . . . . . . . . . . . . . . . 41

Figura 15 – Mapa de calor obtido com os pesos de atenção para as palavras e as frasesem uma notícia verdadeira com predição correta mas imprecisa. . . . . . . . 41

Figura 16 – Mapa de calor obtido com os pesos de atenção para as palavras e as frasesem uma notícia verdadeira com predição correta e precisa . . . . . . . . . . 42

Page 16: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 17: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

LISTA DE TABELAS

Tabela 1 – Resultado de validação da época 6. . . . . . . . . . . . . . . . . . . . . . . 39Tabela 2 – Comparação dos resultados encontrados com (MONTEIRO et al., 2018). . . 40Tabela 3 – Comparação dos resultados encontrados com (SINGHANIA; FERNANDEZ;

RAO, 2017). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Tabela 4 – Resultado de validação para entradas fora da base de dados. . . . . . . . . . 40

Page 18: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 19: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

SUMÁRIO

1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191.1 Motivação e Contextualização . . . . . . . . . . . . . . . . . . . . . . 191.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201.3 Organização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2 MÉTODOS, TÉCNICAS E TECNOLOGIAS UTILIZADAS . . . . . 232.1 Considerações Iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232.2 Fake News . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232.3 Aprendizado de Máquina e Aprendizado Profundo . . . . . . . . . . 242.4 Redes Neurais Recorrentes . . . . . . . . . . . . . . . . . . . . . . . . 262.4.1 LSTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.5 Mecanismos de Atenção em Aprendizado Profundo . . . . . . . . . . 282.6 Redes Hierárquicas com Atenção . . . . . . . . . . . . . . . . . . . . . 302.7 Word Embeddings e Word2Vec . . . . . . . . . . . . . . . . . . . . . . 312.8 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3 DESENVOLVIMENTO . . . . . . . . . . . . . . . . . . . . . . . . . 333.1 Considerações Iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333.2 O Projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333.3 Atividades Realizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343.3.1 Escolha da Base de Dados . . . . . . . . . . . . . . . . . . . . . . . . . 343.3.2 Escolha do Modelo de Aprendizado Profundo . . . . . . . . . . . . . 353.3.3 Implementação do Modelo . . . . . . . . . . . . . . . . . . . . . . . . . 363.3.4 Treinamento e Validação . . . . . . . . . . . . . . . . . . . . . . . . . . 373.4 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383.5 Dificuldades e Limitações . . . . . . . . . . . . . . . . . . . . . . . . . 423.6 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4 CONCLUSÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.1 Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.2 Relacionamento entre Curso e o projeto . . . . . . . . . . . . . . . . 434.3 Considerações sobre o Curso de Graduação . . . . . . . . . . . . . . . 444.4 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Page 20: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Page 21: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

19

Capítulo 1

INTRODUÇÃO

1.1 Motivação e Contextualização

Durante as eleições americanas de 2016 o uso de fake news para difamar os candidatos apresidência atingiu níveis nunca antes vistos (MERELES; MORAES, 2017). Estudos apontamque notícias falsas sobre os candidatos foram compartilhadas 48 milhões de vezes (MERELES;MORAES, 2017). Os dois principais candidatos foram alvo de notícias falsas, mas a candidataHillary Clinton, que acabou derrotada nas eleições, teve três vezes mais compartilhamentos defake news negativas a seu respeito do que seu principal adversário Donald Trump(MERELES;MORAES, 2017; ALLCOTT; GENTZKOW, 2017). Durante as campanhas para o Brexit di-versas informações falsas foram usadas pela campanha Vote to Leave, que saiu vencedora noreverendo referente a saída do Reino Unido da União Europeia (GRICE, 2017). Em 2018, noBrasil, as eleições presidenciais também foram marcadas pelo compartilhamento de notícias fal-sas (PEREIRA; TOLEDO; MONNERAT, 2018). O fenômeno da viralidade de notícias falsasmostra-se como grande influenciador de eventos políticos na atualidade. Estudos apontam quenotícias falsas possuem uma probabilidade maior de ser compartilhada do que conteúdo ver-dadeiro. Experimentos realizados na plataforma Twitter mostram que informações falsas têm70% mais chances de serem compartilhadas e que se propagam mais rápida e profundamentepela web (SHARIATMADARI, 2019). O mesmo estudo também apontou que apesar de botsacelerarem a propagação de notícias pela rede, seu uso tem o mesmo efeito tanto para notíciasverdadeiras quanto falsas, colocando o problema da viralidade das fake news como um resultadodo comportamento humano (VOSOUGHI; ROY; ARAL, 2018).

A manipulação emocional promovida pelas fake news pode ser usada para explicar essefenômeno. Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais noleitor, sentimentos como raiva, indignação e frustração dificultam a capacidade do leitor ana-lisar racionalmente o conteúdo e provocam a urgência de compartilhar a informação (SIVEK,2018; SHARIATMADARI, 2019). Então pode-se considerar que as fake news são escritas deforma diferente do conteúdo puramente jornalístico onde foca-se somente nos fatos (SHARIAT-MADARI, 2019). A partir disso é razoável assumir que algoritmos de aprendizado de máquinapossam identificar as diferenças de padrões de escrita entre as notícias falsas e verdadeiras eusá-los para classificar uma notícia como sendo falsa. Essa foi a hipótese usada por diversostrabalhos na área de detecção automática de fake news como pelo grupo de pesquisadores da

Page 22: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

20 Capítulo 1. Introdução

Universidade de Berkeley na Califórnia para o projeto FakerFact que criou uma aplicação paratentar resolver o problema das fake news (TAMIR, 2018), no qual este trabalho é fortementeinspirado.

Para o Português existe pouco conteúdo acadêmico relacionado com a detecção de no-tícias falsas por software. Isso se deve principalmente pela falta de disponibilidade de bancosde dados com notícias previamente classificadas. Dentre o conteúdo encontrado para esse as-sunto destaca-se aqui o trabalho desenvolvido por pesquisadores do Núcleo Interinstitucionalde Linguística Computacional (MONTEIRO et al., 2018). O trabalho além de abordar a clas-sificação de fake news para a língua portuguesa usando técnicas de aprendizado de máquinaainda realizou a construção do corpus Fake.br, que contém notícias previamente classificadasem conteúdo verdadeiro ou falso.

Dentro da área de aprendizado profundo existem diversas arquiteturas de redes propos-tas com o objetivo de extrair informações de entradas em formato textual (MITTAL, 2019).Sendo textos estruturas intrinsecamente hierárquicas, conjuntos de palavras formam sentençasque por sua vez formam o corpo do texto, é razoável que uma arquitetura de rede neural usedessa característica com intuito de retirar informações sobre esse texto, por esse motivo o mo-delo conhecido como, Hierarchical Attention Networks, ou HAN, é proposto para classificaçãode textos devido a forma hierárquica de analisar os dados de entrada. Este modelo tambémusado em outros trabalhos para a classificação de fake news, como o FakerFact desenvolvidona universidade de Berkeley na Califórnia e o artigo 3HAN: A Deep Neural Network for Fake

News Detection do Instituto de Tecnologia da Informação da Índia (TAMIR, 2018; SINGHA-NIA; FERNANDEZ; RAO, 2017). Por esse motivo o autor escolheu esse modelo para a imple-mentação do classificador. O modelo HAN, diferentemente da maioria de outras redes neurais,permite a visualização dos resultados destacando as palavras e sentenças mais determinantespara a classificação através de um mapa de calor com os valores dos pesos de atenção geradosno treinamento do modelo (YANG et al., 2016).

Este projeto tem como potenciais contribuições: fomentar o debate acerca da classifica-ção de notícias falsas para a língua portuguesa; gerar um modelo preciso para a classificação denotícias de fácil uso para aplicações futuras, para isso deve-se usar de pouco pré-processamentodos dados e usar apenas o corpo do texto como entrada do modelo; comprovar a premissa quehá uma diferença fundamental entre a forma que notícias verdadeiras são escritas em relação àsfake news.

1.2 Objetivos

Este trabalho tem como objetivo montar um classificador de notícias em português bra-sileiro capaz de identificar notícias falsas utilizando de técnicas de aprendizado profundo. Omodelo deve ser capaz de fazer a classificação usando somente do corpo textual e com pouco

Page 23: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

1.3. Organização 21

pré-processamento de dados. Mais especificamente, o objetivo é usar o modelo HAN para cons-truir o classificador desejado, arquitetura que foi escolhida com base em trabalho anteriores nasáreas de classificação de texto e de notícias falsas para o inglês (TAMIR, 2018; SINGHANIA;FERNANDEZ; RAO, 2017).

Espera-se atingir resultados equiparáveis a outros trabalhos considerados estado da arteno problema da classificação de fake news para a língua inglesa.

Após a implementação e treinamento do modelo tem-se como objetivo utilizar de mapasde calor sobre o texto usando dos pesos das camadas de mecanismos de atenção para fornecera visualização dos resultados. Finalmente esse trabalho também busca ser útil para trabalhosfuturos na mesma área, esperando que ele possa ser utilizado como referência, uma vez que nãoforam encontrados outros trabalhos que utilizem de técnicas de aprendizado profundo para aeste problema em português.

1.3 OrganizaçãoNo Capítulo 2 é apresentado o conteúdo teórico utilizado no projeto, bem como traba-

lhos de literatura relacionados ao mesmo. A seguir, no Capítulo 3, são descritas as atividadesrealizadas ao longo do desenvolvimento do projeto e os resultados obtidos após o treinamentoe a validação do modelo. Por último, no Capítulo 4, encontram-se as conclusões após o desen-volvimento do projeto, discussões dos resultados obtidos e dificuldades encontradas durante odesenvolvimento do trabalho.

Page 24: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 25: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

23

Capítulo 2

MÉTODOS, TÉCNICAS E TECNOLOGIASUTILIZADAS

2.1 Considerações Iniciais

Neste capítulo serão abordados os conceitos teóricos envolvidos na implementação doclassificador de notícias falsas proposto. O capítulo está organizado da seguinte forma: definiçãode fake news e o contexto necessário para entendimento do problema; Técnicas utilizadas noclassificador implementado na execução do projeto.

2.2 Fake News

O termo fake news pode ser entendido pela sua tradução direta do inglês para notíciasfalsas, mas outros autores dão uma maior profundidade ao fenômeno associado ao termo, assimdefine-se fake news não somente como notícias com conteúdo cujos fatos estão incorretos masque também que tem a intenção de manipular o leitor. Distinguindo-as assim de notícias comcaráter jornalístico mas com fatos incorretos devido a erros na verificação das informaçõessendo transmitidas (SIVEK, 2018), como mostra o diagrama da Figura 1 .

Nesse contexto, é determinado que as fake news são escritas buscando causar uma rea-ção emotiva forte que ressoe com o público ou, mais comumente, com um grupo alvo especí-fico de leitores, dificultando que o destinatário desse conteúdo tenha uma reação racional sobreaquilo que acaba de ler (SIVEK, 2018). A reação emocional do leitor também ajuda a explicar oalto índice de compartilhamento dessas notícias em relação às notícias com conteúdo puramentejornalístico (SIVEK, 2018; VOSOUGHI; ROY; ARAL, 2018). A chance de uma notícia falsa setornar viral na internet é muito maior do que uma com conteúdo verdadeiro (VOSOUGHI; ROY;ARAL, 2018), como demonstrado por pesquisas em plataformas sociais, notícias de cunho falsotem 70% mais chance de serem compartilhadas do que notícias verdadeiras (VOSOUGHI; ROY;ARAL, 2018).

O mesmo estudo também aponta que, apesar de bots nas redes sociais agilizarem apropagação de fake news, eles não são os responsáveis pela diferença entre a velocidade de pro-pagação entre notícias falsas e verdadeiras. O conteúdo verdadeiro quando espalhados por botsmostrou o mesmo crescimento proporcional de propagação que o de notícias falsas. Atribuindo

Page 26: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

24 Capítulo 2. Métodos, Técnicas e Tecnologias Utilizadas

Figura 1 – Atributos chaves para a definição de fake news

assim que o maior compartilhamento de fake news quando comparado a notícias verdadeirastem raízes no comportamento humano e não no uso de bots (VOSOUGHI; ROY; ARAL, 2018).

Da influência da grande exposição a notícias falsas na opinião pública sobre os maisdiversos temas, surge o conceito da era de pós-verdade. O termo, que foi eleito como palavrado ano de 2016 pelo dicionário Oxford, retrata um momento onde fatos pouco importam paraa formação da opinião pública e que emoções e crenças pessoais passam a ter um papel maisrelevante (MERELES; MORAES, 2017). As fake news fomentam teorias da conspiração e fatosalternativos, dando-os conteúdo, referências e argumentação para seus seguidores, distanciandogrupos de pessoas cada vez mais dos fatos e polarizando a sociedade a ponto de que gruposdiferentes acreditem em fatos básicos distintos (MANJOO, 2016).

2.3 Aprendizado de Máquina e Aprendizado ProfundoUma rede neural artificial é um algoritmo computacional bioinspirado no sistema ner-

voso de animais (BASHEER; HAJMEER, 2000). Utilizada em aplicações de aprendizado demáquina, esse tipo de estrutura é muito usado para processar grandes quantidades de dadosde treinamento a fim de classificar ou identificar dados novos semelhantes aos de treinamento(BASHEER; HAJMEER, 2000). Sua arquitetura é composta por camadas de neurônios de pro-cessamento e conexões entre esses neurônios, como apresentado na Figura 2.

O processo de treinamento muda o peso atribuído a cada conexão, esses pesos determi-nam quais neurônios de uma próxima camada serão ativados dado uma certa entrada, imitandoa sinapses de um sistema nervoso animal (BASHEER; HAJMEER, 2000). Uma vez treinadacorretamente, uma rede neural é capaz de identificar padrões não lineares dentro do conjuntode dados. Existem diferentes tipos de arquiteturas de redes neurais artificiais, cada uma com

Page 27: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

2.3. Aprendizado de Máquina e Aprendizado Profundo 25

pontos fortes e fracos.

O processamento em cada neurônio é feito através de uma função de ativação. Existemdiversos tipos de função de ativação utilizadas em redes neurais artificiais. A escolha da funçãode ativação em uma rede determina como devem ser as entradas da rede como serão os valoresde saída da rede.

Durante o treinamento da rede o algoritmo de backpropagation é utilizado para calcularo gradiente da função de perda em relação aos pesos das conexões da rede. Ele funciona fazendoiteração nas camadas da rede, começando da última camada e indo até a camada de entrada dedados mudando os pesos entre as camadas de acordo com o gradiente da função de perda. Afunção de perda pode ser descrita como a média das diferenças entre os valores de saída da redee os valores esperados.

Figura 2 – Exemplo de Arquitetura de Rede Neural Artificial Simples

Fonte: MITTAL (2019).

O aprendizado profundo ou deep learning são estruturas computacionais que usam dediversas camadas de redes neurais artificiais, aqui podem se mesclar diferentes tipos de redes ecada camada tem o objetivo de aprender características do conjunto de dados com a finalidadede realizar uma tarefa computacional (GOODFELLOW; BENGIO; COURVILLE, 2016). Emoutras palavras deep learning é o uso de redes neurais maiores e mais complexas de váriascamadas, onde as camadas iniciais reconhecem características simples dos dados. Quanto maisprofundo dentro da rede mais abstratas ficam as representações encontradas pela rede.

Page 28: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

26 Capítulo 2. Métodos, Técnicas e Tecnologias Utilizadas

2.4 Redes Neurais RecorrentesRedes neurais tradicionais não conseguem lidar com entradas temporalmente dependen-

tes, para isso é necessário um outro tipo de arquitetura de rede neural (BASHEER; HAJMEER,2000). Redes neurais recorrentes, mostradas na Figura 3, são redes onde a saída depende deinterações anteriores na rede, ou seja ela possui uma memória, isso dá a esse tipo de rede umavantagem muito grande quando os dados de entrada são sequências (BASHEER; HAJMEER,2000). Então, aplicações que envolvem dados de entrada como vídeos, som ou texto são propí-cias para uso desse tipo de rede.

Na Figura 3 as entradas da rede são sequências, denominadas por Xt , como uma sen-tença por exemplo, onde cada valor Xt representa a t-ésima palavra. As saídas dessa rede sãorepresentadas por Ot e os estados intermediários da rede são chamados ht . As letras W e brepresentam valores de pesos e valores de viés dos neurônios artificiais respectivamente, essesvalores são obtidos com o treinamento de rede.

Então temos que os estados intermediários de cada iteração são dados por:

ht = fa((Whhht−1 +bh)+Wxhxt)

Onde fa() é a função de ativação escolhida para os neurônios da rede. Já as saídas darede são dadas por:

Ot =Whoht +bo

Figura 3 – Exemplo de Arquitetura de Rede Neural Recorrente Simples

Fonte: Gudikandula (2019).

Para o treinamento desse tipo de rede é utilizado uma variação do algoritmo de back-

propagation, conhecida como backpropagation through time. A diferença está no cálculo dogradiente da função de perda, nesse algoritmo também leva em consideração as variações entreas iterações no tempo para o cálculo do gradiente.

Um uso clássico de redes recorrentes é a função de auto completar palavras em editoresde texto, onde a predição da próxima palavra depende das palavras anteriores. Para a análise de

Page 29: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

2.4. Redes Neurais Recorrentes 27

texto é interessante também o uso de redes recorrentes bidirecionais, apresentada na Figura 4,onde as palavras de uma sentença são as entradas, X, aplicadas para duas redes recorrentessimultâneas, chamadas de A e A‘, uma avaliando a sentença com as palavras em ordem deleitura, sentido S, e outra com a ordem das palavras lidas de trás para frente, sentido S‘. A saídadesta rede, Y, é a concatenação dos resultados de ambas as direções (GUDIKANDULA, 2019).Deste modo pode-se avaliar a presença de uma palavra em relação a todas as que a precedem etodas as que a sucedem podendo ter noção de contexto dentro da sentença (GUDIKANDULA,2019).

Figura 4 – Exemplo de Arquitetura de Rede Neural Recorrente Bidirecional

Fonte: Lee (2017).

2.4.1 LSTM

Um problema encontrado por redes recorrentes simples é a perda do gradiente durantea backpropagation através do tempo, que resulta que para sequências muito grandes de entradaocorre a perda da dependência entre as entradas (HOCHREITER; SCHMIDHUBER, 1997; GU-DIKANDULA, 2019). Uma solução viável para este problema é o uso da rede long short term

memory, ou LSTM. Redes LSTM são capazes de lembrar informações passadas por um longonúmero de iterações. Uma rede LSTM contém três gates, como mostrada na Figura 5. Forget

gate que determina aquilo que deve ser esquecido de iterações passadas para essa iteração, Up-

date gate que decide o que é importante dessa iteração e deve ser passado adiante e Output

gate que dá a saída da iteração (HOCHREITER; SCHMIDHUBER, 1997; GUDIKANDULA,2019).

Entre os problemas de redes LSTM destacam-se a dificuldade de convergência duranteo treinamento e o seu custo computacional (GUDIKANDULA, 2019).

Page 30: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

28 Capítulo 2. Métodos, Técnicas e Tecnologias Utilizadas

Figura 5 – Exemplo de Arquitetura da Rede LSTM

Fonte: Gudikandula (2019).

2.5 Mecanismos de Atenção em Aprendizado Profundo

Técnicas com o uso de mecanismos de atenção em algoritmos de aprendizado profundoforam inicialmente introduzidas em problemas chamados de Seq2Seq, onde a entrada e a saídada rede neural são compostas por sequências de dados, como por exemplo o problema de tra-dução automática de textos (BAHDANAU; CHO; BENGIO, 2014; LAMBA, 2019). Neste pro-blema normalmente a frase no idioma original é codificada por uma rede recorrente para umarepresentação de um vetor de contexto e então esse vetor é decodificado para a linguagem alvo(LAMBA, 2019). Mas para sequências muito longas de entrada a informação do vetor de con-texto tinha uma influência muito grande das últimas entradas processadas e perdia informaçãodas entradas iniciais (BAHDANAU; CHO; BENGIO, 2014).

Nesse contexto as camadas de mecanismos de atenção foram propostas para gerar ovetor de contexto da sentença. De modo que esse vetor seja um condensado das informaçõesmais importantes de todos os estados intermediários da rede recorrente. Os dois modelos sãoilustrados na Figura 6 (BAHDANAU; CHO; BENGIO, 2014). Posteriormente o uso dessa téc-nica também mostrou-se útil para o problemas de classificação pois ela dá um vetor com asinformações cuja a rede, já treinada, julga ser as mais importantes do texto sintetizada em umúnico vetor de dados (BAHDANAU; CHO; BENGIO, 2014).

Estruturalmente essas camadas nada mais são do que uma rede feed-forward, cuja asentradas são os estados intermediários da rede recorrente. Durante o treinamento do modeloessa camada aprende o nível de importância de cada entrada em uma sequência através de pe-sos, apresentados na Figura 6 denominados αt . O vetor com os pesos de atenção e os estadosintermediários da rede, ht , são submetidos a uma operação de produto escalar cujo os resulta-dos, ct são concatenados para formar o vetor de contexto da sequência (BAHDANAU; CHO;

Page 31: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

2.5. Mecanismos de Atenção em Aprendizado Profundo 29

BENGIO, 2014).

Figura 6 – Modelo Encoder - Decoder para tradução sem (superior) e com (inferior) mecanismo de atenção

Fonte: Loginova (2018).

Page 32: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

30 Capítulo 2. Métodos, Técnicas e Tecnologias Utilizadas

2.6 Redes Hierárquicas com Atenção

Textos podem ser compreendidos como uma estrutura hierárquica, uma sequência de pa-lavras forma uma sentença, uma sequência de sentenças formam um parágrafo e uma sequênciade parágrafos compõem o texto. O modelo de rede de aprendizado profundo HAN, Hierarchical

Attention Networks, faz uso dos elementos hierárquicos de um texto para a geração de um vetorde dados que represente o documento todo (YANG et al., 2016).

Figura 7 – Modelo de arquitetura de aprendizado profundo Rede de hierarquia de atenção.

Fonte: Yang et al. (2016).

Usa-se word embeddings para as palavras de uma sentença como entrada de uma rederecorrente, os estados intermediário dessa rede passam por uma camada com mecanismo deatenção para gerar uma representação vetorial da sentença (YANG et al., 2016; SINGHANIA;FERNANDEZ; RAO, 2017). Esse processo é então repetido para todas as sentenças do docu-mento.

Os vetores associados às sentenças agem como entrada de uma outra rede recorrenteseguida de uma camada de atenção para codificar um vetor de saída que representa as informa-ções do documento, este que é usado em uma camada para classificar o documento (YANG et

al., 2016), a arquitetura completa da rede esquematizada na Figura 7.

Page 33: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

2.7. Word Embeddings e Word2Vec 31

2.7 Word Embeddings e Word2VecRedes neurais aceitam somente entradas numéricas, então para aplicações de texto é

necessário converter esses dados, a forma mais comum é criar representações de palavras emvetores. Métodos tradicionais só atribuem uma combinação de valores distintos para cada pa-lavra distinta, mas esse tipo de codificação não dá nenhum tipo de informação sobre a palavraou sobre palavra similares a ela. Word embeddings são vetores que representam palavras den-tro de um espaço vetorial onde palavras similares se encontram próximas no espaço vetorial epropriedades matemáticas do espaço podem ser usadas para retirar informações sintáticas ousemânticas (MIKOLOV et al., 2013; BANERJEE, 2018). A Figura 8 mostra algumas dessaspropriedades fazendo a projeção dos vetores para um plano. Como exemplo o vetor da palavrarei subtraído do vetor da palavra homem e somado com o vetor da palavra mulher resulta novetor que representa a palavra rainha (BANERJEE, 2018).

Figura 8 – Projeções dos vetores de word embeddings para visualização de alguma propriedades matemáticas.

Fonte: Banerjee (2018).

O primeiro algoritmo para a criação de Word embeddings foi o Word2Vec, proposto porpesquisadores do Google liderados por Thomas Mikolov e revolucionou aplicações de proces-samento de linguagem natural. O algoritmo é treinado sobre uma quantidade muito grande dedados e parte do princípio que é possível encontrar o sentido de uma palavra olhando para aspalavras vizinhas a ela em uma sentença (MIKOLOV et al., 2013).

2.8 Considerações FinaisEste capítulo mostrou as técnicas e conceitos utilizados para a construção do modelo do

classificador de notícias falsas proposto. É importante ressaltar que muitos outros conceitos emodelos diferentes foram estudados para a elaboração deste trabalho com o intuito de escolherum bom classificador, mas somente os conceitos relevantes para o classificador implementadoforam apresentados.

Page 34: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 35: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

33

Capítulo 3

DESENVOLVIMENTO

3.1 Considerações Iniciais

Neste capítulo é apresentado o projeto de forma mais detalhada. É apresentado o basede dados utilizado para treinar e validação do modelo e a especificação da estrutura de camadasdo modelo. A introdução teórica das camadas foi apresentada no capítulo anterior. Tambémsão apresentadas as linguagens, bibliotecas e ferramentas computacionais utilizadas para imple-mentar e treinar do modelo. Por fim são apresentados os resultados obtidos após a avaliação doclassificador.

3.2 O Projeto

O objetivo deste trabalho é obter um classificador que diferencie notícias verdadeirasde notícias falsas usando de técnicas de aprendizado profundo. Conforme discutido, parte-seda hipótese que o conteúdo das fake news é escrito de forma diferente do conteúdo puramentejornalístico, notícias falsas tentam manipular emocionalmente o leitor, portanto o classificadordeve ser capaz de diferenciar o falso do verdadeiro a partir do reconhecimento dessas diferençasusando somente o corpo do texto da notícia com pouco pré-processamento dos dados. Espera-seque com o modelo treinado obtenha-se uma alta performance na identificação de fake news.

Primeiramente é necessário fazer a escolha do base de dados que será usado para treinare validar o classificador proposto. A base de dados deve conter uma grande quantidade denotícias falsas e verdadeiras escritas no idioma português brasileiro, cada notícia deve ter sidopreviamente classificada como falsa ou verdadeira e o número de elementos deve ser divididosde forma balanceada entre conteúdo falso e verdadeiro.

A próxima etapa é fazer a escolha do modelo de rede de aprendizado profundo que seráutilizado na construção do classificador. Ao final de uma avaliação dos modelos disponíveis paraa classificação de texto que usem técnicas de aprendizado profundo, o autor escolheu o modeloque melhor se encaixa dado as limitações de recurso computacional, tempo de treinamento domodelo, desempenho do modelo a possibilidade treinar a rede com o base de dados escolhido.O autor também selecionou o algoritmo para a criação dos word embeddings dentro daquelesdisponíveis na literatura.

Page 36: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

34 Capítulo 3. Desenvolvimento

Após a escolha do modelo, fazer a sua implementação escolhendo das linguagens eferramentas que melhor se adaptem ao problema e então realizar o treinamento do modelo. Porúltimo fazer a experimentação usando do modelo treinado e avaliar o resultado por:

• Acurácia do modelo, total de classificações corretas sobre o total de dados;

• Valor da função de perda do modelo, média entre as diferenças dos valores resposta darede e o valor esperado da classe;

• Tempo de treinamento, de cada época e total;

• Comparação com trabalhos anteriores, comparando com o trabalho desenvolvido por pes-quisadores do NILC para o problema de fake news para a língua portuguesa (MONTEIROet al., 2018), comparando também a acurácia obtida com a acurácia obtida pelo mesmomodelo para a língua inglesa no trabalho 3han a deep neural network for fake news de-

tection(SINGHANIA; FERNANDEZ; RAO, 2017).

3.3 Atividades RealizadasNesta seção, serão descritos os procedimentos realizados durante o desenvolvimento do

projeto. Cada etapa será abordada, no intuito de esclarecer os métodos, ferramentas e recursosutilizados. O autor partiu da hipótese de que é possível classificar notícias falsas automatica-mente usado técnicas de aprendizado profundo, devido a diferenças na forma de escrita entreessas notícias e conteúdo verdadeiro e este trabalho foi realizado com intuito de testar a hipóteseproposta. Para isso a realização do projeto foi dividido nas seguintes atividades:

• Revisão bibliográfica sobre os temas fake news, deep learning e uso de aprendizado demáquina para detecção de fake news;

• Escolher uma base de dados para realizar o treinamento e validação do classificador;

• Explorar técnicas e modelos que seriam utilizados como base para implementação;

• Implementar um classificador baseado em deep learning;

• Realizar o treinamento e a validação do classificador implementado;

• Fazer análise dos resultados obtidos com a validação do classificador.

3.3.1 Escolha da Base de Dados

A busca por uma base de dados que aborda o problema das fake news mostrou que,apesar de existirem muitas bases para o inglês, o tema ainda não foi muito explorado para o por-tuguês. Felizmente foi possível encontrar uma base que atendia aos requisitos propostos neste

Page 37: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

3.3. Atividades Realizadas 35

trabalho. O corpus Fake.br feito pelo projeto Opinando dentro do Núcleo Interinstitucional deLinguística Computacional, ou NILC, reúne 7200 notícias em português, sendo 3600 falsas e3600 verdadeiras, de diversos gêneros (MONTEIRO et al., 2018). O corpus ainda disponibi-liza meta informações sobre cada elemento como autor, link onde foi obtido, gênero e outrasmétricas semânticas e sintáticas (HARTMANN et al., 2017). O NILC é composto por pesquisa-dores na área de computação do Instituto de Ciências de Matemática e Computação (ICMC) daUSP São Carlos e linguistas da Universidade Federal de São Carlos (UFSCar), da UniversidadeEstadual de São Paulo (UNESP) e da Universidade Estadual de Maringá (UEM).

Infelizmente não há uma formatação uniforme para os componentes da base de dados.Ela é composta de texto puros das notícias e um arquivo com as meta informações para cada no-tícias, todos os arquivos são arquivos de texto ‘.txt’. A Figura 9 mostra um exemplo de arquivode texto presente na base.

Figura 9 – Exemplo de notícia falsa presente na base de dados.

3.3.2 Escolha do Modelo de Aprendizado Profundo

Estudando os modelos para a classificação de texto usando técnicas de aprendizado pro-fundo, o autor optou pela escolha do modelo HAN, entre os motivos para esta escolha podemoscitar principalmente:

• O alto desempenho do modelo para a classificação de textos (YANG et al., 2016; SINGHA-NIA; FERNANDEZ; RAO, 2017);

• Trabalhos semelhantes sobre o mesmo problema que usam do modelo para fazer a classi-ficação (SINGHANIA; FERNANDEZ; RAO, 2017; TAMIR, 2018);

• Custo computacional para o treinamento do modelo ser factível dentro das limitações doautor, poder computacional e de limite de tempo para entrega do projeto;

• Fácil implementação com o uso de bibliotecas específicas.

Para o algoritmo usado para a criação dos word embeddings foi escolhido o Word2Vec, poissegundo os pesquisadores do NILC (HARTMANN et al., 2017), ele apresenta um melhor de-sempenho que seus concorrentes para a realização de tarefas com cunho semântico. Além dissohá disponibilidade para conseguir o vocabulário de vetores já treinados.

Page 38: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

36 Capítulo 3. Desenvolvimento

3.3.3 Implementação do Modelo

Para a implementação do modelo, foi escolhido a linguagem Python por causa da grandequantidade de bibliotecas para algoritmos de aprendizado de máquina e aprendizado profundo.Foram utilizadas as bibliotecas Keras e Theano , que disponibilizam diversos algoritmos mo-dulares prontos e já fazem a paralelização automática das operações de matrizes na em GPUatravés da linguagem CUDA. Outras bibliotecas utilizadas foram numpy e pandas para a ma-nipulação dos dados e a biblioteca NLTK para fazer a separação das sentenças e dos tokensdos textos. O pacote languagetool foi utilizado para fazer pequenas correções ortográficas nostextos durante o pré-processamento. Segue uma lista das versões das bibliotecas e linguagensutilizadas:

• python 2.7.12

• cuda 10.1

• numpy 1.16.5

• languagetool 0.3

• pandas 0.13.1

• keras 2.3.1

• theano 1.0.4

• nltk 3.4.5

Para o pré-processamento dos textos foi necessário:

• Fazer a remoção de alguns caracteres não necessários para compreensão do texto que nãosão reconhecidos pelo vocabulário de embeddings como, •, ▷, TM;

• Separar aspas simples e duplas das palavras ligadas a elas, exemplo a mudança de “atraso”para “ atraso ”;

• Fazer a correção de ortografia de algumas sentenças com a ferramenta lenguagetool,exemplo o termo “num” para “em um” .

As alterações foram feitas com objetivo de adequar o texto para que um número menorde tokens não reconhecidos pelo vocabulário pré-treinado de word embeddings fosse utilizado,pois palavras não reconhecidas não adicionam informação a rede, pela implementação essestokens não reconhecidos entram como um vetor de números aleatórios que variam entre -0,25 e0,25, valor escolhido para manter uma variância parecida com os vetores pré-treinados.

Page 39: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

3.3. Atividades Realizadas 37

Figura 10 – Diagrama das camadas do modelo.

A Figura 10 mostra um diagrama das camadas do modelo, as entradas são as setenças dotexto divididas em camadas. As camadas recorrentes fazem uso de redes bidirecionais LSTM.Com exceção da camada de atenção, foram usadas camadas com implementação disponívelpela biblioteca Keras. A lógica da camada de atenção foi implementada usando um template decamada disponibilizado pela biblioteca Keras para melhor integração com as outras camadasutilizadas. A Figura 11 exibe um sumário das camadas da rede.

3.3.4 Treinamento e Validação

O treinamento do modelo foi realizado sobre 80% do base de dados, 5760 textos, sendo2880 notícias verdadeiras e 2880 notícias falsas. O treinamento foi realizado em lotes de 32entradas, quando todos os dados de treinamento passam um vez pelo modelo é chamado deépoca, o treinamento foi feito até que nota-se a convergência do modelo. Foram necessárias 7épocas para atingir um nível de convergência suficiente para o autor, totalizando 1260 iterações.O processo de treinamento durou um total de 115 horas e 12 minutos com tempo médio de 16horas e 27 minutos por época. Durante o treinamento do modelo as especificações da plataformautilizada foram:

• Sistema Operacional : Ubuntu 16.04.6

• Processador: Intel Xeon E5-2630 v2 2.60GHz

Page 40: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

38 Capítulo 3. Desenvolvimento

Figura 11 – Sumário das camadas do modelo emitido pelo Keras.

• Placa de Vídeo: GeForce GTX TITAN Black

• RAM: 16 Gigabytes

A validação do modelo foi feita sobre os 20% restantes da base de dados, e ao final dotreinamento de cada época o modelo é validado e guardado. Um segundo teste de validação foirealizado usando trinta notícias, sendo metade considerada verdadeiras e metade falsas. Essesegundo experimento foi feito com intuito de analisar o desempenho do classificador com en-tradas fora do base de dados. As notícias para esse experimento foram separadas manualmentepelo autor. As notícias consideradas falsas para esse experimento foram tiradas da página daAgência Lupa. As consideradas verdadeiras foram retiradas do página da Folha de São Paulo.Como nos casos de treinamento e validação foi usado somente corpo textual das notícias.

3.4 Resultados

Após cada época durante o treinamento foram medidos os valores de perda e acurá-cia para os dados de treinamento e de validação. Os resultados obtidos para o treinamento emsete épocas são mostrados nos gráficos em Figura 12 e Figura 13 , o classificador apresentoudesempenho alto para os elementos dentro do base de dados, tanto para o conjunto de treina-mento quanto para o conjunto de validação, conseguindo nesse último um recorde de 95,35%de acerto.

Para a época 6, que teve os melhores resultados em função da acurácia 95,35%, abrimosos conjuntos de treinamento e validação em métricas de verdadeiro positivo, falso positivo,

Page 41: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

3.4. Resultados 39

Figura 12 – Valores da função de perda do modelo em relação as épocas de treinamento, em azul valores para oconjunto de treinamento e em vermelho para o conjunto de validação.

Figura 13 – Acurácia do modelo em relação as épocas de treinamento, em azul valores para o conjunto de treina-mento e em vermelho para o conjunto de validação.

verdadeiro negativo e falso negativo. Os números para essas métricas se encontram na Tabela 1.

Tabela 1 – Resultado de validação da época 6.

Predito \Real Verdadeiro FalsoVerdadeiro 2704 176

Falso 92 2788Fonte: Dados da pesquisa.

Accuracy = 2704+27882704+176+92+2788 = 95,35%

Precision true = 27042704+176 = 93,89%

Precision f alse = 27882788+92 = 96,80%

Recall true = 27042704+92 = 96,71%

Recall f alse = 27882788+176 = 94,06%

Page 42: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

40 Capítulo 3. Desenvolvimento

Compara-se essas métricas com os resultados obtidos pelo trabalho do NILC usando oalgoritmo Bag of Words + all text features (MONTEIRO et al., 2018) na Tabela 2. Já a tabelaTabela 3 compara a acurácia do algoritmo HAN implementado com o mesmo algoritmo usadopara o mesmo problema na língua inglesa (SINGHANIA; FERNANDEZ; RAO, 2017)

Tabela 2 – Comparação dos resultados encontrados com (MONTEIRO et al., 2018).

Algoritmo Precisãoverdadeiros

Precisãofalsos

Revocaçãoverdadeiros

Revocaçãofalsos

Acurácia

Bag of Words +all text features

0.89 0.89 0.89 0.89 0.89

HAN 0.94 0.97 0.97 0.94 0.95Fonte: Dados da pesquisa.

Tabela 3 – Comparação dos resultados encontrados com (SINGHANIA; FERNANDEZ; RAO, 2017).

Algoritmo AcuráciaHAN inglês 95,4%

HAN português 95,35%Fonte: Dados da pesquisa.

Fazendo a experimentação com notícias fora da base de dados o classificador obteveresultados mais modestos, para um conjunto pequeno de 30 notícias onde 15 eram consideradasfalsas e 15 verdadeiras o modelo obteve 73,33% de acerto com mais detalhes apresentados naTabela 4.

Tabela 4 – Resultado de validação para entradas fora da base de dados.

Predito \Real Verdadeiro FalsoVerdadeiro 9 6

Falso 2 13Fonte: Dados da pesquisa.

Accuracy = 9+1330 = 73,33%

Precision true = 99+6 = 60%

Precision f alse = 1313+2 = 86,67%

Recall true = 99+2 = 81,81%

Recall f alse = 1313+6 = 68,42%

Talvez os resultados que melhor indicam se o classificador está realmente reconhecendopadrões que diferenciam notícias falsas de verdadeiras possam ser extraídos da análise dos ma-pas de calor usados para medir a importância de cada palavra na hora da classificação. Exemplosde mapas gerados são apresentados nas Figura 14, Figura 15 e Figura 16 que mostram os mapas

Page 43: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

3.4. Resultados 41

para uma notícia falsa e duas verdadeiras respectivamente. Pode-se notar que palavra com teormais sensacionalista se destacam na hora da classificação. A notícia da Figura 15 mostra umcaso que ficou perto do limiar de classificação. Nela o mapa de calor mostra áreas que levam aacreditar a notícia seria falsa mas, ela foi corretamente classificada como verdadeira. O classifi-cador dá como resposta um valor de 0 a 1, sendo 1 totalmente verdadeiro e 0 totalmente falso. Anotícia da Figura 15 atingiu uma pontuação 0,64 de saída, ou seja há um alto grau de incertezano seu resultado.

Figura 14 – Mapa de calor obtido com os pesos de atenção para as palavras e as frases em uma notícia falsa compredição correta.

Figura 15 – Mapa de calor obtido com os pesos de atenção para as palavras e as frases em uma notícia verdadeiracom predição correta mas imprecisa.

O autor notou que o classificador sempre parece dar mais importância para as fraseiniciais da notícia e que para textos muito longos o classificador sempre acabava classificadocomo verdadeiros, isso talvez possa ser explicado pelo fato de que os textos mais longos da basede dados são todos verdadeiros enquanto a maioria das notícias falsas tendem a ser mais curtasdentro do corpus utilizado. O que também pode ter explicado o baixo desempenho quando

Page 44: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

42 Capítulo 3. Desenvolvimento

Figura 16 – Mapa de calor obtido com os pesos de atenção para as palavras e as frases em uma notícia verdadeiracom predição correta e precisa

aplicado nas notícias de escolha do autor, que tentou separar artigos de mesmo tamanho erelativamente longos.

3.5 Dificuldades e LimitaçõesEntre as limitações encontradas vale a pena citar a falta de bases de dados de notícias

que abordam o problema das notícias falsas no português do Brasil. Também a falta de mode-los pré-treinados para o português de técnicas mais recentes de processamento de linguagemnatural, como ELMO e BERT por exemplo. Tais algoritmos requerem um custo computacionalmuito alto para ser treinado pelo autor dentro do prazo de entrega do projeto. Uma dificuldadeencontrada foi o tempo para treinar os modelos e conseguir acesso a recursos computacionaissuficientes para treinar o modelo.

3.6 Considerações FinaisO classificador final construído atingiu as expectativas para o projeto, conseguindo re-

sultados equiparáveis com outros modelos considerados estado da arte para o problema das fake

news na língua inglesa. A escolha do modelo utilizado e sua implementação foram feitos com ointuito de obter o melhor classificador possível. No capítulo mostrou-se como o classificador denotícias falsas foi construído, treinado e avaliado e mostrou-se também os resultados atingidosapós a experimentação.

Page 45: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

43

Capítulo 4

CONCLUSÃO

Este trabalho foi desenvolvido com o objetivo de construir um classificador de notíciasfalsas para o português do Brasil usando técnicas de deep learning. O classificador deveria serconstruído de forma a usar somente o corpo textual das notícias e usar pouco pré-processamentode dados. O modelo HAN foi utilizado para construir o classificador. Após o treinamento e avalidação do classificador proposto os resultados foram apresemtado no capítulo anterior. Osresultados obtidos mostraram-se satisfatórios e alinhados com os objetivos propostos, o classi-ficador obteve um alto desempenho dentro da base de dados escolhida e trabalhou com poucopré-processamento de dados.

4.1 Contribuições

O autor acredita que os resultados obtidos são uma contribuição relevante visto quenão foram encontrados pelo autor outros trabalhos com números parecidos para o problema declassificação de fake news para o português do Brasil. Mas a contribuição mais importante é ofomento para a discussão científica e possível resolução do problema da disseminação de notí-cias falsas na rede no cenário nacional. O Brasil é igualmente afetado por esse problema quandocomparado aos países de língua inglesa mas estamos muito mais distantes de uma solução.

Acredita-se que futuramente o modelo projetado possa fazer parte de um conjunto dealgoritmos de mesma finalidade que componham um aplicativo que identifique notícias falsascom alta precisão, aplicativo esse que possa ser popularizado causando um impacto social po-sitivo promovendo a diminuição da desinformação. Como contribuição pessoal o trabalho deua oportunidade do autor aprender mais sobre aprendizado de máquina e aprendizado profundo,temas de pouco domínio previamente ao trabalho.

4.2 Relacionamento entre Curso e o projeto

O autor do trabalho, apesar de ter interesse na área, não cursou as disciplinas de apren-dizado de máquina e aprendizado profundo oferecidas como optativas durante o curso. O temado trabalho foi escolhido justamente para que houvesse a oportunidade de se aprofundar nestaárea.

Page 46: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

44 Capítulo 4. Conclusão

Foi por meio de atividades ligadas ao curso de graduação, como semana do curso eextracurriculares, que o interesse pela área de inteligência computacional surgiu. Além disso,foi através do curso de Engenharia de Computação que o autor desenvolveu as habilidades deprogramação e a paixão por programar.

4.3 Considerações sobre o Curso de Graduação

O curso de Engenharia de Computação ministrado pela USP - São Carlos é um cursode excelência no cenário nacional. A infraestrutura dos laboratórios, o excelente currículo dosprofessores e a possibilidades abertas para os alunos fora das salas de aula, como pesquisa,extracurriculares e outras atividades que tornam o ambiente acadêmico muito mais proveitososão exemplos de diferenciais que fazem a Universidade de São Paulo ser considerada por muitosrankings como a melhor do país. Aos alunos ingressantes vale dizer para usarem e exploraremtudo que a universidade oferece.

Mas há problemas que o autor considera sérios dentro do curso. O curso de Engenhariade computação possui um currículo de matérias obrigatórias muito elevado. Há a impressãoque não se existe um plano de diferenciação de áreas para os alunos dentro do curso, ao tentardiversificar os caminhos dos alunos com matérias optativas o curso não abre mão de matériasobrigatórias que vão além do nível introdutório em várias áreas tornando o curso desnecessa-riamente pesado. Outra ponto para crítica aberto aqui é em relação à falta de aulas práticasorientadas para projetos no curso, os laboratórios não são usados com a frequência que pode-riam ser, como fã do ensino através da prática o autor entende que essa pode ser somente suaopinião.

Em relação a Universidade o autor opina que a instituição não aproveita dos gruposextracurriculares que têm os incentivos e patrocínio para esses grupos deveriam ser maiores ealém disso devia-se fazer que a participação nesses grupos contassem como créditos eletivos docurrículo.

De modo geral as críticas fazem parte do processo contínuo de melhoria do curso, e porfim o autor considera-se satisfeito por fazer parte deste curso.

4.4 Trabalhos Futuros

Este projeto foi proposto com o objetivo amplo de construir um classificador para notí-cias falsas fazendo uso de técnicas de aprendizado profundo, sem saber exatamente o modeloque seria utilizado e como se daria essa escolha. Durante o processo de escolha do modelo oautor deparou-se com técnicas promissoras na classificação de texto mas que acabaram ficandofora do projeto devido a limitações de tempo e recurso computacional. Propunha-se então, incre-mentar o classificador montado fazendo o uso do algoritmo ELMO, que assim com o Word2Vec

Page 47: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

4.4. Trabalhos Futuros 45

é responsável por criar word embeddings, mas com um paradigma diferente aparenta dar maisinformações sobre o contexto da palavra naquela situação de uso. Outra possibilidade é o usodo algoritmo transformador BERT para fazer a etapa final de classificação a partir do vetor con-texto do documento gerado pelo HAN. Também há o interesse de desenvolver uma aplicaçãopara a detecção de fake news que possa ser usada em larga escala.

Page 48: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam
Page 49: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

47

REFERÊNCIAS

ALLCOTT, H.; GENTZKOW, M. Social media and fake news in the 2016 election. In: . [S.l.:s.n.], 2017. Citado na página 19.

BAHDANAU, D.; CHO, K.; BENGIO, Y. Neural machine translation by jointly learning toalign and translate. CoRR, abs/1409.0473, 2014. Citado 2 vezes nas páginas 28 e 29.

BANERJEE, S. Word2Vec, a baby step in Deep Learningbut a giant leap towards Natural Language Processing. 2018.Disponível em: <https://medium.com/explore-artificial-intelligence/word2vec-a-baby-step-in-deep-learning-but-a-giant-leap-towards-natural-language\-processing-40fe4e8602ba>. Acesso em: 14/10/2019. Citado na página 31.

BASHEER, I. A.; HAJMEER, M. N. Artificial neural networks: fundamentals, computing, de-sign, and application. Journal of microbiological methods, v. 43 1, p. 3–31, 2000. Citado 2vezes nas páginas 24 e 26.

GOODFELLOW, I.; BENGIO, Y.; COURVILLE, A. Deep Learning. MIT Press, 2016. Dispo-nível em: <http://www.deeplearningbook.org>. Citado na página 25.

GRICE, A. Fake news handed Brexiteers the referendum, and now they have noidea what they’re doing. 2017. Disponível em: <https://www.independent.co.uk/voices/michael-gove-boris-johnson-brexit-eurosceptic-press-theresa-may-a7533806.html>. Acessoem: 11/10/2019. Citado na página 19.

GUDIKANDULA, P. Recurrent Neural Networks and LSTM explai-ned. 2019. Disponível em: <https://medium.com/@purnasaigudikandula/recurrent-neural-networks-and-lstm-explained-7f51c7f6bbb9>. Acesso em: 15/10/2019.Citado 3 vezes nas páginas 26, 27 e 28.

HARTMANN, N.; FONSECA, E. R.; SHULBY, C.; TREVISO, M. V.; RODRIGUES, J. S.;ALUÍSIO, S. M. Portuguese word embeddings: Evaluating on word analogies and natural lan-guage tasks. In: STIL. [S.l.: s.n.], 2017. Citado na página 35.

HOCHREITER, S.; SCHMIDHUBER, J. Long short-term memory. Neural Computation, v. 9,p. 1735–1780, 1997. Citado na página 27.

LAMBA, H. Intuitive Understanding of Attention Mechanism inDeep Learning. 2019. Disponível em: <https://towardsdatascience.com/intuitive-understanding-of-attention-mechanism-in-deep-learning-6c9482aecf4f>. Acessoem: 17/10/2019. Citado na página 28.

LEE, C. Understanding Bidirectional RNN in PyTorch. 2017. Disponível em: <https://towardsdatascience.com/understanding-bidirectional-rnn-in-pytorch-5bd25a5dd66>. Acessoem: 27/10/2019. Citado na página 27.

Page 50: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

48 Referências

LOGINOVA, K. Attention in NLP. 2018. Disponível em: <https://medium.com/@joealato/attention-in-nlp-734c6fa9d983>. Acesso em: 27/10/2019. Citado na página 29.

MANJOO, F. How the Internet Is Loosening Our Grip on the Truth.2016. Disponível em: <https://www.nytimes.com/2016/11/03/technology/how-the-internet-is-loosening-our-grip-on-the-truth.html?smid=pl-share>. Acesso em:18/10/2019. Citado na página 24.

MERELES, C.; MORAES, I. Notícias falsas e pós-verdade: o mundo das fakenews e da (des)informação. 2017. Disponível em: <https://www.politize.com.br/noticias-falsas-pos-verdade/>. Acesso em: 20/10/2019. Citado 2 vezes nas páginas 19e 24.

MIKOLOV, T.; CHEN, K.; CORRADO, G. S.; DEAN, J. Efficient estimation of word represen-tations in vector space. CoRR, abs/1301.3781, 2013. Citado na página 31.

MITTAL, S. Deep Learning Techniques for Text Classificati-one. 2019. Disponível em: <https://medium.com/datadriveninvestor/deep-learning-techniques-for-text-classification-9392ca9492c7>. Acesso em: 15/10/2019.Citado 2 vezes nas páginas 20 e 25.

MONTEIRO, R. A.; SANTOS, R. L. S.; PARDO, T. A. S.; ALMEIDA, T. A. de; RUIZ, E. E. S.;VALE, O. A. Contributions to the study of fake news in portuguese: New corpus and automaticdetection results. In: Computational Processing of the Portuguese Language. [S.l.]: SpringerInternational Publishing, 2018. p. 324–334. ISBN 978-3-319-99722-3. Citado 5 vezes naspáginas 15, 20, 34, 35 e 40.

PEREIRA, P.; TOLEDO, L.; MONNERAT, A. Disseminação de fake news para ata-car candidatos marca eleição. 2018. Disponível em: <https://exame.abril.com.br/brasil/disseminacao-de-fake-news-para-atacar-candidatos-marca-eleicao/>. Acesso em: 10/10/2019.Citado na página 19.

SHARIATMADARI, D. Could language be the key to detecting fake news?2019. Disponível em: <https://www.theguardian.com/commentisfree/2019/sep/02/language-fake-news-linguistic-research>. Acesso em: 10/10/2019. Citado na página19.

SINGHANIA, S.; FERNANDEZ, N.; RAO, S. 3han a deep neural network for fake news detec-tion. In: ICONIP. [S.l.: s.n.], 2017. Citado 7 vezes nas páginas 15, 20, 21, 30, 34, 35 e 40.

SIVEK, S. C. Both facts and feelings: Emotion and news literacy. In: Proceedings of the 2016Conference of the North American Chapter of the Association for Computational Lin-guistics: Human Language Technologies. Journal of Media Literacy Education, 2018. p. 123–138. Disponível em: <https://digitalcommons.uri.edu/jmle/vol10/iss2/7>. Citado 2 vezes naspáginas 19 e 23.

TAMIR, M. How to use Deep Learning to solve the Fake News Problem. 2018. Dispo-nível em: <https://mlconf.com/sessions/how-to-use-deep-learning-to-solve-the-fake-news-p/>.Acesso em: 29/07/2019. Citado 3 vezes nas páginas 20, 21 e 35.

VOSOUGHI, S.; ROY, D.; ARAL, S. The spread of true and false news online. Science, v. 359,p. 1146–1151, 2018. Citado 3 vezes nas páginas 19, 23 e 24.

Page 51: UNIVERSIDADE DE SÃO PAULO...Esse conteúdo é escrito com a intenção de provocar fortes reações emocionais no leitor, sentimentos como raiva, indignação e frustração dificultam

Referências 49

YANG, Z.; YANG, D.; DYER, C.; HE, X.; SMOLA, A.; HOVY, E. Hierarchical attentionnetworks for document classification. In: Proceedings of the 2016 Conference of the NorthAmerican Chapter of the Association for Computational Linguistics: Human LanguageTechnologies. San Diego, California: Association for Computational Linguistics, 2016. p.1480–1489. Disponível em: <https://www.aclweb.org/anthology/N16-1174>. Citado 3 vezesnas páginas 20, 30 e 35.