• Nenhum resultado encontrado

slides06-sc-Mineração de texto

N/A
N/A
Protected

Academic year: 2021

Share "slides06-sc-Mineração de texto"

Copied!
57
0
0

Texto

(1)

Mineração de texto

(2)

Roteiro

Motivação

Conceitos básicos

Tarefas de mineração de texto

Tipos de abordagens dos dados

Processo de Mineração de Texto

 Preparação dos dados  Processamento dos dados

 Pós-processamento dos dados

Técnicas de mineração de texto

(3)

Motivação

Informações em formato texto

 Compõem o dia-a-dia de pessoas e empresas

 São produzidas e armazenadas em meio eletrônico

 Exemplo: páginas web, posts em blogs e redes sociais, feeds de notícias,

históricos pessoais de navegação na web, e-mails, relatórios de

acompanhamento, atas de reuniões, patentes, resumo ou texto completo de publicações científicas...

Podem ser utilizadas para:

 constituir um tipo de vantagem competitiva;  suporte à tomada de decisões;

 gerar indicadores de sucesso ou fracasso.

O processamento de texto necessita de técnicas específicas, pois o

texto se constitui em um tipo de dado não-estruturado (texto livre) ou

semi-estruturado (campos e valores).

(4)

Conceitos básicos

Mineração de texto

É um conjunto de técnicas e processos que possibilita a

descoberta de conhecimento inovador nos textos.

Com mineração de texto pode-se extrair informação

relevante de uma grande base de dados textuais sem

precisar de intervenção humana na leitura de cada

documento.

Tem aplicações na descoberta de fatos na genética, na

pesquisa de proteínas e medicamentos, na modelagem de

sistemas com base em patentes, na gerência de projetos, no

planejamento de marketing, na categorização automática de

mensagens de correio eletrônico, em bancos de

investimento, na extração automática de resumos de

documentos, na análise de sentimento em revisões de

produtos e serviços, etc.

(5)

Conceitos básicos

A Mineração de Textos é um processo semelhante à

Mineração de Dados, do inglês

Data Mining.

A

diferença é que data mining opera sobre dados

estruturados.

Mineração de dados

Trabalha com dados

estruturados

Bancos de dados...

Mineração de textos

Os dados são

não estruturados

(texto livre)

(6)

Conceitos básicos

Mineração de Textos, do inglês

Text Mining,

em alguns casos

é considerada uma etapa específica da descoberta de

conhecimento em textos. Em outros é considerada sinônimo.

Descoberta de conhecimento em textos (DCT), do inglês

knowledge discovery in texts

(KDT),

é um processo que visa

descobrir padrões não explícitos a partir de documentos

textuais.

Áreas de pesquisa correlatas:

recuperação de informação

extração de informação

processamento de linguagem natural

aprendizagem de máquina

(7)

Processo de DCT

O processo de DCT é dividido em cinco fases

(8)

O que se pode fazer com mineração de texto ?

8

Tarefas de mineração de texto

(9)

Mineração – Indexação automática

O objetivo é reconhecer termos importantes nos

documentos.

em alguns casos se busca também reconhecer o tipo dos termos

(assunto, pessoa, lugar, evento, organização, objeto)

Faz uso das operações sobre o texto, regras de sistemas

especialistas e/ou algoritmos de aprendizagem de

(10)

Indexação automática

Tipos de indexação automática:

 Indexação do texto completo – realizada automaticamente em várias

ferramentas de análise de texto, cria uma estrutura de índice onde para cada palavra isolada guarda-se informação sobre sua ocorrência e posição em cada documento. Exemplos: criação de índice invertido, criação de nuvem de tags.

 Indexação temática – encontrar termos significativos nos documentos. Pode

fazer uso de um dicionário ou tesauro. Exemplo: Indexação automática por extração, indexação automática por atribuição.

 Indexação por tópico – faz uso de técnicas estatísticas e de aprendizagem de

máquina para agrupar termos em tópicos com base nos padrões de

coocorrência nos documentos. Exemplos: Indexação por Semântica Latente, e LDA.

(11)

Exemplos de Indexação automática

Base de índices invertidos

Processo de indexar documentos, para que

sejam recuperados de forma rápida e

precisa

11

(12)

Mineração -

Categorização

O objetivo é encontrar tópicos chave ou categorias dos

documentos

Visa associar documentos de texto a classes temáticas

pré-definidas

Os documentos são classificados a partir de características

do texto, como termos ou palavras presentes nos

documentos

Abordagem

Algoritmos de Aprendizagem de Máquina supervisionada

(13)

13

(14)

Mineração -

Agrupamento

O objetivo é tornar explícito o relacionamento de

similaridade entre documentos

Visa identificar grupos de documentos similares entre si

Isto é, encontrar classes ou grupos de documentos não

conhecidos a priori

Envolve o uso de técnicas de Aprendizagem de Máquina

não-supervisionada.

(15)

15

Mineração - Agrupamento

(16)

Mineração - Sumarização

O objetivo é criar um resumo através da extração de

sentenças importantes de um ou vários documentos

relacionados.

Visa descobrir as sentenças contendo as informações mais

importantes de um texto

para produzir uma versão resumida do referido texto

Visa criar um documento novo

que é menor do que o original em tamanho

mas mantém as principais informações contidas na fonte

original

(17)

Mineração - Sumarização

Tipos de sumarização:

Sumarização de documento único

 Sintetiza o conteúdo de um documento

Sumarização de múltiplos documentos

 Sintetiza e condensa informações a partir de diversos documentos

de entrada

(18)

Mineração - Sumarização

Tipos de Sumarização:

 Sumarização por abstração – síntese do resumo com base na

determinação do significado das sentenças, simplificação das sentenças, e escrita do resumo.

 Sumarização por extração – sentenças inteiras são medidas quanto a

importância relativa, selecionadas e extraídas do texto para compor o resumo. A ideia é construir um texto menor que conserve as ideias-chave originais. Abordagem mais comum nos sistemas.

 Quesitos de importância de sentenças: posição no documento, presença

de palavras-chave, presença de expressões indicativas (importante, definitivamente, em particular, a finalidade dessa pesquisa é, nossa investigação mostrou que, etc.), número de links semânticos entre sentenças.

(19)

Processo de sumarização

1.

Calcular a relevância de cada conceito;

2.

Determinar as sentenças contendo os conceitos

relevantes;

3.

Agrupar sentenças contendo conceitos relevantes;

4.

Selecionar sentenças de cada grupo;

5.

Sintetizar o resumo;

(20)

O objetivo é tornar explícito o sentimento positivo,

neutro, ou negativo expresso sobre cada aspecto

presente no documento a fim de

observar as opiniões

de um grupo de pessoas sobre temas de interesse (para

pessoas ou organização)

A mineração de opinião visa identificar o sentimento que

os usuários apresentam a respeito de alguma entidade

ou aspecto de uma entidade, como:

▫ um produto específico ▫ uma empresa

▫ um lugar

▫ uma pessoa 20

Análise de sentimento (Mineração de

opinião)

(21)

O objetivo principal é permitir que um usuário obtenha

um relatório (gráfico ou textual) contendo a

opinião/sentimento predominante das pessoas a

respeito de um determinado aspecto ou entidade

21

Análise de sentimento

(22)

Extração de informação

Objetivos

Conversão para estrutura tabular

Exibição dos dados de forma legível e facilmente recuperável

Busca identificar dados relevantes presentes em

documentos sem estruturação precisa

Busca derivar conhecimento (informações relevantes) de

documentos segundo

A forma como o documento está estruturado

(23)
(24)

Etapas da Mineração de Textos

A Mineração de texto se constitui basicamente em três

etapas sequenciais:

Pré-processamento ou Preparação dos dados

 Prepara o conjunto de dados textuais para as fases posteriores

Processamento dos dados

 Execução de tarefas de mineração de texto, visando o processamento

dos dados ou extração de conhecimento

Pós-processamento dos dados ou análise dos resultados

(25)

Etapas da Mineração de Textos

Pré-processamento ou Preparação dos dados - Prepara o

conjunto de dados textuais para as fases posteriores

 Seleção do conjunto de documentos de interesse

 Seleção dos termos representativos dos textos - análise léxica,

eliminação de palavras vazias (stopwords), aglomerar termos através da radicalização ou lematização, uso de dicionário ou tesauro,

detecção de grupos nominais ou expressões multipalavras.

 Representação de cada documento na forma de vetor através do

modelo sacola de palavras e um modelo de recuperação de informação

 Redução de dimensionalidade através da frequência nos documentos

(26)

Tipos de abordagens de dados

Análise semântica

 Baseada no uso de técnicas de Processamento de Linguagem Natural.

Estas técnicas avaliam a sequência dos termos no contexto das

sentenças do texto, visando a correta identificação do significado ou função de cada termo. Geralmente tais técnicas são específicas para um dado idioma.

 Exemplos: uso de léxicos (lista de stopwords, léxicos com polaridade

opinativa), radicalização (stemming), lematização (lemmatizing), etiquetagem morfossintática (POS tagger), análise sintática (parser), uso de dicionários ou tesauros, reconhecimento de entidades,

(27)

Tipos de abordagens de dados

Análise estatística

 Baseada no uso de técnicas estatísticas, busca determinar a

importância dos termos nos textos com base na ocorrência, posição ou contexto (palavras adjacentes no nível de sentenças). São técnicas independente de idioma.

 Exemplos: filtragem de termos com base na frequência de ocorrência

na coleção, captura de expressões multipalavras através de modelos linguísticos (unigrama, bigrama, trigrama),...

(28)

Representação dos documentos

Para as tarefas de mineração de texto em que são

utilizados algoritmos de aprendizagem de máquina,

geralmente é exigida a representação dos documentos,

sentenças ou termos como vetores numéricos.

Documentos são geralmente representados como vetores onde

palavras formam eixos em um espaço multidimensional.

 Para cada palavra se registra ou sua importância na descrição do

documento, ou sua presença/ausência no documento.

(29)

Exemplo de Representação de

Documentos como Vetores Numéricos

word1 word2 word3 word4 word5 ... wordN label

0

1

0

1

0

...

1

1

1

0

1

0

0

...

0

0

1

0

0

1

1

...

0

1

0

1

0

0

1

...

1

0

1

0

0

1

0

...

1

1

0

1

0

0

1

...

0

1

0

0

1

1

0

...

0

0

0

0

1

0

1

...

0

1

29

(30)

Dicionário (“dictionary”, “feature”)

Palavras relevantes que podem estar presentes em um documento

 word1, word3, word6, ..., wordN

Dado um dicionário e um documento, o documento é

representado por um vetor de números

Na forma mais simples, vetor de 1s e 0s, representando a presença

ou ausência de palavras individuais

Mas os números podem ser quaisquer, desde que semanticamente

válidos

Na tabela do exemplo, cada linha é um vetor

representando um documento, por exemplo, um artigo

científico.

(31)

Geração de Vetores

Toquenização (Tokenization)

 Cada palavra relevante para o dicionário é um “token”

 Para vetores binários, é assinalada a presença ou não de um “token”

(palavra)

 Para vetores não-binários, uma função da freqüência do “token” é

utilizada

Radicalização (Stemming) ou Lematização (Lemmatization) para

a conflação de termos

 “Tokens” sinônimos  “Token”

Note que, se o dicionário for grande, e geralmente o é, os

vetores tendem a ser esparsos

 Necessidade de técnicas de compressão de vetores

(32)

“Label”

 Representa um atributo de classificação, a decisão final ou saída para uma

tarefa de mineração de texto.

 Binário

 1 (positivo), pertence à classe  0 (negativo), não pertence à classe

 Note que a estratégia é aproximar o problema para uma tarefa de

classificação ‘clássica’

 Instâncias positivas e negativas

Mais de duas “label”?

 Categorias nominais ou vetores binários de categorias

Para algoritmos de aprendizagem de máquina não supervisionados, o

atributo “Label” não é utilizado para o treinamento.

(33)

Etapas da Mineração de Textos

Processamento dos dados - Execução de tarefas de

mineração de texto, visando o processamento dos dados

ou extração de conhecimento

Definição do objetivo do processo de mineração de texto

Escolha da tarefa de mineração de texto para promover a extração

de conhecimento: Indexação; Sumarização; Agrupamento;

Categorização; Análise de sentimento; Extração de informação.

Separação dos conjuntos de treinamento, validação e teste ou uso

de validação cruzada.

(34)

Técnicas de Mineração de Textos

As tarefas de mineração de textos podem ser modeladas como

problemas de classificação de dados (vetores).

Para tarefas de classificação supervisionada (categorização) são utilizadas técnicas

de aprendizagem de máquina supervisionadas.

Para tarefas de classificação não supervisionada (agrupamento) são utilizadas

técnicas de aprendizagem de máquina não supervisionadas.

Modelagem de tarefas:

 Indexação – tarefa de classificação supervisionada de termos de indexação.

 Categorização de texto – tarefa de classificação supervisionada de documentos.  Agrupamento de texto - tarefa de classificação não supervisionada de documentos.

 Sumarização de texto – tarefa de classificação supervisionada e\ou não-supervisionada de

sentenças.

 Análise de sentimento – tarefa de classificação supervisionada de termos opinativos e

(35)

Classificação supervisionada de vetores numéricos

Cada instância é representada como um vetor numérico

É inferida uma função que mapeia a representação numérica estruturada

para um rótulo

f : w L

w é um vetor em que cada célula indica a presença, ou quantidade, de uma

característica  vetor numérico

L é um rótulo (“label”)

Entre os algoritmos de aprendizagem de máquina supervisionados mais

utilizados na mineração de texto temos: árvores de decisão, k-vizinhos

mais próximos, classificador por regressão logística, classificador naive

bayes, e SVM.

(36)

Classificação não-supervisionado de vetores numéricos

Cada instância é representada como um vetor numérico

É inferida uma função que mapeia a representação numérica estruturada para um

grupo de uma partição

f : w G

w é um vetor em que cada célula indica a presença, ou quantidade, de uma característica  vetor numérico

G é um grupo de uma partição P. P é formada por dois ou mais grupos com vetores associados a

cada grupo e uma descrição contendo as características representativas dos vetores do grupo.

A heurística para criação de grupos é unir no mesmo grupo vetores similares (unir

pelas semelhanças) e separar vetores dissimilares em grupos diferentes (separar

pelas diferenças).

Os algoritmos de aprendizagem de máquina não supervisionados mais utilizados na

mineração de texto são: k-médias (k-means), EM (expectation maximization),

agrupamento hierárquico (hierarchical clustering), SOM (self-organizing maps).

(37)

Técnicas de Mineração de Textos

Categorização – encontrar tópicos associados a categorias

pré-definidas de documentos

As categorias são definidas através de um processo intelectual.

Cada documento é descrito por um vetor de termos com pesos

associados.

Para cada categoria são extraídas assinaturas estatísticas da

ocorrência de termos nos documentos associados aquela categoria.

Algoritmos de aprendizagem de máquina supervisionados são

utilizados para criar um modelo contendo as assinaturas

estatísticas.

Trata-se de uma tarefa de classificação supervisionada de

documentos.

(38)

Técnicas de Mineração de Textos

Agrupamento (clustering) – tornar explícito o

relacionamento de similaridade entre documentos. Os

grupos são úteis na navegação por uma coleção.

 Cada documento é descrito por um vetor de termos com pesos

associados.

 Cada grupo é descrito por um vetor de características ou termos

dominantes, com pesos associados a cada termo. Os grupos podem ser organizados em hierarquia ou no plano.

 O processo é iterativo até os grupos não mais mudarem e ocorre em

dois passos:

 Cada documento é associado a um grupo cuja similaridade entre o vetor

de características do grupo e o vetor documento é a máxima possível

(39)

Etapas da Mineração de Textos

Pósprocessamento dos dados ou análise dos resultados

-Validação dos resultados e avaliação da qualidade das

descobertas

Métricas de avaliação dos resultados, ferramentas de visualização

e conhecimento de especialistas ajudam a consolidar os resultados

 Métricas de avaliação – matriz de confusão, medidas de relevância

(Precisão, Revocação, F-measure), acurácia, erro de classificação.

 Ferramentas de visualização – visualização de dados e análise

exploratória de dados, geralmente a proximidade espacial em gráficos traduzem a similaridade de itens.

 Conhecimento de Especialistas – participação essencial dos

especialistas na análise da validade e avaliação dos padrões extraídos (utilidade,novidade, relevância).

(40)

Métricas de Qualidade

de Categorização/Agrupamento de

Documentos

 Métricas de Avaliação

 Valem para documentos estruturados e não-estruturados e para tarefas de categorização ou agrupamento de documentos:

 Acurácia

 Precisão (“Precision”)  Cobertura (“Recall”)

Média Harmônica da Precisão e Cobertura (“F-Measure”)

 Se compara a classe informada com a classe predita pelo modelo de aprendizagem de máquina.  No agrupamento é utilizada a heurística de voto majoritário para atribuir classe aos grupos de

documentos do conjunto de treinamento.

 É importante observar o desvio padrão das métricas

 A avaliação é feita utilizando um conjunto de documento independente do conjunto de

documentos utilizado para treinamento, denominado conjunto de teste, ou validação cruzada em 10 subconjuntos (10-fold cross validation).

 Detectar “spam e-mail” é uma tarefa de mineração de texto, mais especificamente de categorização de documentos. Como avaliar?

(41)

Ferramentas de Mineração de Dados:

KNIME

KNIME (Konstanz Information Miner)

https://www.knime.org/

KNIME Text Processing plugin

Suporta as seguintes tarefas:

IO: leitura e parsing de arquivos (txt,cvs,xml,html, pdf, doc), leitura e

escrita de tabelas (data table)

Enrichment: reconhecimento de entidades e pos tagging (para língua

inglesa)

Preprocessing: filtragem e manipulação de características

Frequencies: contagem de frequência de palavras e extração de

palavras-chave

Transformation: representação dos documentos ou termos em vetor

Classification: algoritmos de aprendizagem de máquina para agrupamento e

classificaçao

Visualization: nuvem de tags

(42)

Uso do KNIME

 Baixar o KNIME: https://www.knime.com/download-installer/2/64bit  Instalar o KNIME e execute-lo.

 No primeiro acesso serão instaladas as extensões, por isso vai demorar alguns minutos.

 Acesse no KNIME Explorer LOCAL > Example Workflows > Social Media > Topic Detection based

on Movie Reviews (duplo clique)

Aceite a instalação do plugin KNIME Text Processing, a finalização da instalação pode ser

observada na barra de status do programa, vai demorar alguns minutos, e depois o programa será reiniciado.

 Acesse no KNIME Explorer LOCAL > Example Workflows > Social Media > Topic Detection based

on Movie Reviews (duplo clique)

Execute todos os nodos executáveis do workflow (SHIFT+F7 ou clique no botão >>). Ao finalizar a

execução de um nodo, aparecerá a cor verde na parte inferior do ícone do nodo.

 Clicando com o botão direito sobre um nodo é possível reconfigurá-lo (opção Configure) ou ver o

resultado do processamento dele (acesso na última opção do menu).

 Ao alterar a configuração de um nodo, ele e os demais nodos no workflow devem ser executados

novamente.

(43)

KNIME – Extração de tópicos

43

(44)

KNIME - Categorização de Documentos

44

Acesse no KNIME Explorer > Examples >

(45)

KNIME - NER e Nuvem de tags

45

http://tech.knime.org/files/009004_nytimesrssfeedtagcloud.zip

(46)

KNIME - NER e Nuvem de tags

46

(47)

KNIME - Categorização de Documentos

47

Acesse no KNIME Explorer > Examples > _Old Examples (2015 and before)/ 009_TextMining/009001_DocumentClassification

(48)

KNIME – Categorização de Documentos

48

(49)

KNIME - Agrupamento de Documentos

49

https://tech.knime.org/files/009002_documentclustering.zip

Acesse no KNIME Explorer > Examples > _Old Examples (2015 and before) /009_TextMining/009002_DocumentClustering

(50)

KNIME – Agrupamento de documentos

50

(51)

Outras Ferramentas

51

R

• Open Source Statistical Platform

• Command driven

Rapid Miner

• Open Source Data Mining Workbench

• GUI

• Built on R and Weka

SPSS Text Analytics for Surveys

• Commercial Text Analytics

• GUI

(52)

Softwares utilizados

RapidMiner (http://rapid-i.com)

Programa de código aberto e com plugins para

pré-processamento de texto e consulta ao

WordNet. Permite programação visual do fluxo

de dados da tarefa de descoberta de

conhecimento.

(53)

Softwares utilizados

Statistical R (http://www.r-project.org/)

(54)

Softwares utilizados

Weka (http://www.cs.waikato.ac.nz/ml/weka/)

(55)

Weka

Programa Java de código aberto para mineração de dados. Possui

também recursos para preprocessamento de texto, o que permite

fazer uso dos algoritmos de aprendizado de máquina comuns na

mineração de dados para tarefas de agrupamento e classificação de

textos. Mais detalhes sobre o programa na

página oficial do Weka

.

Instruções de uso do weka para mineração de textos podem ser

obtidas na

weka wiki

.

 Algoritmos de Classificação Supervisionada

 J48, MNB, SVM, KNN...

 Algoritmos de Agrupamento

 Simple K-means, SOM

Problemas

Não trabalham com vetores esparsos

Não se dão bem com alta dimensionalidade

Alguns algoritmos Inferem ... Word

i

= ‘0’ ..., o que

não queremos

(56)

Outros softwares livres

U-Compare: é um sistema integrado para processamento de linguagem

natural e mineração de texto baseado no UIMA Framework. Permite

programação visual do fluxo de dados. Mais detalhes veja na página do

U-Compare.

Orange: Programa C++ de código aberto e acessível via código pyton. Permite

programação visual do fluxo de dados da tarefa de descoberta de

conhecimento. Possui plugins para mineração de texto. Mais detalhes no

site ORANGE.

 Softwares livres para mineração de dados:  ELKI

 TANAGRA

 SIPINA

 ALPHA MINER

(57)

Referências

Rezende, S.O. Sistemas inteligentes: fundamentos e

aplicações, Ed. Manole, São Paulo, 2003.

Um relatório técnico sobre KNIME Text Processing pode ser

acessado em:

Referências

Documentos relacionados

Então, em Belém, há principalmente duas situações que podem provocar eventos extremos: Na estação chuvosa, quando a grande escala (ZCIT) está atuando sobre a região, e

O pagamento das taxas relativas à emissão de lavarás ou comunicação prévia previstas nos artigos 3.º, 9.º a 10.º e 23.º a 24.º da (TU) pode, por deliberação da

O segundo Beneficiário será designado pelo Segurado na Proposta de Adesão, podendo ser substituído a qualquer tempo, mediante solicitação formal assinada pelo próprio Segurado, para

Muita gente já tinha escrito (verbo escrever, no Pretérito Mais-Que-Perfeito Composto do Indicativo) ao menino para lhe dizer que gostaria (verbo gostar, no Condicional) de

a) retirou a sua vontade, apropriando-se dela para sempre b) retirou a sua vontade, deixando-a partir, em seguida, para o céu c) não conseguiu retirar a sua vontade.. d) decidiu

Passava a vida a preparar 2- armadilhas e ratoeiras, a 3- percorrer as matas com cão e furão, a fazer pontaria a qualquer bicho de pena ou 4- pelo!. Era o papão

O cenário modelado de mudança no uso da terra até 2030, não somente demonstra a viabilidade da expansão agrícola sem novos desmatamentos, mas também o potencial para

Mineração de conhecimento interativa em níveis diferentes de abstração: Como é  difícil  prever  o  que  exatamente  pode  ser  descoberto  de  um  banco