zoukankan      html  css  js  c++  java
  • 朴素贝叶斯分类器

    在scikit-learn中,提供了3中朴素贝叶斯分类算法:GaussianNB(高斯朴素贝叶斯)、MultinomialNB(多项式朴素贝叶斯)、BernoulliNB(伯努利朴素贝叶斯)

    简单介绍:

    • 高斯朴素贝叶斯:适用于连续型数值,比如身高在160cm以下为一类,160-170cm为一个类,则划分不够细腻。
    • 多项式朴素贝叶斯:常用于文本分类,特征是单词,值是单词出现的次数
    • 伯努利朴素贝叶斯:所用特征为全局特征,只是它计算的不是单词的数量,而是出现则为1,否则为0。也就是特征等权重
    import numpy as np
    from sklearn.naive_bayes import GaussianNB, MultinomialNB, BernoulliNB
    
    X = np.array([[1,2,3,4],[1,3,4,4],[2,4,5,5],[2,5,6,5],[3,4,5,6],[3,5,6,6]])
    y = np.array([1,1,4,2,3,3])
    
    '''sklearn.naive_bayes.GaussianNB(priors=None)'''
    clf = GaussianNB()#默认priors=None
    clf.fit(X,y) #sample_weight=np.array([0.05,0.05,0.1,0.1,0.1,0.2,0.2,0.2])
    
    #clf.set_params(priors=[0.625, 0.375])
    clf.priors #无返回值,因priors=None
    clf.class_prior_
    clf.class_count_
    clf.theta_
    clf.sigma_
    
    '''sklearn.naive_bayes.MultinomialNB(alpha=1.0, fit_prior=True, class_prior=None)
    alpha添加拉普拉修/Lidstone平滑参数'''
    clf = MultinomialNB(alpha=2.0, fit_prior=True)
    clf.fit(X,y)
    #clf.partial_fit(X,y,classes=[1,2]) #数据量大时,增量训练,X可稀疏,初次制定class
    
    clf.coef_
    clf.intercept_
    clf.class_count_
    clf.feature_count_
    clf.class_log_prior_
    clf.feature_log_prob_ #特征概率对数值,(n_classes, n_features)
    
    '''sklearn.naive_bayes.BernoulliNB(alpha=1.0, binarize=0.0, fit_prior=True,class_prior=None)'''
    clf = BernoulliNB(alpha=2.0,binarize = 3.0,fit_prior=True)
    clf.fit(X,y)
    
    clf.class_count_
    clf.feature_count_
    clf.class_log_prior_
    clf.feature_log_prob_ #特征概率对数值,(n_classes, n_features)
    
    # 预测
    clf.predict([[-6,-6],[4,5]])
    clf.predict_proba([[-6,-6],[4,5]])
    clf.predict_log_proba([[-6,-6],[4,5]])
    clf.score(X,y)
    

      

  • 相关阅读:
    爬虫工具包
    用于模型选择的AIC与BIC
    4.数据结构---堆
    海量数据查询
    机器学习---算法汇总目录
    RNN/LSTM/GRU/seq2seq公式推导
    Dropout正则化和其他方法减少神经网络中的过拟合
    查看动态链接库中函数参数类型
    ANSI、ASCII、GB2312、GBK
    Unicode(UTF-8, UTF-16)令人混淆的概念
  • 原文地址:https://www.cnblogs.com/iupoint/p/11310298.html
Copyright © 2011-2022 走看看