ModelArts自動學習實現(xiàn)中秋月餅分類
939
2025-03-31
3.2.2 樸素貝葉斯模型
樸素貝葉斯模型(Naive Bayes)是基于貝葉斯定理的分類方法,它有嚴格而完備的數(shù)學推導,容易實現(xiàn),且訓練和預測的過程均很高效。樸素貝葉斯基于特征條件獨立性假設(條件獨立假設是指每個特征對分類結(jié)果獨立產(chǎn)生影響,該假設可以簡化條件概率分布的計算),基于這個假設,屬于某個類別的概率表示為若干個概率乘積的函數(shù),其中這些概率包括某個特征在給定某個類別的條件下出現(xiàn)的概率(條件概率),以及該類別的概率(先驗概率),這樣使得模型訓練非常直接且易于處理。類別的先驗概率和特征的條件概率可以通過數(shù)據(jù)的頻率估計得到。分類過程就是在給定特征和類別概率的情況下,選擇最可能的類別。
另外,還有一個關(guān)于特征分布的假設,即參數(shù)的估計來自數(shù)據(jù),MLlib實現(xiàn)了多項樸素貝葉斯,其中假設特征分布是多項分布,用以表示特征的非負頻率統(tǒng)計。
在樸素貝葉斯算法中,學習過程即為通過訓練數(shù)據(jù)集估計先驗概率P(Y=ck)和條件概率P(Xj= xj |Y=ck)。一般使用極大似然估計法去估計這些概率分布。
針對先驗概率,其估計方法為:
式中,I(yi=ck)為指示函數(shù),其值取決于yi和ck是否相等,如果兩者相等,則I(yi=ck)為1,否則為0。N為訓練集中的樣本總數(shù)。顯然,類別ck的先驗概率是類別為ck的樣本占訓練數(shù)據(jù)集的比例。
設第j個特征xj所有取值構(gòu)成的集合是{aj1, aj2,…, ajSj)},其中aj1代表第j個特征對應的第l個取值,Sj為第j個特征所有取值的個數(shù)。針對條件概率,其估計方法為:
式中,xji指第i個樣本的第j個特征。
預測過程中,對于測試集中的樣本,根據(jù)已學習到的模型求出后驗概率P(Y= ci |X=x)即可,如下式所示:
根據(jù)條件獨立假設,上式可以轉(zhuǎn)化為:
然后選擇后驗概率最大對應的類別作為樣本的類標簽。根據(jù)后驗概率最大的原則,可以得到:
對于不同的ck,上式中的分母是相同的,所以上式可以簡寫為:
MLlib支持多項貝葉斯和伯努利貝葉斯,這些模型的一個典型應用就是文檔分類。在文檔分類中,每個樣本就是一篇文檔,每個特征就是一個單詞。多項貝葉斯中特征的值是單詞的頻數(shù),而伯努利貝葉斯中特征的值是單詞是否出現(xiàn)(0/1)。特征取值必須是非負值。模型類型由參數(shù)modelType確定,取值為multinomial或者bernoulli,缺省是multinomial。
在計算過程中如果特征的取值和某個類別沒有同時出現(xiàn)過,則在計算條件概率時會出現(xiàn)概率為0的情況,此時其他特征的信息將會在連乘中消除。解決這個問題的方法就是使用加法平滑。具體來說,條件概率的平滑方法是:
式中,λ≥0。上式等價于在隨機變量各個取值的頻數(shù)上加上一個整數(shù)λ。同樣對先驗概率的平滑方法是:
在MLlib中可以通過參數(shù)λ來設置加法平滑,該參數(shù)默認為1。
Spark 機器學習
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。