訂閱
糾錯(cuò)
加入自媒體

使用Python進(jìn)行異常檢測(cè)的解決方案

計(jì)算每個(gè)特征的平均值。這里我們只有兩個(gè)特征:0和1。s = np.sum(df, axis=0)

mu = s/m

mu

輸出:0    14.112226

1    14.997711

dtype: float64

根據(jù)上面“公式和過(guò)程”部分中描述的公式,讓我們計(jì)算方差:vr = np.sum((df - mu)**2, axis=0)

variance = vr/m

variance

輸出:0    1.832631

1    1.709745

dtype: float64

現(xiàn)在把它做成對(duì)角線(xiàn)形狀。正如我在概率公式后面的“公式和過(guò)程”一節(jié)中所解釋的,求和符號(hào)實(shí)際上是方差var_dia = np.diag(variance)

var_dia

輸出:array([[1.83263141, 0.        ],

      [0.        , 1.70974533]])

計(jì)算概率:k = len(mu)

X = df - mu

p = 1/((2*np.pi)**(k/2)*(np.linalg.det(var_dia)**0.5))* np.exp(-0.5* np.sum(X @ np.linalg.pinv(var_dia) * X,axis=1))
p

使用Python進(jìn)行異常檢測(cè)的解決方案

訓(xùn)練部分已經(jīng)完成。下一步是找出閾值概率。如果概率低于閾值概率,則樣本數(shù)據(jù)為異常數(shù)據(jù),但我們需要為我們的特殊情況找出那個(gè)閾值。對(duì)于這一步,我們使用交叉驗(yàn)證數(shù)據(jù)和標(biāo)簽。對(duì)于你的案例,你只需保留一部分原始數(shù)據(jù)以進(jìn)行交叉驗(yàn)證,F(xiàn)在導(dǎo)入交叉驗(yàn)證數(shù)據(jù)和標(biāo)簽:cvx = pd.read_excel('ex8data1.xlsx', sheet_name='Xval', header=None)

cvx.head()

使用Python進(jìn)行異常檢測(cè)的解決方案

標(biāo)簽如下:cvy = pd.read_excel('ex8data1.xlsx', sheet_name='y', header=None)

cvy.head()

使用Python進(jìn)行異常檢測(cè)的解決方案

把'cvy'轉(zhuǎn)換成NumPy數(shù)組。y = np.a(chǎn)rray(cvy)

輸出:# 數(shù)組的一部分

array([[0],
      [0],
      [0],
      [0],
      [0],
      [0],
      [0],
      [0],
      [0],

這里,y值為0表示這是一個(gè)正常的樣本,y值為1表示這是一個(gè)異常的樣本。選擇閾值首先讓我們?cè)贆z查一下概率值。p.describe()

輸出:count    3.070000e+02

mean     5.905331e-02

std      2.324461e-02

min      1.181209e-23

25%      4.361075e-02

50%      6.510144e-02

75%      7.849532e-02

max      8.986095e-02

dtype: float64

聲明: 本文由入駐維科號(hào)的作者撰寫(xiě),觀(guān)點(diǎn)僅代表作者本人,不代表OFweek立場(chǎng)。如有侵權(quán)或其他問(wèn)題,請(qǐng)聯(lián)系舉報(bào)。

發(fā)表評(píng)論

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字

您提交的評(píng)論過(guò)于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無(wú)評(píng)論

暫無(wú)評(píng)論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號(hào)
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯(cuò)
x
*文字標(biāo)題:
*糾錯(cuò)內(nèi)容:
聯(lián)系郵箱:
*驗(yàn) 證 碼:

粵公網(wǎng)安備 44030502002758號(hào)