Processamento de Linguagem Natural

J.Joao e quem mais queira colaborar

Boa gente,
Por favor corrigem/melhorem/comentem as versões aqui apresentadas e mandem-me de mail as novidade

Um abraco
J.Joao


Alguns exercicios das aulas de 1998-99 e testes de anos anteriores

pln98-99 pln98.tgz

Classificações e Testes

  • Classificações do teste de Mar 99

  • Alguma documentação sobre ferramentas


    Perl

  • Perl man page
  • funções
  • operadores
  • expressões regulares
  • ipc
  • Perl doc
  • Far More Than Everything You've Ever Wanted to Know About...
  • What Makes Perl's Regular Expressions Dynamite A text on Regular expressions in Perl
  • Inspiração linguística do Perl
  • Lista de Modulos perl
  • Modulos perl incluindo uma pequena descrição

  • Prolog

  • Manuais do sicstus prolog 2.1.9
  • DCG e sua implementação no SICSTUS
  • Manuais do sicstus Library

  • Filtros e inf. retriv

  • agrep - approximated grep
  • glimpse e glimpse home page e An article describing the ideas behind the design of glimpse.
  • glimpse index
  • glimpse server

  • Exercícios das aulas

    1. Calculador de ocorrências de palavras num texto
      com ordenação alfabética ou por número de ocorrências, ignorando as palavras começadas por dígitos em Perl
    2. Encontrar a lista dos nomes próprios
      .. que aparecem num texto. Exemplo: Jose Joao A. G. Dias de Almeida
    3. Tradutor palavra a palavra
    4. escrito em Perl com dicionário externo
    5. idem mas tendo o cuidado de manter a "capitalização" das palavras
    6. escrito em Prolog evitando backtracking para zonas de erro quando há outras hipóteses
    7. Tradutor palavra* palavra*
    8. Versão em prolog sem difference-list
    9. Versão em prolog usando difference-list
    10. Versão em Prolog evitando backtracking para zonas de erro quando há outras hipóteses
    11. Versão em Perl com dicionário externo . Neste exemplo aparecem contempladas apenas regras com sequências de palavras limitadas (3)
    12. Gramática para portugues
    13. Gramática para portugues com concordâncias género e número
    14. Gramática para portugues com determinação de árvore sintáctica
    15. Gramáticas emparelhadas (port. ing.) com determinação de árvore sintáctica comum para traducao
    16. Versao Prolog - 27-Out-96 Nesta versão aparece incluído um mini interpretador que traduz listas até aparecer "end.".
    17. Construir uma script perl para passar a traduzir "texto normal" em vez de listas prolog
      solucao perl usando IPC::Open3

    18. melhorar o nível léxico do exemplo anterior
    19. Gramática para portugues com determinação semântica intermédia em árvores de quantificadores

    Projectos pequenos

  • Módulo tradutor
    desenhar um módulo perl que permita construir tradutores com:
  • dicionário externo
  • definição de prefixo de marcação de palavras desconhecidas
  • possibilidade de "log" das palavras desconhecidas em ficheiro
  • possibilidade de definição de funções de pre e pos processamento das frases
  • possibilidade de definição de padrões de partes de texto a não mexer
  • Solução:
  • módulo trad.pm
  • manual
  • Exemplo de utlização( ingles -> portugues):
  • tradutor
  • dicionário
  • função de post processamento
  • Conversão duma estrutura perl em html
    dada um apontador para uma estrutura complexa perl , construir uma pagina html correspondente; Esquema de traducao a usar:
  • [ a, b, c ] => <ul><li> a <li> b <li> c </ul>
  • { a=>b, c=>d } => <dl><dt> a <dd> b <dt> c <dd> d </dl>
  • Solução:
  • módulo visual.pm
  • exemplo de utilização e respectivo resultado
  • sugestão: reescreva a função html de modo a gerar tabelas

  • Recursos para construção de dicionários

  • foldoc.txt.gz
  • man pages do unix
  • dicionario de calao
  • lista de matemáticos extrair uma lista (nome -> url) a partir de Lista de nomes
  • Módulo jspell - analisador morfológico: (necessita do programa jspell e do respectivo dicionário)
  • módulo jspell.pm
  • exemplo de utilização

  • Agradece-se a colaboração

    de:
  • Filipe Joao Soares da Silva
  • Carlos Manuel Argainha Oliveira


  • Jose Joao Dias Almeida jj@di.uminho.pt
    Wed Mar 10 16:34:01 WET 1999