1. 程式人生 > >Machine Learning第九講【異常檢測】--(一)密度估計

Machine Learning第九講【異常檢測】--(一)密度估計

一、Problem Motivation(問題引入)

異常檢測一般應用在非監督學習的問題上,如圖,我們可以通過已知的資料集,訓練模型

根據此模型進行異常檢測:

在使用這些資料訓練的過程中,我們假設這些資料是正常的。

我們可以把異常檢測應用在網站欺詐預測上,比如可以根據使用者平時的打字速度,登入地點,登入時間,下單次數等預測是否使用者登入情況異常等,也可以用於工業界或者根據CPU利用率,Memory情況等預測電腦是否中毒。

 

二、Gaussian Distribution(高斯分佈)

高斯分佈,又稱為正態分佈,若x(x∈R)是均值為μ,方差為σ^2(標準差為σ)的高斯分佈,則我們說

,~表示“服從”,其具體公式為: 

                            

其對應的圖形為:

                                                     

下面來看幾個具體的圖形,他們μ和σ取值不同,如下圖:

 

我們可以看到,不同的μ和σ值對應不同的圖形,下面我們可以根據這些圖形的大致形狀來進行引數預測,如下圖:

根據樣本分佈的稠密程度,我們大概可以畫出其對應的高斯曲線,再根據曲線的大致形狀,能夠進行引數預測,圖中標出了μ和σ的大小。

 

三、Algorithm(演算法)

密度估計:

訓練集:,對於每一個x,x∈R

則估計函式為:

 

                      

下面是異常檢測演算法的流程:

 

下面是一個異常檢測的示例:

 

我們先根據訓練樣本訓練出模型,根據μ和σ以及p(x)的公式對測試樣本做出預測,比較預測結果和ε的大小關係,確實是否異常。(上圖中關於x1的正態分佈是根據樣本在x1座標上的分佈得到的,關於x2的正態分佈是根據樣本在x2座標上的分佈得到的)