機器學習基礎知識(四) 樸素貝葉斯

2021-10-21 11:53:13 字數 1226 閱讀 7248

1.原理:從由因推果到由果推因,貝葉斯公式

2.改進:由於屬於某乙個類別的可能性為0不妥,因此需要在分子加上拉普拉斯平滑係數α(一般為1),分母加上α*m(m為訓練文件中統計出的所有特徵詞)

3.api:sklearn.*****_bayes.multinominalnb(alpha=1.0)

from sklearn.datasets import fetch_20newsgroups

from sklearn.model_selection import train_test_split

from sklearn.feature_extraction.text import tfidfvectorizer

from sklearn.*****_bayes import multinomialnb

def*****bayes()

:'''

樸素貝葉斯

:return:none

'''# 1.匯入資料集

news = fetch_20newsgroups(subset=

'all'

)# 2.對資料進行分割

x_train,x_test,y_train,y_test=train_test_split(news.data,news.target,test_size=

0.25

)# 3.對訓練集進行特徵抽取

tf=tfidfvectorizer(

)# 4.以訓練集當中詞的列表進行每篇文章重要性統計

x_train=tf.fit_transform(x_train)

print

(tf.get_feature_names())

x_test=tf.transform(x_test)

# 5.進行樸素貝葉斯演算法的**

mlt=multinominalnb(alpha=

0.1)

mul.fit(x_train,y_train)

y_predict=mlt.predict(x_test)

print

(,y_predict)

print

("準確率為:"

,mlt.score(x_test,y_test)

)return

none

if __name__=

"__main__"

: *****bayes(

)

4.優點:

機器學習 樸素貝葉斯

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

機器學習基礎 樸素貝葉斯分類

可以將公式改寫為 c表示乙個分類,f表示屬性對應的資料字段 這裡舉個例子,c代表蘋果,f代表紅色 p 蘋果 紅色 p 紅色 蘋果 xp 蘋果 p 紅色 通過蘋果是紅色的條件概率可以得到紅色是蘋果的條件概率 通過先驗概率可以算出後驗概率 乙個果子是蘋果的概率為0.3 p c 0.3 乙個果子是紅色的概...

機器學習基礎演算法 樸素貝葉斯

1 為什麼可以使用bayes對未知資料進行分類 首先要了解bayes的概率 條件概率,以及將條件概率應用到分類中 bayes的概率是乙個逆向概率,詳細內容檢視bayestheory.md 可以使用bayes主要是因為在知道某個條件的基礎上,可以反推某一事件發生的概率 在機器學習中使用的樣本資料就是我...