extração de informação maior contribuição: domingos sávio, raoni franco, roberto costa e...
TRANSCRIPT
Extração de Informação
Maior contribuição: Domingos Sávio, Raoni Franco, Roberto Costa e Ronaldo MarquesAlguns slides de: Cirdes Borges, Flávio Dantas, Rafael Barbosa, Samuel Arcoverde, Tiago Rocha
Roteiro
Motivação História Processo de Extração Técnicas
Processamento de Linguagem Natural Wrappers
Aplicações Referências
Motivação
Internet/Web Crescimento exponencial de informações Maior parte da informação está na base de textos Documentos não estruturados ou semi-
estruturados Migração de dados entre diferentes interfaces.
Motivação
Como pesquisar?
Como resumir?
Como gerar bases de conhecimento?
O que é relevante?
História
Início (fim da década de 80) MUC-Message Understanding Conference
Processamento de Linguagem Natural Ontem
Internet Wrappers
Hoje Mash-up
Processo de Extração
Trata o problema da extração de dados relevantes a partir de uma coleção de documentos [Mus99]
Os dados a serem extraídos são previamente definidos em um template (formulário)
Sistema p/ EI
BD
Item1:Item2:Item3:Item4:Item5:
Template
BC
Processo de Extração
Objetivo: Transformar infomações não-estruturadas em um corpus
de documentos ou páginas web dentro de uma base de dados.
Aplicado em diferentes tipos de textos: Artigos de Jornais Web pages Artigos Científicos Mensagens de Newsgroup Classified ads Notas Médicas
EI Tradicional Extrair informações relevantes de um trecho de
texto Blah blah blah relevante blah blah blah
Domínio específico ex: Domínio de Businness
O significado do que é “relevante” é pré-definido ex: ciclo de vida de companhias
Ações: juntar, separar, comprar Companhias envolvidas e seus papéis Capital envolvido
Dados “obscuros” são desconsiderados
Utilidade da EI
A base estruturada resultante pode ser usada para: Procurar ou analisar, utilizando queries padrões de
banco de dados Mineração de Dados Geração de sumários (possivelmente em outra
linguagem) Construção de índices para a coleção de documentos
fonte.
Exemplo: Ataque Terrorista
Exemplo: Ataque Terrorista
Exemplo: Ataque Terrorista
EI comparada com outros campos relacionados
EI vs. Recuperação de Informação EI vs. Compreensão Completa do Texto
EI vs. Recuperação de Informação RI:
Dada uma consulta do usuário, um sistema de RI seleciona um subconjunto de documentos relevantes de um conjunto maior
Depois o usuário procura as informações que ele necessita no subconjunto selecionado
EI extrai informações relevantes de documentos RI e EI são tecnologias complementares
EI vs. Recuperação de Informação
Recuperação de Informação: Entrega documentos para o usuário
Extração de Informação: Entrega fatos para o usuário/aplicacões
EI vs. Compreensão Completa do Texto
• CCT – entendimento do texto inteiro
• CCT – respresentação alvo deve acomodar a complexidade da língua
• CCT – necessita reconhecer aspectos estilísticos
• EI – somente uma parte do texto é relevante
• EI – representação alvo rígida
• EI – estilo e cor do texto é irrelevante
Por que EI é difícil?
Interpretar linguagem natural é difícil A linguagem natural é flexível
várias formas para expressar a mesma informação (paráfrase) Frodo Baggins succeeds Bilbo Baggins as chairperson of
Bank of America. Bank of America named Frodo Baggins as its new chair-
person after Bilbo Baggins. Bilbo Baggins was succeeded by Frodo Baggins as chair-
person of Bank of America.
Por que EI é difícil?
A linguagem natural é ambígua A mesma sentença pode ter significados diferentes
Eu estava em sua companhia quando começou a chover Estava com alguma pessoa, ou na emrpesa da pessoa?
A linguagem natural é dinâmica Novas palavras podem ser introduzidas na língua
E.g, “ecoturismo” Palavras existentes podem ganhar novo sentido
Massa (macarrão ou legal?)
19
Subject: US-TN-SOFTWARE PROGRAMMERDate: 17 Nov 1996 17:37:29 GMTOrganization: Reference.Com Posting ServiceMessage-ID: <[email protected]>
SOFTWARE PROGRAMMER
Position available for Software Programmer experienced in generating software for PC-Based Voice Mail systems. Experienced in C Programming. Must be familiar with communicating with and controlling voice cards; preferable Dialogic, however, experience with others such as Rhetorix and Natural Microsystems is okay. Prefer 5 years or more experience with PC Based Voice Mail, but will consider as little as 2 years. Need to find a Senior level person who can come on board and pick up code with very little training. Present Operating System is DOS. May go to OS-2 or UNIX in future.
Please reply to:Kim AndersonAdNET(901) 458-2888 [email protected]
Subject: US-TN-SOFTWARE PROGRAMMERDate: 17 Nov 1996 17:37:29 GMTOrganization: Reference.Com Posting ServiceMessage-ID: <[email protected]>
SOFTWARE PROGRAMMER
Position available for Software Programmer experienced in generating software for PC-Based Voice Mail systems. Experienced in C Programming. Must be familiar with communicating with and controlling voice cards; preferable Dialogic, however, experience with others such as Rhetorix and Natural Microsystems is okay. Prefer 5 years or more experience with PC Based Voice Mail, but will consider as little as 2 years. Need to find a Senior level person who can come on board and pick up code with very little training. Present Operating System is DOS. May go to OS-2 or UNIX in future.
Please reply to:Kim AndersonAdNET(901) 458-2888 [email protected]
Sample Job Posting
20
Extracted Job Templatecomputer_science_jobid: [email protected]: SOFTWARE PROGRAMMERsalary:company:recruiter:state: TNcity:country: USlanguage: Cplatform: PC \ DOS \ OS-2 \ UNIXapplication:area: Voice Mailreq_years_experience: 2desired_years_experience: 5req_degree:desired_degree:post_date: 17 Nov 1996
21
Amazon Book Description….</td></tr></table><b class="sans">The Age of Spiritual Machines : When Computers Exceed Human Intelligence</b><br><font face=verdana,arial,helvetica size=-1>by <a href="/exec/obidos/search-handle-url/index=books&field-author= Kurzweil%2C%20Ray/002-6235079-4593641">Ray Kurzweil</a><br></font><br><a href="http://images.amazon.com/images/P/0140282025.01.LZZZZZZZ.jpg"><img src="http://images.amazon.com/images/P/0140282025.01.MZZZZZZZ.gif" width=90 height=140 align=left border=0></a><font face=verdana,arial,helvetica size=-1><span class="small"><span class="small"><b>List Price:</b> <span class=listprice>$14.95</span><br><b>Our Price: <font color=#990000>$11.96</font></b><br><b>You Save:</b> <font color=#990000><b>$2.99 </b>(20%)</font><br></span><p> <br>
….</td></tr></table><b class="sans">The Age of Spiritual Machines : When Computers Exceed Human Intelligence</b><br><font face=verdana,arial,helvetica size=-1>by <a href="/exec/obidos/search-handle-url/index=books&field-author= Kurzweil%2C%20Ray/002-6235079-4593641">Ray Kurzweil</a><br></font><br><a href="http://images.amazon.com/images/P/0140282025.01.LZZZZZZZ.jpg"><img src="http://images.amazon.com/images/P/0140282025.01.MZZZZZZZ.gif" width=90 height=140 align=left border=0></a><font face=verdana,arial,helvetica size=-1><span class="small"><span class="small"><b>List Price:</b> <span class=listprice>$14.95</span><br><b>Our Price: <font color=#990000>$11.96</font></b><br><b>You Save:</b> <font color=#990000><b>$2.99 </b>(20%)</font><br></span><p> <br>…
22
Extracted Book Template
Title: The Age of Spiritual Machines : When Computers Exceed Human IntelligenceAuthor: Ray KurzweilList-Price: $14.95Price: $11.96::
Tipos de texto Estruturado
Formato pré-definido e rígido Não-Estruturado
Livre Sentenças em alguma linguagem natural
Semi-estruturado Formatação não segue regras rígidas Algum grau de estruturação
campos ausentes variações na ordem dos dados
<HTML><TITLE>Some Country Codes</TITLE><BODY> <B>Congo</B> <I>242</I><BR> <B>Egypt</B> <I>20</I><BR> <B>Spain</B> <I>34</I><BR> <B>Belize</B> <I>501</I><BR>
<HR></BODY></HTML>
• Uno 97, 4p., Ar, Dir, VE, Som, Prata• Gol 16V, ano 94, Ar, 2 portas, Al.• Corsa 92, c/ 2 portas, Alarme, Rodas
Estudantes caras-pintadas protestaram, ontem, no Centro de São Paulo exigindo o impeachment do prefeito Celso Pitta, acusado de corrupção por sua ex-mulher.
Tipos de Sistemas para EI Baseados em PLN
Extrair informações de textos em linguagem natural (livre) Padrões lingüísticos
Wrappers Principalmente para textos estruturados e semi-estruturados Formatação do texto, marcadores, freqüência estatística das
palavras Construção
Manual X Aprendizagem
Processamento de Linguagem Natural
Utilizado no tratamento de documentos com pouco ou nenhum grau de estruturação
PLN caracteriza-se pela análise e manipulação ou codificação de informações expressas em língua natural a fim de encontrar os dados relevantes a serem extraídos
Processamento de Linguagem Natural
Nível Morfológico: estudo da constituição das palavras em elementos básicos;
Nível Sintático: determinação da relação (papel) de um conjunto de palavras em uma sentença;
Nível Semântico: determinação do significado e inter-relacionamento semântico das palavras;
Nível Discursivo: objetiva-se em determinar o significado de um conjunto de sentenças;
Nível Pragmático: Visa determinar o objetivo do uso da língua
Processamento de Linguagem Natural Técnicas capazes de lidar com as
irregularidades das línguas naturais Técnicas:
Part-of-speech (POS) tagging Mark each word as a noun, verb, preposition,
etc. Syntactic parsing
Identify phrases: NP, VP, PP Semantic word categories
KILL: kill, murder, assassinate, strangle, suffocate
Nível Morfológico A análise Morfológica determina o radical + sufixo
da palavra, e geralmente adiciona informações relacionadas, como: Classe da palavra Conjugação Pessoa
A análise morfológica pode ser implementada através de algoritmos baseados em regras eats eat + s verbo, singular, 3rd pers
dog dog nome, singular
Nível Sintático A análise sintática faz uso das marcações geradas pela
análise morfológica, buscando relacionamento entre palavras.
Tem como saída uma representação da sentença que mostra as dependências entre palavras Sujeito Predicado, etc...
As sentenças do exemplo possuem a mesma sintaxe, mas apresentam significados diferentes O gato correu atrás do rato O rato correu atrás do gato
Nível Semântico Não é apenas neste nível que o significado é
determinado, todos os níveis contribuem para a determinação do significado
O nível semântico determina o possível significado de uma sentença, focando nas interações entre os significados das palavras na sentença
Ambigüidade semântica A cabeça une-se ao tronco pelo pescoço Ele é o cabeça da rebelião Sabrina tem boa cabeça
Nível Discursivo Analisa textos maiores que sentenças Foca nas propriedades do texto como um todo,
determinando o significado através das conexões entre sentenças
Resolução de Anáfora: Substituição de pronomes pelas entidades que eles referenciam
Reconhecimento da Estrutura de Texto: Em um jornal temos; Artigos de capa, opniões, eventos
passados, anúcios
Nível Pragmático Trata do uso da língua, e das intenções do falante Foca no significado que vai além do texto Os exemplos seguintes utilizam anáforas mas as
resoluções necessitam de um conhecimento global Os vereadores recusaram receber os manifestantes, porque eles
temiam o confronto Os vereadores recusaram receber os manifestantes, porque eles
defendiam a revolução.
Wrappers Maior desenvolvimento da WEB nos anos 90 Necessidade de sistemas mais eficientes
com capacidade suficiente para extrair informação dos textos da WEB.
Extraem a informação de documentos para preencher templates
Podem ser construídos de forma manual ou automática
Construção manual de Wrappers Baseada em engenharia do conhecimento
Construção manual de regras de extração Padrões de extração são descobertos por especialistas
após examinarem o corpus de treinamento Vantagem
Boa performance dos Sistemas Desvantagens
Processo de desenvolvimento trabalhoso Escalabilidade Especialista pode não estar disponível
Construção Automática de Wrappers
Aprendizagem de máquina Aprender sistemas de EI a partir de um conjunto de
treinamento Vantagens
Mais fácil marcar um corpus do que criar regras de extração
Menor esforço do especialista Escalabilidade
Desvantagens Esforço de marcação do corpus de treinamento
Wrappers - Técnicas de Extração Definem como o sistema realiza o processo
de extração da informação Técnicas
Autômatos Finitos Casamento de Padrões Classificação de Textos Modelos de Markov Escondidos
Wrappers – Autômatos Finitos Regras de extração na forma de autômatos finitos Definidos por:
(1) estados que “aceitam” os símbolos do texto que preenchem algum campo do formulário de saída,
(2) os estados que apenas consomem os símbolos irrelevantes encontrados no texto, e
(3) os símbolos que provocam as transições de estado Textos estruturados e semi-estruturados
Delimitadores, ordem dos elementos
Wrappers – Autômatos finitos Exemplo
<LI> <A HREF="…"> Mani Chandy </A>, <I>Professor of Computer Science</I> and <I>Executive Officer for Computer Science</I>
…<LI> Fred Thompson, <I>Professor Emeritus of Applied Philosophy and
Computer Science</I>
b
U_U
N_N
? / å etc.
? / å
? / å
? / next_token
? / next_token
Key• ? : wildcard• U : state to extract URL• U : state to skip over tokens
until we reach N• N : state to extract Name• N : state to skip over tokens
until we reach A• s<X,Y> : separator rule for
the separator ofstates X and Y
• etc.
Key• ? : wildcard• U : state to extract URL• U : state to skip over tokens
until we reach N• N : state to extract Name• N : state to skip over tokens
until we reach A• s<X,Y> : separator rule for
the separator ofstates X and Y
• etc.
s<U,U> / ås<U,U> / å
s<b,U> /“U=”+ next_token
s<N,N> / ås<N,N> / ås<b,N> /“N=”+ next_token
s<U,N> /“N=”+ next_tokens<U,N> /“N=”+ next_token
Wrappers - Casamento de Padrões Aprendem regras na forma de expressões regulares. Expressões regulares que “casam” com o texto para extrair as
informações Textos livres, estruturados e semi-estruturados
Delimitadores, padrões regulares (Ex. data, CEP)
Padrão :: * (Digit) ‘ BR’ * ‘$’ (Number)Formulário:: Aluguel {Quartos $1} {Preço $2}
Capitol Hill – 1 br twnhme. fplc D/W W/D.Undrgrnd pkg incl $675. 3 BR, upper flrof turn of ctry HOME. incl gar, grt N. Hillloc $995. (206) 999-9999 <br><i> <font size=-2>(This ad last ranon 08/03/97.) </font> </i> <hr>
Wrappers - Classificação de textos Dividem o texto de entrada em fragmentos candidatos a
preencher algum campo do formulário de saída. Classificam os fragmentos com base em suas características
posição número de palavras presença de palavras específicas letras capitalizadas
Desvantagem Classificação local independente para cada fragmento
(desvantagem) Textos semi-estruturados
Classificação de Textos
Classificam fragmentos do documento para determinar que campo do formulário eles devem preencher
Classificador
outrosempresaoutrosnomecargoenderecoenderecotelefonetelefone
Wrappers - Modelos de Markov Escondidos (HMM) Um HMM é um autômato finito probabilístico que
consiste em: (1) Um conjunto de estados ocultos S; (2) Uma probabilidade de transição Pr[s’/s] entre os estados
ocultos s E S e s’ E S; (3) Um conjunto de símbolos T emitidos pelos estados ocultos; (4) Uma distribuição de probabilidade Pr[t/s] de emissão de cada
símbolo t E T para cada estado escondido s E S.
Processo de classificação O algoritmo Viterbi Retorna a seqüência de estados ocultos com maior
probabilidade de ter emitido cada seqüência de símbolos de entrada.
Wrappers - Modelos de Markov Escondidos (HMM) Vantagem
Realizar uma classificação ótima para a seqüência completa de entrada.
Desvantagem Não é capaz de fazer uso de múltiplas características
dos Tokens por exemplo, formatação, tamanho e posição
Desenvolvimento Teórico Um “modelo” HMM é
definido por:
1 2
3
y1 y2 y3 y4 y1 y2 y3 y4
y1 y2 y3 y4
a12
a13
a21
a23
a31 a23
a11 a22
a33
b11
b31
b21
b32
b12 b22
b33
b13 b23b14 b24
b34 O número de estados não-visíveis. A matriz de transição de estados.
O número de observações ou estados visíveis.
A matriz de probabilidade de emissão de estados visíveis.
Exemplos de Aplicações
Extração de Informação em Documentos Conteúdo
Análise Estrutural Análise Semântica
Empresa portuguesa responsável por 3,4% do PIB de Portugal.
Aplicações
Extração de Informação em Documentos Análise do Código Fonte de Aplicações
Uso de Padrões Qualidade do Código
Empresa de Curitiba, oferece sistemas de análise do código fonteem diversas linguagens.
Aplicações
Extração de Informação na WEB Filtragem de Fóruns
Controle do Conteúdo Assunto dos Diálogos
Empresa de São Paulo com mais de 20 anos de mercado. Oferecesoluções para e-learning.
Aplicações
Extração de Informação na WEB Monitoramento da WEB
Busca por HackersBusca por Terroristas
Empresa mundialmente reconhecida, presente no Brasil há 10 anos,
oferecendo soluções nas áreas de segurança web e redes.
Aplicações
Aplicações Extração de Informação na WEB
Monitoramento de opiniões espontâneas da WEB Análises qualitativas e quantitativas dos dados recolhidos Informação estruturada de cada post, a partir de cada serviço
cadastrado. Empresa brasileira com
3 anos de mercado.
Extração de Informações Estratégicas Business Intelligence
Análise de MercadoMelhoria de Processos
Empresa brasileira que oferece soluções na área de BI.
Aplicações
Extração de Informações Estratégicas Análises Biológicas de Dados
Regiões Codificantes (DNA)Regiões Ativas (Proteínas)
National Center for Biotechnology Information, criado em 1988, localizadonos Estados Unidos. É a principal fonte de informações sobre Genômicana Internet.
Aplicações
Extração de Informações EstratégicasAnálises de Arquivos de LOG
Logs de ErroLogs de Acesso
Empresa mundialmente reconhecida, com mais de 25 anos, oferece
soluções para a análise de logs de erro e acesso a bancos de dados.
Aplicações
Extração de Informações Estratégicas Análises de Imagens
GeologiaClimatologiaAstrologia
Empresa brasileira com 10 anos de mercado, oferece soluções paraanálise e classificação de imagens.
Aplicações de RI
Referências
Uma Abordagem de Aprendizagem Híbrida para Extração de Informação em Textos Semi-Estruturados. Eduardo F.A. Silva, Flávia A. Barros & Ricardo B. C. Prudêncio
http://gate.ac.uk/ie/index.html Negócios Integrados - http://www.ni.com.br/ PT Sistemas de informação - http://www.ptsi.pt/PTSI ATSolutions - http://www.atsolutions.com.br/ Techne - http://www.techne.com.br/ Datacraft - http://www.datacraft.com.br/ NBCI - http://www.ncbi.nlm.nih.gov/ Semiotic Systems - http://www.semiotic.com.br/ E.life - http://www.elife.com.br/
Extração de Informação
Perguntas?