Metin belgelerinin sınıflandırılması simple task with scikit-learn'dur, ancak NLTK'da bunun temiz bir desteği yoktur, ayrıca this gibi zor bir şekilde yapmak için örnekler vardır. NLTK ile ön işlem yapmak ve sckit-learn ile sınıflandırmak istiyorum ve NLTK'da SklearnClassifier'ı buldum ama küçük bir problem var. scikit-öğrenme her şeynltk içinde çoklu öğrenme sınıflandırması kullanma, çoklu durum örneği
Tamam:
from sklearn.naive_bayes import MultinomialNB
from sklearn.multiclass import OneVsRestClassifier
X_train = [[0, 0], [0, 1], [1, 1]]
y_train = [('first',), ('second',), ('first', 'second')]
clf = OneVsRestClassifier(MultinomialNB())
clf.fit(X_train, y_train)
print clf.classes_
sonuç ['first' 'second']
olup benim beklenti bu. Ama NLTK içinde aynı kodu kullanmaya çalıştığınızda:
from nltk.classify import SklearnClassifier
X_train = [{'a': 1}, {'b': 1}, {'c': 1}]
y_train = [('first',), ('second',), ('first', 'second')]
clf = SklearnClassifier(OneVsRestClassifier(MultinomialNB()))
clf.train(zip(X_train, y_train))
print clf.labels()
sonuç [('first',), ('second',), ('first', 'second')]
olduğunu ve doğru değil. Herhangi bir çözüm var mı?