眾所周知,異常檢測(Anomaly Detection)可以幫助企業(yè)先于競爭對手識別出即將到來的趨勢。它可以通過監(jiān)控APP的流量來標(biāo)記欺詐交易,并發(fā)現(xiàn)業(yè)務(wù)領(lǐng)域中的行為偏差,以便團(tuán)隊(duì)成員在事件發(fā)生前予以干預(yù)。本文將和您從如下方面展開深入討論:
什么是異常檢測?
AI異常檢測是如何工作的?
典型AI異常檢測用例
AI異常檢測的實(shí)現(xiàn)
什么是異常檢測?
作為數(shù)據(jù)挖掘的一種方式,異常檢測通過分析公司數(shù)據(jù)來檢測偏離既定基線(如數(shù)據(jù)集的標(biāo)準(zhǔn)行為)的數(shù)據(jù)點(diǎn)。這些異常值通常預(yù)示著一些事件,如設(shè)備的技術(shù)故障、客戶偏好的變化、以及其他類型的異常。通過檢測,公司能夠在損害發(fā)生之前采取行動(dòng)。
什么是異常?
在此,異常是指偏離熟悉模式的不一致數(shù)據(jù)點(diǎn)。盡管它并不總是一個(gè)顯著的問題,但是仍然值得調(diào)查,以防止其進(jìn)一步升級。其中,業(yè)務(wù)數(shù)據(jù)上的異常通??煞譃槿悾?/p>
全局異常點(diǎn),是指異常遠(yuǎn)離其他數(shù)據(jù)的數(shù)據(jù)點(diǎn)。例如,您的銀行賬戶每個(gè)月會(huì)收到 7000 美元。如果您突然收到一筆 5 萬美元的轉(zhuǎn)賬,那么這就是全局異常點(diǎn)。
上下文異常點(diǎn),是指在同一上下文中偏離的其他數(shù)據(jù)。例如,您所在的國家通常會(huì)在冬天下雪,而夏天則天氣炎熱。那么冬天下大雪就是正常情況。而在夏季降雪的話,就屬于異常點(diǎn)。
集體異常點(diǎn),是指某些數(shù)據(jù)點(diǎn)的子集偏離了整個(gè)數(shù)據(jù)集。例如,您觀察到幾種看似不相關(guān)的產(chǎn)品的銷售額出現(xiàn)異常下降,但隨后您意識到它們其中存在著某種聯(lián)系,那么您的觀察結(jié)果就能夠被合并為一個(gè)集體異常點(diǎn)。
為什么需要AI進(jìn)行異常檢測?
當(dāng)前,多數(shù)公司都要處理大量的結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù),后者通常占公司內(nèi)部產(chǎn)生信息的 90%。由于這些非結(jié)構(gòu)化數(shù)據(jù)往往是由圖像、交易、以及自由格式文本等組成,因此僅依靠人工去處理所有這些信息,并獲取有意義的見解顯然過于繁瑣。
有研究表明,機(jī)器學(xué)習(xí)技術(shù)是處理大型非結(jié)構(gòu)化數(shù)據(jù)集的最佳選擇。您既可以從該領(lǐng)域的大量算法中選擇某個(gè)最適合自己的,也可以將幾種機(jī)器學(xué)習(xí)技術(shù)結(jié)合在一起,以獲得最佳的效果。
AI異常檢測是如何工作的?
目前,基于人工智能和機(jī)器學(xué)習(xí)的異常檢測技術(shù)主要有三種:
有監(jiān)督的異常檢測。在此,機(jī)器學(xué)習(xí)模型能夠在包含了正常與異常行為的全標(biāo)記數(shù)據(jù)集上,進(jìn)行訓(xùn)練和測試。這種方法在檢測訓(xùn)練數(shù)據(jù)集中的偏差時(shí)效果比較好,但是在面對訓(xùn)練中未曾出現(xiàn)的新異常時(shí),可能就會(huì)出現(xiàn)問題。畢竟監(jiān)督技術(shù)需要人工操作和專業(yè)的領(lǐng)域知識,而這些往往需要有人對數(shù)據(jù)進(jìn)行標(biāo)注。
無監(jiān)督異常檢測。這種方法并不需要人工標(biāo)注數(shù)據(jù)。其模型假定為:只存在一小部分與其他數(shù)據(jù)具有顯著差異的數(shù)據(jù)點(diǎn),才會(huì)構(gòu)成異常。由于是根據(jù)異常點(diǎn)的特征,而不是訓(xùn)練過程中學(xué)到的知識,來檢測異常點(diǎn),因此無監(jiān)督技術(shù)可以出色地識別出在訓(xùn)練過程中,未發(fā)現(xiàn)的新的異常點(diǎn)。不過,此類算法通常相當(dāng)復(fù)雜。由于其架構(gòu)是一個(gè)“黑盒子”,這意味著用戶無法獲得有關(guān)工具到底是如何做出決策的解釋。
半監(jiān)督異常檢測。此類技術(shù)通過同時(shí)處置已標(biāo)注和未標(biāo)注的數(shù)據(jù),來減少人工標(biāo)注的成本。半監(jiān)督異常檢測模型會(huì)在部署之后,仍舊開展自我學(xué)習(xí),以檢測出訓(xùn)練中未發(fā)現(xiàn)的異常。此外,與無監(jiān)督技術(shù)一樣,這些模型也可以處理非結(jié)構(gòu)化的數(shù)據(jù)。
基于AI的異常檢測方法
異常檢測可以依賴于人工智能、以及包括機(jī)器學(xué)習(xí)在內(nèi)的各種子類型來實(shí)現(xiàn)。下面我們來討論五種常見的機(jī)器學(xué)習(xí)技術(shù):
自動(dòng)編碼器
自動(dòng)編碼器是一種無監(jiān)督的人工神經(jīng)網(wǎng)絡(luò)。它可以壓縮數(shù)據(jù),然后重建數(shù)據(jù),使其盡可能地接近原始的形式。此類算法可以有效地忽略噪聲,并重建文本、圖像和其他類型的數(shù)據(jù)。通常,自動(dòng)編碼器由兩部分組成:
編碼器,用于壓縮輸入數(shù)據(jù)
解碼器,將數(shù)據(jù)解壓縮,使其接近原始形式
在使用自動(dòng)編碼器時(shí),我們應(yīng)注意代碼的大小,畢竟它將直接決定壓縮率。而另一項(xiàng)重要的參數(shù)是層數(shù)。顯然,層數(shù)越少,算法的速度雖然越快,但是可處理的特征也就越少。
貝葉斯網(wǎng)絡(luò)
這是一種基于概率圖的模型技術(shù),可根據(jù)貝葉斯推理來計(jì)算概率。下圖中的節(jié)點(diǎn)對應(yīng)的是隨機(jī)變量,而邊則代表?xiàng)l件依賴關(guān)系,它們使得模型能夠做出恰當(dāng)?shù)耐茢唷?/p>
貝葉斯網(wǎng)絡(luò)可用于診斷、因果建模、以及推理等方面。在異常檢測中,該方法尤其適用于檢測那些其他技術(shù)難以發(fā)現(xiàn)的細(xì)微偏差。同時(shí),該方法還能夠容忍訓(xùn)練過程中的數(shù)據(jù)缺失,就算在小數(shù)據(jù)集上進(jìn)行訓(xùn)練時(shí),也能夠保持穩(wěn)定的性能。
基于密度的模型
這是一種無監(jiān)督機(jī)器學(xué)習(xí)聚類技術(shù),純粹依靠空間位置和相鄰數(shù)據(jù)間的距離,來檢測模式。它將一個(gè)數(shù)據(jù)點(diǎn)的密度值與其相鄰數(shù)據(jù)點(diǎn)的密度值進(jìn)行比較。離群點(diǎn)(異常點(diǎn))的密度值將低于其他數(shù)據(jù)群。
支持向量機(jī)(SVM)
這是一種有監(jiān)督的機(jī)器學(xué)習(xí)算法,通??捎糜诜诸悺.?dāng)然,各種SVM擴(kuò)展也可以在無監(jiān)督環(huán)境中運(yùn)行。該技術(shù)使用超平面(hyperplane),將數(shù)據(jù)點(diǎn)劃分為不同的類別。
盡管 SVM 通??梢蕴幚韮傻蕉喾N類別,但是在異常檢測中,它主要分析單一類別的問題。也就是說,它會(huì)去學(xué)習(xí)某一類的“標(biāo)準(zhǔn)”,以確定數(shù)據(jù)點(diǎn)是否屬于同一類,或者是否屬于異常點(diǎn)。
高斯混合模型 (GMM)
GMM 屬于一種概率聚類技術(shù)。該技術(shù)根據(jù)概率分布將數(shù)據(jù)劃分為不同的聚類。它假定數(shù)據(jù)點(diǎn)屬于具有未知參數(shù)的高斯分布的混合,并通過發(fā)現(xiàn)低密度區(qū)域的數(shù)據(jù),來檢測異常。
典型的AI異常檢測用例
至此,您已經(jīng)知道了異常檢測在幕后是如何工作的,以及它所依賴的AI技術(shù)。下面我們來探討一些不同行業(yè)的異常檢測示例。
醫(yī)療保健的異常檢測
異常檢測可以幫助醫(yī)生識別病人在健康方面出現(xiàn)的問題,檢測住院病人的病情狀況,并及時(shí)通知醫(yī)務(wù)人員,以協(xié)助診斷和選擇治療方法。所有這些都將能夠減少人工操作,減輕醫(yī)生的認(rèn)知負(fù)擔(dān)。目前,醫(yī)療異常檢測算法可以分析如下方面的信息:
協(xié)助醫(yī)療物聯(lián)網(wǎng)設(shè)備測量生命體征和其他參數(shù)。
協(xié)助X 光和 CT 掃描等醫(yī)學(xué)影像設(shè)備,顯示良性和惡性腫瘤、各種感染、以及其他健康狀況的跡象。
協(xié)助識別和阻止醫(yī)療保險(xiǎn)索賠中的任何欺詐活動(dòng)。
該領(lǐng)域的一個(gè)典型異常檢測案例來自南非的研究小組。他們成功地將自動(dòng)編碼器和極端梯度提升技術(shù)相結(jié)合,監(jiān)控了 COVID-19 患者的生理變量,并檢測出任何表明健康狀況惡化的異常情況。
而另一個(gè)團(tuán)隊(duì)不僅關(guān)注了異常點(diǎn)的檢測,還關(guān)注了解釋工具如何將異常點(diǎn)標(biāo)記出來的原因。為此,他們首先使用異常檢測技術(shù)來發(fā)現(xiàn)異常,然后部署了挖掘算法,來勾勒出一組特征。在這些特征中,某些數(shù)據(jù)點(diǎn)會(huì)被認(rèn)為是偏離點(diǎn)。
娛樂業(yè)的異常檢測
體育和娛樂環(huán)境往往依賴于數(shù)百個(gè)攝像頭,進(jìn)行廣泛的視頻安全監(jiān)控。借助機(jī)器學(xué)習(xí),算法可以分析設(shè)施內(nèi)每個(gè)攝像頭的視頻流,并檢測出違反安全規(guī)定的行為。
隨著機(jī)器學(xué)習(xí)模型在工作中不斷學(xué)習(xí),它們會(huì)逐漸發(fā)現(xiàn)人工操作員無法注意到的威脅和違規(guī)行為。這些算法可以檢測到破壞行為、觀眾騷亂、煙霧、可疑物品等,并向安保人員發(fā)出警報(bào),以便他們有時(shí)間采取行動(dòng),防止主辦方在責(zé)任和聲譽(yù)上受損。
一家總部位于美國的娛樂公司在全美各地都設(shè)有游戲廳。他們建立了一套機(jī)器學(xué)習(xí)驅(qū)動(dòng)的異常檢測解決方案,并將其集成到基于云端的視頻監(jiān)控系統(tǒng)中。該應(yīng)用不但可以捕捉任何危險(xiǎn)和暴力行為,還能夠發(fā)現(xiàn)被遺忘的物品和失靈的機(jī)器,從而簡化了管理流程。他們主要依靠交叉驗(yàn)證來發(fā)現(xiàn)異常。例如,該方案可以通過“讀取”屏幕上的錯(cuò)誤信息,并將其與可用的屏幕模板進(jìn)行驗(yàn)證,從而識別出存在故障問題的游戲機(jī)。同時(shí),該方案與云安全系統(tǒng)無縫集成,實(shí)現(xiàn)了全天候的游戲機(jī)監(jiān)控,并在發(fā)現(xiàn)異常時(shí)及時(shí)通知安全人員。
制造業(yè)的異常檢測
隨著生產(chǎn)過程的自動(dòng)化程度越來越高,機(jī)器變得越來越復(fù)雜,設(shè)備也越來越大。因此,傳統(tǒng)的監(jiān)控方法已經(jīng)不能滿足需要。異常檢測技術(shù)可以發(fā)現(xiàn)設(shè)備中與常規(guī)不同的偏差,并在其升級為事故之前通知維護(hù)人員,甚至學(xué)會(huì)區(qū)分小問題和緊迫問題。具體而言,異常檢測可以為制造業(yè)發(fā)現(xiàn)如下問題:
設(shè)備故障。通過與制造物聯(lián)網(wǎng)(IoT)傳感器的協(xié)同,人工智能算法可以監(jiān)控各種設(shè)備的參數(shù),如振動(dòng)和溫度等,并捕捉到任何偏離正常值的情況。這些變化可能表明設(shè)備的超載,但也可能意味著故障的開始。算法將會(huì)標(biāo)記出該設(shè)備,以便進(jìn)一步檢查。這也被稱為預(yù)測性維護(hù)。
設(shè)備利用率不足。基于機(jī)器學(xué)習(xí)的異常檢測解決方案,可以發(fā)現(xiàn)有哪些設(shè)備長期閑置,并敦促操作員平衡負(fù)載的分配。
安全隱患。通過監(jiān)控安全攝像頭,異常檢測軟件可以發(fā)現(xiàn)那些不遵守工廠安全協(xié)議、且危及自身安全的員工。如果員工使用可穿戴設(shè)備進(jìn)行安全監(jiān)控,機(jī)器學(xué)習(xí)則可以分析傳感器數(shù)據(jù),發(fā)現(xiàn)疲憊或生病的工人,并建議他們休息或離崗。
基礎(chǔ)設(shè)施問題。人工智能算法可以檢測到水或氣體的泄漏、以及任何其他基礎(chǔ)設(shè)施的損壞,并及時(shí)通知現(xiàn)場管理人員。
作為案例,Hemlock Semiconductor是美國的一家超純多晶硅生產(chǎn)商。它通過部署異常檢測,可以了解其流程,并記錄任何偏離最佳生產(chǎn)模式的情況。據(jù)此,該公司每月可節(jié)省了約 30 萬美元的資源消耗。
零售業(yè)的異常檢測
異常檢測可以幫助零售商識別不尋常的行為模式,并利用這些洞察來改善運(yùn)營,并保護(hù)他們的業(yè)務(wù)和客戶。人工智能算法可以捕捉到不斷變化的客戶需求,并提醒零售商停止采購滯銷的產(chǎn)品,同時(shí)增加那些需求旺盛的商品進(jìn)貨。同時(shí),異常情況還能夠在商機(jī)的早期階段,讓零售商在競爭中搶先一步。此外,就電子商務(wù)而言,網(wǎng)站所有者則可以通過部署異常檢測模型,來監(jiān)控流量,以發(fā)現(xiàn)疑似欺詐活動(dòng)的異常行為。
當(dāng)然,零售商也可以使用異常檢測技術(shù),來確保其經(jīng)營場所的安全。例如,鑒于在動(dòng)作檢測任務(wù)中的出色表現(xiàn),依賴三維卷積神經(jīng)網(wǎng)絡(luò)的異常檢測方法,可被用于廣泛的斗毆數(shù)據(jù)集訓(xùn)練,進(jìn)而無縫到集成到現(xiàn)有的安全系統(tǒng)中。
AI異常檢測的實(shí)現(xiàn)
正如您所看到的,訓(xùn)練定制化的人工智能模型,以進(jìn)行準(zhǔn)確的異常檢測是一項(xiàng)技術(shù)挑戰(zhàn)。為了能夠檢測預(yù)定義的異常,并發(fā)現(xiàn)任何偏離既定標(biāo)準(zhǔn)的行為,我們通常需要通過如下五步來實(shí)現(xiàn):
步驟 1:確定異常檢測方法
這里有兩種選擇:要么是尋找數(shù)據(jù)中的特定異常,要么是標(biāo)記所有偏離標(biāo)準(zhǔn)行為的數(shù)據(jù)。您的選擇將影響到訓(xùn)練數(shù)據(jù),并限制對于AI技術(shù)的選取。
如果您想捕捉每一個(gè)偏離基線的事件,那么就需要在代表正常行為的大數(shù)據(jù)集上訓(xùn)練模型。例如,假設(shè)您正在研究駕駛和交通安全,那么您的數(shù)據(jù)集將由展示安全駕駛的視頻所組成。而如果您需要檢測的是特定的異常情況,例如車禍,而不是闖紅燈等輕微違規(guī)行為,那么您的訓(xùn)練數(shù)據(jù)集就需要包括車禍視頻與圖像。
步驟 2:匯總和預(yù)處理訓(xùn)練數(shù)據(jù)集
無論是從公司內(nèi)部來源、還是使用公開數(shù)據(jù)集收集數(shù)據(jù),上一步的結(jié)果都將有助您決定需要哪種類型的數(shù)據(jù)。接著,我們需要清理這些數(shù)據(jù),以消除重復(fù)的、不正確、以及不平衡的條目。在數(shù)據(jù)集清理完畢之后,您可以使用擴(kuò)展、歸一化和其他數(shù)據(jù)轉(zhuǎn)換技術(shù),使數(shù)據(jù)集適合所選的AI算法。通常,我們可以將數(shù)據(jù)集分成三部分:
用于教學(xué)模型的訓(xùn)練數(shù)據(jù)
用于評估模型在訓(xùn)練過程中的表現(xiàn)的驗(yàn)證數(shù)據(jù)
在完成訓(xùn)練過程后對性能進(jìn)行評分的測試數(shù)據(jù)
步驟 3:選擇異常檢測技術(shù)
為了構(gòu)建一個(gè)定制化的AI技術(shù)解決方案,您需要考慮如下三個(gè)關(guān)鍵因素:
手頭的任務(wù)(請參見上述步驟 1)。如果要檢測具體定義的異常,變異自動(dòng)編碼器 (Variational Autoencoder,VAE) 是一個(gè)不錯(cuò)的選擇。
技術(shù)要求。其中包含了您希望達(dá)到的準(zhǔn)確度和細(xì)節(jié)水平。例如,如果您想訓(xùn)練一個(gè)能夠發(fā)現(xiàn)視頻中異常情況的機(jī)器學(xué)習(xí)模型,那么由于不同的算法會(huì)以不同的速度分析幀,因此決定最佳幀頻才是關(guān)鍵。只要您想檢測的異常情況能夠在一秒鐘之內(nèi)出現(xiàn),那么您就需要研究視頻片段中的每一幀。而使用較慢的算法(如 VAE)顯然就變得不切實(shí)際了。相反,奇異值分解 (Singular Value Decomposition,SVD) 則可以更快地完成此類任務(wù)。
訓(xùn)練數(shù)據(jù)集的大小。諸如自動(dòng)編碼器之類的模型,是無法在小數(shù)據(jù)集上進(jìn)行正確的訓(xùn)練。
步驟 4:構(gòu)建、購買和訓(xùn)練模型
您既可以購買現(xiàn)成的異常檢測軟件,也可以通過定制異常類型,實(shí)施滿足獨(dú)特需求的系統(tǒng)。
如果您的財(cái)力有限,沒有可定制的訓(xùn)練數(shù)據(jù)集,或是沒有時(shí)間進(jìn)行模型訓(xùn)練,那么您可以選擇現(xiàn)成的異常檢測系統(tǒng)。不過,值得注意的是,此類解決方案往往都帶有關(guān)于數(shù)據(jù)特征的內(nèi)置假設(shè),只有當(dāng)這些假設(shè)成立時(shí),它們才會(huì)有良好的表現(xiàn)。而如果貴公司的數(shù)據(jù)偏離了該基線,那么由算法所檢測到的異常的準(zhǔn)確性,將會(huì)大打折扣。
如果您有足夠的數(shù)據(jù)來訓(xùn)練AI算法,那么您可以聘請機(jī)器學(xué)習(xí)開發(fā)公司,來構(gòu)建和訓(xùn)練定制化的異常檢測解決方案。該方案將能夠滿足您的業(yè)務(wù)需求,并適合您的流程。另一個(gè)最大的好處是,即使在部署之后,您仍然可以根據(jù)不斷變化的業(yè)務(wù)需求,調(diào)整其設(shè)置,使其更快地關(guān)注到不同的參數(shù),進(jìn)而優(yōu)化該解決方案。
步驟 5:部署和監(jiān)控解決方案
您既可以在本地、也可以在云端部署異常檢測解決方案。其中:
基于云端的異常檢測,可以匯總來自軟件系統(tǒng)、設(shè)備和第三方服務(wù)的數(shù)據(jù),并將其傳輸?shù)皆贫诉M(jìn)行存儲(chǔ)與處理,以減輕本地資源的負(fù)擔(dān)。
邊緣異常檢測,可以通過機(jī)器學(xué)習(xí)算法在本地分析數(shù)據(jù),只將部分?jǐn)?shù)據(jù)上傳到云端。這種方法最適用于不能容忍延遲的關(guān)鍵性任務(wù)系統(tǒng),例如:自動(dòng)駕駛汽車和醫(yī)療物聯(lián)網(wǎng)等需求。
機(jī)器學(xué)習(xí)算法會(huì)在其工作中不斷學(xué)習(xí),以適應(yīng)新的數(shù)據(jù)類型。當(dāng)然,它們也可能會(huì)產(chǎn)生偏差或其他不良的傾向。為避免出現(xiàn)此類情況,您可以通過審計(jì)來重新評估算法的性能,并實(shí)施必要的調(diào)整。