当前位置:   article > 正文

机器学习之朴素贝叶斯:Naive Bayesian(二、算法案例)_采用鸢尾花数据集,实现朴素贝叶斯算法

采用鸢尾花数据集,实现朴素贝叶斯算法

一、鸢尾花数据集朴素贝叶斯实现

  1. # 导入算法包以及数据集
  2. from sklearn.datasets import load_iris
  3. from sklearn.model_selection import train_test_split
  4. from sklearn.metrics import classification_report,confusion_matrix
  5. from sklearn.naive_bayes import MultinomialNB,BernoulliNB,GaussianNB
  6. # 载入数据
  7. iris = load_iris()
  8. x_train,x_test,y_train,y_test = train_test_split(iris.data, iris.target,test_size=0.3,random_state=1)
  9. mul_nb = MultinomialNB()
  10. mul_nb.fit(x_train,y_train)
  11. print('多项式模型:')
  12. print('多项式模型准确率',mul_nb.score(x_test,y_test))
  13. print(classification_report(mul_nb.predict(x_test),y_test))
  14. print(confusion_matrix(mul_nb.predict(x_test),y_test))
  15. ber_nb = BernoulliNB()
  16. ber_nb.fit(x_train,y_train)
  17. print('伯努利模型:')
  18. print('伯努利模型准确率',ber_nb.score(x_test,y_test))
  19. print(classification_report(ber_nb.predict(x_test),y_test))
  20. print(confusion_matrix(ber_nb.predict(x_test),y_test))
  21. gau_nb = GaussianNB()
  22. gau_nb.fit(x_train,y_train)
  23. print('高斯模型:')
  24. print('高斯模型准确率',gau_nb.score(x_test,y_test))
  25. print(classification_report(gau_nb.predict(x_test),y_test))
  26. print(confusion_matrix(gau_nb.predict(x_test),y_test))

输出结果为:

由于鸢尾花的特征为花瓣和花萼的长度和宽度,均为连续数值,所以最适用

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/340797
推荐阅读
相关标签
  

闽ICP备14008679号