2018-08-31 19:58:37 - Atualizado em 2019-01-06 21:23:21
Usuários relacionados: João Antunes Solange Oliveira Rezende
Vigência: 2016-01-12 a 2018-11-14INFORMAÇÕES GERAIS
RESUMO DO PROJETO
Esse projeto de mestrado tem o objetivo geral de contribuir para uma melhora na performance de algoritmos supervisionados de Aprendizado de Máquina (AM) na tarefa de classificação automática de textos. De acordo com os experimentos realizados, os resultados obtidos indicam uma efetividade promissora das técnicas propostas CIRT.5 e CIET.5 utilizando modelos de linguagem baseados em word embeddings, e o uso de fontes externas de conhecimento para o enriquecimento semântico e contextual tanto das representações de textos quanto dos contextos textuais extraídos.
PRINCIPAIS PROCEDIMENTOS REALIZADOS
Embora o foco desse projeto tenha sido pautado na análise e desenvolvimento de abordagens de representação de textos mais ricas em informações do que abordagens tradicionais, a partir desse projeto também foram geradas contribuições em outros campos de estudo. Para mapear os principais trabalhos relacionados ao estudo da semântica na área de Mineração de Textos, foi realizado um Mapeamento Sistemático em parceria com a doutoranda Roberta Akemi Sinoara. Entretanto, além da técnica de representação de textos CIRT.5 proposta e analisada na dissertação, também foi proposta a técnica de extração de contextos textuais CIET.5, desenvolvida em parceria com a doutoranda Camila Vaccari Sundermann e aplicada na área de Sistemas de Recomendação. Ambos os trabalhos podem ser acessados ao final desta página, juntamente com o pôster elaborado no início desse projeto de mestrado para a apresentação parcial de sua proposta; inicialmente, a técnica CIRT.5 era denominada Bag of Contexts. O diagrama apresentado na Figura 1 ilustra de forma resumida o conceito de exploração de informações contextuais partilhado pelas duas técnicas propostas.
Figura 1: informações contextuais nas técnicas CIET.5 e CIRT.5.
Conforme ilustrado na Figura 1, basicamente dada uma coleção de textos qualquer (representados por polígonos de diferentes tamanhos no lado esquerdo da Figura 1) as técnicas CIET.5 e CIRT.5 exploram similaridades entre contextos (representados por linhas no lado direito da Figura 1) formados por grupos de termos correlacionados. Para mais informações sobre a aplicação das técnicas propostas CIET.5 e CIRT.5, visite as páginas "CIET.5 -- Uma proposta de extração de contextos textuais" e "CIRT.5 -- Uma proposta de representação de textos", respectivamente. Os scripts gerados a partir do desenvolvimento desse projeto encontram-se disponíveis para download exclusivamente nos repositórios do GitHub, conforme listado a seguir:
Em relação às 6 abordagens de representação de textos avaliadas na dissertação (BoW, LDA, BoV_Wiki, BoV_NASARI, CIRT.5 L e CIRT.5 E-L), apenas as representações de textos baseadas na técnica LDA foram geradas por meio de ferramenta de terceiros. Nesse caso, foi utilizada a ferramenta MALLET, versão 2.0.8 para a plataforma Windows. A aplicação dos algoritmos supervisionados de AM Naive Bayes, J48, KNN, IMBHNC e IMBHNR foi realizada por meio da ferramenta de classificação automática de textos Geral, versão MultiThreading 20180104; pelo fato da ferramenta geral ser baseada na ferramenta Weka, os arquivos das representações de textos geradas tiveram que ser convertidos para o formato Arff (script Bag2Arff.py). Ainda como recursos desenvolvidos por terceiros, foram utilizadas stoplists diferentes para a geração de representações de textos em cada idioma considerado. As análises estatísticas dos resultados foram realizadas por meio da linguagem de programação R, versão 3.5.1 para a plataforma Windows. Os arquivos desses recursos utilizados podem ser obtidos por meio dos seguintes repositórios:
Em relação às 3 bases de dados BS-4, SE e BBC selecionadas para a análise das abordagens de representação de textos, foram geradas 3 versões de textos para cada uma das bases de dados. Para avaliar a eficiência da aplicação de procedimentos de enriquecimento textual no aumento da performance de algoritmos supervisionados de AM, foram geradas as versões de coleções de textos "raw", "word" e "id". A versão "raw" das coleções diz respeito aos termos originais tokenizados das bases de dados, considerada com objetivo de avaliar a eficácia das abordagens de representação de textos em coleções de textos semanticamente não enriquecidas. Já a versão "word" das coleções diz respeito aos termos semanticamente enriquecidos das bases de dados, caracterizados em entidades nomeadas ou conceitos extraídos por meio da Babelfy (script S-Enrich.py). Por último, a versão "id" das coleções diz respeito aos identificadores de conjuntos de sinônimos extraídos por meio da Babelfy (script S-Enrich.py) denominados synset ids. As versões "word" e "id" das coleções são baseadas nos procedimentos de REN e DLS da área de Processamento de Língua Natural, respectivamente. As versões originais das bases de dados selecionadas podem ser obtidas por meio dos seguintes repositórios:
As versões "word" e "id" das coleções foram consideradas com o objetivo de avaliar a eficácia das abordagens de representação de textos em coleções de textos semanticamente enriquecidas. Enquanto a versão "word" permite avaliar o enriquecimento semântico das abordagens de representação de textos conservando os termos originais das coleções de textos, a versão "id" permite avaliar esse enriquecimento por meio da desambiguação desses termos originais, que passam a ser identificados por um identificador único que reúne termos correspondentes com o mesmo significado. Na prática, na versão "id" termos como "Inteligência Artificial" e "IA" podem ser associados por um mesmo synset id. Pelo fato da versão "id" não ser formada por termos textuais que correspondem diretamente a palavras, apenas nas versões "raw" e "word" foram realizadas remoções de stopwords por meio das stoplists selecionadas. Em todas as versões "raw", "word" e "id" os textos das coleções foram tokenizados a partir das sentenças, consideradas como os escopos de interesse analisados. Logo, cada texto de cada coleção corresponde a um conjunto de sentenças expressas em cada linha dos documentos. As versões "raw", "word" e "id" das coleções de textos analisadas podem ser obtidas por meio dos seguintes repositórios:
Em relação aos modelos de linguagem pré-treinados por meio dos documentos de texto da Wikipédia (scripts Wiki2Model.py e Wiki2Model_S-Enrich.py), foram geradas 3 versões em português e 3 versões em inglês relativas às versões de textos "raw", "word" e "id" consideradas nas coleções analisadas. Considerando que os textos da Wikipédia foram extraídos de backups em formato XML, tanto para o idioma português quanto para o inglês, as versões de textos "raw", "word" e "id" foram baseadas em uma versão de textos originais que desconsidera tags e códigos HTML. Para a geração dos modelos a partir da versão "raw" dos textos foi utilizado o script Wiki2Model.py. Para a geração dos demais modelos a partir das versões "word" e "id" foi utilizado o script Wiki2Model_S-Enrich.py, relacionado ao script de enriquecimento semântico S-Enrich.py. Os backups e os textos originais extraídos da Wikipédia, assim como as versões "raw", "word" e "id" dos textos e dos modelos gerados podem ser obtidos por meio dos seguintes repositórios:
Além de serem utilizados como modelos pré-treinados da Wikipédia para a geração de representações de textos da abordagem CIRT.5 E-L, em que foram obtidos os melhores resultados da técnica CIRT.5 proposta, os 6 modelos associados às versões "raw", "word" e "id" dos textos da Wikipédia nos idiomas português e inglês também foram utilizados para a geração das representações de textos baseadas na abordagem BoV_Wiki. Analogamente, as representações de textos baseadas na abordagem BoV_NASARI foram geradas por meio do modelo de linguagem Embed (Wiki) da abordagem NASARI. Pelo fato desse modelo NASARI ser formado por termos textuais e não por identificadores de synsets, isto é, por synset ids, ele foi aplicado somente para as versões "raw" e "word" das coleções de textos por motivos de compatibilidade. Como na página do projeto NASARI os modelos não estão disponíveis no idioma português, a abordagem de representação de textos BoV_NASARI foi avaliada apenas nas coleções de textos SE e BBC. O modelo utilizado nos experimentos pode ser obtido por meio do seguinte repositório:
PRINCIPAIS RESULTADOS OBTIDOS
Assim como abordado na seção anterior, nesse projeto de mestrado foram avaliadas ao todo 6 abordagens de representação de textos, sendo 3 abordagens baseadas apenas no conteúdo local das coleções analisadas (BoW, LDA e CIRT.5 L), 2 abordagens baseadas apenas no conteúdo externo das coleções analisadas (BoV_Wiki e BoV_NASARI) e 1 abordagem baseada tanto no conteúdo local quanto no conteúdo externo das coleções analisadas (CIRT.5 E-L). Em relação às coleções de textos analisadas, as 3 coleções de textos originais selecionadas (BS-4, SE e BBC) foram consideradas em 7 diferentes tarefas de classificação automáticas. Essas tarefas se remetem aos diferentes níveis de complexidade semântica considerados nesse projeto.
No caso das versões "raw", "word" e "id" da coleção de textos BS-4, a tarefa de classificação foi realizada de maneira isolada em relação ao 1º (classificação baseada em tópico) e ao 2º nível de complexidade semântica (classificação baseada em semântica), e de maneira conjunta em relação ao 1º e 2º nível de complexidade semântica (classificação baseada em tópico e semântica). Já no caso das versões "raw", "word" e "id" da coleção de textos SE, a tarefa de classificação foi realizada de maneira isolada em relação ao 1º (classificação baseada em categoria) e ao 2º nível de complexidade semântica (classificação baseada em polaridade), e de maneira conjunta em relação ao 1º e 2º nível de complexidade semântica (classificação baseada em categoria e polaridade). Por último, no caso das versões "raw", "word" e "id" da coleção de textos BBC, a tarefa de classificação foi realizada apenas de maneira isolada em relação ao 1º nível de complexidade semântica (classificação baseada em tópico) devido à natureza da base de dados BBC. Os arquivos das representações de textos geradas e das classificações realizadas, bem como todos os resultados obtidos por meio dos experimentos realizados, podem ser obtidos por meio dos seguintes repositórios:
De forma resumida, para a avaliação das abordagens de representação de textos BoW, LDA, BoV_Wiki, BoV_NASARI, CIRT.5 L e CIRT.5 E-L foram analisadas as coleções de textos BS-4, SE e BBC nas versões "raw", "word" e "id". A avaliação das abordagens de representação de textos foi realizada por meio da tarefa de classificação automática de textos utilizando os algoritmos supervisionados de AM Naive Bayes, J48, KNN, IMBHNC e IMBHNR. Ao todo, para cada combinação de parâmetros de cada abordagem de representação de textos foram gerados 66 arquivos de resultados associados às configurações dos algoritmos de AM aplicados. Devido ao fato dos diferentes cenários de aplicação e dos parâmetros explorados, as abordagens de representação de textos avaliadas apresentaram diferentes quantidades de arquivos de resultados de classificação. Assim, para a abordagem BoW foram obtidos 1.386 arquivos de resultados; para a abordagem LDA foram obtidos 1.386 arquivos de resultados; para a abordagem BoV_Wiki foram obtidos 1.386 arquivos de resultados; para a abordagem BoV_NASARI foram obtidos 528 arquivos de resultados; para a abordagem CIRT.5 L foram obtidos 33.264 arquivos de resultados; e para a abordagem CIRT.5 E-L foram obtidos 33.264 arquivos de resultados.
Em razão da diferença de quantidade de arquivos de resultados obtidos para cada abordagem de representação de textos avaliada, o ranque de desempenho médio caracterizado por diagramas de distância crítica foram gerados a partir dos melhores resultados para cada configuração de algoritmo de classificação aplicado. Nesse caso, os diagramas de distância crítica foram baseados nos maiores valores de Acurácia obtidos por cada abordagem de representação de textos em cada uma das 66 configurações de algoritmos, englobando os resultados das versões "raw", "word" e "id" das coleções. Na dissertação, esses diagramas de distância crítica estão organizados de acordo com os níveis de complexidade semântica avaliados, de maneira isolada e conjunta. Assim como os gráficos boxplot e os correlogramas com os coeficientes de Pearson e de Spearman apresentados na dissertação, os diagramas de distância crítica também foram gerados por meio da linguagem de programação R.
AGRADECIMENTOS
O presente trabalho foi realizado com apoio do Conselho Nacional de Desenvolvimento Científico e Tecnológico - Brasil (CNPq) - Código de Financiamento #132666/2016-2. Agradecimentos especiais aos desenvolvedores dos scripts, das ferramentas, dos softwares e dos recursos em geral utilizados neste projeto por disponibilizarem gratuitamente tal conteúdo.
CITAÇÃO
Para citar algum recurso desenvolvido neste projeto, por favor utilize a citação da dissertação de mestrado, indicada no topo desta página, como referência. Para acessar esta página específica, utilize preferencialmente a seguinte URL:
Dissertação (Mestrado) -- Instituto de Ciências Matemáticas e de Computação, Universidade de São Paulo
International Conference on Web Intelligence (WI)
Encontro Paulista dos Pós-graduandos em Computação (EPPC)
Journal of the Brazilian Computer Society (JBCS)