Python朴素贝叶斯好瓜坏瓜代码
时间: 2024-12-03 07:31:24 浏览: 8
Python中的朴素贝叶斯分类器常用于文本分析和机器学习任务,其中经典的例子就是使用它来做垃圾邮件检测,比如区分“好瓜”(非垃圾邮件)和“坏瓜”(垃圾邮件)。下面是一个简单的朴素贝叶斯分类器在Python(通过sklearn库)中处理这个场景的代码示例:
```python
from sklearn.datasets import fetch_20newsgroups
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB
from sklearn.pipeline import Pipeline
# 加载数据集(这里假设数据已经分为"good"和"spam"两类)
categories = ["alt.atheism", "comp.graphics"]
data_train = fetch_20newsgroups(subset='train', categories=categories)
data_test = fetch_20newsgroups(subset='test', categories=categories)
# 创建模型并构建管道
text_clf = Pipeline([
('vect', CountVectorizer()), # 文本向量化
('clf', MultinomialNB()), # 朴素贝叶斯分类器
])
# 训练模型
text_clf.fit(data_train.data, data_train.target)
# 预测测试数据
predicted_labels = text_clf.predict(data_test.data)
# 打印预测结果
print("Predictions:", predicted_labels)
阅读全文