A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Temas 3, 4 e 5 Pablo Gamallo Otero

Apresentações semelhantes


Apresentação em tema: "Temas 3, 4 e 5 Pablo Gamallo Otero"— Transcrição da apresentação:

1 Temas 3, 4 e 5 Pablo Gamallo Otero http://gramatica.usc.es/~gamallo/

2 PLANO 1.Noções básicas 2.Introdução a Linux 3.Tokenizadores e concordâncias 3.1. contar tokens e formas, ordenar, comparar textos,... 3.2. riqueza lexical dos textos 3.3. Key Word In Context (kwic.perl) 4.Etiquetadores (PoS tagging) 4.1. Tree-Tagger 4.2. FreeLing 5.Analisadores (parsing) 5.1. DepPattern

3 Bibliografia Tony Berber Sardinha (2004), Lingüística de Corpus, Editora Manole, Brasil. Marco Baroni (2009), “Distributions in text”. In Anke Lüdeling and Merja Kytö (eds.), Corpus linguistics: An international handbook, Berlin: Mouton de Gruyter. http://gramatica.usc.es/~gamallo/aulas/lingcomputacional/biblio/Baroni_d istributions.pdf Pablo Gamallo & Isaac González (2009) "Una gramática de dependencias basada en patrones de etiquetas", Procesamiento del Lenguaje Natural, 43, pp. 315-324. http://www.sepln.org/revistaSEPLN/revista/43/articulos/art34.pdf

4 3. Tokenizadores e concordâncias Scripts utilizados: tokenizer.perl compara.perl riqueza.perl kwic.perl

5 Objectivos Extrair tokens a partir de texto tokenizado para: - contar frequência de formas - ordenar formas - comparar textos -...

6 Que fai o tokenizador? Lê linha a linha o texto de entrada. Escreve noutro ficheiro (ou na consola) as palavras do texto de entrada. Cada palavra aparece numa linha.

7 Resultado do tokenizador “ A nena tem uma chupeta azul.” A nena tem uma chupeta azul.

8 Como tornar executável o script “tokenizer.perl” ? chmod +x tokenizer.perl Atribuimos ao ficheiro “tokenizer.perl” a propriedade: ser executável

9 Como executar o tokenizador? cat../corpus/arquivo_entrada.txt |./tokenizer.perl cat../corpus/arquivo_entrada.txt |./tokenizer.perl > arquivo_saida.txt

10 Contar formas com o tokenizador Conta o número de ocorrências das expressões: “Quijote”, “Sancho”, “Dulcinea”, “dijeron”,... Comando “grep”: selecciona as linhas do texto que contenham uma sequência de caracteres (ou string) específica cat../corpus/ElQuijote.txt |./tokenizer.perl | grep “Quijote” | wc

11 Contar multi-palavras Para contar multi-palavras: “Quijote de la Mancha”, “Sancho Panza”, “Dulcinea del Toboso”,... é preciso um reconhecedor de entidades: NomesProprios.perl NER do FreeLing

12 Ordena formas por frequência echo “sort | uniq -c | sort -nr” > ordenar.sh chmod +x ordenar.sh cat ElQuijote.txt |./tokenizer.perl |./ordenar.sh > quijote_ord.txt

13 Compara similitude de textos cat ElQuijote.txt |./tokenizer.perl |./ordenar.sh > quijote_ord.txt cat LaRegenta.txt |./tokenizer.perl |./ordenar.sh > regenta_ord.txt cat quijote_ord.txt |./compara.perl regenta_ord.txt 1000

14 Riqueza lexical de textos A riqueza ou pobreza lexical dum texto pode quantificar-se calculando a frequência média das formas: Riqueza lexical = número de tokens / número de formas

15 Calcula riqueza lexical de textos cat ElQuijote.txt |./tokenizer.perl |head -100000 |./riqueza.perl cat LaRegenta.txt |./tokenizer.perl | head -100000 |./riqueza.perl (para comparar dous textos, convém utilizar a mesma quantidade de palavras, por exemplo 100.000)

16 Concordâncias./kwic.perl "Quijote" DonQuijote.txt./kwic.perl "Quijote" DonQuijote.txt |grep "don\s*Quijote"./kwic.perl "Dulcinea" DonQuijote.txt |grep "Dulcinea\s*del Toboso"

17 4. Etiquetadores Tree-Tagger FreeLing

18 Objectivos Extrair lemas e etiquetas a partir de texto lematizado e etiquetado para: - contar frequência de lemas e/ou etiquetas - ordenar por lemas ou etiquetas

19 Uso do etiquetador Tree-Tagger cat ElQuijote.txt | tree-tagger-spanish (o ficheiro de entrada tem que estar em Latin ISO)‏ cat ElQuijote.txt | tree-tagger-spanish > quijote.tree

20 Uso do etiquetador FreeLing cat ElQuijote.txt | freeling-es (o ficheiro de entrada tem que estar em Latin)‏ cat ElQuijote.txt | freeling-es > quijote.free

21 Saída do etiquetador Freeling “La niña bonita tiene un chupete azul.” la el DA0FS0 niña niña NCFS000 bonita bonito AQ0FS0 tiene tener VMIP3S0 un uno DI0MS0 chupete chupete NCMS000 azul azul AQ0CS0

22 Contar lemas com FreeLing Conta o número de ocorrências das expressões: “comer”, “castellano” (adjectivo), “castellano” (nome)... cat quijote.free | grep “comer” | wc cat quijote.free | grep “castellano” | grep “NC” | wc

23 Contar multi-palavras com FreeLing Conta o número de ocorrências de: “Quijote de la Mancha”, “Sancho Panza”... cat quijote.free | grep “Quijote_de_la_Mancha” | wc -l cat quijote.free | grep “Sancho_Panza” | wc -l

24 Ordenar por etiquetas ou lemas cat quijote.free | gawk '{print $3}' | ordenar.sh cat quijote.free | gawk '{print $2}' | ordenar.sh

25 5. Analisadores robustos DepPattern (analisador de dependências e formalismo gramatical)

26 Objectivos Identificar lemas etiquetados a partir de texto analisado em dependências para: - contar frequência de lemas em contextos sintácticos

27 Uso do analisador DepPattern./dp -a freeling es DonQuijote.txt parsers/parserDefault-es.perl > quijote.parsed

28 Saída de DepPattern “La niña morena come pescado.” (SpecL;niña_NOUN_1;el_DT_0) (AdjnR;niña_NOUN_1;morena_ADJ_2) (SubjL;comer_VERB_3;niña_NOUN_1) (SubjL;comer_VERB_3;pescado_NOUN_4)

29 Notação das dependências (dependência;núcleo;modificador)

30 Escreve uma gramática com DepPattern ##Minha_Gramatica SpecL: DT NOUN % AdjnR: NOUN ADJ % DobjR: VERB [ADV]* NOUN % SubjL: NOUN [ADV]* VERB %

31 Compilar e usar a gramática./dp -a freeling es DonQuijote.txt analisador.perl MinhaGramatica.dp > quijote.parsed

32 Contar dependências com DepPattern cat quijote.parsed |./HeadOf.perl “poema” “Dobj” cat quijote.parsed |./DepOf.perl “poema” “Adjn”


Carregar ppt "Temas 3, 4 e 5 Pablo Gamallo Otero"

Apresentações semelhantes


Anúncios Google