Classificadores Bayesianos

Documentos relacionados
Classificação: 1R e Naïve Bayes. Eduardo Raul Hruschka

Métodos para Classificação: - Naïve Bayes.

Aprendizagem Bayesiana

Aprendizado Bayesiano Anteriormente...

Inteligência Artificial. Raimundo Osvaldo Vieira [DComp IFMA Campus Monte Castelo]

Exame de Aprendizagem Automática

Exame de Aprendizagem Automática

Aprendizado de Máquina (Machine Learning)

Aprendizado de Máquina. Combinando Classificadores

Aprendizado de Máquina. Conteudo. Terminologia. Notes. Notes. Notes. Notes. Aprendizagem Bayesiana. Luiz Eduardo S. Oliveira

Descoberta de conhecimento em redes sociais e bases de dados públicas

Aprendizado Bayesiano

Agregação de Algoritmos de Aprendizado de Máquina (AM) Professor: Eduardo R. Hruschka Estagiário PAE: Luiz F. S. Coletta

Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas

Aprendizagem de Máquina

Análise Sintática de Frases utilizando Gramáticas Livres de Contexto Probabilísticas

Modelos Bayesianos. Ernesto F. L. Amaral Magna M. Inácio

Aprendizado de Máquina (Machine Learning)

Utilização do Corte Percentual na categorização de documentos da Web com o algoritmo Naive Bayes

Avaliando Hipóteses. George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE

Cap. 4 - Estimação por Intervalo

Inteligência Artificial. Raimundo Osvaldo Vieira [DECOMP IFMA Campus Monte Castelo]

Aprendizagem de Máquina - 2. Prof. Júlio Cesar Nievola PPGIa - PUCPR

lnteligência Artificial Raciocínio Probabilístico - Introdução a Redes Bayesianas

Classificação. Eduardo Raul Hruschka

Descoberta de Conhecimento em Bancos de Dados - KDD

Aprendizagem de Máquina. Prof. Júlio Cesar Nievola PPGIA - PUCPR

CEFET/RJ Inteligência Artificial (2018.1) Prof. Eduardo Bezerra Lista de exercícios 05

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

CAPÍTULO 4 PROBABILIDADE PROBABILIDADE PPGEP Espaço Amostral e Eventos Espaço Amostral e Eventos UFRGS. Probabilidade.

CLASSIFICADORES BAEYSIANOS

Inteligência nos Negócios (Business Inteligente)

Aprendizado de Máquina (Machine Learning)

Mineração de Dados em Biologia Molecular

Probabilidades. Wagner H. Bonat Elias T. Krainski Fernando P. Mayer

Modelagem para previsão/estimação: uma aplicação Neuro-Fuzzy

WEKA: Prática Carregando a base de dados no Weka

6. QUADRIMESTRE IDEAL 7. NÍVEL Graduação 8. Nº. MÁXIMO DE ALUNOS POR TURMA

Minicurso: Inteligência Artificial Aplicada a Sistemas Elétricos

Disciplina: Processamento Estatístico de Sinais (ENGA83) - Aula 03 / Detecção de Sinais

DCBD. Avaliação de modelos. Métricas para avaliação de desempenho. Avaliação de modelos. Métricas para avaliação de desempenho...

Classificação e Predição de Dados - Profits Consulting - Consultoria Empresarial - Serviços SAP- CRM Si

Combinação de Classificadores (fusão)

2 Sentiment Analysis 2.1

Aprendizado de Máquina (Machine Learning)

INF 1771 Inteligência Artificial

INTELIGÊNCIA ARTIFICIAL

6 Atributos. A dívida da empresa subiu.

TÍTULO: IDENTIFICAÇÃO DE CARACTERES APRESENTADOS A UMA CÂMERA POR MEIO DO MOVIMENTO DOS DEDOS DA MÃO DE UM SER HUMANO

Chamamos de evento qualquer subconjunto do espaço amostral: A é um evento A Ω.

27/02/2014. Tratamento de Incertezas TIC Aula 0. Conteúdo Apresentação da Disciplina. Motivação Programa da disciplina

Plano. Aspectos Relevantes de HMMs. Teoria de HMMs. Introdução aos Modelos Escondidos de Markov

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação

Lista de Exercícios - Capítulo 8 [1] SCC Inteligência Artificial 1o. Semestre de Prof. João Luís

MCZA Processamento de Linguagem Natural Classificação de textos

Probabilidade. Ricardo Ehlers Departamento de Matemática Aplicada e Estatística Universidade de São Paulo

Estatística Descritiva

1 Classificadores Bayseanos Simples

Implementação de um Modelo para Previsão de Evasão Escolar no IFSULDEMINAS

Les Estatística Aplicada II AMOSTRA E POPULAÇÃO

Reconhecimento de Padrões

Probabilidade. Ricardo Ehlers Departamento de Matemática Aplicada e Estatística Universidade de São Paulo

Fabrício Jailson Barth BandTec

Transcrição:

Escola Politécnica da Universidade de São Paulo Departamento de Engenharia de Computação e Sistemas Digitais - PCS PCS5708 Técnicas de Raciocínio Probabilístico em Inteligência Artificial Classificadores Bayesianos Aplicados a análise sintática da língua portuguesa Marcelo Li Koga Prof.: Paulo Cugnasca 28 de maio de 20

Introdução A área de linguística computacional apresenta muitos desafios atualmente, pois a análise de uma linguagem natural meio de uma máquina é uma tarefa bastante complexa. Nesse contexto, o uso de técnicas de raciocínio probabilístico é de grande auxílio pois a análise da linguagem traz muitas incertezas e é necessário saber lidar com elas. Múltiplas classes gramaticais, ambiguidades e figuras de linguagem são exemplos de características que geram essas incertezas. O objetivo desse trabalho é investigar o uso de uma técnica probabilística Naive Bayes aplicada a uma subtarefa da análise sintática da linguagem: a classificação de sujeito de uma oração. É uma tarefa de classificação portanto, realizada em conjunto com uma aprendizagem supervisionada. O capítulo 2 descreve o problema de classificação em geral, 3 e 4 versam sobre o classificador Naive Bayes e suas extensões respectivamente, cap. 5 apresenta alguns resultados de experimentos práticos da tarefa e finalmente no cap. 6 as conclusões são mostradas.

2 Classificação O objetivo do problema de classificação é a previsão de categorias (também chamadas de etiquetas) para os dados. Dado um conjunto de dados e de categorias definidas, a tarefa do classificador é construir um modelo capaz de atribuir corretamente uma categoria a cada dado. O primeiro passo para construir um classificador é a definição de um conjunto de treinamento. Este contém uma lista de exemplos (definidos por atributos) cada um com sua respectiva classe. O conjunto de treinamento é então submetido a um algoritmo de classificação e um modelo é construído (indução). Esse modelo pode ser de diversas formas dependendo do algoritmo escolhido, como uma lista de regras, uma árvore de decisão, uma fórmula matemática ou cálculo de probabilidades como no caso do Naive Bayes explicado na próxima seção. Em posse do modelo, o classificador pode então atribuir categorias a novos dados nunca vistos antes (dedução). Para medir a qualidade do modelo construído, pode-se usar um conjunto de teste, que deve ser independente do conjunto de treinamento, cujas classificações também são conhecidas de modo que seja possível averiguar a taxa de acerto do modelo proposto. Vários são os algoritmos existentes para classificação e o que será apresentado na seção a seguir é de um classificador probabilístico, o Naive Bayes. 2

3 Classificador Naive Bayes O classificador Naive Bayes é classificador probabilístico baseado no teorema de Bayes (Thomas Bayes) com uma premissa simples: todos os atributos são independentes entre si. A Figura ilustra o modelo. Ela indica que cada atributo A i influencia a classe C, mas nenhum exerce influência sobre o outro. Figura - Modelo Probabilístico Naive Bayes Como classificador probabilístico, ele calcula as probabilidades de uma classe C, dados os atributos A, A 2, A 3,etc. p ( C A, A2, A3,...) Aplicando o teorema de Bayes, a probabilidade seria assim calculada: C) A C) A2 A, C) A3 A2, A2, C)... Mas com a premissa de independência de atributos, o cálculo é simplificado para: C) A C) A2 C) A3 C)... p ( C) A i C) Com a independência de atributos, o classificador Naive Bayes torna-se um método simples e efetivo, tornando-o atrativo. Poucos são os parâmetros que precisam ser estimados, pois apenas as probabilidades a priori de classe e as condicionais de cada atributo dada a classe são necessários. São (k ) + n r k parâmetros, onde k é o número de classes, r é o número de valores diferentes que cada atributo pode assumir e n é o número de atributos. i 3

Essa premissa de independência é muitas vezes irreal, mas diversos estudos[2][3] mostram que na prática ela se torna pouco relevante, pois o classificador Naive Bayes apresenta resultados comparáveis a muitos outros algoritmos mais complexos [4]. Muitas vezes, apesar da dependência entre atributos existir, ela não influencia na classificação. 3. Aprendizagem A estimativa das probabilidades é a tarefa da aprendizagem desde classificador. E é uma tarefa simples: a probabilidade será a frequência relativa de cada classe (probabilidades a priori) e cada atributo dada a classe (probabilidades condicionais) no conjunto de treinamento. Por exemplo, se temos 00 exemplos no total, sendo 60 da classe A e 40 da classe B, então: classe A) 0,6 classe B) 0,4 Ainda, se desses 60 da classe A, metade tem atributo A = verdadeiro e metade A = falso e na classe B, todos tem A = falso, então temos: A A verdadeiro A) 0,5 verdadeiro B) 0 A A falso A) 0,5 falso B) E assim por diante, todas as probabilidades são calculadas. Deve-se ter atenção com o caso de não ocorrer certa manifestação de um atributo para determinada classe, caso que a estimativa seria zero (como A = verdadeiro B) no exemplo). Pois como a probabilidade é calculada como um produtório de todas as probabilidades condicionais e a a priori, se houver uma nula, todo o resultado será nulo. Por isso, devemos fazer uma correção de modo que nenhuma estimativa fique em zero: A A verdadeiro A) 0,5 verdadeiro B) 0,0 A A falso A) 0,5 falso B) 0,99 Isso tudo caso os atributos sejam discretos. Caso o atributo seja contínuo, não contamos simplesmente a frequência, mas podemos aproximar a distribuição dos valores para uma distribuição normal []. Portanto, calcula-se a média μ e o desvio-padrão σ² dos 4

dados do conjunto de treinamento e assume-se que o atributo se encaixa numa gaussiana definida por esses 2 parâmetros. A probabilidade é calculada usando-se a função gaussiana: p ( x ) 2 2 ( Ai C) e 2 ² 2 3.2 Decisão Em posse do modelo probabilístico, o classificador pode então calcular as probabilidades de cada classe para uma determinada entrada. Assim sendo, a decisão da classe escolhida é a da hipótese que obtiver a maior probabilidade, regra chamada de Maximum a Posteriori. 5

4 Extensões ao Naive Bayes Este capítulo apresenta algumas técnicas que propõem algumas alterações ao Naive Bayes visando principalmente amenizar sua maior deficiência, que é a premissa de independência entre os atributos. 4. Random Naive Bayes A ideia do Random Naive Bayes é contruir, ao invés de apenas um classificador, diversos classificadores Naive Bayes. No entanto, eles não levarão em conta todos os atributos disponíveis. Cada um será construído utilizando apenas uma quantidade m de atributos aleatórios. Assim, se existe dependência entre alguns atributos ela tende a ser minimizada pois nem todo classificador usa os atributos dependentes entre si e sim subconjuntos que podem ser independentes. Para se chegar a uma resposta final será necessário então combinar as respostas de cada um dos classificadores. Um jeito é escolher a classe mais votada, e esses votos podem ser ponderados pelas probabilidades das hipóteses. 4.2 AODE O AODE (Averaged One-Dependence Estimators) adota outra abordagem para minimizar a dependência dos atributos. Na realidade, ele estende a estrutura do Naive Bayes, incluindo também a dependência de cada atributo com um outro atributo. A Figura 2 ilustra esse modelo. Note que ela mostra a influência de atributos entre si, diferentemente da Figura do Naive Bayes. O AODE também constrói diversos modelos, mais precisamente n modelos, onde n é o número de atributos. Em cada modelo, existe um atributo alvo A alvo e as probabilidades consideradas são as condicionais desse alvo. Por exemplo, consideraremos: C), A A alvo,c), A 2 A alvo,c), etc. 6

Figura 2 - Modelo probabilístico do AODE Ou seja, o AODE calcula um nível de dependência e faz isso n vezes. A resposta final será a composição da resposta de todos os classificadores, tal qual no Random Naive Bayes. O AODE tenta melhorar a relação custo computacional / precisão do Naive Bayes e com um pequeno aumento de computação enfraquece a hipótese de independência apresentando maior precisão [5]. 7

5 Classificador de Tipos de Sujeito 5. Descrição O classificador desenhado nesse trabalho é um classificador de tipo de sujeito de orações. Na língua portuguesa, uma oração pode ser classificada de 4 maneiras com relação ao sujeito: sujeito explícito (SE), sujeito oculto (SO), sujeito indeterminado (SI) ou oração sem sujeito (OSS). O sujeito explícito é o caso mais comum, no qual o sujeito aparece na frase como em Marcelo caiu o sujeito é justamente Marcelo. Já o sujeito oculto é o caso que ele está implícito na frase, e pode ser inferido pelo contexto ou frases anteriores (posteriores). Por exemplo, na oração Fui ali o sujeito não está escrito, mas sabe-se que é eu pela flexão do verbo. O sujeito indeterminado também ocorre quando ele não está explícito mas não se pode inferir quem é o sujeito, como em Roubaram meu carro não se sabe quem roubou o carro. O último caso ocorre quando a oração não possui sujeito, caso de verbos de fenômenos naturais ou verbo haver no sentido de existir, como em Houve acidentes ou Choveu ontem. Então dizemos que essas orações são sem sujeito. O objetivo é então construir um classificador capaz de deduzir o tipo de sujeito de uma oração, como mostra a Tabela. Tabela - Exemplos classificador de sujeitos Entrada Eu gosto de futebol. Fica ali. Precisa-se de vendedores. Venta muito aqui. Existem traidores aqui. Saída Sujeito Explícito Sujeito Oculto Sujeito Indeterminado Oração Sem Sujeito Sujeito Explícito 5.2 Treinamento Como explicado no capítulo 2 e 3, os classificadores atuam sobre um conjunto de atributos. Precisa-se então definir quais são os atributos pois a entrada inicial são apenas frases em linguagem natural. Decidiu-se extrair das frases alguns atributos morfológicos e estruturais, a saber: Pessoa do verbo (ª, 2ª ou 3ª ) 8

Número do verbo (singular ou plural) Se verbo possui hífen + se Se radical do verbo é haver Se radical do verbo é fazer, ser, estar, ir, vir ou passar (i.e., é verbo que pode indicar tempo?) Classe gramatical da palavra anterior ao verbo Ou seja, as frases de entrada precisam antes passar por um pré-processamento para extração dos atributos, usando principalmente um analisador morfológico. Neste trabalho, usou-se o analisador JJSpell. Certamente o processo de escolha desses atributos foi guiado pela experiência no uso da língua, não foram escolhidos aleatoriamente. A pessoa e número do verbo são importantes pois sujeito indeterminado só ocorre em 3ª pessoa, assim como uma das formas deste sujeito é com o -se. Os atributos com radicais de verbos específicos são principalmente para diferenciar as orações sem sujeito, que podem ocorrer com o verbo haver no sentido de existir ou também com verbos indicando passagem de tempo. A classe gramatical da palavra que antecede o verbo é outro atributo bastante importante pois se é um substantivo ou pronome, a chance maior é de que seja o caso de suj. explícito ou caso não exista palavra anterior (verbo é a primeira palavra), maior chance de sujeto oculto. Outro critério para a escolha desses atributos é o fato de eles serem de fácil extração, pois certamente existem outras características mais incisivas para inferência do sujeito, no entanto, elas não são simples de serem detectadas por máquinas. Definidos os atributos, textos jornalísticos do site Folha.com 2 e o conto A Cartomante de Machado de Assis foram usados como conjunto de treinamento, sendo que 43 orações foram classificadas manualmente para esse fim. A Tabela 2 mostra alguns exemplos deste conjunto: JJSpell - A Java wrapper for the Jspell morphologic analyser. Disponível em: http://code.google.com/p/jjspell/ (acesso em 28/05/20) 2 Folha.com. Disponível em: http://www.folha.uol.com.br/ (acesso em 28/05/20) 9

Tabela 2 - Exemplos do conjunto de treinamento Oração Pessoa Núm. -se? Haver Tempo Anterior Classe Os homens são assim 3ª Plural Não Não Não Subst SE Não acreditam em nada 3ª Plural Não Não Não Conj SO Confessei que sim ª Sing Não Não Não -- SO 5.3 Resultados Foram usadas as implementações do software WEKA [6] para contruir-se os classificadores. Para validá-los, utilizou-se a técnica de validação cruzada com 0 subconjuntos. Os valores das taxas de acerto podem ser verificados na Tabela 3. Tabela 3 - Resultados Naive Bayes Random AODE Taxa de Acerto 83,33 % 79,9 % 80,5 % Todas as três técnicas apresentaram resultados similares, com o Naive Bayes até um pouco melhor. Isso se deve porque neste exemploos atributos não são muito dependentes entre si. A matriz de confusão para o Naive Bayes pode ser vista na Tabela 4. A linha do Sujeito Indeterminado só possui zeros porque nenhum exemplo do conjunto de treinamento apresentava essa classificação. Tabela 4 - Matriz de confusão Classificado Como Suj. Explícito Suj. Oculto Suj. Indeter Sem Sujeito Suj. Explícito 86 9 0 0 Suj. Oculto 30 0 0 Su. Indeterminado 0 0 0 0 Sem Sujeito 2 0 4 0

6 Conclusões Com a realização deste trabalho, conclui-se que o uso de técnicas probabilísticas é de grande valia ao processamento de linguagem natural. O resultado alcançado com o Naive Bayes, de 84%, é bastante relevante e pode ser usado como auxílio na análise sintática. Além disso, mostra que a técnica do Naive Bayes é de fato efetiva e que a hipótese de independência muitas vezes não influencia o resultado. Espera-se que em trabalhos futuros possa-se ampliar o escopo da análise, classificando não apenas o sujeito mas outros aspectos como a predicado, a própria morfologia ou até a árvore sintática completa.

7 Referência Bibliográfica. Russel, S. e Norvig, P. Inteligência Artificial. Tradução da Segunda Edição. Cap. 4 e 20. Rio de Janeiro, Elsevier (2004) 2. Zhang, H. The Optimality of Naive Bayes. 3. Rish, Irina. An empirical study of the naive Bayes classifier. IJCAI 200 Workshop on Empirical Methods in Artificial Intelligence (200) 4. Langley, P.; Iba, W. e Thompson,K. An analysis of Bayesian classifiers. In: Proceedings AAAI- 94 Seattle, WA, AAAI Press and MIT Press (992), pp. 223 228 5. Webb, G. I., J. Boughton, and Z. Wang. Not So Naive Bayes: Aggregating One-Dependence Estimators. Machine Learning 58(). Netherlands: Springer, pages 5-24 (2005) 6. WEKA Data Mining with Open Source Machine Learning in Java. www.cs.waikato.ac.nz/ml/weka/ (acesso em 28/05/20) 2