• Nenhum resultado encontrado

FUNDAÇÃO GETULIO VARGAS ESCOLA DE ADMINISTRAÇÃO DE EMPRESAS DE SÃO PAULO MAURICIO NODA

N/A
N/A
Protected

Academic year: 2021

Share "FUNDAÇÃO GETULIO VARGAS ESCOLA DE ADMINISTRAÇÃO DE EMPRESAS DE SÃO PAULO MAURICIO NODA"

Copied!
119
0
0

Texto

(1)

MAURICIO NODA

LEVANTAMENTO DE INDICADORES ATRAVÉS DE DATA MINING, LATENT DIRICHLET ALLOCATION E TF-IDF

SÃO PAULO - SP 2020

(2)

LEVANTAMENTO DE INDICADORES ATRAVÉS DE DATA MINING, LATENT DIRICHLET ALLOCATION E TF-IDF

Dissertação apresentada à Escola de Administração de Empresas de São Paulo, da Fundação Getulio Vargas, em cumprimento parcial dos requisitos para obtenção do título de Mestre em Administração Empresas.

Linha de Pesquisa: Business Analytics Orientador: Prof. Dr. Antonio Gelis Filho

SÃO PAULO - SP

(3)

Noda, Mauricio.

Levantamento de indicadores através de data mining, Latent Dirichlet Allocation e TF-IDF / Mauricio Noda. - 2020.

119 f.

Orientador: Antonio Gelis Filho.

Dissertação (mestrado profissional MPA) – Fundação Getulio Vargas, Escola de Administração de Empresas de São Paulo.

1. Processamento da linguagem natural (Computação). 2. Mineração de dados (Computação). 3. Recuperação da informação. 4. Administração de empresas. I. Gelis Filho, Antonio. II. Dissertação (mestrado profissional MPA) – Escola de Administração de Empresas de São Paulo. III. Fundação Getulio Vargas. IV. Título.

CDU 007.522.2

(4)

LEVANTAMENTO DE INDICADORES ATRAVÉS DE DATA MINING, LATENT DIRICHLET ALLOCATION E TF-IDF

Dissertação apresentada à Escola de Administração de Empresas de São Paulo, da Fundação Getulio Vargas, em cumprimento parcial dos requisitos para obtenção do título de Mestre em Administração Empresas.

Linha de Pesquisa: Business Analytics

Data de avaliação: 07/12/2020 Banca examinadora:

_____________________________

Prof. Dr.Antonio Gelis Filho (Orientador) FGV-EAESP

_____________________________

Prof. Dr. Gustavo Correa Mirapalheta FGV-EAESP

_____________________________

Prof. Dr. João Francisco Justo Filho IEA-USP

_____________________________ Me. Marcos Damasceno

(5)

À minha família, a meus pais por terem me apoiado nos meus estudos do início da educação básica até o fim da graduação. Também ao meu cunhado, que trilhou o caminho do mestrado antes de mim e orientou-me.

Ao orientador, Prof. Dr. Antonio Gelis Filho, e ao coorientador, Prof. Dr. Gustavo Correa Mirapalheta, por terem me orientado do início ao fim do mestrado. Também aos Prof. Dr. João Francisco Justo Filho e Me. Marcos Damasceno, pelas participações na banca.

Aos coordenadores e a todos os professores que formaram o corpo docente do curso de Mestrado em Administração em Empresas. A toda a equipe de apoio da Fundação Getulio Vargas. E também aos colegas do curso de mestrado.

Aos sistemas de buscas de publicações acadêmicas EBSCO e Microsoft Academic, pelas inúmeras publicações que puderam ser localizadas. Também ao sistema de buscas Google.

À enciclopédia on-line Wikipedia e suas inúmeras referências a publicações.

Aos autores das publicações que foram citadas nas referências e serviram de base teórica para esta dissertação. E também a toda comunidade científica.

(6)

“É um truísmo dizer que 80 por cento das informações relevantes para os negócios se originam de forma não estruturada, principalmente texto.” (GRIMES, 2008)

(7)

A pesquisa visou identificar aplicações de técnicas de Processamento de Linguagem Natural (NLP) na prática de administração de empresas. Técnicas de NLP visam à análise automatizada de documentos escritos em linguagem natural, sem uma padronização das informações exibidas. Entre elas, duas técnicas destinadas à Recuperação de Informação foram utilizadas. Uma técnica específica, a Alocação de Dirichlet Latente (LDA) mostrou-se eficaz na classificação automática de relatórios de administração, agrupando-os por similaridade. Uma segunda técnica, busca de palavras por TF-IDF, revelou-se eficaz na identificação automatizada de grupos de documentos com indicadores desejados, em sua maioria, de natureza financeira. Uma terceira técnica, Mineração de Dados, foi combinada às duas primeiras para automatizar a coleta em massa de relatórios do repositório da CVM. O resultado combinado das três técnicas foi, a partir de uma palavra-chave de escolha e um grande repositório remoto de relatórios da CVM, o de conseguir localizar automaticamente documentos específicos contendo indicadores financeiros desejados, em meio a centenas de milhares de outros documentos. A busca automatizada desses documentos, que, de outra forma, poderiam ter sido ignorados devido ao excesso de dados a serem analisados, pode contribuir para a melhoria da prática administrativa.

Palavras-chave: Mineração de Dados. Mineração de Texto. Processamento de Linguagem

Natural. Recuperação de Informação. Modelagem de Tópicos. Alocação de Dirichlet Latente. TF-IDF.

(8)

This research aimed at identifying applications of Natural Language Processing (NLP) techniques in the practice of business administration. NLP techniques aim at automated analysis of documents written in natural language, without any standardization of displayed information. Among the applications, two techniques for Information Retrieval were used. One specific technique, the Latent Dirichlet Allocation (LDA) was shown to be effective for automatically classifying administrative reports, grouping them by similarity. A second technique, keywords search based on TF-IDF, was shown to be effective in automatically identifying groups of documents with desired indicators, the majority being of financial nature. A third technique, Data Mining, was combined with the first two, to automate a mass collection of reports from the CVM repository. The combined result of the three techniques was, from a keyword of choice and a big remote CVM repository of reports, to be able to automatically locate specific documents containing desired indicators, among hundreds of thousands of other documents. The automated search of these documents that, otherwise, could have been ignored due to the excess of data to be analyzed, can contribute to the improvement of the business administration practice.

Keywords: Data Mining. Text Mining. Natural Language Processing. Information Retrieval.

(9)

Gráfico 1 - Log-verossimilhança/token no eixo vertical. Iterações no eixo horizontal ... 43

Gráfico 2 - Distância entre a Log-verossimilhança/token atual e a máxima observada anteriormente no eixo vertical. Iterações no eixo horizontal... 44

Gráfico 3 - Log-verossimilhança/token no eixo vertical. Iterações em escala logarítmica no eixo horizontal ... 45

Gráfico 4 - Distância entre a Log-verossimilhança/token atual e a máxima observada anteriormente no eixo vertical. Iterações no eixo horizontal... 46

Figura 1 - Diagrama de atividade UML exibindo a sequência de etapas com todas as técnicas combinadas ... 31

Figura 2 - Página 11 do terceiro documento mais relevante do tópico 7 ... 48

Figura 3 - Página 11 do quinto documento mais relevante do tópico 5 ... 50

Figura 4 - Página 1 do documento mais relevante do tópico 195 ... 52

Figura 5 - Página 1 do documento mais relevante do tópico 138 ... 54

Figura 6 - Tag Cloud do tópico 0 com os 115 termos de maior TF-IDF ... 77

Figura 7 - Tag Cloud do tópico 1 com os 123 termos de maior TF-IDF ... 79

Figura 8 - Tag Cloud do tópico 2 com os 102 termos de maior TF-IDF ... 81

Figura 9 - Tag Cloud do tópico 3 com os 124 termos de maior TF-IDF ... 83

Figura 10 - Tag Cloud do tópico 4 com os 104 termos de maior TF-IDF ... 85

Figura 11 - Tag Cloud do tópico 5 com os 107 termos de maior TF-IDF ... 87

Figura 12 - Tag Cloud do tópico 6 com os 98 termos de maior TF-IDF ... 89

Figura 13 - Tag Cloud do tópico 7 com os 107 termos de maior TF-IDF ... 91

Figura 14 - Tag Cloud do tópico 8 com os 104 termos de maior TF-IDF ... 93

Figura 15 - Tag Cloud do tópico 9 com os 107 termos de maior TF-IDF ... 95

Figura 16 - Tag Cloud do tópico 195 com os 104 termos de maior TF-IDF ... 108

Figura 17 - Tag Cloud do tópico 138 com os 92 termos de maior TF-IDF ... 117

Quadro 1 - Regras de expressão regular relevantes ... 23

Quadro 2 - Hiperparâmetros da Modelagem de Tópicos ... 38

(10)

Quadro 6 - Tópicos com maior TF-IDF dos termos “receita da companhia" ... 49

Quadro 7 - Tópicos com maior TF-IDF dos termos “ética" ... 49

Quadro 8 - 10 tópicos com maior TF-IDF para o termo “receita” ... 51

Quadro 9 - 10 tópicos com maior TF-IDF para o termo “receita da companhia” ... 53

Quadro 10 - 10 tópicos com maior TF-IDF para o termo “ética” ... 53

Quadro 11 - Categorias da CVM mais comuns associadas a geração de 10 tópicos ... 62

Quadro 12 - 10 termos do tópico 0 de maior TF-IDF ... 77

Quadro 13 - 10 documentos do tópico 0 com maior proporção ... 78

Quadro 14 - 10 termos do tópico 1 de maior TF-IDF ... 78

Quadro 15 - 10 documentos do tópico 1 com maior proporção ... 80

Quadro 16 - 10 termos do tópico 2 com maior TF-IDF ... 80

Quadro 17 - 10 documentos do tópico 2 com maior proporção ... 82

Quadro 18 - 10 termos do tópico 3 com maior TF-IDF ... 83

Quadro 19 - 10 documentos do tópico 3 com maior proporção ... 84

Quadro 20 - 10 termos do tópico 4 com maior TF-IDF ... 85

Quadro 21 - 10 documentos do tópico 4 com maior proporção ... 86

Quadro 22 - 10 termos do tópico 5 com maior TF-IDF ... 86

Quadro 23 - 10 documentos do tópico 5 com maior proporção ... 88

Quadro 24 - 10 termos do tópico 6 com maior TF-IDF ... 89

Quadro 25 - 10 documentos do tópico 6 com maior proporção ... 90

Quadro 26 - 10 termos do tópico 7 com maior TF-IDF ... 91

Quadro 27 - 10 documentos do tópico 7 com maior proporção ... 92

Quadro 28 - 10 termos do tópico 8 com maior TF-IDF ... 93

Quadro 29 - 10 documentos do tópico 8 com maior proporção ... 94

Quadro 30 - 10 termos do tópico 9 com maior TF-IDF ... 94

Quadro 31 - 10 documentos do tópico 9 com maior proporção ... 96

Quadro 32 - Tópicos 0 a 41 com os 10 termos de maior TF-IDF ... 97

Quadro 33 - Tópicos 42 a 81 com os 10 termos de maior TF-IDF ... 98

Quadro 34 - Tópicos 82 a 123 com os 10 termos de maior TF-IDF ... 99

Quadro 35 - Tópicos 124 a 164 com os 10 termos de maior TF-IDF ... 100

Quadro 36 - Tópicos 165 a 205 com os 10 termos de maior TF-IDF ... 101

(11)

Quadro 40 - Tópicos com maior TF-IDF para o termo “receita” ... 105

Quadro 41 - Tópicos com maior TF-IDF para o termo “receita” ... 106

Quadro 42 - Tópicos com maior TF-IDF para o termo “receita” ... 107

Quadro 43 - 10 termos de maior TF-IDF para o tópico 195... 107

Quadro 44 - 10 documentos do tópico 195 com maior proporção ... 109

Quadro 45 - Tópicos com maior TF-IDF para o termo “receita da companhia”... 110

Quadro 46 - Tópicos com maior TF-IDF para o termo “receita da companhia”... 111

Quadro 47 - Tópicos com maior TF-IDF para o termo “receita da companhia”... 112

Quadro 48 - Tópicos com maior TF-IDF para o termo “receita da companhia”... 113

Quadro 49 - Tópicos com maior TF-IDF para o termo “receita da companhia”... 114

Quadro 50 - Tópicos com maior TF-IDF para o termo “ética” ... 115

Quadro 51 - Tópicos com maior TF-IDF para o termo “ética” ... 116

Quadro 52 - 10 termos de maior TF-IDF para o tópico 138... 116

Quadro 53 - 10 documentos do tópico 138 com maior proporção ... 118

Quadro 54 - 10 tópicos com as palavras de maior contagem (sem pré-filtragem de palavras de parada) ... 118

Quadro 55 - 10 tópicos com as palavras de maior TF-IDF (sem pré-filtragem de palavras de parada) ... 119

Quadro 56 - 10 tópicos com as palavras de maior PWI (sem pré-filtragem de palavras de parada) ... 119

(12)

AGE Assembleia Geral Extraordinária AGO Assembleia Geral Ordinária

AGO/E Assembleia Geral Ordinária e Assembleia Geral Extraordinária

AWS Amazon Web Services

CRP Chinese Restaurant Process

CVM Comissão de Valores Mobiliários

DFP Demonstrações Financeiras Padronizadas FGV Fundação Getulio Vargas

EAESP Escola de Administração de Empresas de São Paulo

EBITDA Earning Before Interests, Taxes, Depreciation and Amortization

GHz GigaHertz

HLDA Hierarchical Latent Dirichlet Allocation

HTTPS Hyper Text Transfer Protocol Secure

IEA Instituto de Estudos Avançados LDA Latent Dirichlet Allocation

LL Log-Likelihood

NLP Natural Language Processing

OCR Optical Character Recognition

PDF Portable Document Format

PWI Probability-Weighted amount of Information

TF-IDF Term Frequency - Inverse Document Frequency

UML Unified Modeling Language

(13)
(14)

α Hiperparâmetro alfa β Hiperparâmetro beta

λ Hiperparâmetro gama

Γ Produto de Euler

(15)

1 INTRODUÇÃO ... 18

2 TEORIA ... 20

2.1 ASPECTOS HISTÓRICOS DO PROCESSAMENTO DE LINGUAGEM NATURAL ... 20

2.2 O ESTADO DA ARTE E CONTRIBUIÇÕES SEMINAIS ... 21

2.3 GRANDES QUESTÕES ... 21

2.4 CONCEITOS TÉCNICOS DO PROCESSAMENTO DE LINGUAGEM NATURAL ... 22 2.4.1 Tokenização ... 22 2.4.2 Expressão regular ... 22 2.4.3 Palavras de parada ... 23 2.4.4 Pré-proccessamento de textos... 23 2.4.5 N-gramas ... 24 2.4.6 Vetorização... 25 2.4.7 Bag-of-Words ... 25 2.4.8 Análise de Cluster ... 25 2.4.9 Topic Modeling ... 25 2.4.10 Distribuição Dirichlet-Multinomial ... 26

2.4.11 Latent Dirichlet Allocation (LDA) ... 26

2.5 GIBBS SAMPLING ... 27

2.5.1 TF-IDF ... 28

2.5.2 Tag Cloud ... 29

2.5.3 Recuperação de informação ... 29

(16)

3.2 DESCRIÇÃO DOS MÉTODOS ... 35

3.2.1 Coleta de dados ... 35

3.2.2 Análise dos dados e Recuperação de Informação... 37

4 RESULTADOS ... 42

4.1 COLETA DE DADOS ... 42

4.2 ANÁLISE DO PROGRESSO DA VEROSSIMILHANÇA DO LDA PARA 10 TÓPICOS ... 43

4.3 ANÁLISE DO PROGRESSO DA VEROSSIMILHANÇA DO LDA PARA 300 TÓPICOS ... 44

4.4 VISUALIZAÇÃO DA GERAÇÃO DOS 10 TÓPICOS ... 46

4.5 BUSCA POR PALAVRAS-CHAVE E TÓPICOS MAIS RELEVANTES PARA A GERAÇÃO DE 10 TÓPICOS ... 47

4.6 VISUALIZAÇÃO DA GERAÇÃO DE 300 TÓPICOS ... 50

4.7 BUSCA POR PALAVRAS-CHAVE E TÓPICOS MAIS RELEVANTES PARA A GERAÇÃO DE 300 TÓPICOS ... 50

4.8 RESUMO DE TENTATIVAS COM RESULTADO INSATISFATÓRIO... 54

4.8.1 Detecção automática de palavras de parada ... 55

4.8.2 Detecção automática de quantidade ótima de tópicos ... 56

4.8.3 Sondagem de tokens com valor numérico ... 57

5 DISCUSSÃO ... 58

5.1 CONTRAPOSIÇÃO TEORIA E RESULTADOS ... 58

5.2 INTERPRETAÇÃO DO SIGNIFICADO QUALITATIVO DE CADA TÓPICO ... 61

5.3 INTERPRETAÇÃO DO TÓPICO MAIS RELEVANTE ENCONTRADO NA RECUPERAÇÃO DA INFORMAÇÃO ... 63

(17)

5.6 GRANULARIDADE DAS GERAÇÕES DE TÓPICOS PARA K=10 E K=300 ... 64

5.7 LEVANTAMENTO DE INDICADORES A PARTIR DAS TÉCNICAS EMPREGADAS ... 65

5.8 COMBINAÇÃO DE TÉCNICAS DE RECUPERAÇÃO DA INFORMAÇÃO BASEADAS EM MODELAGEM DE TÓPICOS E TÉCNICAS DE CONSULTAS TRADICIONAIS... 66

5.9 CONTRIBUIÇÃO PARA A PRÁTICA ADMINISTRATIVA ... 66

6 CONCLUSÃO ... 68

REFERÊNCIAS ... 71

(18)

1 INTRODUÇÃO

A análise de relatórios de diversos tipos é uma prática comum na administração de empresas. No caso específico de investidores no mercado de capitais, muitos relatórios destinados a este público são disponibilizados pelas empresas e ficam armazenados no repositório de relatórios da Comissão de Valores Mobiliários. A pesquisa relatada nesta dissertação centrou-se no uso de técnicas de Processamento de Linguagem Natural (NLP) para auxiliar na análise destes relatórios.

O campo de estudos de NLP compõe uma vasta gama de técnicas. E o que todas elas têm em comum é a análise automatizada de textos escritos em linguagem natural, que são textos redigidos por seres humanos e, usualmente, destinados a serem lidos por outros seres humanos. Esses textos, em linguagem natural, não têm nenhuma padronização em sua formatação, tornando qualquer tipo de análise automatizada um desafio em si.

No caso dos relatórios destinados a gestores financeiros, houve um esforço na padronização da formatação desses relatórios, um resultado notável desse esforço são as Demonstrações Financeiras Padronizadas (DFPs), que exibem os dados formatados em tabelas padronizadas. Essas tabelas podem ser lidas de forma automatizada, usando algoritmos tradicionais, em massa e para muitas empresas ao mesmo tempo, e isso viabiliza a geração de listas de empresas contendo indicadores diversos, como indicadores de ratio

analysis. Porém essas DFPs compõem uma minoria do total de relatórios disponibilizados

para este público. O restante dos documentos, que compõem mais de 80% do repositório da CVM, estão escritos em linguagem natural.

Para esses 80% de documentos não formatados, a análise automatizada em massa requer técnicas mais avançadas que fazem parte do campo de estudo de NLP. A pesquisa, nesse contexto, focalizou-se na experimentação de algumas dessas técnicas. A técnica de escolha e que foi experimentada com sucesso foi a de Modelagem de Tópicos, mais especificamente a Alocação Latente Dirichlet (LDA).

O sucesso no emprego dessas técnicas mais avançadas viabiliza a análise automatizada de uma gama muito grande de relatórios. Devido à excessiva quantidade de dados nos repositórios de relatórios, ferramentas de análise automatizada são, às vezes, a única forma de viabilizar a análise desses documentos.

Inspirado em resultados que já são atingidos em análises de DFPs, como o levantamento de indicadores, e combinado com técnicas de NLP estudadas nesta pesquisa,

(19)

que permitem a análise de documentos sem padronização, se fosse o suficienteresumir o tema da pesquisa em uma pergunta, ela seria: Como indicadores podem ser levantados através da técnica Latent Dirichlet Allocation (LDA) no repositório de documentos de empresas da CVM?.

Para responder à pergunta, o trabalho foi dividido em seç ões que estão exibidas ao longo da dissertação. As seções, além desta introdução, foram teoria, metodologia, resultados, discussão, conclusão e apêndice. Na teoria, os principais conceitos que são pré-requisito para o emprego bem-sucedido de técnicas de NLP estão descritos. Todos os conceitos também foram cruzados com literatura e publicações preexistentes. Na metodologia, foi descrito um passo a passo para o uso de todas as técnicas empregadas nesta pesquisa. Nos resultados são exibidos estatísticas relacionadas ao uso das técnicas, bem como o resultado direto que foi calculado por essas mesmas técnicas. A objetividade foi o foco nesta seção, exibindo os dados com o mínimo de manipulação possível. No apêndice foram exibidos mais resultados que são extensos demais para serem exibidos na primeira seção de resultados. Na discussão foram feitas interpretações em cima dos resultados diretos das seções anteriores e também foi exercitado um uso prático para os resultados calculados. Nesta seção, concentraram-se as análises mais subjetivas da pesquisa. Na conclusão foram novamente resumidos os resultados obtidos e como eles podem ser utilizados de forma prática.

(20)

2 TEORIA

A base teórica exibida nesta seção começa com um breve histórico da evolução de técnicas de Processamento de Linguagem Natural, seguido pelo levantamento de algumas das técnicas mais avançadas atualmente e, depois, examina-se um problema típico que pode ser resolvido com esse tipo de técnica. A seguir, uma técnica em específico usada extensivamente durante a pesquisa, a Alocação Dirichlet Latente, é brevemente descrita, junto com uma lista de conceitos que são necessários para o entendimento em profundidade dessa técnica. Outras técnicas que foram combinadas a essa primeira também são brevemente descritas. Depois, um diagrama contendo todas as técnicas combinadas é exibido de forma mais visual. Por último, hipóteses que foram levantadas ao longo da pesquisa estão listadas.

2.1 ASPECTOS HISTÓRICOS DO PROCESSAMENTO DE LINGUAGEM NATURAL

Uma sondagem por artigos relacionados à história de evolução de técnicas de Processamento de Linguagem Natural levou a três principais abordagens. A mais antiga é fundada em metodologias baseadas em conjuntos de regras (WINOGRAD, 1971). Uma segunda abordagem, mais recente, é baseada em métodos estatísticos e aprendizado de máquina (RESNIK, 2011). E a terceira abordagem é baseada em redes neurais (GOLDBERG, 2015).

Em métodos baseados em conjuntos de regras, elas são descritas em um sistema computacional, regra a regra, fornecidas explicitamente por quem desenvolveu o sistema. A eficácia de um sistema baseado em regras depende diretamente da qualidade e complexidade das regras fornecidas.

Surgidos mais recentemente, métodos estatísticos são baseados em análise automática de vastas bases de dados (HOGENBOOM; FRASINCAR; KAYMAK, 2010). A ascensão desses métodos é consequência do aumento de capacidade computacional a partir dos anos de 1980 e aumento da disponibilidade de dados on-line (RESNIK, 2011).

Métodos baseados em redes neurais também são baseados em análise automática de vastas bases de dados. A diferença em relação aos métodos estatísticos citados anteriormente são os modelos matemáticos de regressão utilizados (GOLDBERG, 2015) em cada abordagem.

(21)

2.2 O ESTADO DA ARTE E CONTRIBUIÇÕES SEMINAIS

Um levantamento (TUM, 2020) do que é considerado estado da arte em Processamento de Linguagem Natural, em fevereiro de 2020, chegou às seguintes abordagens:

Bag of Words, TF-IDF, Word2Vec (MIKOLOV et al., 2013), GloVe (PENNINGTON;

SOCHER; MANNING, 2014), ELMo (PETERS et al., 2018), Transformer (VASWANI et

al., 2017), BERT (DEVLIN et al., 2018), Transformer-XL (DAI et al., 2019), GPT-2

(RADFORD et al., 2019), ERNIE 2.0 (SUN et al., 2019), XLNet (YANG et al., 2019),

Compressive Transformer (RAE et al., 2019), T-NLG (ROSSET, 2020).

Vale ressaltar que duas das abordagens citadas no levantamento, Bag of Words e TF-IDF, foram usadas nesta pesquisa. Elas são duas abordagens predominantemente estatísticas, mas ainda em uso na atualidade. A maioria das outras abordagens citadas baseia-se em redes neurais e publicadas entre 2018 e 2020.

Para essas duas técnicas, a literatura inicial utilizada nesta pesquisa foi o livro Text

Mining in R (SILGE; ROBINSON, 2020). Um segundo livro, An Introduction to Information Retrieval (MANNING; RAGHAVAN; SCHÜTZE, 2009), que também contém os mesmos

conceitos, junto com muitos outros, e com um formalismo teórico um pouco maior foi usado. Essas duas literaturas forneceram a base teórica inicial e outras foram consultadas e adicionadas à pesquisa conforme o aprofundamento de outros conceitos se mostrou necessário.

2.3 GRANDES QUESTÕES

“É um truísmo dizer que 80 por cento das informações relevantes para os negócios se originam de forma não estruturada, principalmente texto.” (GRIMES, 2008).

Textos não estruturados não são feitos originalmente para serem lidos diretamente por máquinas, e sim por pessoas. E isso torna a análise automatizada, no que tange a esse tipo de conteúdo, um desafio em si. O campo de estudos desse tipo de análise é o Processamento de Linguagem Natural.

A maioria das técnicas de Processamento de Linguagem Natural tem um objetivo comum, que é a análise de dados sem formatação padronizada (SILGE; ROBINSON, 2020). Dados não estruturados são particularmente encontrados, em grande quantidade, em

(22)

repositórios de relatórios de administração. Para esta pesquisa, foi utilizado o repositório de relatórios da CVM, que contém uma massa de relatórios destinados ao mercado de capitais.

As empresas tendem a emitir relatórios em linguagem natural para o mercado de capitais usualmente a cada trimestre. E existem dezenas de milhares de empresas cadastradas na CVM. O resultado é aproximadamente 40 mil relatórios publicados no repositório a cada ano. Se for desejado que o histórico de vários anos das empresas seja analisado e um intervalo de tempo hipotético de 3 anos for considerado, então, a quantidade de relatórios a ser analisada seria de aproximadamente 120 mil. A quantidade excessiva torna a análise direta e manual desses relatórios inviável.

Uma questão que foi endereçada nesta pesquisa foi como utilizar técnicas de Processamento de Linguagem Natural para auxiliar na análise desta massa de relatórios. As técnicas envolvem o processamento automatizado dos conteúdos dos documentos, e o resultado da análise, com isso, esperando-se que ajude a filtrar automaticamente a quantidade excessiva de relatórios de assuntos diversos em uma quantidade reduzida de relatórios com o assunto desejado. Desse modo, a quantidade reduzida viabilizaria uma análise manual posterior.

2.4 CONCEITOS TÉCNICOS DO PROCESSAMENTO DE LINGUAGEM NATURAL

2.4.1 Tokenização

O primeiro passo na análise de textos escritos em linguagem natural é remover toda a formação e pontuação (DAVYDOVA, 2018) e identificar as palavras de forma isolada, chamados de tokens (MANNING; RAGHAVAN; SCHÜTZE, 2009). Opcionalmente, as palavras podem ter as letras substituídas por minúsculas. Exemplo:

Na tokenização do parágrafo precedente, o resultado seria:

tokenização o primeiro passo na análise de textos escritos em linguagem natural é remover toda a formatação e pontuação e identificar as palavras exemplo

2.4.2 Expressão regular

“Expressões regulares são, basicamente, padrões que representam trechos de texto.” (GOYVAERTS, 2003b?).

(23)

Expressões regulares podem ser usadas para extrair palavras em meio a pontuações e outras construções de escrita. Devido a isso, podem ser usadas em tokenizadores. Para esta pesquisa, oito padrões de texto são relevantes. Elas estão descritas no quadro 1.

No caso de haver uma expressão regular com a seguinte construção: (\p{L}\p{M}*){3,}

Um tokenizador utilizando esta expressão regular detectaria palavras compostas por 3 ou mais letras e zero ou mais acentos e cedilhas.

Quadro 1 - Regras de expressão regular relevantes Trecho de

expressão regular

Descrição

\p{L} Representa uma letra qualquer (GOYVAERTS, 2003d?). \p{P} Representa uma pontuação qualquer (GOYVAERTS, 2003d?).

\p{M} Representa uma marcação qualquer. Acentos e cedilhas (GOYVAERTS, 2003d?) são considerados marcações.

\p{N} Representa um número qualquer (GOYVAERTS, 2003d?).

{min,max} Especifica quantas vezes um token é repetido (GOYVAERTS, 2003c?). No caso, uma expressão {3,} especifica que um token deve ser repetido 3 ou mais vezes.

* Representa o mesmo que {0,} (GOYVAERTS, 2003c?). Ou seja, especifica que um token é repetido zero ou mais vezes.

+ Representa o mesmo que {1,} (GOYVAERTS, 2003c?). Ou seja, especifica que um token é repetido uma ou mais vezes.

() Agrupa expressões regulares que estão dentro dos parênteses (GOYVAERTS, 2003a?). permitindo que uma regra de repetição se aplique ao grupo.

Fonte: Elaboração própria

2.4.3 Palavras de parada

Alguns termos têm alta ocorrência em quase todos os textos, mas não são relevantes nos contextos analisados (MANNING; RAGHAVAN; SCHÜTZE, 2009), como as palavras “na”, “e”, “de”, “os”. Em análises baseadas na abordagem Bag-of-Words, pela qual se assume que a alta ocorrência de termos significa alta relevância, é necessário que haja algum tipo de filtragem para separar as palavras de parada de outras mais relevantes no contexto em análise, como “processamento”, “linguagem”, “natural”.

2.4.4 Pré-proccessamento de textos

A abordagem Bag-of-Words, na sua forma mais simples, faz apenas a contagem de termos exatamente iguais. No caso de haver diferenças sutis entre termos com o mesmo significado, é preciso que os termos sejam convertidos todos para o mesmo formato para que

(24)

sejam contados como um só e a relevância do termo apareça nas estatísticas de contagem. Existem várias técnicas para se converter termos. Para esta pesquisa foram usadas três técnicas:

Conversão de caixa - As palavras são convertidas para letras minúsculas para que as contagens de uma mesma palavra em maiúscula e minúscula sejam somadas, como “Linguagem” que aparece no começo de uma frase, e “linguagem” que aparece no meio de uma frase, aumentado a força do sinal estatístico, mas, ao mesmo tempo, correndo o risco de misturar palavras que mudam de significado quando são convertidas (DAVYDOVA, 2018). Exemplo: SE (Sergipe), se.

Alguns tipos de palavras dificultam a visualização e entendimento de bag-of-words e, pelo mesmo motivo, são removidas dos textos através de pré-processamento:

Remoção de palavras de parada - A maioria das palavras de parada pode ser detectada pelo uso de listas pré-criadas. As palavras de parada que coincidem com ocorrências nestas listas podem ser, então, removidas dos textos (DAVYDOVA, 2018).

Remoção de palavras pequenas - Palavras com menos de três caracteres podem ser trivialmente detectadas e removidas (DAVYDOVA, 2018).

Além de facilitar a visualização, a filtragem de palavras de parada e palavras pequenas reduz a quantidade total de palavras a serem processadas e acelera significativamente a velocidade de cálculo e geração de topic models.

O pré-processamento de textos, que combina a tokenização a partir de expressões regulares e também filtragem de palavras mediante listas pré-criadas, são abordagens baseadas em conjuntos de regras. As etapas posteriores ao pré-processamento são abordagens estatísticas.

2.4.5 N-gramas

A abordagem Bag-of-Words, na sua forma mais trivial, não leva em consideração a ordem na qual as palavras aparecem em um texto, que carrega significado em si. É possível estender o modelo e considerar que um token é um conjunto de duas ou mais palavras que aparecem consecutivamente em um texto e, assim, levar a ordem das palavras em consideração (SILGE; ROBINSON, 2020). Exemplo:

Alguns tokens do exemplo anterior usando 2-gramas seriam: primeiro passo textos escritos linguagem natural

(25)

Tokens contendo um termo são chamados de unigramas, com dois termos são chamados de bigramas e com três termos são chamados de trigramas (JURAFSKY; MARTIN, 2019). Para esta pesquisa, foram utilizados apenas unigramas.

2.4.6 Vetorização

Para que uma análise estatística seja viável em cima de palavras é necessário que o texto seja previamente convertido em números (D'SOUZA, 2018). Existem inúmeras abordagens para isso. A abordagem desta pesquisa foi a Bag-of-Words. A vetorização é feita após o pré-processamento do texto.

2.4.7 Bag-of-Words

É uma abordagem de vetorização que consiste em contar a quantidade de vezes que uma palavra se repete em um texto (D'SOUZA, 2018). O resultado é um vetor em que cada dimensão representa um termo, e o comprimento na dimensão é a quantidade de vezes que o termo se repete no texto (MANNING; RAGHAVAN; SCHÜTZE, 2009; D'SOUZA, 2018). Desta forma, palavras com alta repetição nos textos podem ser detectadas de forma estatística.

2.4.8 Análise de Cluster

São técnicas de Machine Learning que agrupam dados por similaridade (CORNISH, 2007). No caso desses dados serem vetores de frequências de palavras, uma técnica possível de agrupamento é o Topic Modelling.

2.4.9 Topic Modeling

É uma técnica de classificação de documentos (SILGE; ROBINSON, 2020) que agrupa conjuntos de palavras que tendem a aparecer juntas em documentos (MCCALLUM, 2018b).

No caso de haver um repositório com vários documentos e for calculado o vetor

(26)

palavras. Se for assumido que documentos com assuntos parecidos têm estatísticas de termos frequentes parecidas, é possível agrupar esses documentos por assunto, analisando estatisticamente a similaridade de frequência de termos entre documentos.

2.4.10 Distribuição Dirichlet-Multinomial

É uma distribuição estatística que combina duas outras, a distribuição Dirichlet e a distribuição Multinomial (TU, 2014). A representação de palavras na forma de distribuições Dirichlet-Multinomial é um dos alicerces estatísticos por trás da técnica LDA.

Uma distribuição Multinomial é representada por um vetor de números inteiros. Por isso, é possível fazer uma conversão direta de um vetor de frequência de palavras, como

Bag-of-Words, em uma distribuição Multinomial. A distribuição Dirichlet, por sua vez, é composta

de hiperparâmetros alfa (α) que servem para representar conhecimento a priori (independente dos dados). Se as frequências de palavras forem combinadas com os hiperparâmetros alfa, o resultado pode ser representado como uma distribuição Dirichlet-Multinomial.

Também é possível fazer a conversão inversa de distribuições Dirichlet-Multinomial para Bag-of-Words apenas ignorando os hiperparâmetros Dirichlet, resultando em uma distribuição Multinomial simplificada. As contagens da distribuição Multinomial podem ser usadas diretamente em uma Bag-of-Words.

A similaridade entre representações Bag-of-Words e distribuições Multinomial foi usada extensivamente durante a pesquisa para combinar técnicas baseadas em Bag-of-Words com as entradas e saídas da Modelagem de Tópicos.

2.4.11 Latent Dirichlet Allocation (LDA)

É uma das técnicas de Topic Modelling mais comuns que existem (SILGE; ROBINSON, 2020). Ela utiliza da distribuição Dirichlet-Multinomial para representação estatística de Bag-of-Words. Essa técnica assume que existem documentos, tokens e tópicos (assuntos). Também assume que cada token (palavra ou n-grama) em um documento pertence a um tópico (BLEI; NG; JORDAN, 2003; SILGE; ROBINSON, 2020).

Se todas as palavras de um mesmo tópico, em um mesmo documento, forem somadas, e o mesmo for feito para todos os tópicos, o resultado é uma distribuição de tópicos por documento, que pode ser representado como uma distribuição Dirichlet-Multinomial.

(27)

Se todas as palavras de um mesmo tópico forem consolidadas, somando as ocorrências de uma mesma palavra, em um mesmo tópico, em todos os documentos, o resultado é uma distribuição de palavras por tópico, que também pode ser representado como outra distribuição Dirichlet-Multinomial.

Se forem calculadas todas as distribuições, o resultado é uma distribuição de tópicos para cada documento, e uma distribuição de palavras para cada tópico.

Existem quase infinitas possibilidades possíveis de se agrupar os tokens em tópicos, todas válidas. O objetivo da técnica é descobrir a representação que tenha a máxima verossimilhança ou máximo log da verossimilhança (MCCALLUM, 2019b).

𝑃𝑟 =Γ(∑ 𝛼𝑖 𝑖) ∏ Γ 𝛼𝑖 𝑖

∏ Γ(𝛼𝑖 𝑖 + 𝑁𝑖) Γ(∑ (𝛼𝑖 𝑖 + 𝑁𝑖))

log 𝑃𝑟 = log Γ(∑ 𝛼𝑖 𝑖) − log Γ(∑ (𝛼𝑖 𝑖+ 𝑁𝑖)) + ∑ (log Γ(𝛼𝑖 𝑖+ 𝑁𝑖) − log Γ 𝛼𝑖) (1) Pr – Verossimilhança.

αi – Hiperparâmetro Dirichlet alfa.

Ni – Quantidade de tokens para o tópico ou palavra i.

2.5 GIBBS SAMPLING

Técnica baseada em métodos Monte Carlo, usada para fazer aproximações de cálculos de alta complexidade (YILDIRIM, 2012), viabilizando a análise de bases grandes de documentos. Pode ser usado para calcular uma aproximação da máxima verossimilhança das distribuições em um método LDA.

Para cada token, em cada documento, é calculada a probabilidade deste token pertencer a cada um dos tópicos (TOMAR, 2018):

𝑝(𝑧𝑑,𝑛 = 𝑘|𝑧⃗−𝑑,𝑛, 𝑤⃗⃗⃗, 𝛼, 𝜆) = 𝑛𝑑,𝑘+𝛼𝑘 ∑ 𝑛𝐾𝑖 𝑑,𝑖+𝛼𝑖 𝑣𝑘,𝑤𝑑,𝑛+𝜆𝑤𝑑,𝑛 ∑ 𝑣𝑖 𝑘,𝑖+𝜆𝑖 (2) nd,k – Quantidade de tokens no documento d que pertencem ao tópico k.

vk,w – Quantidade de tokens w que pertencem ao tópico k.

αk – Hiperparâmetro Dirichlet para distribuições de documentos para tópicos.

(28)

A cada iteração, um novo tópico é escolhido para cada token de cada documento, aleatoriamente, com probabilidade proporcional à probabilidade p do token pertencer a cada tópico. As iterações são repetidas com os novos tópicos, até as distribuições convergirem para um máximo local.

Também é importante ressaltar que o uso da letra grega gama (TOMAR, 2018) não é universal. Na ferramenta Mallet de Modelagem de Tópicos, o hiperparâmetro gama (λ) acima é chamado de hiperparâmetro beta (β) (MCCALLUM, 2009?).

2.5.1 TF-IDF

Técnica usada para filtrar palavras de parada. A técnica assume que palavras que aparecem esparramadas em quase todos os documentos são menos relevantes que palavras que aparecem concentradas em um conjunto reduzido de documentos.

TF significa Term Frequency, ou frequência de termos, que quanto maior a ocorrência, mais relevante é o termo. Pode ser calculado simplesmente contando as ocorrências de uma palavra em um texto, igual à abordagem Bag-of-Words.

IDF significa Inverse Document Frequency, ou frequência inversa de documentos. A frequência de documentos diz em quantos documentos diferentes um mesmo termo aparece. Quanto menos documentos, mais relevante. É calculado contando a quantidade de documentos em que um termo aparece e, depois, aplicando a fórmula (MANNING; RAGHAVAN; SCHÜTZE, 2009):

𝐼𝐷𝐹𝑡 = 𝑙𝑜𝑔 𝑁

𝑑𝑓𝑡 (3)

N sendo a quantidade total de documentos no repositório dft sendo a quantidade de documentos onde o termo t aparece.

Para propósitos de ordenação de palavras, a base do logaritmo usada na fórmula pode ser qualquer uma. Para esta pesquisa, a base do logaritmo usada nos cálculos foi a base 10.

Depois de calculada cada uma das duas partes, elas são simplesmente multiplicadas para se ter uma pontuação para uma palavra t, em um documento d:

(29)

No caso de haver múltiplas palavras a serem pontuadas em uma expressão de vários termos, o TF-IDF da expressão é calculado simplesmente somando o TF-IDF individual de cada termo (MANNING; RAGHAVAN; SCHÜTZE, 2009).

Importante ressaltar que a construção dft usada na fórmula pode gerar problemas se

usada em conjunto com a técnica Gibbs Sampling citada anteriormente. O motivo é esta construção ter uma propriedade binária, onde um termo ou pertence a um documento, ou não. Qualquer contagem de palavras com valor um ou maior, significa que ela pertence a um documento. E contagens igual a zero significam que a palavra não pertence ao documento. Já a técnica Gibbs Sampling produz Bag-of-Words, em que a contagem estimada de cada palavra contém ruído. Esse ruído não é relevante se contagens de palavras com alta quantidade forem apenas comparadas com contagens de baixa quantidade. Variações de apenas uma unidade não afetam muito esse tipo de comparação entre palavras e o ranqueamento de palavras final na Modelagem de Tópicos, que não é significativamente afetado. Mas no caso da construção usada na métrica IDF, em que o valor “zero” e valores “um ou mais” terem significados opostos, a variação de apenas uma unidade, que pode ser consequência de ruído de métodos Monte Carlo, torna as técnicas IDF e Gibbs Sampling incompatíveis entre si. Este fato teve de ser levado em consideração na metodologia de cálculo da métrica TF-IDF descrita mais adiante.

2.5.2 Tag Cloud

É uma forma atrativa (PRABHAKARAN, 2018?) de visualização de conjuntos de palavras, onde o tamanho, cor e orientação das palavras podem carregar significado (ex. frequência) para essas palavras (HALVEY; KEANE, 2007). Pode ser usado para visualizar

bag-of-words cujo conteúdo são conjuntos de palavras associados às suas frequências

(PRABHAKARAN, 2018?).

2.5.3 Recuperação de informação

“Recuperação da informação é sobre localizar material de natureza desestruturada que satisfaz uma necessidade de informação, dentre uma grande coleção armazenada em computadores.” (JANSEN; RIEH, 2010)

(30)

Dois conceitos da recuperação relevantes para esta pesquisa são consultas (JANSEN; RIEH, 2010) e ranqueamento de resultados (JANSEN; RIEH, 2010). Uma consulta é fornecida manualmente por um usuário. No contexto de text mining, as consultas mais comuns são na forma de palavras-chave.

O ranqueamento de resultados, no contexto de text mining, pode ser baseado em contagens de termos contidas nas bag-of-words. Os termos usados para ranqueamento da informação podem ser os fornecidos em uma consulta.

(31)

Figura 1 - Diagrama de atividade UML exibindo a sequência de etapas com todas as técnicas combinadas

(32)

2.6 HIPÓTESES

Algumas hipóteses foram levantadas no começo da pesquisa. Todas elas foram formuladas de forma que fossem verdadeiras ou falsas. Em três delas foi assumido que a resposta era sim mesmo antes dos resultados serem alcançados. O motivo é que duas delas estavam relacionadas diretamente à coleta de dados; e uma terceira, à análise dos dados coletados:

• É possível baixar documentos em massa da CVM. • É possível extrair texto de PDFs.

• É possível usar Modelagem de Tópicos nos documentos da CVM.

Devido à complexidade da metodologia de coleta de dados e análise, o próprio sucesso desses não estava garantido até que a metodologia fosse executada até o fim e, portanto, puderam ser formulados como hipóteses. Além das premissas iniciais, algumas expectativas em relação ao uso de NLP levaram a duas outras hipóteses ainda no começo da pesquisa:

• É possível extrair significado qualitativo de relatórios usando Modelagem de Tópicos. • É possível extrair conteúdo quantitativo de relatórios usando n-gramas e tokens

numéricos.

A pesquisa teve uma etapa exploratória na qual o entendimento dos conceitos técnicos foi amadurecido e também a viabilidade deles foi aplicada em cima do repositórios de repositórios de escolha. Esta exploração utilizou de resultados preliminares para definir etapas subsequentes da metodologia. E à medida que resultados iniciais foram aparecendo, outra hipótese pôde ser formulada e testada:

• É possível utilizar Modelagem de Tópicos e TF-IDF para fazer busca de documentos através de palavras-chave.

Outra hipótese, inspirada na epígrafe (GRIMES, 2008), foi adicionada às demais devido à facilidade de ela ser testada no repositório de relatórios da CVM:

• Os tipos de dados disponíveis seguem a proporção de 80% de dados não estruturados e 20% de dados estruturados no repositório da CVM.

Por último, para refinar o uso da técnica de Topic Model da metodologia, três outras hipóteses puderam ser formuladas e validadas:

(33)

• É possível filtrar palavras de parada com listas pré-criadas.

• É possível detectar automaticamente a quantidade ideal de tópicos. A validação de todas as hipóteses é exibida na seção de resultados.

(34)

3 METODOLOGIA

A metodologia exibida a seguir começa com uma descrição da abordagem científica escolhida e uma justificativa para tal escolha. Depois, apresenta-se uma descrição dos métodos empregados, todos embasados em conceitos teóricos descritos na seção anterior. Ao longo de toda a seção, também, foram descritos os resultados que eram esperados em cada etapa da pesquisa.

3.1 ABORDAGEM ESCOLHIDA E JUSTIFICATIVA

A abordagem geral da pesquisa foi subdividida em três partes. Na primeira parte, a abordagem seguiu predominantemente a escola de pensamento neopositivista. Na segunda, seguiu-se uma abordagem predominantemente quantitativa e levemente qualitativa; e, na terceira, uma abordagem de teorias aplicadas. Além da abordagem geral, foi seguida uma abordagem exploratória.

A escola de pensamento neopositivista se baseia em levantar fatos do mundo real de forma objetiva. Ela se contrasta com a escola interpretativista, que se focaliza em uma abordagem mais subjetiva. Na abordagem neopositivista são comumente empregados métodos estatísticos, o que é perfeitamente compatível com a escolha de métodos como a abordagem Bag-of-Words e Modelagem de Tópicos com Análise de Dirichlet Latente. A tendência em seguir uma abordagem neopositivista é a mais natural, levando em conta a escolha de uso intensivo de métodos estatísticos de Processamento de Linguagem Natural.

A segunda parte, abordagem quantitativa, baseia-se predominantemente no levantamento de números. Ela contrasta com a abordagem qualitativa, que tende a centrar-se na interpretação de evidências subjetivas. A abordagem quantitativa é usualmente uma consequência direta de se seguir na escola de pensamento neopositivista. Mas, no caso específico do uso de métodos de NLP, são levantadas palavras a partir de contagens estatísticas. As contagens são estritamente quantitativas, mas as palavras em si, resultantes das contagens, podem ser interpretadas de forma qualitativa. Portanto, houve espaço na pesquisa para uma análise levemente qualitativa dos resultados.

A terceira e última parte da abordagem geral, teorias aplicadas, fundamenta-se em alicerçar a pesquisa em teorias preexistentes e aplicá-las e/ou estendê-las. Ela se contrasta com a abordagem de teorias críticas, que se focalizam em criticar teorias preexistentes e

(35)

propor novas teorias do zero, em substituição às anteriores. Esta pesquisa centrou-se no emprego extensivo de técnicas de NLP já estabelecidas, com leves adaptações para viabilizar seu uso no tocante a dados inéditos que foram coletados.

Além da abordagem geral, também se aplicou uma abordagem exploratória. A exploração das técnicas de NLP foi uma etapa necessária da metodologia para que fosse possível definir e refinar como cada técnica poderia ser utilizada de forma a atingir uma aplicação prática. A investigação das técnicas se iniciou com a Modelagem de Tópicos (SILGE e ROBINSON, 2020) e outras técnicas e literaturas foram levantadas e exploradas depois de um entendimento inicial do que era necessário para o emprego da técnica inicial. O resultado da etapa exploratória é o diagrama de atividade UML exibido na figura 1. Apesar de estar exibido na seção de teoria como um resumo de todos os conceitos teóricos combinados, o diagrama em si é um dos principais resultados da pesquisa.

3.2 DESCRIÇÃO DOS MÉTODOS

A Modelagem de Tópicos em si é um conjunto de técnicas, todas com o objetivo de agrupar documentos por similaridade de tópicos. Para que o emprego efetivo dessas técnicas fosse atingido foram necessárias três etapas. A primeira foi executar uma coleta de dados em massa para alimentar a técnica com dados. A segunda foi a escolha e parametrização de uma técnica específica dentro do conjunto de técnicas de Modelagem de Tópicos. A terceira foi o emprego de mais técnicas de Recuperação de Informação para refinar o resultado intermediário da Modelagem de Tópicos. A segunda e terceira e etapas, Modelagem de Tópicos e refinamento dos resultados intermediários, formam a análise dos dados da pesquisa, que, combinada com a primeira etapa, coleta de dados, compõe o método científico formal de coleta e análise de dados empregado na pesquisa.

3.2.1 Coleta de dados

3.2.1.1 Data Mining

A coleta de dados foi baseada em um robô de web crawling, construído especificamente para esta pesquisa. O robô se conectou automaticamente no servidor da CVM, fazendo queries por documentos, simulando um usuário comum. Esse robô fez uma

(36)

query HTTPS para cada dia do ano, pertinente aos últimos três anos, totalizando

aproximadamente 1.095 queries. Para cada query, o servidor retornou uma lista com links para todos os documentos, de todas as empresas, que foram enviados para a CVM nesse dia. Recuperados os links para os documentos, fez-se uma nova consulta HTTPS para o servidor, com um pedido de download do documento, um para cada link recuperado. A construção exata de queries e dos pedidos de download executou-se por meio de engenharia reversa no

site da CVM.

Esperava-se que fossem retornados dois tipos de documentos, no formato PDF e no formato ZIP/XML. Os documentos no formato PDF são os textos não padronizados, que são posteriormente analisados neste estudo. Os documentos no formato ZIP contêm arquivos XML, que são os documentos padronizados, predominantemente balanços contáveis, para serem visualizados em ferramentas disponibilizadas pela própria CVM. Os documentos em formato ZIP foram ignorados devido ao foco da pesquisa em análise de documentos não formatados.

Estatísticas relacionadas à quantidade de documentos de cada tipo, PDF ou não, foram exibidas no quadro 3.

3.2.1.2 Conversão de PDFs

A massa de documentos em PDF recuperados foi previamente convertida do formato PDF para um formato de texto simples com o intuito de viabilizar a análise dos dados por outras ferramentas. Foi utilizada a biblioteca de programação Apache PDFBox (APACHE, 2020) para esse fim. O resultado foi um arquivo de texto simples para cada arquivo PDF.

Foi utilizada a funcionalidade básica de extração de textos da biblioteca. O resultado foi similar a executar um processo manual de selecionar todo o texto de um PDF e depois utilizar as funcionalidades de copiar-e-colar, colando o texto resultante em um processador de textos comum.

(37)

3.2.2 Análise dos dados e Recuperação de Informação

3.2.2.1 Pré-processamento de texto e tokenização

Foi utilizada a funcionalidade de importação de textos da ferramenta Mallet para fazer um pré-processamento dos textos. As palavras de parada foram filtradas a partir de duas listas pré-criadas. A primeira é a lista que vem embutida na própria ferramenta (MCCALLUM, 2002), com palavras de parada em inglês. A segunda é uma lista de palavras em português (LOPES, 2012?) baixada da internet. Palavras pequenas foram filtradas de forma implícita através da expressão regular utilizada na tokenização.

A tokenização da ferramenta Mallet é baseada em expressão regular e possui uma expressão padrão, adaptada para o idioma inglês, que inclui letras e pontuações em palavras com três ou mais caracteres:

\p{L}[\p{L}\p{P}]+\p{L}

A expressão acima ignora acentos e cedilhas em alguns casos. Para esta pesquisa, foi utilizada outra expressão regular, adaptada para o idioma português:

(\p{L}\p{M}*){3,}

Essa expressão inclui letras, acentos e cedilhas em palavras com três ou mais caracteres. Ela também remove qualquer tipo de pontuação. Exemplos de palavras detectadas: “análise”, “tokenização”.

O resultado final do pré-processamento foram listas de palavras já todas em letras minúsculas, livres de pontuação, livres de palavras de parada e que poderiam ser convertidas diretamente para o formato Bag-of-Words.

3.2.2.2 Modelagem de Tópicos através de LDA

Com as Bag-of-Words montadas, foi possível fazer análises subsequentes em cima desses dados pré-processados. Para isto, foi utilizada a técnica de Modelagem de Tópicos, mais especificamente a Análise de Dirichlet Latente (LDA).

Foram feitas análises para geração de 10 e 300 tópicos. A técnica LDA requer que o número de tópicos seja parametrizado de forma arbitrária pelo pesquisador. O critério de arbitragem foi baseado na configuração padrão da própria ferramenta, que são de 10 tópicos

(38)

para uma análise superficial e também de 200 a 400 tópicos para uma análise de alta granularidade (MCCALLUM, 2018b). Outros parâmetros relevantes da ferramenta incluem a quantidade de iterações para o Gibbs Sampling, o hiperparâmetro Dirichlet alfa (α) para distribuições de documentos para tópicos e o hiperparâmetro Dirichlet beta (β) de distribuições de documentos para termos.

Para a geração de 10 tópicos foram utilizados os valores padrões da ferramenta Mallet a esses parâmetros. A quantidade de iterações padrão é de 1.000 iterações, o hiperparâmetro alfa padrão é 5/k, k sendo o número de tópicos. No caso, o hiperparâmetro alfa padrão é 0,5 para 10 tópicos. O hiperparâmetro gama padrão é de 0.01.

Para a geração de 300 tópicos, o número de iterações foi aumentado para 2.000. O motivo foi a verossimilhança do modelo de tópicos demorar mais para se estabilizar. Um gráfico com a progressão das verossimilhanças foi exibido nos resultados. O hiperparâmetro Dirichlet alfa padrão para 300 tópicos é 5/300 ou aproximadamente 0,01667.

O tamanho dos n-gramas também é parametrizado na ferramenta. Foi utilizada a configuração padrão da ferramenta, utilizando apenas unigramas.

Quadro 2 - Hiperparâmetros da Modelagem de Tópicos

Parâmetro Valor para 10 tópicos Valor para 300 tópicos

Quantidade de tópicos 10 (padrão) 300

Expressão regular (\p{L}\p{M}*){3,} (\p{L}\p{M}*){3,}

Número de iterações 1.000 (padrão) 2.000

Dirichlet alfa (α) 0,5 (padrão) 0,01667 (padrão)

Dirichlet beta (β) 0,01 (padrão) 0,01 (padrão)

N-gramas 1 (padrão) 1 (padrão)

Fonte: Elaboração própria

O resultado da análise LDA esperado eram várias distribuições Dirichlet-Multinomial, uma para cada tópico. Elas foram utilizadas para a próxima etapa de análise, usando TF-IDF.

(39)

3.2.2.3 Pós-processamento dos tópicos através de TF-IDF

A forma mais simples de visualizar a saída de uma Modelagem de Tópicos é mediante um ranqueamento de palavras, com as palavras de maior probabilidade em cada tópico aparecendo no topo da lista. Faz-se isso para cada tópico, e o resultado é uma lista por tópico das palavras de maior probabilidade. A probabilidade é estimada diretamente a partir das distribuições Dirichlet-Multinomial de saída.

Para esta pesquisa, as palavras foram pontuadas e reordenadas utilizando a métrica TF-IDF. A reordenação de palavras de tópicos utilizando alguma métrica alternativa à simples contagem de palavras foi inspirada nos trabalhos de Song (2009) e Pleplé (2013). O motivo principal foi viabilizar que buscas por palavras-chave pudessem ser feitas em cima dos tópicos resultantes da etapa anterior. No caso de haver apenas 10 tópicos, foi viável examinar todas as 10 listas de palavras de cada tópico. Porém, no caso de serem gerados 300 tópicos, uma etapa adicional de busca por palavras-chave se tornou atrativa para localizar os tópicos mais relevantes no meio de muitos outros. A atratividade foi ainda maior quando foi considerado que os resultados nas seções seguintes para 300 tópicos foram mais satisfatórios que para 10 tópicos. Uma motivação secundária foi a técnica TF-IDF funcionar como filtro secundário de palavras de parada, e palavras que não foram filtradas na etapa de pré-processamento de texto puderam ser filtradas no pós-pré-processamento.

O cálculo da métrica TF-IDF foi subdividido em duas partes. A primeira é o cálculo da frequência de termos (TF). A segunda é o cálculo da frequência inversa de documentos (IDF). O cálculo TF foi desenvolvido em cima das distribuições Dirichlet-Multinomial resultantes da Modelagem de Tópicos. As contagens de palavras por tópico, que são parte das distribuições, foram usadas diretamente como valores para a métrica TF.

O cálculo IDF foi mais complexo e foi feito em cima das listas de palavras resultantes do pré-processamento, antes de qualquer cálculo relacionado com a Modelagem de Tópicos. Fazer este cálculo em cima dos resultados da Modelagem de Tópicos era uma alternativa, considerando cada tópico como se fosse um grande documento, como o cálculo TF, mas não foi assim executado em razão de a métrica IDF ser sensível a ruído, e a técnica Gibbs

Sampling usada na Modelagem de Tópicos introduz ruído nos resultados porque se baseia no

método Monte Carlo. Por conseguinte, fez-se o cálculo independente dos tópicos e diretamente em cima de palavras e documentos.

(40)

O cálculo TF-IDF resultante foi alcançado simplesmente multiplicando o resultado dos cálculos TF e IDF entre si, para cada palavra, para cada tópico.

3.2.2.4 Visualização dos tópicos gerados

Com os tópicos calculados e as palavras de cada tópico pontuadas com a métrica TF-IDF, a próxima etapa da análise dos dados foi visualizar a saída combinada das técnicas de Modelagem de Tópicos e TF-IDF. Para tanto foram exibidos, nas seções de resultados e também no apêndice, quadros das palavras com maior TF-IDF de cada tópico. Também foram exibidas Tag Clouds com as palavras de maior TF-IDF de cada tópico. Além das palavras mais relevantes, foram exibidas quadros com os documentos mais relevantes de cada tópico. Por último, a métrica TF-IDF foi usada para ranquear os tópicos a partir de uma palavra-chave de escolha. O resultado final, a partir de uma palavra-palavra-chave de escolha, pôde ser visualizado no tópico mais relevante em relação a esta palavra e também os documentos mais relevantes em relação a este tópico.

3.2.2.4.1 Quadros de palavras mais relevantes

A ferramenta Mallet produz várias Bag-of-Words como resultado dos cálculos, uma para cada tópico. Existem diversas formas de visualizar estas Bag-of-Words. Para esta pesquisa foram utilizados quadros e Tag Clouds, com os termos presentes nas bag-of-words ordenados pela métrica TF-IDF.

3.2.2.4.2 Tag Cloud

Os termos com maior TF-IDF também foram exibidos na forma de Tag Clouds, que comportam uma quantidade bem superior a 10 termos de forma compacta e visualmente atrativa. Nas Tag Clouds, o tamanho das palavras representa a posição no ranking de TF-IDF de cada tópico. O elemento com maior contagem aparece maior com fonte tamanho 40, o com segunda maior contagem aparece linearmente menor, e assim por diante, até o último termo exibido aparecer com fonte tamanho 10. As cores e orientação dos elementos seguiram critérios apenas estéticos, visando o aumento da legibilidade.

(41)

A quantidade de elementos por tag cloud foi definida pela quantidade máxima de elementos que cabem nesta mesma Tag Cloud sem acarretar em sobreposição de termos. A quantidade foi calculada individualmente por tópico.

3.2.2.4.3 Tabelas de documentos mais relevantes

Os 10 documentos mais relevantes para cada tópico estão listados após as Tags Clouds desses tópicos. A identificação de cada documento foi exibida em quatro colunas, com as colunas de empresa, categoria e data referência vindas dos dados da base de dados da CVM, e a quarta coluna (proportion) contendo a proporção de termos pertencendo ao tópico, calculado a partir do resultado do cálculo LDA.

3.2.2.4.4 Tabelas de tópicos mais relevantes

Uma prova de conceito de recuperação da informação foi elaborada em cima dos tópicos resultantes da análise LDA. Uma consulta foi feita baseada em algumas palavras-chaves. Uma delas foi o termo “receita”. Esta palavra-chave foi escolhida arbitrariamente, devido à “receita” ser um dos indicadores mais comuns na administração de empresas. Outro conjunto de termos usado em uma segunda consulta foi “receita da companhia”. Os termos “da” e “companhia” foram adicionados à consulta original para testar a eficácia da técnica TF-IDF em filtrar termos irrelevantes em uma consulta. Uma terceira consulta foi aplicada com o termo “ética” para exibir a capacidade das técnicas empregadas em recuperar informações de natureza qualitativa. Em teoria, as palavras-chave usadas nas consulta poderiam ser qualquer palavra usada com frequência em documentos de administração.

Os resultados das consultas foram exibidos na forma de quadros com rankings de tópicos ordenados por relevância. A primeira coluna (Consulta) contém o termo da consulta; a segunda coluna (Tópico) contém o indicador do tópico, de 0 a 9/299; a terceira coluna (Contagem) contém a contagem bruta vinda da bag-of-words; e a quarta coluna (P(t|w)) é a probabilidade de um tópico, dada uma palavra de consulta. A quarta coluna foi calculada dividindo-se a contagem de uma palavra em um tópico, pela soma de todas as contagens em todos os tópicos para esta mesma palavra.

(42)

4 RESULTADOS

Nesta seção foram descritos os resultados obtidos na aplicação das técnicas descritas nas seções anteriores. Primeiro, foram exibidas estatísticas relacionadas à coleta de dados. A seguir foi descrito o acompanhamento do cálculo da Modelagem de Tópicos, na forma de gráficos de verossimilhança. Depois, com a Modelagem de Tópicos completa, foi exibido um quadro com os 10 tópicos gerados de forma resumida e também referências para quadros e tag

clouds no apêndice para os 10 tópicos de forma mais detalhada. Nos quadros detalhados, há a

pontuação TF-IDF para as palavras mais relevantes de cada tópico. Logo depois, foram exibidos resultados de buscas por palavra-chave em cima dos tópicos usando TF-IDF. A seguir, o mesmo foi exibido para a geração de 300 tópicos, com uma referência para um quadro resumido dos tópicos no apêndice, seguida de quadros detalhados e tag clouds também no apêndice e buscas por palavras-chave em cima dos 300 tópicos. Por último, foi descrito um resumo de resultados de tentativas de utilização de outras técnicas com resultado insatisfatório.

4.1 COLETA DE DADOS

Foram coletados todos os documentos do repositório da CVM entre as datas de 15/1/2017 (inclusive) a 15/1/2020 (inclusive), somando um total de 154.088 documentos ao longo de três anos. Entre esses documentos, 26.800 com extensão ZIP eram do formato padronizado e foram ignorados. Para todos os outros documentos, foi assumido que o formato do documento era em PDF e foram convertidos deste formato para um formato de texto simples.

Entre os documentos no formato PDF, houve uma taxa de sucesso de 99,49% na conversão. O 0,51% dos documentos que não pôde ser convertido também foi ignorado. As falhas de conversão ocorreram devido a dados corrompidos no próprio documento, em razão de o documento estar em um formato diferente de PDF ou por limitações da ferramenta de conversão.

Os documentos convertidos com sucesso representam em torno de 82,61% de todos os documentos do período de três anos coletados. Essa estatística se contrapõe aos 17,39% de documentos ignorados devido a terem formatação padronizada.

(43)

Quadro 3 - Contagem de todos os documentos coletados pelo web crawler

Extensão Sucessos Falhas Ignorados Total

csv 0 523 0 523 doc 2940 5 0 2945 docx 2698 3 0 2701 pdf 120940 115 0 121055 xls 29 2 0 31 xlsx 30 2 0 32 zip 0 0 26800 26800 0 1 0 1 Total 126637 651 26800 154088 82,61% 0,42% 17,39% 99,49% 0,51%

Fonte: Elaboração própria

4.2 ANÁLISE DO PROGRESSO DA VEROSSIMILHANÇA DO LDA PARA 10 TÓPICOS

Os documentos convertidos com sucesso foram processados pela ferramenta Mallet. Depois de executadas mil iterações, o progresso da Log-verossimilhança/token observado está no gráfico a seguir.

Gráfico 1 - Log-verossimilhança/token no eixo vertical. Iterações no eixo horizontal

Fonte: Elaboração própria

-8.89741 -8.79741 -8.69741 -8.59741 -8.49741 -8.39741 -8.29741 -8.19741 10 100 1000

LL/token

(44)

É desejável que seja executada uma quantidade de iterações suficientes até que a verossimilhança aumente e estabilize-se. Isto foi observado no gráfico 1 como um achatamento do gráfico entre as iterações 100 e 1.000.

Se for comparada a diferença entre o log-verossimilhança/token da última iteração com o valor máximo observado durante as iterações anteriores, tem-se o gráfico 2.

Gráfico 2 - Distância entre a Log-verossimilhança/token atual e a máxima observada anteriormente no eixo vertical. Iterações no eixo horizontal

Fonte: Elaboração própria

No gráfico 2, o valor zero indica aumento da verossimilhança na última iteração. Valores negativos indicam que a verossimilhança não aumentou em relação a iterações anteriores e são indicativos de estabilização. Durante as primeiras 1.000 iterações, a verossimilhança começou a estabilizar de forma sutil em torno de 460 iterações. Em torno de 880 iterações, uma estabilização mais significativa foi observada. A verossimilhança se estabilizou por aproximadamente 50 iterações. Devido a isso, a quantidade total de 1.000 iterações foi considerada adequada para o cenário analisado.

4.3 ANÁLISE DO PROGRESSO DA VEROSSIMILHANÇA DO LDA PARA 300 TÓPICOS

Os documentos foram processados novamente para 300 tópicos. Depois de executadas 2.000 iterações, o progresso da Log-verossimilhança/token observada está no gráfico 1. Nesse gráfico é possível observar um achatamento do gráfico entre as iterações 100 e 2.000.

460, -2E-05 880, -9E-05 -0.00018 -0.00016 -0.00014 -0.00012 -0.0001 -0.00008 -0.00006 -0.00004 -0.00002 0 0 200 400 600 800 1000

LL/token - max(LL/token)

(45)

Se for comparada a diferença entre o log-verossimilhança/token da última iteração com o valor máximo observado durante as iterações anteriores, tem-se o gráfico 4.

Gráfico 3 - Log-verossimilhança/token no eixo vertical. Iterações em escala logarítmica no eixo horizontal

Fonte: Elaboração própria

No gráfico 4 é possível ver que, durante as primeiras 1.000 iterações, a verossimilhança progrediu sem dar sinais de estabilização. Foram executadas mais 1.000 iterações e a verossimilhança começou a estabilizar de forma sutil em torno de 1.090 iterações. Em torno de 1.870 iterações uma estabilização mais significativa foi observada. A verossimilhança se estabilizou por aproximadamente 40 iterações. Devido a isso, a quantidade total de 2.000 iterações foi considerada adequada para o cenário de 300 tópicos.

-10.09899 -9.89899 -9.69899 -9.49899 -9.29899 -9.09899 -8.89899 -8.69899 -8.49899 -8.29899 10 100 1000

LL/token

Referências

Documentos relacionados

- Se o estagiário, ou alguém com contacto direto, tiver sintomas sugestivos de infeção respiratória (febre, tosse, expetoração e/ou falta de ar) NÃO DEVE frequentar

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

Note on the occurrence of the crebeater seal, Lobodon carcinophagus (Hombron & Jacquinot, 1842) (Mammalia: Pinnipedia), in Rio de Janeiro State, Brazil.. On May 12, 2003,

Trata-se de um estudo descritivo com abordagem quantitativa O local escolhido como cenário para a pesquisa foi a Faculdade de Enfermagem Nova Esperança de Mossoró – FACENE/RN

música Isaura SEX 1 JUL 19h00 € 4,00 (individual) € 12,00 (bilhete ciclo) M/6 anos CSC Costa Nova Isaura apresenta- se com o EP de estreia “Serendipity”, que tem conquistado

O Programa Escola Integrada – PEI, implementado em 2006 pela Prefeitura Municipal de Belo Horizonte, por meio da Secretaria de Educação, é uma proposta de ampliação da

[r]

Na experiência em análise, os professores não tiveram formação para tal mudança e foram experimentando e construindo, a seu modo, uma escola de tempo