技術乾貨|快速起底人工智慧中無監督機器學習算法

背景知識

無監督算法(unsupervised learning)屬於機器學習(machine learning)的一種,機器學習屬於人工智能(artificial intelligence)領域。要了解無監督,我們先來討論什麼是人工智能。

人工智能的定義包含了“人工”和“智能”,即人工創造出來的模擬人類智慧的科學。人工是非常好去理解的,但是智能就變得複雜了。但其實簡單地來說就是擁有人一樣的智能技術和智慧:拿機器和小朋友舉例,給小朋友看圖片A,那麼在看到圖片B時,小朋友也會高興地揮舞著手臂識別出這也是一隻貓。而如果將圖片輸入一臺非人工智能機器,告訴機器這是一隻貓,那麼在輸入B時,機器就難以識別了。

技術乾貨|快速起底人工智能中無監督機器學習算法

圖1 兩種貓的圖片

這樣的能力就是人類“智能”的一種表現。那麼,如果機器也具備了根據真實貓推演識別出卡通貓的能力,我們就說這臺機器被賦予了“智慧”,也就是具有了人工智能。

正如上面例子中談到,人工智能具備一定的推演能力,這就不得不說到機器學習。如果把人類識貓的過程理解成一種學習,那麼機器識貓的過程就是機器學習。所謂學習,就是舉一反三。你能通過A認出B,這就是最簡單的學習。學習需要去模擬人的思維方式,而人的大腦極其複雜,我們只能將其抽象成某些算法,比如:神經網絡、貝葉斯、決策樹和聚類算法等等。從A識別B是比較初級的學習方式,如果在以後會給接觸很多動物的照片,通過知識就可以瞭解到,老虎、豹、獅子等這些長得像貓的動物有一個共同的名字——貓科動物。

技術乾貨|快速起底人工智能中無監督機器學習算法

圖2 貓科動物

這個學習的過程屬於高級一點的,稱為“深度學習”。深度學習的概念源於人工神經網絡的研究。含多隱層的多層感知器就是一種深度學習結構。深度學習通過組合低層特徵形成更加抽象的高層表示屬性類別或特徵,以發現數據的分佈式特徵表示。例如,貓科動物通常具有條紋、斑點或玫瑰花紋,眼睛大且位於頭部前方,舌頭粗糙,有鬍鬚等等。學習了貓科動物後,小學生再看到一個動物的圖片,例如猞猁時,雖然不知道這個動物的實際名字,但是可以根據之前的特徵學習,斷定這個毛茸茸的傢伙一定是貓科動物。

技術乾貨|快速起底人工智能中無監督機器學習算法

圖3 猞猁

機器學習的分類

瞭解了機器學習的概念後,我們來看一下機器學習的分類。機器學習種類有:監督學習(supervised Learning)、增強學習(reinforcement learning)、無監督學習(unsupervised learning),如下圖。

技術乾貨|快速起底人工智能中無監督機器學習算法

圖4 機器學習分類

a)

有監督學習是最常見的一種機器學習,它的訓練數據是有標籤的,訓練目標是能夠給新數據(測試數據)以正確的標籤。例如,將郵件進行是否垃圾郵件的分類,一開始我們先將一些郵件及其標籤(垃圾郵件或非垃圾郵件)一起進行訓練,學習模型不斷捕捉這些郵件與標籤間的聯繫進行自我調整和完善,然後我們給一些不帶標籤的新郵件,讓該模型對新郵件進行垃圾郵件的分類。

b) 無監督學習常常被用於數據挖掘,用於在大量無標籤數據中發現些什麼。它的訓練數據是無標籤的,訓練目標是能對觀察值進行分類或區分等。例如無監督學習應該能在不給任何額外提示的情況下,僅依據所有“貓”的圖片的特徵,將“貓”的圖片從大量的各種各樣的圖片中將區分出來。

c) 強化學習通常被用在機器人技術上(例如機械狗),它接收機器人當前狀態,算法的目標是訓練機器來做出各種特定行為。工作流程多是:機器被放置在一個特定環境中,在這個環境裡機器可以持續性地進行自我訓練,而環境會給出或正或負的反饋。機器會從以往的行動經驗中得到提升並最終找到最好的知識內容來幫助它做出最有效的行為決策。

而DataVisor獨有的反欺詐算法就是運用的無監督學習,此處著重講解一下:無監督主要有三種:聚類,離散點檢測和降維,聚類是比較經典的一種。聚類就是將觀察值聚成一個一個的組,每一個組都含有一個或者幾個特徵。恰當地提取特徵是無監督最為關鍵的環節。例如在對貓的識別中,來嘗試提取貓的特徵:皮毛、四肢、耳朵、眼睛、鬍鬚、牙齒、舌頭等等。通過對特徵相同的動物的聚類,可以將貓或者貓科動物聚成一類。但是此時,我們不知道這群毛茸茸的東西是什麼,只知道這團東西屬於一類,兔子不在這個類(耳朵不符合),飛機也不在這個類(有翅膀)。特徵有效性直接決定著算法有效性。如果我們拿體重來聚類,而忽略體態特徵,恐怕就很難區分出兔子和貓了。

DataVisor的反欺詐工作是抓欺詐分子,包括各種惡意註冊、盜號、騙貸、刷量等等欺詐行為。相信你已經猜到了,DataVisor的強項就是對用戶行為建模並分析用戶之間的異常關聯,可以高效地抓到欺詐團伙,及時阻止欺詐行為。算法的評價

算法不分好壞,只有是否適合。那麼,如何評價算法的適合度呢?先來看幾個概念:

TP:True Positive 正樣本被識別為正樣本(抓對了)

TN:Ture Negative 負樣本被識別為負樣本(不該抓,也確實沒抓)

FN: False Positive 正樣本被識別為負樣本(漏抓了)

FP:False Negative 負樣本被識別為正樣本(抓錯了)

還是拿貓的識別來舉例,假設機器通過學習,已經具備了一定的識別能力。那麼,我們輸入4張圖片,機器的判斷如下:

技術乾貨|快速起底人工智能中無監督機器學習算法

圖5 機器的判斷結果

常用的評價指標有三種:準確率(precision)、召回率(recall)和精準率(accuracy),其中:

Precision = TP/(TP+FP),表示我們抓到的人中,抓對了的比例;

Recall = TP/ (TP+FN),表示我們抓到的壞人佔所有壞人的比例;

Accuracy = (TP + TN)/ 所有數據,表示識別對了(好人被識別成好人,壞人被識別成壞人)的比例。

三個指標越高,表示算法的適應性越好。

在互聯網行業,團伙欺詐行為十分普遍,採用無監督算法可以有效地抓到欺詐團伙。將DataVisor的無監督算法應用於某些欺詐場景時,其準確率可以高達99%,這一指標直接證明了無監督算法在互聯網行業的適用性和有效性。如想了解更多歡迎訪問官網。


分享到:


相關文章: