貝葉斯分類

2021-09-02 23:32:50 字數 1366 閱讀 6273

樸素貝葉斯模型是一組非常簡單快速的分類演算法,通常適用於維度非常高的資料集,因為執行速度快,而且可調引數少,因此非常適合為分類問題提供快速粗糙的基本方案。

貝葉斯分類

樸素貝葉斯分類器建立在貝葉斯分類方法上,其數學基礎是貝葉斯定理,乙個描述統計計量條件概率關係的公式。在貝葉斯分類中,我們希望確定乙個具有某些特徵的樣本術語某類標籤的概率,通常記為p(l|特徵)。

p(l|特徵)=p(特

徵∣l)

p(l)

p(特徵

)\frac

p(特徵)p

(特徵∣

l)p(

l)​高斯樸素貝葉斯

最容易理解的樸素貝葉斯分類器可能就是高斯樸素貝葉斯

import numpy as np

import matplotlib.pyplot as plt

from sklearn.datasets import make_blobs

from sklearn.*****_bayes import gaussiannb

import seaborn as sns

sns.set()

seed = 2

x,y = make_blobs(100,2,centers=2,random_state=2,cluster_std=1.5)

# plt.scatter(x[:,0],x[:,1],c=y,s=50,cmap='rdbu')

model = gaussiannb()

model.fit(x,y)

rng = np.random.randomstate(seed)

xnew = [-6,-14] + [14,18]*rng.rand(2000,2)

# ynew = model.predict(xnew)

yprob = model.predict_proba(xnew)#計算樣本術語某個標籤的概率

print(yprob[-8:].round(2))

# lim = plt.axis()

# plt.scatter(xnew[:,0],xnew[:,1],c=ynew,s=20,cmap='rdbu',alpha=0.5)

# plt.axis(lim)

# plt.show()

多項式樸素貝葉斯

前面介紹的高斯假設並不意味著每個標籤的生成模型只能用這一種假設。還有一種常用的假設是多項式樸素貝葉斯,它假設特徵是由乙個簡單多項式分布生成的。多項分布可以描述各種型別樣本出現次數的概率,因此多項式樸素貝葉斯非常適合用於描述出現次數或者出現次數比例的特徵。

貝葉斯分類

貝葉斯分類 有意義區分和無意義區分 既然要區分兩種點那麼兩種點必然有區別,當區分有區別的點時說是有意義區分。而完全區分那種一模一樣的點則是無意義區分。所以我們所討論的都是有意義的區分。完全區分和不完全區分 貝葉斯分類器是一種概率上的區分,而假如兩種點一種是黑的一種是白的那不需要用貝葉斯分類器區分,因...

樸素貝葉斯分類

1 貝葉斯分類是一類分類演算法的總稱,這類演算法均以貝葉斯定理為基礎,故統稱為貝葉斯分類。2 樸素貝葉斯的思想基礎是這樣的 對於給出的待分類項,求解在此項出現的條件下各個類別出現的概率,哪個最大,就認為此待分類項屬於哪個類別。通俗來說,就好比這麼個道理,你在街上看到乙個黑人,我問你你猜這哥們 來的,...

樸素貝葉斯分類

摘自寫在公司內部的wiki 要解決的問題 表中增加欄位classification,有四個取值 0 初始值,未分類 1 positive 2 normal 99 negative review submit前,由樸素貝葉斯分類器決定該條review的flag屬於negative還是positive ...