cpdoc / dhbb-nlp

processamentos DHBB
Other
5 stars 2 forks source link

Adicionando flags de revisão nos arquivos CoNLL-U #51

Closed Cristiananc closed 4 years ago

Cristiananc commented 4 years ago

O PR modifica os arquivos CoNLL-U na pasta udp adicionando duas novas informações nos metadados das sentenças. Temos duas linhas novas que são (me pareceu um nome bem informativo em cada):

Como discutido, queremos poder observar e extrair quais sentenças foram revisadas por nós. A ideia de ter duas adições nos metadados facilita uma correção individual, é claro que só faz sentindo corrigir a análise sintática se a sentença é golden para a segmentação. Com isso, tendo esses flags é possível utilizá-los para melhorar o treino do opennlp para a segmentação incluindo novas sentenças, além do bosque, que são golden e pertencem ao DHBB.

arademaker commented 4 years ago

@Cristiananc uma descrição das intenções do PR ou link para o issue correspondente que tenha descrição do que foi implementado e qual a proposta. Só assim podemos avaliar seu código e os resultados. Pode informar? Qual foi a lógica que vc pensou? Qual o objetivo? O que este PR resolve?

Cristiananc commented 4 years ago

Certo, fiz a edição com os comentários.

arademaker commented 4 years ago

Eu aceitei o PR mas tive que corrigir coisas:

Como eu disse, precisamos nos acostumar a primeiro descrever as ideias em um issue. Depois a implementação começa. Exemplo https://github.com/delph-in/pydelphin/issues/175.

Em particular, neste caso não precisamos de dois flags, dado que se a revisão da análise sintática foi feita, então podemos considerar a segmentação também revista. Então me parece que só precisamos de um flag e talvez dois valores: syntax, segmentation. Onde syntax quer dizer revisão das duas coisas. Para 300K sentenças, esta decisão mais econômica poupa muito espaço.

Outra coisa é que na sua descrição acima, tem um detalhe fundamental não explicado. Vc adicionou dois novos status esquecendo de verificar as sentenças que já tinham status = revisado.

Tive que aproveitar para corrigir bug na biblioteca cl-conllu, para usar o código que fiz em Lisp, certifiquem-se de estar usando a versão 0.9 (arquivo cl-conllu.asd). Implementei o código Lisp para mostrar como fazer. Optei por transformar a assoc list que contém os metadados de cada sentença em uma hash para então modificar e devolver a hash para uma assoc. Estou assumindo que os arquivos em udp/ só tínhamos sentenças com o flag status = revisado, correto @lucasrct ?

arademaker commented 4 years ago

commit 1e7e64568 fixed and solved this PR.

Cristiananc commented 4 years ago

Entendi, obrigada pelas correções. Nos arquivos que tinha observado não havia nenhum status. De qualquer forma vou abrir os issues antes de começar.