欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報(bào)激活碼778899分享:【機(jī)器學(xué)習(xí)】樸素貝葉斯算法

柚子快報(bào)激活碼778899分享:【機(jī)器學(xué)習(xí)】樸素貝葉斯算法

http://yzkb.51969.com/

目錄

什么是樸素貝葉斯算法?

算法引入?

貝葉斯定理

樸素貝葉斯分類器

工作原理

優(yōu)缺點(diǎn)

應(yīng)用場景

實(shí)現(xiàn)示例

基本步驟:

在機(jī)器學(xué)習(xí)的世界里,樸素貝葉斯算法以其簡單性和高效性而著稱。盡管它的名字聽起來有點(diǎn)復(fù)雜,但實(shí)際上它是一種基于概率論的簡單分類算法。今天,我們就來深入了解一下樸素貝葉斯算法的工作原理、優(yōu)缺點(diǎn)以及如何應(yīng)用它。?

什么是樸素貝葉斯算法?

樸素貝葉斯算法(Naive Bayes Algorithm)是一種基于貝葉斯定理的簡單概率分類器。它假設(shè)所有特征之間相互獨(dú)立,這個(gè)假設(shè)雖然在現(xiàn)實(shí)中往往不成立,但在很多情況下,樸素貝葉斯分類器仍然能夠表現(xiàn)得非常好。

樸素貝葉斯算法是基于貝葉斯定理的分類算法。貝葉斯定理是一種描述隨機(jī)事件A和B的條件概率的公式。在樸素貝葉斯中,我們假設(shè)特征之間相互獨(dú)立,即一個(gè)特征的出現(xiàn)不影響其他特征的出現(xiàn)。這個(gè)假設(shè)被稱為“樸素”的假設(shè),也是算法名稱的由來。

算法引入?

有一天,老師布置了一個(gè)非常困難的作業(yè),于是小明向班級內(nèi)其他30人發(fā)送群發(fā)消息,“今天的作業(yè)怎么做,能不能借我抄一抄,謝謝!”。然后班級內(nèi)30人分別給出了回復(fù),其內(nèi)容分為答案與情書。其中回復(fù)是作業(yè)答案的為16份。同時(shí)小明也收到了意外且深情的告白,其中情書數(shù)量是13份。但是唯獨(dú)小明的白月光發(fā)來的信息沒有看懂,于是小明就想能不能按照關(guān)鍵詞給白月光的回復(fù)進(jìn)行分類呢,看看到底是作業(yè)答案還是情書。

于是小明從其他的29份中選取了一些關(guān)鍵詞,從作業(yè)和情書中選取了4個(gè)關(guān)鍵詞,分別是喜歡、明天、紅豆、辛苦。然后從這16份答案與13份情書中分別統(tǒng)計(jì)出現(xiàn)的次數(shù),并且計(jì)算概率。

得到概率之后,我們就可以進(jìn)行計(jì)算:

回復(fù)是作業(yè)的概率=P(作業(yè))*?P(紅豆|作業(yè))*P(喜歡|作業(yè))=0.0183

回復(fù)是作業(yè)的概率=P(情書)*?P(紅豆|情書)*P(喜歡|情書)=0.0506

小明發(fā)現(xiàn)回復(fù)是情書的概率大于回復(fù)是作業(yè)的概率,0.0506>0.0183,所以得出結(jié)論,白月光給小明發(fā)的內(nèi)容是情書。

拉普拉斯平滑:?

我們再接著看這樣的一個(gè)例子:“好喜歡你,好喜歡你”、“好喜歡你,辛苦你了”,我們選取“喜歡”與“辛苦”為關(guān)鍵詞,我們根據(jù)上面的的例子,我們進(jìn)行計(jì)算概率:

P(作業(yè))*?P(喜歡|作業(yè))^3*P(辛苦|作業(yè))=0.000177

P(情書)*?P(喜歡|情書)^3*P(辛苦|情書)=0.000000

但是我們發(fā)現(xiàn)第二句話是很明顯的告白,但是因?yàn)樵谇闀小靶量唷标P(guān)鍵字沒有出現(xiàn),所以會(huì)導(dǎo)致P(辛苦|情書)?=0,通過這樣的算法,這很明顯得到了錯(cuò)誤的預(yù)測,那么我們?nèi)绾稳ソ鉀Q這個(gè)問題呢,我們可以利用拉普拉斯平滑技巧,也就是在每一個(gè)關(guān)鍵詞上人為增加一個(gè)出現(xiàn)的次數(shù)(如圖:黃色部分)。這樣會(huì)保證每一項(xiàng)都不為0,按照通過拉普拉斯平滑技巧處理過的次數(shù),進(jìn)行重新計(jì)算關(guān)鍵詞的概率,再此概率基礎(chǔ)上再進(jìn)行計(jì)算會(huì)得到正確的結(jié)果了。

貝葉斯定理

貝葉斯定理描述了給定事件B發(fā)生的條件下,事件A發(fā)生的概率,公式如下:

其中:

P(A∣B)?是在事件B發(fā)生的條件下事件A發(fā)生的概率。P(B∣A)?是在事件A發(fā)生的條件下事件B發(fā)生的概率。P(A)?是事件A發(fā)生的概率。P(B)?是事件B發(fā)生的概率。

樸素貝葉斯分類器

在分類問題中,樸素貝葉斯分類器的目標(biāo)是找出給定輸入特征下,哪個(gè)類別的概率最高。假設(shè)我們有特征集合 X={x1?,x2?,...,xn?} 和類別集合 C={c1?,c2?,...,ck?},樸素貝葉斯分類器會(huì)計(jì)算:

P(ci?∣X)=P(X)P(X∣ci?)P(ci?)?

其中:

P(ci?∣X)?是給定特征集合X的條件下,類別?ci??發(fā)生的概率。P(X∣ci?)?是給定類別?ci??的條件下,特征集合X發(fā)生的概率。P(ci?)?是類別?ci??的先驗(yàn)概率。P(X)?是特征集合X的先驗(yàn)概率,通常可以忽略,因?yàn)樗鼘λ蓄悇e都是相同的。

由于特征之間是條件獨(dú)立的,我們可以將P(X∣ci?) 展開為:

P(X∣ci?)=P(x1?∣ci?)P(x2?∣ci?)...P(xn?∣ci?)

工作原理

樸素貝葉斯算法的核心是計(jì)算給定輸入特征下,每個(gè)類別的概率,然后選擇概率最高的類別作為預(yù)測結(jié)果。具體步驟如下:

數(shù)據(jù)預(yù)處理:將數(shù)據(jù)轉(zhuǎn)換為算法可以處理的格式,如文本數(shù)據(jù)需要進(jìn)行分詞、去除停用詞等。 計(jì)算先驗(yàn)概率:先驗(yàn)概率是指在沒有觀察到任何特征的情況下,每個(gè)類別的概率。 計(jì)算條件概率:對于每個(gè)類別,計(jì)算在該類別下觀察到每個(gè)特征的概率。 應(yīng)用貝葉斯定理:結(jié)合先驗(yàn)概率和條件概率,計(jì)算后驗(yàn)概率,即在觀察到特征的情況下,每個(gè)類別的概率。 分類決策:選擇后驗(yàn)概率最高的類別作為預(yù)測結(jié)果。

優(yōu)缺點(diǎn)

優(yōu)點(diǎn):

簡單高效:算法實(shí)現(xiàn)簡單,計(jì)算效率高,適合處理大量數(shù)據(jù)。對小規(guī)模數(shù)據(jù)表現(xiàn)良好:在數(shù)據(jù)量不大的情況下,樸素貝葉斯往往能取得不錯(cuò)的效果。需要的樣本量較少:與其他機(jī)器學(xué)習(xí)算法相比,樸素貝葉斯需要的訓(xùn)練樣本量較少。

缺點(diǎn):

特征獨(dú)立性假設(shè):特征獨(dú)立性假設(shè)在實(shí)際應(yīng)用中往往不成立,這可能會(huì)影響分類的準(zhǔn)確性。對輸入數(shù)據(jù)的表達(dá)形式敏感:算法對輸入數(shù)據(jù)的表達(dá)形式非常敏感,如文本數(shù)據(jù)的分詞方式等。

應(yīng)用場景

文本分類:通過計(jì)算文檔中每個(gè)詞屬于某個(gè)類別的概率,來確定文檔的分類。垃圾郵件檢測:通過分析郵件內(nèi)容,判斷郵件是否為垃圾郵件。情感分析:通過分析用戶評論,判斷用戶的情感傾向。

實(shí)現(xiàn)示例

基本步驟:

數(shù)據(jù)準(zhǔn)備:收集數(shù)據(jù)并將其分為訓(xùn)練集和測試集。特征提取:從數(shù)據(jù)中提取特征。計(jì)算先驗(yàn)概率:計(jì)算每個(gè)類別的概率。計(jì)算條件概率:計(jì)算每個(gè)特征在每個(gè)類別下的條件概率。應(yīng)用貝葉斯定理:使用貝葉斯定理計(jì)算后驗(yàn)概率。分類決策:選擇具有最高后驗(yàn)概率的類別作為預(yù)測類別。

以下是使用Python的scikit-learn庫實(shí)現(xiàn)樸素貝葉斯分類器的簡單示例:

from sklearn.naive_bayes import GaussianNB

from sklearn.datasets import load_iris

from sklearn.model_selection import train_test_split

from sklearn.metrics import accuracy_score

# 加載數(shù)據(jù)集

iris = load_iris()

X, y = iris.data, iris.target

# 劃分訓(xùn)練集和測試集

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)

# 創(chuàng)建并訓(xùn)練模型

model = GaussianNB()

model.fit(X_train, y_train)

# 進(jìn)行預(yù)測

y_pred = model.predict(X_test)

# 計(jì)算準(zhǔn)確率

accuracy = accuracy_score(y_test, y_pred)

print(f"Accuracy: {accuracy}")

在這個(gè)示例中,我們使用了sklearn庫中的GaussianNB類,它假設(shè)特征遵循高斯分布。load_iris函數(shù)用于加載鳶尾花數(shù)據(jù)集,這是一個(gè)常用的分類數(shù)據(jù)集。然后,我們將數(shù)據(jù)集分為訓(xùn)練集和測試集,并使用GaussianNB模型進(jìn)行訓(xùn)練和預(yù)測。

請注意,這個(gè)例子是一個(gè)簡化的版本,實(shí)際應(yīng)用中可能需要進(jìn)行更多的數(shù)據(jù)預(yù)處理步驟,比如特征縮放、缺失值處理等。此外,根據(jù)數(shù)據(jù)的特性,可能需要選擇不同的樸素貝葉斯模型,如多項(xiàng)式樸素貝葉斯或伯努利樸素貝葉斯。

樸素貝葉斯算法雖然簡單,但在很多實(shí)際應(yīng)用中都能取得不錯(cuò)的效果。理解其工作原理和適用場景,可以幫助我們在適當(dāng)?shù)膯栴}上選擇合適的工具。希望這篇文章能幫助大家更好地理解和應(yīng)用樸素貝葉斯算法。

注:算法引入及圖片來源于[5分鐘學(xué)算法] #02 樸素貝葉斯 寫作業(yè)還得看小明_嗶哩嗶哩_bilibili

柚子快報(bào)激活碼778899分享:【機(jī)器學(xué)習(xí)】樸素貝葉斯算法

http://yzkb.51969.com/

推薦文章

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19730138.html

發(fā)布評論

您暫未設(shè)置收款碼

請?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問

文章目錄