python 朴素贝叶斯分类
时间: 2023-10-08 10:06:51 浏览: 58
纯python朴素贝叶斯分类器
朴素贝叶斯分类(Naive Bayes Classification)是一种基于贝叶斯定理和特征独立假设的分类方法。它的主要思想是通过先验概率和条件概率来计算后验概率,从而对样本进行分类。
在Python中,我们可以使用sklearn库中的MultinomialNB类实现朴素贝叶斯分类。以下是一个简单的朴素贝叶斯分类示例:
```python
from sklearn.naive_bayes import MultinomialNB
from sklearn.feature_extraction.text import CountVectorizer
# 训练集和测试集
train_data = ["I love Python programming",
"Machine learning is great",
"Programming can be fun",
"Python programming is awesome"]
train_labels = ["programming", "machine learning", "programming", "programming"]
test_data = ["Python is my favorite language",
"I want to learn machine learning"]
# 特征提取
vectorizer = CountVectorizer()
train_features = vectorizer.fit_transform(train_data)
test_features = vectorizer.transform(test_data)
# 训练模型
clf = MultinomialNB()
clf.fit(train_features, train_labels)
# 预测测试集
predicted_labels = clf.predict(test_features)
print(predicted_labels)
```
在上面的示例中,我们首先定义了训练集和测试集。接着,我们使用CountVectorizer类对文本进行特征提取,将文本转换为特征向量。然后,我们使用MultinomialNB类训练模型,并对测试集进行预测,输出预测结果。
需要注意的是,朴素贝叶斯分类通常适用于文本分类问题。对于其他类型的分类问题,可使用不同的分类算法。
阅读全文