Oi,
Eu costumava usar nltk.models.NgramModel para modelagem tri-gram. Estou tentando executar um código antigo com uma nova instalação do nltk 3 e parece que o módulo não está mais disponível. Baixei todos os modelos e pacotes por meio de nltk.download () e ainda estou recebendo
"Nenhum módulo denominado modelo"
quando eu tento
from nltk.model import NgramModel
qualquer ajuda?
obrigada
Ei! Sim, eles atualmente não estão no branch master - existem alguns bugs pendentes que gostaríamos de corrigir antes de incluí-los novamente. Estes são os bugs: https://github.com/nltk/nltk/labels/model
Se você está usando atualmente a versão do github, pode mudar para o branch "model", que inclui o código NgramModel, embora esteja significativamente atrás do branch "development" e não tenha obtido todas as correções de bugs mais recentes.
Espero que isto ajude!
obrigado alex
Qual é o status atual desse bug?
Estarei implementando uma versão testada de regressão / unidade do NgramModel nos próximos dias.
Também estou interessado em contribuir.
Isso foi resolvido? Eu ainda não consigo importar modelo
Ainda não consigo importar o modelo na versão nltk-3.2.2
Instalado com:
pip3 install https://github.com/nltk/nltk/tarball/model
Mas agora recebo um erro diferente:
ImportError: não é possível importar o nome 'NgramModel'
Por favor, veja o código-fonte
Eu codifico uma amostra.
from nltk.model import MLENgramModel
from nltk.model import build_vocabulary
from nltk.model import count_ngrams
docs = [['a', 'b', 'c'], ['a', 'c', 'c']]
vocab = build_vocabulary(cutoff, *docs)
counter = count_ngrams(order, vocab, *docs)
model = MLENgramModel(counter)
nltk.model
ainda não está disponível. Ímpar.
@bjourne o módulo retrabalhado deve ser importável como nltk.lm
. A API mudou, recomendo a leitura dos documentos sobre ela:
>>> from nltk import lm
>>> help(lm)
Isso ainda não está resolvido?
Foi resolvido no ano passado, consulte a documentação do nltk.lm
Comentários muito úteis
Estarei implementando uma versão testada de regressão / unidade do NgramModel nos próximos dias.