機器學習之樸素貝葉斯

2021-10-05 02:36:16 字數 2540 閱讀 3954

樸素貝葉斯–>1

樸素貝葉斯–>2

一、高斯樸素貝葉斯

gaussiannb實現了高斯樸素貝葉斯分類演算法,設假設特徵的可能性是高斯的:

p (x

i∣y)

=12π

σy

2exp⁡(

−(xi

−μy)

22σy

2)

p(x_i|y) = \frac\exp(-\frac)}

p(xi​∣

y)=2

πσy2

​​exp(−2

σy2​

(xi​

−μy​

)2​)

1​引數σ

y\sigma_y

σy​和μ

y\mu_y

μy​使用最大可能性來估計的。

二、利用sklearn庫實現高斯樸素貝葉斯

方法:sklearn.*****_bayes.gaussiannb(priors=

none

, var_smoothing=1e-

09)

引數:

priors:array_like,shape(n_class,

),類的先驗概率。如果指定,則不根據資料調整先驗。

var_smoothing:float

,optional(default=1e-

9),最大方差部分的所有特徵,是增加到方差計算的穩定性。

import numpy as np

x = np.array([[

-1,-

1],[

-2,-

1],[

-3,-

2],[

1,1]

,[2,

1],[

3,2]

])y = np.array([1

,1,1

,2,2

,2])

from sklearn.*****_bayes import gaussiannb

clf = gaussiannb(

)clf.fit(x, y)

print

(clf.predict([[

-0.8,-

1]])

)>>

>[1

]clf_pf = gaussiannb(

)clf_pf.partial_fit(x, y, np.unique(y)

)print

(clf_pf.predict([[

-0.8,-

1]])

)>>

>[1

]

fit(self, x, y[

, sample_weight]

):根據x, y來擬合高斯樸素貝葉斯

predict(self, x):對一組測試向量x執行分類。即**

predict_proba(self, x):測試向量x的返回概率估計。

score(self, x, y[

, sample_weight]

):返回給定測試資料和標籤的平均精度。

1、fit(self, x, y, sample_weight=none)

x:array-like, shape (n_samples, n_features)

,訓練向量,

其中n_samples是樣本的數量,n_features是特徵的數量。

y:array-like, shape (n_samples,

),目標價值(類別)

sample_weight:array-like, shape (n_samples,

), optional (default=

none

),應用於個別樣本的權值(

1,未加權的)。

2、predict(self, x),對一組測試向量x執行分類。

x:array-like of shape (n_samples, n_features)
3、predict_proba(self, x),測試向量x的返回概率估計。

x:array-like of shape (n_samples, n_features)
4、score(self, x, y, sample_weight=none),返回給定測試資料和標籤的平均精度。

x:array-like of shape (n_samples, n_features)

,測試資料

y:array-like of shape (n_samples,)or

(n_samples, n_outputs)

,x的真標籤。

sample_weightarray-like of shape (n_samples,

), default=

none

,樣本權重。

機器學習之樸素貝葉斯

寫在前面 本文寫自初學時,若後續學習過程中有新的理解,將不定期進行更新 若文中敘述有誤,望不吝賜教,也將及時修改 貝葉斯分類是一類分類演算法的總稱,這類演算法均以貝葉斯定理為基礎,故統稱為貝葉斯分類。而樸素樸素貝葉斯分類是貝葉斯分類中最簡單,也是常見的一種分類方法。在理解樸素貝葉斯之前,需要對兩個數...

機器學習 樸素貝葉斯

樸素貝葉斯原理 1.貝葉斯公式 2.樸素貝葉斯的模型 3.後驗概率最大化的含義 4.樸素貝葉斯的引數估計 4.1.特徵是離散值 假設符合多項式分布 4.2.特徵是稀疏的離散值 假設符合伯努利分布 4.3.特徵是連續值 假設符合正態分佈 5.樸素貝葉斯演算法過程 6.樸素貝葉斯演算法小結 scikit...

機器學習實戰之樸素貝葉斯

4.樸素貝葉斯的優缺點 優點 在資料較少的情況下仍然有效,可以處理多類別問題。缺點 對於輸入資料的準備方式較為敏感。適用資料型別 標稱型資料。5.使用python進行文字分類 5.1 準備資料 從文字中構建詞向量 我們將把文字看成單詞向量或者詞條向量。考慮出現在所有文件中的所有單詞,再決定將哪些詞納...