O índice de dados nltk (https://raw.githubusercontent.com/nltk/nltk_data/gh-pages/index.xml) aponta verbnet
para a versão 2.1. A definição de verbnet
mais recente é 3.2.
A versão mais recente atualizou as descrições dos quadros que fornecem muito mais informações sobre a estrutura frasal. Por exemplo, a descrição primária de um frame da classe future_having-13.3
na última versão é NP V NP-Dative NP
, descrevendo a estrutura do frame como (substantivo-frase, verbo, substantivo-frase (dativo), substantivo frase) enquanto na versão 2.1 lê apenas Dative
.
@agodbehere , obrigado por relatar esse problema. Eu verifiquei que o leitor de corpus verbnet 2 existente quebra nos dados verbnet 3, então ambos precisarão viver lado a lado na coleção de corpus.
A próxima etapa é alguém contribuir com um leitor de corpus correspondente nltk.corpus.verbnet3
, que pode compartilhar parte do código existente.
Precisamos apoiar os dois por um tempo.
@stevenbird , que caso
O problema existe com verbnet 3. Precisamos de um leitor de corpus diferente para
este.
Na quarta-feira, 16 de maio de 2018, às 10:45 Andrew Godbehere [email protected]
escrevi:
@stevenbird https://github.com/stevenbird , que caso decisivo você
encontrar para usar o leitor de corpus existente com verbnet 2? Eu não corri o
suite de teste após atualizar o corpus, mas para o meu caso de uso (solicitando
classids e frames), o leitor de corpus existente funciona muito bem.-
Você está recebendo isso porque foi mencionado.
Responda a este e-mail diretamente, visualize-o no GitHub
https://github.com/nltk/nltk/issues/2015#issuecomment-389363521 ou mudo
o segmento
https://github.com/notifications/unsubscribe-auth/AADYbsgbjtFTKsyamRPG0OpJuWnF3UJ0ks5ty33DgaJpZM4Tzc0d
.
@stevenbird @agodbehere Olá, trabalho no projeto VerbNet na CU Boulder e ficaria feliz em contribuir e manter o código de um leitor de corpus para VerbNet 3+.
@amosleokim : obrigado, isso seria bem-vindo!
Você pode ver que temos verbnet
(2) e verbnet3
dados aqui .
Proponho que adicionemos uma entrada para verbnet3
aqui
E então descobrir como estender verbnet.py para suportar verbnet
e verbnet3
.
Como isso soa? Precisamos apoiar os dois simultaneamente e (em última análise) descontinuar o verbnet 2.
Temos um canal de slack NLTK onde podemos discutir detalhes, se necessário. Obrigado!
@stevenbird Isso parece bom para mim! Se você puder me enviar um código de convite para o canal do slack, eu vou entrar para que possamos começar com o que está acontecendo.
Algum progresso neste tópico? Estou tentando usar verbnet para uma pesquisa e o resultado que obtenho dos métodos classids
parece estranho .
Consulte https://github.com/nltk/nltk/issues/2015#issuecomment -390826015
Obrigado @stevenbird , a versão mais antiga parecia ser a causa do problema. Consegui baixar manualmente o verbnet3.zip e lê-lo com o leitor para o verbnet 2.1 que está em nltk.
@salompas Só para verificar novamente, a API verbnet em NLTK funciona com verbnet3?
@alvations
Ele funciona para o que estou usando. Deixe-me mostrar meu código:
import nltk
v3 = nltk.corpus.util.LazyCorpusLoader(
'verbnet3', nltk.corpus.reader.verbnet.VerbnetCorpusReader,
r'(?!\.).*\.xml')
v3.classids('add') # returns ['mix-22.1-2', 'multiply-108', 'say-37.7-1']
Para que isso funcione, você precisa fazer o download do verbnet3 aqui . Descompacte este arquivo na pasta ~/nltk_data/corpora~. When unzipped it should create a new folder
~ / nltk_data / corpora / verbnet3 which contains all the Verbnet3 definitions.
Then you should be able to run the code above.
Notice that for Verbnet 2 (the default) the code
v3.classids ('add') `retorna apenas a primeira classe (mix-22.1-2).
Como isso é basicamente tudo para o que estou usando Verbnet3, não testei as outras APIs, mas o método classids
foi testado em muitas palavras diferentes e todas funcionam. Eu espero que isso ajude!
@Salompas Olá, obrigado pela solução! Qual versão de verbnet3 é seu 'verbnet3'? É a versão 3.3 ou 3.2?
@Salompas Olá, obrigado pela solução! Qual versão de verbnet3 é seu 'verbnet3'? É a versão 3.3 ou 3.2?
Ei @ songhee-kim, já se passaram 2 anos desde que trabalhei nisso, então não sei exatamente qual versão eu tinha.
Comentários muito úteis
@alvations
Ele funciona para o que estou usando. Deixe-me mostrar meu código:
Para que isso funcione, você precisa fazer o download do verbnet3 aqui . Descompacte este arquivo na pasta
~/nltk_data/corpora~. When unzipped it should create a new folder
~ / nltk_data / corpora / verbnet3which contains all the Verbnet3 definitions. Then you should be able to run the code above. Notice that for Verbnet 2 (the default) the code
v3.classids ('add') `retorna apenas a primeira classe (mix-22.1-2).Como isso é basicamente tudo para o que estou usando Verbnet3, não testei as outras APIs, mas o método
classids
foi testado em muitas palavras diferentes e todas funcionam. Eu espero que isso ajude!