朴素贝叶斯算法的使用
时间: 2023-12-14 13:33:38 浏览: 23
朴素贝叶斯算法是一种基于贝叶斯定理和特征条件独立假设的算法。它在文本分类、垃圾邮件过滤、情感分析等领域有着广泛的应用。下面是使用朴素贝叶斯算法进行文本分类的示例代码:
```python
from sklearn.naive_bayes import MultinomialNB
from sklearn.feature_extraction.text import CountVectorizer
# 训练数据
train_data = ['I love this sandwich.', 'This is an amazing place!', 'I feel very good about these beers.']
train_labels = ['positive', 'positive', 'positive']
# 测试数据
test_data = ['This is my best work.', 'What an awesome view', 'I do not like this restaurant']
test_labels = ['positive', 'positive', 'negative']
# 特征提取
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)
# 输出预测结果
for i in range(len(test_data)):
print(test_data[i], '->', predicted_labels[i])
```
上述代码中,我们使用了sklearn库中的MultinomialNB类来实现朴素贝叶斯分类器。首先,我们定义了训练数据和测试数据,然后使用CountVectorizer类对文本进行特征提取。接着,我们使用MultinomialNB类训练模型,并对测试数据进行预测。最后,输出预测结果。