朴素贝叶斯算法python实现_分类算法——朴素贝叶斯算法python实现(文末附工程代码)...
时间: 2023-09-30 10:11:24 浏览: 64
朴素贝叶斯算法是一种基于概率统计的分类算法,它的核心思想是利用贝叶斯定理计算出每个类别的后验概率,然后选择具有最大后验概率的类别作为分类结果。在这个过程中,朴素贝叶斯假设每个特征之间相互独立,也就是说,每个特征对于分类的贡献是独立的。
在Python中,我们可以使用scikit-learn库来实现朴素贝叶斯算法。具体步骤如下:
1.准备数据:将数据集划分为训练集和测试集。
2.训练模型:使用训练集来训练朴素贝叶斯模型。
3.测试模型:使用测试集来测试模型的准确率。
下面是一个简单的朴素贝叶斯分类器的实现示例:
```
from sklearn.naive_bayes import GaussianNB
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
# 加载数据集
iris = load_iris()
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.3, random_state=0)
# 创建朴素贝叶斯分类器对象
gnb = GaussianNB()
# 训练模型
gnb.fit(X_train, y_train)
# 预测测试集的结果
y_pred = gnb.predict(X_test)
# 计算准确率
accuracy = sum(y_pred == y_test) / len(y_test)
print("准确率:", accuracy)
```
这里使用了iris数据集作为示例数据集进行分类。首先,我们使用`train_test_split`函数将数据集划分为训练集和测试集,然后创建一个`GaussianNB`对象,训练模型并使用测试集来测试模型的准确率。最后,我们计算出准确率并将其打印出来。
完整的代码可以在以下链接中找到:
https://github.com/Light-City/NaiveBayesClassifier-Python/blob/master/NaiveBayesClassifier.py