首页 文章

是否有Scikit学习分类器的分类功能?

提问于
浏览
1

我一直在使用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 回答

  • 2

    如果您正在寻找一种可以帮助您预测数据属于哪个类的方法,我相信,

    from sklearn.ensemble import RandomForestClassifier
    classifier = RandomForestClassifier()
    classifier.fit(X_train, y_train)
    classifier.predict(record)
    

    有助于 . 要了解有关可用API的更多信息,请按照此link to the documentation进行操作 .

    看起来,您正在寻找文本分类器 . 这是一个文本分类器的 scikit-learn example . 该页面提供了在 scikit-learn 中处理文本数据的全面介绍 .

  • 0

    您需要应用所有应用于训练数据的相同预处理,sklearn分类器不要管道 . predict 也期望一个数组,但你可以传递一个样本的数组 .

相关问题