p ython朴素贝叶斯算法
时间: 2024-10-22 13:22:53 浏览: 21
java实现朴素贝叶斯分类算法
Python中的朴素贝叶斯算法是一种基于概率统计的分类模型,它假设特征之间相互独立(即“朴素”),尽管这个假设在实际应用中往往并不成立。朴素贝叶斯算法简单易用,常用于文本分类、垃圾邮件过滤等场景。
在Python中,常用的库如`scikit-learn`提供了一个名为`GaussianNB`的类,用于实现高斯朴素贝叶斯(适用于连续数据),以及`MultinomialNB`和`BernoulliNB`,分别用于处理词频型数据(适合于文档分类)。使用这些库,你可以按照以下步骤进行朴素贝叶斯分类:
1. 导入所需库:
```python
from sklearn.naive_bayes import GaussianNB, MultinomialNB, BernoulliNB
```
2. 准备训练集和测试集:
```python
X_train, y_train = ... # 训练样本特征和标签
X_test, y_test = ... # 测试样本特征和标签
```
3. 初始化并训练模型:
```python
gnb = GaussianNB() # 或者GaussianNB(), MultinomialNB(), BernoulliNB()
gnb.fit(X_train, y_train)
```
4. 预测新数据:
```python
y_pred = gnb.predict(X_test)
```
5. 评估性能:
```python
from sklearn.metrics import accuracy_score
accuracy = accuracy_score(y_test, y_pred)
```
阅读全文