偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

詳解基于樸素貝葉斯的情感分析及 Python 實現(xiàn)

移動開發(fā) 開發(fā)
基于樸素貝葉斯的情感分類。

 相對于「 基于詞典的分析 」,「 基于機器學習 」的就不需要大量標注的詞典,但是需要大量標記的數(shù)據(jù),比如:

還是下面這句話,如果它的標簽是:

服務質(zhì)量 - 中 (共有三個級別,好、中、差)

╮(╯-╰)╭,其是機器學習,通過大量已經(jīng)標簽的數(shù)據(jù)訓練出一個模型,

然后你在輸入一條評論,來判斷標簽級別

寧馨的點評 國慶活動,用62開頭的信用卡可以6.2元買一個印有銀聯(lián)卡標記的冰淇淋,
有香草,巧克力和抹茶三種口味可選,我選的是香草口味,味道很濃郁。
另外任意消費都可以10元買兩個馬卡龍,個頭雖不是很大,但很好吃,不是很甜的那種,不會覺得膩。
標簽:服務質(zhì)量 - 中

  樸素貝葉斯

1、貝葉斯定理

假設對于某個數(shù)據(jù)集,隨機變量C表示樣本為C類的概率,F(xiàn)1表示測試樣本某特征出現(xiàn)的概率,套用基本貝葉斯公式,則如下所示:

詳解基于樸素貝葉斯的情感分析及 Python 實現(xiàn)

上式表示對于某個樣本,特征F1出現(xiàn)時,該樣本被分為C類的條件概率。那么如何用上式來對測試樣本分類呢?

舉例來說,有個測試樣本,其特征F1出現(xiàn)了(F1=1),那么就計算P(C=0|F1=1)和P(C=1|F1=1)的概率值。前者大,則該樣本被認為是0類;后者大,則分為1類。

對該公示,有幾個概念需要熟知:

先驗概率(Prior)。P(C)是C的先驗概率,可以從已有的訓練集中計算分為C類的樣本占所有樣本的比重得出。

證據(jù)(Evidence)。即上式P(F1),表示對于某測試樣本,特征F1出現(xiàn)的概率。同樣可以從訓練集中F1特征對應樣本所占總樣本的比例得出。

似然(likelihood)。即上式P(F1|C),表示如果知道一個樣本分為C類,那么他的特征為F1的概率是多少。

對于多個特征而言,貝葉斯公式可以擴展如下:

詳解基于樸素貝葉斯的情感分析及 Python 實現(xiàn)

分子中存在一大串似然值。當特征很多的時候,這些似然值的計算是極其痛苦的?,F(xiàn)在該怎么辦?

2、樸素的概念

為了簡化計算,樸素貝葉斯算法做了一假設:“樸素的認為各個特征相互獨立”。這么一來,上式的分子就簡化成了:

P(C)P(F1|C)P(F2|C)...P(Fn|C)。

這樣簡化過后,計算起來就方便多了。

這個假設是認為各個特征之間是獨立的,看上去確實是個很不科學的假設。因為很多情況下,各個特征之間是緊密聯(lián)系的。然而在樸素貝葉斯的大量應用實踐實際表明其工作的相當好。

其次,由于樸素貝葉斯的工作原理是計算P(C=0|F1...Fn)和P(C=1|F1...Fn),并取最大值的那個作為其分類。而二者的分母是一模一樣的。因此,我們又可以省略分母計算,從而進一步簡化計算過程。

另外,貝葉斯公式推導能夠成立有個重要前期,就是各個證據(jù)(evidence)不能為0。也即對于任意特征Fx,P(Fx)不能為0。而顯示某些特征未出現(xiàn)在測試集中的情況是可以發(fā)生的。因此實現(xiàn)上通常要做一些小的處理,例如把所有計數(shù)進行+1(加法平滑 additive smoothing,又叫拉普拉斯平滑 Laplace smothing)。而如果通過增加一個大于 0 的可調(diào)參數(shù) alpha 進行平滑,就叫 Lidstone 平滑。

詳解基于樸素貝葉斯的情感分析及 Python 實現(xiàn)

  基于樸素貝葉斯的情感分類

原始數(shù)據(jù)集,只抽了10條

詳解基于樸素貝葉斯的情感分析及 Python 實現(xiàn)

讀數(shù)據(jù)

讀取excel文件,用的pandas庫的DataFrame的數(shù)據(jù)類型

分詞

對每個評論分詞,分詞的同時去除停用詞,得到如下詞表

每個列表是與評論一一對應的

詳解基于樸素貝葉斯的情感分析及 Python 實現(xiàn)

統(tǒng)計

這里統(tǒng)計什么呢?統(tǒng)計兩種數(shù)據(jù)

1. 評論級別的次數(shù)

這里有三個級別分別對應
c0 → 好 2
c1 → 中 3
c2 → 差 5

2. 每個詞在句子中出現(xiàn)的次數(shù)

得到一個字典數(shù)據(jù)
evalation [2, 5, 3]
半價 [0, 5, 0]
劃算 [1, 1, 0]
不錯 [0, 2, 0]
·········
不滿 [0, 1, 0]
重要 [0, 1, 0]
清楚 [0, 1, 0]
具體 [0, 1, 0]
每個詞(特征)后的 list坐標位:0,1,2分別對應好,中,差

以上工作完成之后,就是把模型訓練好了,只不過數(shù)據(jù)越多越準確

測試

比如輸入一個句子

世紀聯(lián)華(百聯(lián)西郊購物中心店)的點評 一個號稱國際大都市,收銀處的人服務態(tài)度差到極點。銀聯(lián)活動30-10,還不可以連單。

得到結(jié)果

c2-差

 

責任編輯:張子龍 來源: 簡書
相關(guān)推薦

2021-04-18 09:57:45

Java樸素貝葉斯貝葉斯定理

2012-09-24 10:13:35

貝葉斯

2017-03-29 14:50:18

2017-07-24 10:36:37

Python機器學習樸素貝葉斯

2017-11-07 11:17:40

樸素貝葉斯畫像數(shù)據(jù)數(shù)據(jù)挖掘

2021-08-30 11:53:36

機器學習人工智能計算機

2022-09-28 08:00:00

Python機器學習算法

2022-01-03 20:18:37

定理應用貝葉斯

2021-07-29 13:06:29

Python機器學習編程語言

2017-06-22 09:53:01

機器學習Python樸素貝葉斯

2018-09-13 12:51:58

數(shù)據(jù)挖掘算法樸素貝葉斯

2017-08-07 13:02:32

全棧必備貝葉斯

2017-03-21 09:17:37

2013-05-08 09:05:48

狐貍貝葉斯大數(shù)據(jù)

2023-01-31 15:49:51

機器學習函數(shù)評分函數(shù)

2019-03-20 07:50:47

機器學習算法線性回歸

2018-07-27 13:55:12

貝葉斯分析線性回歸數(shù)據(jù)

2016-08-30 00:14:09

大數(shù)據(jù)貝葉斯

2016-08-30 00:19:30

2024-10-11 16:53:16

貝葉斯人工智能網(wǎng)絡
點贊
收藏

51CTO技術(shù)棧公眾號