Nltk: HiddenMarkovModelTrainer train_unsupervised - TypeError

Erstellt am 14. Okt. 2017  ·  3Kommentare  ·  Quelle: nltk/nltk

Hallo,

Ich versuche, die train_unsupervised -Methode aus dem nltk.hmm -Modul zu verwenden, es wird jedoch der folgende TypeError ausgelöst:
TypeError: Can't instantiate abstract class RandomProbDist with abstract methods max

Hier ist der Code, den ich verwende:

import nltk

trainer = nltk.hmm.HiddenMarkovModelTrainer()
tagger = trainer.train_unsupervised([
    ('a', ''),
    ('b', ''),
    ('c', '')
])

Hier ist der vollständige Fehler:
Traceback (most recent call last): File "test.py", line 10, in <module> ('c', '') File "/Library/Python/2.7/site-packages/nltk/tag/hmm.py", line 932, in train_unsupervised priors = RandomProbDist(self._states) TypeError: Can't instantiate abstract class RandomProbDist with abstract methods max

NLTK Version 3.2.5; getestet auf Python 2.7.10 und Python 2.7.14.

Mache ich etwas Dummes falsch?

Vielen Dank.

bug language-model tagger

Hilfreichster Kommentar

Dies geschieht auch mit Python 3.6.2 mit NLTK 3.2.5

Alle 3 Kommentare

Dies geschieht auch mit Python 3.6.2 mit NLTK 3.2.5

Ich verfolge Ausgabe Nr. 1873. Ich habe den Fehler bekommen
TypeError: Die abstrakte Klasse RandomProbDist kann nicht mit abstrakten Methoden max

mit NLTK Version 3.2.4. Ich habe gesehen, dass das Commit zur Behebung dieses Problems in Version 3.2.5 war, also habe ich das heruntergeladen, aber ich erhalte immer noch den gleichen Fehler. Irgendwelche Ideen warum?

Die Updates im Git-Repo sind noch nicht im nltk pip-Paket enthalten. Ich würde vorschlagen, die Updates in den Commits abzurufen und damit zu arbeiten.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen