Tutorial em Processamento de Linguagem Natural
-
Upload
encontro-em-computacao-semantica -
Category
Technology
-
view
50 -
download
0
Transcript of Tutorial em Processamento de Linguagem Natural
Processamento de Linguagem NaturalPrimeiro Encontro em Computacao Semantica - Tutoriais
Danilo S. CarvalhoHugo C. C. Carneiro
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
O que e
Ramo de estudo resultante da uniao de esforcos entre aCiencia da Computacao, Ciencia da Informacao e Linguıstica.
Compreende a analise, manipulacao e geracao da linguagemhumana atraves de computador.
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Nıveis da analise: A informacao desejada
A informacao contida no texto pode ser analisada de mais deum ponto de vista.
Do que fala?Quem fala?Como fala?
Podemos descobrir o assunto de um texto olhando apenaspara uma sentenca?
Podemos descobrir o autor de um texto observando todas assuas palavras?
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Nıveis da analise: Discurso X palavra
A sequencia de sentencas ou de documentos inteiros pode sertao importante quanto as sequencias de palavras que osformam.
Da palavra ao discurso, ha informacao util a ser obtida.
Entretanto, as tecnicas tendem a ser diferentes para cadanıvel.
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Nıveis da analise: Unidade de significado
E aquilo ao qual podemos atribuir um significado. Exemplos:
A opiniao de uma carta sobre a polıtica economica atual(discurso).Uso de voz passiva para amenizar um fato contundente(sentenca).Nome (palavra).
A escolha da unidade de significado depende da informacaodesejada.
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Aplicacoes do Processamento de Linguagem Natural
Correcao de texto (ortografia, gramatica)
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Aplicacoes do Processamento de Linguagem Natural
Classificacao de textos
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Aplicacoes do Processamento de Linguagem Natural
Extracao de informacoes
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Aplicacoes do Processamento de Linguagem Natural
Outros
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Modelos para a linguagem
Representacao da lıngua humana para o computador deve aomesmo tempo manter a expressividade e flexibilidade, masproporcionando a consistencia matematica necessaria paraaplicacao de algoritmos diversos.
Essa e uma tarefa difıcil, para a qual existem muitas respostaspossıveis, mas nenhuma definitiva.
Modelos computacionais para a lıngua podem ser classificadosem dois tipos principais:
EstatısticosNao estatısticos
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Modelos estatısticos
n-gramas: Cada sequencia de n termos possui umaprobabilidade de ocorrer. Logo pode-se prever o proximotermo de uma sequencia conhecendo os anteriores.
Posicionais: Cada termo (ou sequencia) possui umaprobabilidade de ocorrer dado sua posicao relativa aos outrostermos.
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Modelos nao estatısticos
Simbolico: Cada termo (ousequencia) e associado a um sımbolo,cujas interacoes sao definidas porregras.
Vetorial: Cada termo, sequencia oudocumento e associado a umacoordenada de um espacomultidimensional. Por exemplo, umdocumento pode ser representado porum vetor, onde as coordenadas saopreenchidas com as frequenciasrelativas de ocorrencia dos termos.
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Recursos
Listas de palavras
Stopwords
Palavras muito comuns
Pouca relevancia
e, mas, como, nao, tudo, cada, pode, deve, e, ha, um, a, o
Mais stopwords dependendo do contexto
computador, maquina, codigo
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Recursos
Dicionarios
Conjunto de palavras e suas definicoes
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Recursos
IndicesReferencias para simplificacao na busca por conteudos
Sumarios, ındices remissivos, palavras-chave
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
RecursosTesauros
Listagem de palavras agrupadas de acordo com similaridadesinonimos, antonimos
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Recursos
Wordnet
Banco de dados lexicos
Termos agrupados em synsets
hipernımia (gato → felino)hiponımia (felino → leao)coordenacao (gato ↔ leao)meronımia (casa → porta)holonımia (porta → casa)troponımia (dialogar → falar)implicacao (roncar → dormir)particıpios (cansado → cansar)
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Recursos
CorporaConjuntos grandes e estruturados de textos
anotados / nao anotados
textuais / orais
corpora paralelos
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
RecursosTreebanks
Corpora com anotacoes sintaticas e/ou semanticasMais conhecido/utilizado → Penn Treebank
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
TokenizacaoDeteccao de termos
Palavras com muitos termosDonaudampfschifffahrtsgesellschaftskapitanDonau dampf schiff fahrts gesellschafts kapitan
Termos que possuem pontuacao em sua composicaosiglas, quantias etc
Scriptio continua
Foto por Vincent Ramos, sob licenca da GNU Free Documentation License.
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Stemming
Qual radical de uma palavra?
Como extrair sua informacao relevante?
menino / meninacantar / canta / cantofelizmente / felicidade / felizinconstitucionalissimamente / constitucional / constituicao
Um stemming mal feito pode prejudicar a extracao deinformacoes relevantes
idade / ir / i ?
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
POS-tagging
Classificacao gramaticalAs palavras mais comuns podem ter diversas classes
a, o, se, que, como
Classificacao depende do contexto
Como devo proceder?Ele e alto como um poste.Como arroz todo dia.
Palavras novas surgem o tempo todo
linguagem tecnica, jargoes, neologismos, gıriasclasses abertas (substantivos, adjetivos, adverbios e verbos)classes fechadas (preposicoes, conjuncoes, pronomes etc)
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Segmentacao de sentencas
Deteccao de limites entre sentencasPonto (.) e uso de letras maiusculas ajudam a descobrir olimite de uma sentenca, contudo:
Sentencas com termos que possuem pontuacao: Fechei umacordo com o Sr. Silva.Sentencas aninhadas: ”Nos encontramos amanha.”, disseramao se despedir.Textos mal pontuados
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Analise sintatica
Superficial (Chunking)
Identificacao de constituintes
Sintagmas
NominaisVerbaisPreposicionais...
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Analise sintatica
Profunda
Identificacao de toda derivacao sintatica ate o nıvel de classesgramaticais
Determinacao de nucleos e adjuntos dos sintagmas
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Entidades nomeadas
Nomes, datas, quantias etc
Entidades nomeadas podem ser compostas por muitos termos
Pao de AcucarRepublica Federativa do Brasil
Pode conter pontuacao
1,99%23:59:00D. Pedro I
Pode conter numerais e letras ao mesmo tempo
C3POW3C
Algumas entidades nomeadas, a primeira vista, podem parecernao concordar com os termos adjacentes
As mil e uma noites e um livro muito conhecido.
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Resolucao de co-referencias
Anaforas
Joao cuida muito bem de seu cao. Este, por sua vez, tambemo adora.
A baba cuida do bebe doente. Ela esta muito preocupada,pois ele nao para de chorar.
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Significado: Modelos Semanticos
Sao os modelos linguısticos usados quando a informacaodesejada e o significado dos termos do texto.
Sequencias, sımbolos, regras, posicoes ou vetores destinam-sea elucidar o sentido do texto em vez da estrutura.
Podem conter um aspecto adicional: relacoes semanticas.
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Significado: Relacoes semanticas
Expressam as interacoes existentes entre o significado de duasou mais palavras os expressoes.
Permitem aproximar textos estruturalmente diferentes, masproximos em significado.
Exemplo:
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural
Processamento de Linguagem NaturalPrimeiro Encontro em Computacao Semantica - Tutoriais
Danilo S. CarvalhoHugo C. C. Carneiro
Danilo S. Carvalho Hugo C. C. Carneiro
Processamento de Linguagem Natural