2012-03-27 1 views
2

Je veux exécuter maillet en utilisant l'option mais je n'arrive pas à le faire fonctionner. J'ai importé mes données:Maillet: N-grammes topiques

./bin/mallet import-dir --input path --output topic-input.mallet --keep-seqence -- removed stopwords 

Maintenant, je veux former un modèle ngram d'actualité:

bin/mallet train-topics --input topic-input.mallet --use-ngrams true --num-topics 30 --xml-topic-report topic-report.xml 

Mais je reçois cette erreur:

Exception in thread "main" java.lang.ClassCastException: cc.mallet.types.FeatureSequence cannot be cast to cc.mallet.types.FeatureSequenceWithBigrams 
at cc.mallet.topics.TopicalNGrams.estimate(TopicalNGrams.java:78) 
at cc.mallet.topics.tui.Vectors2Topics.main(Vectors2Topics.java:249) 

Comme vous pouvez Je suis en train de lancer un maillet en tant qu'outil de ligne de commande et préférerais ne pas utiliser son API pour le faire fonctionner. Aucune suggestion?

Répondre

4

a trouvé la réponse:

vous devez importer le répertoire que vous souhaitez exécuter la modélisation topique ngram sur l'aide de l'argument '--keep-séquence-bgirams' (par exemple

./bin/mallet import-dir --input path --output topic-input.mallet --keep-sequence-bigrams --remove-stopwords 

Et Ensuite, vous exécutez le modèle de sujet en tant que:

bin/mallet train-topics --input topic-input.mallet --use-ngrams true --num-topics 30 --xml-topic-report topic-report.xml 
Questions connexes