我一直在使用NTLK分类器训练数据集并对单个记录进行分类 . 为了训练记录我使用这个功能,
nltk.NaiveBayesClassifier.train(train_set)
对于单个记录的分类,
nltk.NaiveBayesClassifier.classify(record)
其中,“记录”是变量名称 .
在Scikit分类器中,对于训练数据集,使用的函数是,
from sklearn.ensemble import RandomForestClassifier
classifier = RandomForestClassifier()
classifier.fit(X_train, y_train)
在scikit学习分类器中对单个记录进行分类的功能是什么?即,是否有类似这样的classifier.classify()?
Predict方法仅对转换为稀疏矩阵向量的整个测试集进行分类,如y_pred = classifier.predict(X_test)
y_pred = classifier.predict(X_test)
我无法对单个记录进行分类;我收到此错误:
File "C:\Users\HSR\Anaconda2\lib\site-packages\sklearn\utils\validation.py",
line 433, in check_array array = np.array(array, dtype=dtype, order=order,
copy=copy) ValueError: could not convert string to float: This is a bot
如果预测可用于对单个记录进行分类,那么该怎么做呢?
2 回答
如果您正在寻找一种可以帮助您预测数据属于哪个类的方法,我相信,
有助于 . 要了解有关可用API的更多信息,请按照此link to the documentation进行操作 .
看起来,您正在寻找文本分类器 . 这是一个文本分类器的
scikit-learn
example . 该页面提供了在scikit-learn
中处理文本数据的全面介绍 .您需要应用所有应用于训练数据的相同预处理,sklearn分类器不要管道 .
predict
也期望一个数组,但你可以传递一个样本的数组 .