sklearn文本分类预测
时间: 2023-09-03 09:08:16 浏览: 119
sklearn是一个Python中常用的机器学习库,其中包含了很多文本分类预测的算法,如朴素贝叶斯分类器、支持向量机、随机森林等。
下面是一个使用朴素贝叶斯分类器进行文本分类的示例代码:
```python
from sklearn.datasets import fetch_20newsgroups
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB
from sklearn.metrics import accuracy_score
# 加载20个新闻组数据集
categories = ['alt.atheism', 'soc.religion.christian', 'comp.graphics', 'sci.med']
newsgroups_train = fetch_20newsgroups(subset='train', categories=categories)
newsgroups_test = fetch_20newsgroups(subset='test', categories=categories)
# 特征提取
vectorizer = CountVectorizer()
X_train = vectorizer.fit_transform(newsgroups_train.data)
X_test = vectorizer.transform(newsgroups_test.data)
# 训练模型
clf = MultinomialNB()
clf.fit(X_train, newsgroups_train.target)
# 预测
y_pred = clf.predict(X_test)
# 评估准确率
acc = accuracy_score(newsgroups_test.target, y_pred)
print("Accuracy: {:.2f}%".format(acc*100))
```
在这段代码中,我们首先加载20个新闻组数据集,然后使用CountVectorizer进行特征提取,将文本转化为词频向量。接着使用朴素贝叶斯分类器进行模型训练,并对测试集进行预测,最后评估分类器的准确率。
除了朴素贝叶斯分类器外,sklearn还提供了很多其他的分类器算法,可以根据具体问题选择最适合的算法进行文本分类预测。
阅读全文