新穎性檢測(Novelty Detection)也被稱爲異常檢測(Anomaly Detection)或離羣點檢測(Outlier Detection),其目的是使機器能夠識別出當前場景的輸入與之前場景的輸入(訓練或實踐過程中)是否一致,從而避免潛在的危險,或是開始對新場景的學習。
目前來說,對新穎性檢測的研究主要包括兩種思路:一種是構建One-Other的分類器,通過利用特徵空間上各數據點的距離等度量方式實現,例如對訓練數據集中的各類構建最小球體,測試集中不落入任何球體的就視爲新穎點;另一種是基於Encode-Decode思想,通過訓練集訓練學習算法壓縮數據特徵並恢復的能力,而測試集中那些不能很好被恢復的特徵所對應的數據點一定與訓練集有一定區別,因而被視爲新穎點。
上面的部分簡要介紹了筆者目前瞭解的新穎性檢測方法(包括從文中Relative Resrarch瞭解的)。下面進入正文。
1.概述
這篇文章的思想實際上可以通過一個流程圖概括。假設是第t步的數據點,是度量新點與之前點接近程度的函數(越近值越高),則
其中是度量第i個點與第t個點距離的函數,原文中使用了高斯核函數。設新穎性閾值爲,學習率爲,則的值由下式確定:
也即,如果第i點被認定爲新穎點,則其對後續新穎點的確定有貢獻,值爲,否則爲0。
如此,通過這種迭代的方式,只有被標記爲新穎點的數據點參與了新新穎點的確定,降低了計算成本。
2.優化的降維方法
這裏大概是說PCA方法提取的是樣本自身的最主要特徵,會導致噪聲中的顯著值也被用於判別新穎點,因此不好用。而MDA方法中保留的是樣本間對比需要的最主要特徵,因此好。
3.本方法是NORMA的一個特例
這裏主要是經過一番論證,發現本文提出的方法是NORMA的一個特例,因此可以使用很多它的性質,有助於計算。
4.序列優化
這裏主要是解決隨着數據增多,計算量增多的問題。通過使用NORMA中的性質,能夠進一步從之前的新穎點中選擇有效點輔助之後的新穎點檢測。