主要有以下7個步驟:
1. 收集大量的垃圾郵件和非垃圾郵件,建立垃圾郵件集和非垃圾郵件集。
2. 提取郵件主題和郵件體中的獨立字符串,例如 ABC32,¥234等作為TOKEN串并統(tǒng)計提取出的TOKEN串出現(xiàn)的次數(shù)即字頻。按照上述的方法分別處理垃圾郵件集和非垃圾郵件集中的所有郵件。
3. 每一個郵件集對應一個哈希表,hashtable_good對應非垃圾郵件集而hashtable_bad對應垃圾郵件集。表中存儲TOKEN串到字頻的映射關系。
4. 計算每個哈希表中TOKEN串出現(xiàn)的概率P=(某TOKEN串的字頻)/(對應哈希表的長度)。
5. 綜合考慮hashtable_good和hashtable_bad,推斷出當新來的郵件中出現(xiàn)某個TOKEN串時,該新郵件為垃圾郵件的概率。數(shù)學表達式為:
A 事件 ---- 郵件為垃圾郵件;
t1,t2 …….tn 代表 TOKEN 串
則 P ( A|ti )表示在郵件中出現(xiàn) TOKEN 串 ti 時,該郵件為垃圾郵件的概率。
設
P1 ( ti ) = ( ti 在 hashtable_good 中的值)
P2 ( ti ) = ( ti 在 hashtable_ bad 中的值)
則 P ( A|ti ) =P2 ( ti ) /[ ( P1 ( ti ) +P2 ( ti ) ] ;
6. 建立新的哈希表hashtable_probability存儲TOKEN串ti到P(A|ti)的映射
7. 至此,垃圾郵件集和非垃圾郵件集的學習過程結束。根據(jù)建立的哈希表 hashtable_probability可以估計一封新到的郵件為垃圾郵件的可能性。
當新到一封郵件時,按照步驟2,生成TOKEN串。查詢hashtable_probability得到該TOKEN 串的鍵值。
假設由該郵件共得到N個TOKEN 串,t1,t2…….tn,hashtable_probability中對應的值為 P1 , P2 , ……PN , P(A|t1 ,t2, t3……tn) 表示在郵件中同時出現(xiàn)多個TOKEN串t1,t2……tn時,該郵件為垃圾郵件的概率。
由復合概率公式可得
P(A|t1 ,t2, t3……tn)=(P1*P2*……PN)/[P1*P2*……PN+(1-P1)*(1-P2)*……(1-PN)]
當 P(A|t1 ,t2, t3……tn) 超過預定閾值時,就可以判斷郵件為垃圾郵件。
樸素貝葉斯分類器是一種應用基于獨立假設的貝葉斯定理的簡單概率分類器,之所以成為樸素,應該是Naive的直譯,意思為簡單,樸素,天真。
1、貝葉斯方法 貝葉斯方法是以貝葉斯原理為基礎,使用概率統(tǒng)計的知識對樣本數(shù)據(jù)集進行分類。由于其有著堅實的數(shù)學基礎,貝葉斯分類算法的誤判率是很低的。
貝葉斯方法的特點是結合先驗概率和后驗概率,即避免了只使用先驗概率的主觀偏見,也避免了單獨使用樣本信息的過擬合現(xiàn)象。貝葉斯分類算法在數(shù)據(jù)集較大的情況下表現(xiàn)出較高的準確率,同時算法本身也比較簡單。
2、樸素貝葉斯算法 樸素貝葉斯算法(Naive Bayesian algorithm) 是應用最為廣泛的分類算法之一。 樸素貝葉斯方法是在貝葉斯算法的基礎上進行了相應的簡化,即假定給定目標值時屬性之間相互條件獨立。
也就是說沒有哪個屬性變量對于決策結果來說占有著較大的比重,也沒有哪個屬性變量對于決策結果占有著較小的比重。 雖然這個簡化方式在一定程度上降低了貝葉斯分類算法的分類效果,但是在實際的應用場景中,極大地簡化了貝葉斯方法的復雜性。
擴展資料 研究意義 人們根據(jù)不確定性信息作出推理和決策需要對各種結論的概率作出估計,這類推理稱為概率推理。概率推理既是概率學和邏輯學的研究對象,也是心理學的研究對象,但研究的角度是不同的。
概率學和邏輯學研究的是客觀概率推算的公式或規(guī)則。 而心理學研究人們主觀概率估計的認知加工過程規(guī)律。
貝葉斯推理的問題是條件概率推理問題,這一領域的探討對揭示人們對概率信息的認知加工過程與規(guī)律、指導人們進行有效的學習和判斷決策都具有十分重要的理論意義和實踐意義。
為了測試評估貝葉斯分類器的性能,用不同數(shù)據(jù)集進行對比實驗是必不可少的. 現(xiàn)有的貝葉斯網絡實驗軟件包都是針對特定目的設計的,不能滿足不同研究的需要. 介紹了用Matlab在BNT軟件包基礎上建構的貝葉斯分類器實驗平臺MBNC,闡述了MBNC的系統(tǒng)結構和主要功能,以及在MBNC上建立的樸素貝葉斯分類器NBC,基于互信息和條件互信息測度的樹擴展的貝葉斯分類器TANC,基于K2算法和GS算法的貝葉斯網絡分類器BNC. 用來自UCI的標準數(shù)據(jù)集對MBNC進行測試,實驗結果表明基于MBNC所建構的貝葉斯分類器的性能優(yōu)于國外同類工作的結果,編程量大大小于使用同類的實驗軟件包,所建立的MBNC實驗平臺工作正確、有效、穩(wěn)定. 在MBNC上已經進行貝葉斯分類器的優(yōu)化和改進實驗,以及處理缺失數(shù)據(jù)等研究工作。
為了測試評估貝葉斯分類器的性能,用不同數(shù)據(jù)集進行對比實驗是必不可少的. 現(xiàn)有的貝葉斯網絡實驗軟件包都是針對特定目的設計的,不能滿足不同研究的需要. 介紹了用Matlab在BNT軟件包基礎上建構的貝葉斯分類器實驗平臺MBNC,闡述了MBNC的系統(tǒng)結構和主要功能,以及在MBNC上建立的樸素貝葉斯分類器NBC,基于互信息和條件互信息測度的樹擴展的貝葉斯分類器TANC,基于K2算法和GS算法的貝葉斯網絡分類器BNC. 用來自UCI的標準數(shù)據(jù)集對MBNC進行測試,實驗結果表明基于MBNC所建構的貝葉斯分類器的性能優(yōu)于國外同類工作的結果,編程量大大小于使用同類的實驗軟件包,所建立的MBNC實驗平臺工作正確、有效、穩(wěn)定. 在MBNC上已經進行貝葉斯分類器的優(yōu)化和改進實驗,以及處理缺失數(shù)據(jù)等研究工作。
為了測試評估貝葉斯分類器的性能,用不同數(shù)據(jù)集進行對比實驗是必不可少的. 現(xiàn)有的貝葉斯網絡實驗軟件包都是針對特定目的設計的,不能滿足不同研究的需要. 介紹了用Matlab在BNT軟件包基礎上建構的貝葉斯分類器實驗平臺MBNC,闡述了MBNC的系統(tǒng)結構和主要功能,以及在MBNC上建立的樸素貝葉斯分類器NBC,基于互信息和條件互信息測度的樹擴展的貝葉斯分類器TANC,基于K2算法和GS算法的貝葉斯網絡分類器BNC. 用來自UCI的標準數(shù)據(jù)集對MBNC進行測試,實驗結果表明基于MBNC所建構的貝葉斯分類器的性能優(yōu)于國外同類工作的結果,編程量大大小于使用同類的實驗軟件包,所建立的MBNC實驗平臺工作正確、有效、穩(wěn)定. 在MBNC上已經進行貝葉斯分類器的優(yōu)化和改進實驗,以及處理缺失數(shù)據(jù)等研究工作.。
和決策樹模型相比,樸素貝葉斯分類器(Naive Bayes Classifier,或 NBC)發(fā)源于古典數(shù)學理論,有著堅實的數(shù)學基礎,以及穩(wěn)定的分類效率。同時,NBC模型所需估計的參數(shù)很少,對缺失數(shù)據(jù)不太敏感,算法也比較簡單。理論上,NBC模型與其他分類方法相比具有最小的誤差率。但是實際上并非總是如此,這是因為NBC模型假設屬性之間相互獨立,這個假設在實際應用中往往是不成立的,這給NBC模型的正確分類帶來了一定影響。
解決這個問題的方法一般是建立一個屬性模型,對于不相互獨立的屬性,把他們單獨處理。例如中文文本分類識別的時候,我們可以建立一個字典來處理一些詞組。如果發(fā)現(xiàn)特定的問題中存在特殊的模式屬性,那么就單獨處理。
這樣做也符合貝葉斯概率原理,因為我們把一個詞組看作一個單獨的模式,例如英文文本處理一些長度不等的單詞,也都作為單獨獨立的模式進行處理,這是自然語言與其他分類識別問題的不同點。
實際計算先驗概率時候,因為這些模式都是作為概率被程序計算,而不是自然語言被人來理解,所以結果是一樣的。
在屬性個數(shù)比較多或者屬性之間相關性較大時,NBC模型的分類效率比不上決策樹模型。但這點有待驗證,因為具體的問題不同,算法得出的結果不同,同一個算法對于同一個問題,只要模式發(fā)生變化,也存在不同的識別性能。這點在很多國外論文中已經得到公認,在機器學習一書中也提到過算法對于屬性的識別情況決定于很多因素,例如訓練樣本和測試樣本的比例影響算法的性能。
決策樹對于文本分類識別,要看具體情況。在屬性相關性較小時,NBC模型的性能稍微良好。屬性相關性較小的時候,其他的算法性能也很好,這是由于信息熵理論決定的。
聲明:本網站尊重并保護知識產權,根據(jù)《信息網絡傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個月內通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學習鳥. 頁面生成時間:3.547秒