使用 Python 进行文本分类

一友

我有带有标签的文本变量中的单词列表。我喜欢制作一个可以预测新输入文本标签的分类器。

我正在考虑在 Python 中使用 scikit-learn 包来使用 SVM 模型。

我意识到文本需要转换为矢量形式,所以我正在尝试 TfidfVectorizer 和 CountVectorizer。

到目前为止,这是我使用 TfidfVectorizer 的代码:

from sklearn import svm
from sklearn.feature_extraction.text import TfidfVectorizer

label = ['organisasi','organisasi','organisasi','organisasi','organisasi','lokasi','lokasi','lokasi','lokasi','lokasi']
text = ['Partai Anamat Nasional','Persatuan Sepak Bola', 'Himpunan Mahasiswa','Organisasi Sosial','Masyarakat Peduli','Malioboro','Candi Borobudur','Taman Pintar','Museum Sejarah','Monumen Mandala']

vectorizer = TfidfVectorizer(min_df=1)

X = vectorizer.fit_transform(text)
y = label

klasifikasi = svm.SVC()

klasifikasi = klasifikasi.fit(X,y) #training

test_text = ['Partai Perjuangan']
test_vector = vectorizer.fit_transform(test_text)

prediksi = klasifikasi.predict([test_vector]) #test

print(prediksi)

我还尝试使用上述相同代码的 CountVectorizer。两者都显示相同的错误结果:

ValueError: setting an array element with a sequence.

如何解决这个问题呢?谢谢

维维克·库马尔

错误是由于这一行:

prediksi = klasifikasi.predict([test_vector])

大多数 scikit 估计器需要一个 shape 数组[n_samples, n_features]test_vectorTfidfVectorizer输出已经准备好用于估计器的形状。您不需要将其包裹在方括号 ([]) 中。包装使它成为一个不合适的列表。

尝试像这样使用它:

prediksi = klasifikasi.predict(test_vector)

但即使那样你也会gt错误。因为这一行:

test_vector = vectorizer.fit_transform(test_text)

在这里,您以与klasifikasi估计器学到的不同的方式拟合矢量化器。fit_transform()只是调用fit()(学习数据)然后transform()的快捷方式对于测试数据,始终使用transform()方法,从不fit()fit_transform()

所以正确的代码将是:

test_vector = vectorizer.transform(test_text)
prediksi = klasifikasi.predict(test_vector)

#Output: array(['organisasi'],  dtype='|S10')

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用 Keras 进行文本分类

来自分类Dev

使用Spark ML进行文本分类

来自分类Dev

如何使用Accord.Net进行文本分类?

来自分类Dev

如何使用GPT 3进行文本分类?

来自分类Dev

使用朴素贝叶斯进行文本分类

来自分类Dev

使用R和SVM进行文本分类。矩阵功能

来自分类Dev

Scikit学习-如何使用SVM和随机森林进行文本分类?

来自分类Dev

使用预制字典进行文本分类的SVM特征向量表示

来自分类Dev

使用TF-IDF分数进行文本分类的KNN

来自分类Dev

使用Keras在LSTM中获取单词进行文本分类的可能性

来自分类Dev

使用预制字典进行文本分类的SVM特征向量表示

来自分类Dev

使用我自己的数据进行文本分类的Tensorflow错误

来自分类Dev

对于使用 scikit-learn 进行文本分类,我是否必须同时使用 Countvectorizer 和 TFIDF?

来自分类Dev

使用TensorFlow进行多标签文本分类

来自分类Dev

使用python进行文本搜索

来自分类Dev

如何使用sklearn库使用朴素贝叶斯执行文本分类?

来自分类Dev

python textblob和文本分类

来自分类Dev

使用对数概率进行并发症-朴素贝叶斯文本分类器

来自分类Dev

在R中使用LDA和tm进行文本分析

来自分类Dev

使用brain.js神经网络进行文本分析

来自分类Dev

使用Rapidminer对imdb电影评论进行文本分析

来自分类Dev

在R中使用LDA和tm进行文本分析

来自分类Dev

使用人类语言字典动态填充哈希图以进行文本分析

来自分类Dev

使用python 3.4.3进行文本文件索引

来自分类Dev

使用* .dic * .aff使用Python进行形态学文本分析

来自分类Dev

编码数据标签以进行文本分类

来自分类Dev

使用doc2vec gensim进行二进制文本分类的最佳培训方法

来自分类Dev

在R中使用文本分类和大稀疏矩阵

来自分类Dev

如何使用更少的内存完成文本分类任务

Related 相关文章

  1. 1

    使用 Keras 进行文本分类

  2. 2

    使用Spark ML进行文本分类

  3. 3

    如何使用Accord.Net进行文本分类?

  4. 4

    如何使用GPT 3进行文本分类?

  5. 5

    使用朴素贝叶斯进行文本分类

  6. 6

    使用R和SVM进行文本分类。矩阵功能

  7. 7

    Scikit学习-如何使用SVM和随机森林进行文本分类?

  8. 8

    使用预制字典进行文本分类的SVM特征向量表示

  9. 9

    使用TF-IDF分数进行文本分类的KNN

  10. 10

    使用Keras在LSTM中获取单词进行文本分类的可能性

  11. 11

    使用预制字典进行文本分类的SVM特征向量表示

  12. 12

    使用我自己的数据进行文本分类的Tensorflow错误

  13. 13

    对于使用 scikit-learn 进行文本分类,我是否必须同时使用 Countvectorizer 和 TFIDF?

  14. 14

    使用TensorFlow进行多标签文本分类

  15. 15

    使用python进行文本搜索

  16. 16

    如何使用sklearn库使用朴素贝叶斯执行文本分类?

  17. 17

    python textblob和文本分类

  18. 18

    使用对数概率进行并发症-朴素贝叶斯文本分类器

  19. 19

    在R中使用LDA和tm进行文本分析

  20. 20

    使用brain.js神经网络进行文本分析

  21. 21

    使用Rapidminer对imdb电影评论进行文本分析

  22. 22

    在R中使用LDA和tm进行文本分析

  23. 23

    使用人类语言字典动态填充哈希图以进行文本分析

  24. 24

    使用python 3.4.3进行文本文件索引

  25. 25

    使用* .dic * .aff使用Python进行形态学文本分析

  26. 26

    编码数据标签以进行文本分类

  27. 27

    使用doc2vec gensim进行二进制文本分类的最佳培训方法

  28. 28

    在R中使用文本分类和大稀疏矩阵

  29. 29

    如何使用更少的内存完成文本分类任务

热门标签

归档