朴素贝叶斯算法的Python实现
时间: 2023-11-05 08:08:07 浏览: 99
朴素贝叶斯算法是一种基于贝叶斯定理的分类算法,主要用于文本分类、垃圾邮件过滤、情感分析等领域。在Python中,可以使用scikit-learn库实现朴素贝叶斯算法,下面是一个简单的示例代码:
```python
from sklearn.naive_bayes import MultinomialNB
from sklearn.feature_extraction.text import CountVectorizer
# 构建训练数据
X_train = ["Chinese Beijing Chinese", "Chinese Chinese Shanghai", "Chinese Macao", "Tokyo Japan Chinese"]
y_train = ["c", "c", "c", "j"]
# 构建词袋模型
vectorizer = CountVectorizer()
X_train_vec = vectorizer.fit_transform(X_train)
# 训练朴素贝叶斯模型
clf = MultinomialNB()
clf.fit(X_train_vec, y_train)
# 预测新数据
X_test = ["Chinese Chinese Chinese Tokyo Japan"]
X_test_vec = vectorizer.transform(X_test)
y_pred = clf.predict(X_test_vec)
print(y_pred) # 输出:['c']
```
在上面的代码中,我们使用了一个简单的文本分类数据集,其中包含4个样本,每个样本表示一个文本和它所属的类别(c表示中国,j表示日本)。首先,我们使用CountVectorizer构建了一个词袋模型,然后将文本数据转换为向量表示。接着,我们使用MultinomialNB训练了一个朴素贝叶斯模型,并使用X_test进行了预测,最终输出了预测结果。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)