1. 程式人生 > >分類演算法:樸素貝葉斯NB

分類演算法:樸素貝葉斯NB

演算法原理

設x={a1,a2,a3,...,am}為一個待分類項,aj為x的一個特徵屬性。
c={y1,y2,...,yn}為類別的集合
那麼計算x所屬的類別就是計算:已知x,求P(yi|x)。哪一種類別yi使P(yi|x)最大,x就屬於哪個yi
因為

P(yi|x)=P(x|yi)P(yi)P(x)
P(x)是一個統計概率,可看作常數
所以P(yi|x)P(x|yi)P(yi)
若x的各特徵相互獨立
則有P(yi|x)P(a1|yi)P(a2|yi)...P(am|yi)P(yi)
P(yi|x)P(yi)j=1mP(aj|yi)

例項解析

假如有如下6個文字,每個文字長短不一

123456word1mymaybemystopmrquitword2dognotdalmationpostinglicksbuyingword3hastakeisstupidateworthlessword4fleahimsoworthlessmydogword5problemstocutegarbagesteakfoodword6helpdogIhowstupidword7pleaseparklovetoword8stupidhimstopword9myhim
假設這6個文字的類別是[0,1,0,1,0,1]
首先要對文字進行分詞和向量化得到

相關推薦

分類演算法樸素NB

演算法原理 設x={a1,a2,a3,...,am}為一個待分類項,aj為x的一個特徵屬性。 c={y1,y2,...,yn}為類別的集合 那麼計算x所屬的類別就是計算:已知x,求P(yi|x)。哪一種類別yi使P(yi|x)最大,x就屬

分類演算法樸素演算法

一、問題的提出 使用Wikipedia上的一個例子: “一所學校裡面有 60% 的男生,40% 的女生。男生總是穿長褲,女生則一半穿長褲一半穿裙子。有了這些資訊之後我們可以容易地計算“隨機選取一個學生,他(她)穿長褲的概率和穿裙子的概率是多大”,這個就是前面說的“正向概率”

機器學習(3):基於概率論的分類方法樸素

概述 優點:在資料較少的情況下仍然有效,可以處理多類別問題。 缺點:對於輸入資料的準備方式較為敏感。 使用資料型別:標稱型資料。 貝葉斯決策理論的核心思想:選擇具有最高概率的決策。 使用條件概率來分類 對於某個資料點x,y: 如果,那麼屬於類別 如果,那麼屬於類

分類演算法樸素分類

原文http://www.cnblogs.com/leoo2sk/archive/2010/09/17/naive-bayesian-classifier.html 0、寫在前面的話       我個人一直很喜歡演算法一類的東西,在我看

機器學習實戰——基於概率論的分類方法樸素(二)

                                      使用貝葉斯過濾垃圾郵件 1.準備資料:切分文字 將字串切分為詞列表時,倘若沒有split引數,則標點符號也會被當成詞的一部分,可以使用正則表示式來切分句子,其中分隔符是除了單詞,數字之外的任意字串

【機器學習實戰—第4章基於概率論的分類方法樸素】程式碼報錯(python3)

1、報錯:UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xae in position 199: illegal multibyte sequence 原因:這是檔案編碼的問題,檔案中有非法的多位元組字元。 解決辦法:開啟Ch04\

第4章 基於概率論的分類方法樸素

樸素貝葉斯 概述 貝葉斯分類是一類分類演算法的總稱,這類演算法均以貝葉斯定理為基礎,故統稱為貝葉斯分類。本章首先介紹貝葉斯分類演算法的基礎——貝葉斯定理。最後,我們通過例項來討論貝葉斯分類的中最簡單的一種: 樸素貝葉斯分類。 貝葉斯理論 & 條件概率 貝葉斯理論

郵件分類和過濾-樸素NB經典案例

關於樸素貝葉斯的理論,已在機器學習之樸素貝葉斯分類器中進行了詳細說明,但是沒有經歷coding親

機器學習分類演算法樸素

一、概念 樸素貝葉斯模型(Naive Bayesian Model,NBM)是以條件概率為基礎的分類器,是一種監督演算法,常被用於文字分類和垃圾郵件過濾。貝葉斯理論解決的是逆向概率問題,即通過已經發生的已知的概率來推測未發生的事將會發生的概率。    二、計算 樸素貝葉斯各個事件發

機器學習-分類演算法樸素

條件概率公式:P(A|B) = P(AB)/P(B) 貝葉斯定理:P(A|B) = P(B|A)P(A)/P(B) 樸素貝葉斯演算法思想:給定一個待分類的資料 X={a1,a2,……,aN},即N個特徵項,目標分類集合Y={y1,y2,……,yK},即有K個分類 通過計算P

基於概率論的分類方法樸素

需要分類器做出分類決策,可以使分類器給出各個類別的概率估計值,然後選擇概率最高的作為其的類別。在這裡使用到了概率論中的貝葉斯公式:P(A|B)=P(A)*P(B|A)/P(B),其中P(A|B)是後驗概率,P(A)是先驗概率,P(B|A)/P(B)為調整因子(在已知結果的情況

機器學習之樸素(NB)分類演算法與Python實現

樸素貝葉斯(Naive Bayesian)是最為廣泛使用的分類方法,它以概率論為基礎,是基於貝葉斯定理和特徵條件獨立假設的分類方法。 一、 概述 1.1 簡介 樸素貝葉斯(Naive Bayesian)是基於貝葉斯定理和特徵條件獨立假

《機器學習實戰》學習筆記樸素分類演算法

貝葉斯決策理論 選擇高概率對應的類別是貝葉斯決策理論的核心思想,即選擇具有最高概率的決策。 樸素貝葉斯 樸素貝葉斯法是基於貝葉斯定理與特徵條件獨立假設的分類方法  。最為廣泛的兩種分類模型是決策樹模型(Decision Tree Model)和樸素貝葉斯模型(Nai

第五篇樸素分類演算法原理分析與程式碼實現

1 #==================================== 2 # 輸入: 3 # 空 4 # 輸出: 5 # postingList: 文件列表 6 # classVec: 分類標籤列表 7 #=

分類樸素分類方法

       樸素貝葉斯分類方法的特點是基於概率方法實現分類,這在諸多的分類方法中比較少見。貝葉斯方法都有所耳聞,之所以稱為“樸素”貝葉斯方法,是因為在分類時,假定了“各變數間相互獨立”的條件,這個條件算是比較強的了,大大簡化了分類時的計算,但同時也丟失了一些

機器學習筆記(五)樸素分類

一、概述 1.1 簡介 樸素貝葉斯(Naive Bayesian)是基於貝葉斯定理和特徵條件獨立假設的分類方法,它通過特徵計算分類的概率,選取概率大的情況進行分類,因此它是基於概率論的一種機器學習分類方法。因為分類的目標是確定的,所以也是屬於監督學習。 Q1:什麼是基於概率論的方

演算法樸素法之分類演算法

樸素貝葉斯法之分類演算法 說明         本文只是對於樸素貝葉斯法的其中的一個分類演算法的學習。參考來源《統計學習方法》。 一、 輸入 訓練資料 T={(x1,y1),(x2,y2),...(

機器學習實戰讀書筆記(四)樸素演算法

樸素貝葉斯 優點: 在資料較少的情況下仍然有效 可以處理多類別問題 缺點:對輸入的資料的準備方式較為敏感 適用資料型別:標稱型資料 p1(x,y)>p2(x,y) 那麼類別是1 p2(x,y)>p1(x,y) 那麼類別是2 貝葉斯決策的核心是選擇具有最高概率的決策

【SciKit-Learn學習筆記】6樸素做文件分類並繪製混淆矩陣

學習《scikit-learn機器學習》時的一些實踐。 條件獨立 樸素即指的是條件獨立假設,假設n個特徵之間不相關,則可據聯合概率的條件展開式: p

機器學習樸素分類器,決策函式向量化處理,mask使用技巧

文章目錄 前面實現的樸素貝葉斯分類器,決策函式是非向量化的: 藉助於numpy向量化處理,相當於平行計算,注意mask使用技巧,用途較廣: 前面實現的樸素貝葉斯分類器,決策函式是非向量化的: 前面提到過大資料處理,儘量避免個人的遍歷等一些函式