朴素贝叶斯

  1. 朴素贝叶斯是一个不建模的算法。是一种直接衡量标签和特征之间的概率关系的有监督算法,它既可以做回归也可以分类,不过多是用于分类之中。朴素贝叶斯的算法根源就是基于概率论和数理统计的贝叶斯理论。
  2. 假设特征之间是有条件独立的,可以解决众多问题,也简化了很多计算过程,这是朴素贝叶斯被称为”朴素“的理由。因此,贝叶斯在特征之间有较多相关性的数据集上表现不佳,而现实中的数据多多少少都会有一些相关性。

  3. in sklearn

含义
naive_bayes.BernoulliNB 伯努利分布下的朴素贝叶斯
naive_bayes.GaussianNB 高斯分布下的朴素贝叶斯
naive_bayes.MultinomialNB 多项式分布下的朴素贝叶斯
naive_bayes.ComplementNB 补充朴素贝叶斯
linear_model.BayesianRidge 贝叶斯岭回归,在参数估计过程中使用贝叶斯回归技术来包括正则化参数
  1. 高斯朴素贝叶斯
    naive_bayes.GaussianNB (priors=None, var_smoothing=1e-09)
    高斯朴素贝叶斯,通过假设P(Xi|Y)是服从高斯分布(也就是正态分布),来估计每个特征下每个类别上的条件概率。
    参数:
    • prior:表示类的先验概率。如果指定,则不根据数据调整先验,如果不指定,则自行根据数据 计算先验概率
    • var_smoothing: 在估计方差时,为了追求估计的稳定性,将所有特征的方差中最大的方差以某个比例(var_smoothing)添加到估计的方差中。
      1
      2
      3
      4
      from sklearn.naive_bayes import GaussianNB
      gnb = GaussianNB().fit(X_train,y_train)
      acc_score = gnb.score(X_test,y_test) #查看分数
      y_pred = gnb.predict(X_test) #查看预测的概率结果