Martin Heller Charles
目前,無監(jiān)督學習主要用于發(fā)現(xiàn)數(shù)據(jù)中的模式,檢測數(shù)據(jù)中的異常值,而未來可能會產(chǎn)生通用人工智能。
盡管受監(jiān)督機器學習和深度學習取得了成功,但有一種學派認為,無監(jiān)督學習的潛力更大。受監(jiān)督學習系統(tǒng)的學習受到其所受訓練的限制:即受監(jiān)督學習系統(tǒng)只能學習它所訓練的任務。相比之下,一個無監(jiān)督的系統(tǒng)理論上可以實現(xiàn)“人工通用智能”,這意味著具有學習人類能夠學習任何任務的能力。然而,這種技術還沒有出現(xiàn)。
如果受監(jiān)督學習的最大問題是標記訓練數(shù)據(jù)的費用,那么無監(jiān)督學習(不用標記數(shù)據(jù))的最大問題就是它通常不能很好地工作。然而,無監(jiān)督學習確實有其用途:它有助于減少數(shù)據(jù)集的維數(shù),發(fā)現(xiàn)數(shù)據(jù)的模式和結構,查找相似對象的組,以及檢測數(shù)據(jù)中的異常值和其他噪聲。
總的來說,作為探索數(shù)據(jù)分析的一部分,非常值得采用無監(jiān)督學習方法來發(fā)現(xiàn)模式和聚類,減少數(shù)據(jù)的維數(shù),發(fā)現(xiàn)潛在的特性,并刪除異常值。那么,應該繼續(xù)進行監(jiān)督學習,還是使用預先訓練過的模型進行預測,這取決于你的目標和數(shù)據(jù)。
想想我們的孩子是怎樣學習的。作為家長或者老師,當你教孩子們識別狗和貓的時候,并不需要向他們展示每一種狗和貓。他們從一些例子中就能學會,不需要很多解釋,自己就能歸納。他們第一次看到一只吉娃娃時可能會錯誤地叫它“Kitty”,而你會很快地糾正他們。
孩子們本能地把他們看到的一組東西分為一類。無監(jiān)督學習的目標之一實際上是讓計算機發(fā)展出同樣的能力。不妨看看DeepMind公司的Alex Graves和Kelly Clancy的博文內容,“無監(jiān)督學習:好奇的學生”。
無監(jiān)督學習是一種范式,旨在通過獎勵代理(即計算機程序),在不考慮具體任務的情況下學習它們觀察到的數(shù)據(jù),從而創(chuàng)建自主智能。換句話說,代理是出于學習的目的而去學習。
出于學習的目的而去學習代理的潛力要遠遠大于把復雜圖片簡化為二元決策(例如,狗或者貓)的系統(tǒng)。勞倫斯伯克利實驗室研究人員在數(shù)百萬份材料科學文摘上運行文本處理算法(Word2vec)來預測新熱電材料會有什么發(fā)現(xiàn),正如其工作所證明的那樣,發(fā)現(xiàn)模式而不是執(zhí)行預先定義的任務將產(chǎn)生令人驚訝的結果,而且結果非常有用。
聚類問題是一個無監(jiān)督學習問題,要求模型查找有相似數(shù)據(jù)點的分組。目前在用的聚類算法有很多種,它們的特性往往略有不同。一般來說,聚類算法會查看數(shù)據(jù)點特征向量之間的度量或者距離函數(shù),然后對彼此“接近”的特征向量進行分組。如果這些類不重疊,那么聚類算法的效果最好。
分層聚類分析(HCA)可以是聚集式的(從單個點開始自下而上的構建聚類,以單個聚類結束),也可以是分離式的(從單個聚類開始,然后將其分解,直到最終得到單個點)。如果幸運的話,你能找到一個展現(xiàn)出可用分類的聚類過程的中間階段。
聚類過程通常顯示為系統(tǒng)樹圖(樹形圖)。HCA算法往往需要大量的計算時間[O(n3)]和內存[O(n2)] 資源,這些限制使得算法不太適用于相對較小的數(shù)據(jù)集。
HCA算法可以使用各種度量和鏈接標準。歐幾里得距離和平方歐幾里得距離在數(shù)值數(shù)據(jù)中都很常見;而漢明距離和列文斯坦距離則常用于非數(shù)值數(shù)據(jù)。單鏈接和完全鏈接也是常見的,這兩種方法都可以簡化聚類算法(分別為SLINK和CLINK)。SLINK是少數(shù)能保證找到最優(yōu)解的一種聚類算法。
K均值聚類問題使用歐幾里得距離指標,把n個觀測值劃分為k個聚類,目的是盡量減小每個聚類內的方差(平方和)。這是一種矢量量化的方法,對特征學習非常有用。
Lloyd算法(具有中心更新功能的迭代聚類算法)是解決該問題最常用的啟發(fā)式算法,相對高效,但不能保證全局收斂。為了改進這一點,人們經(jīng)常使用由Forgy或者隨機劃分方法生成的隨機初始聚類中心來多次運行該算法。
K均值假設球形聚類是可分離的,這樣均值就向聚類中心收斂,并且還假設數(shù)據(jù)點的排序無關緊要。這些聚類的大小應該差不多,因此到最近的聚類中心的分配是正確的分配。
求解K均值聚類的啟發(fā)式算法通常與高斯混合模型的期望值最大化(EM)算法相似。
混合模型假定觀測值的子群體符合一些概率分布,這通常是數(shù)值觀測值的高斯分布或者非數(shù)值數(shù)據(jù)的分類分布。每個子群體可能有自己的分布參數(shù),例如高斯分布的均值和方差。
期望值最大化(EM)是一種最常用的方法,用于確定具有一定數(shù)量分量的混合參數(shù)。除了EM方法之外,還可以使用馬爾可夫鏈蒙特卡羅法、矩匹配法、奇異值分解(SVD)譜法和圖解法來求解混合模型。
最初的混合模型應用于根據(jù)前額與體長的比值來識別河蟹的兩個種群。1984年,Karl Pearson使用矩匹配法解決了這個問題。
混合模型一種常見的擴展是把定義混合分量恒等式的潛在變量連接到馬爾可夫鏈,而不是假設它們是獨立的、相同分布的隨機變量。所得到的模型被稱為隱馬爾可夫模型,是最常見的一種順序分層模型。
基于密度的帶噪聲應用空間聚類算法(DBSCAN)是一種非參數(shù)數(shù)據(jù)聚類算法,始于1996年。它針對數(shù)據(jù)庫應用進行了優(yōu)化,可以使用R*樹或者其他幾何索引結構來加速幾何區(qū)域的查詢。
本質上,DBSCAN聚類核心點在Epsilon距離內具有超過一些最小數(shù)量的鄰居,將其作為Epsilon距離內沒有鄰居的異常點而丟棄,而將核心點Epsilon距離內的點添加到該聚類中。DBSCAN是最常見的一種聚類算法,能夠發(fā)現(xiàn)任意形狀的聚類。
對數(shù)據(jù)點排序以識別聚類結構(OPTICS)這種算法是在空間數(shù)據(jù)中尋找基于密度的聚類。OPTICS類似于DBSCAN,但處理的是點密度變化的情況。
DBSCAN和OPTICS在概念上的差異也可用于簡單的異常值和噪聲檢測以及消除。
潛變量模型是將一組可觀測變量與一組潛(隱)變量相關聯(lián)的統(tǒng)計模型。潛變量模型有助于揭示復雜和高維數(shù)據(jù)中的隱藏結構。
主分量分析(PCA)這種統(tǒng)計過程使用正交變換,把一組可能相關的數(shù)值變量的觀測值轉換成一組稱為主分量的線性不相關變量值。Karl Pearson于1901年發(fā)明了PCA。PCA可以通過數(shù)據(jù)協(xié)方差(或者相關)矩陣的特征值分解或者數(shù)據(jù)矩陣的奇異值分解(SVD)來實現(xiàn),通常在初始數(shù)據(jù)的歸一化步驟之后。
奇異值分解(SVD)是實數(shù)矩陣或者復數(shù)矩陣的因式分解。這是線性代數(shù)中的一種常用方法,通常使用豪斯霍爾德變換來計算。SVD是求解主分量的一種方法。雖然完全可以從頭開始編寫SVD,但是在所有線性代數(shù)庫中都有很好的實現(xiàn)。
矩量法利用被觀測數(shù)據(jù)樣本的矩量(均值、方差、偏態(tài)和峰度)來估計群分布參數(shù)。這一方法比較簡單,通常采用手工計算,而且一般能實現(xiàn)全局收斂。然而,在統(tǒng)計量較少的情況下,矩量法有時會產(chǎn)生超出參數(shù)空間的估算值。矩量法是求解混合模型(上面)的一種簡便方法。
期望最大化(EM)算法是一種迭代方法,用于在依賴于未觀測到的潛變量的模型中查找參數(shù)的最大似然估算值。EM迭代在執(zhí)行期望步驟(E)和最大化步驟(M)之間交替進行,前者為使用當前參數(shù)估算值評估的對數(shù)似然的期望值創(chuàng)建函數(shù),后者計算使得在E步驟中找到的預期對數(shù)似然值最大化的參數(shù)。
EM收斂到最大值或者鞍點,但不一定收斂到全局最大值。可以通過對參數(shù)的很多隨機初始估算值重復EM過程,或者使用矩量法確定初始估算值,以盡可能找到全局最大值。
應用于高斯混合模型(上面)的EM可以用于聚類分析。
通常在標簽數(shù)據(jù)上訓練神經(jīng)網(wǎng)絡,進行分類或者回歸,根據(jù)定義,這是受監(jiān)督機器學習。也可以使用各種無監(jiān)督的方法,采用無標簽數(shù)據(jù)進行訓練。
自動編碼器是對輸入進行訓練的神經(jīng)網(wǎng)絡。本質上,自動編碼器是一種前饋網(wǎng)絡,充當編解碼器,對輸入層的輸入進行編碼,送入神經(jīng)元數(shù)量較少的一個或者多個隱藏層,然后將編碼后的表達式解碼,送入以拓撲結構作為輸入的輸出層。
在訓練過程中,自動編碼器使用反向傳播來盡可能減小輸入和輸出之間的差異。自動編碼器已經(jīng)用于降維、特征學習、去噪、異常檢測、圖像處理和學習生成模型。
深度信念網(wǎng)絡(DBN)是自動編碼器或者受限的玻爾茲曼機(RBN)堆棧,能夠學習重建其輸入。然后,這些層被用作特征檢測器。通常使用對比分歧來訓練RBN。
DBN已經(jīng)用于生成和識別圖像、視頻排序和運動捕獲數(shù)據(jù)。
生成對抗網(wǎng)絡(GAN)同時訓練兩個網(wǎng)絡,其生成模型捕獲數(shù)據(jù)分布,而判別模型估計來自訓練數(shù)據(jù)的樣本的概率。訓練的目的是讓發(fā)生器盡可能的欺騙鑒別器。
GAN可以用來創(chuàng)建虛構人物的照片,改善天文圖像。GAN還被用于放大舊視頻游戲的紋理,以用于高分辨率版本的游戲。除了無監(jiān)督學習,GAN已經(jīng)成功地應用于游戲的強化學習。
自組織映射(SOM)定義了從一組給定數(shù)據(jù)項到規(guī)則的、通常是二維網(wǎng)格的有序映射。每一網(wǎng)格節(jié)點都與一個模型相關聯(lián)。數(shù)據(jù)項將被映射到其模型與數(shù)據(jù)項最相似的節(jié)點,即,在某些指標中與數(shù)據(jù)項的距離最小。
需要采取一些預防措施來確保映射是穩(wěn)定的和有序的。并非所有的商業(yè)實現(xiàn)都遵循所有的預防措施。
Martin Heller是InfoWorld的特約編輯和審稿人。他曾是一名網(wǎng)絡和Windows編程顧問,1986年至2010年間開發(fā)過數(shù)據(jù)庫、軟件和網(wǎng)站。
原文網(wǎng)址
https://www.infoworld.com/article/3429017/unsupervised-learning-explained.html