非監管型學習是什麼?
非監管型學習是機器學習 (ML) 技術「學習」數據的方法之一,其中含有演算法必須嘗試自行理解含意的無標記數據。監督型學習則會對數據集進行標記,因此機器可以根據答案來衡量其準確性。如果將機器學習比喻做小孩學騎腳踏車,那麼監督型學習就像跑在腳踏車後面扶住腳踏車保持直立的父母,非監管型學習則是將腳踏車交給小孩,拍拍孩子的頭說「祝你好運」。
目標是讓機器在沒有數據科學家幫助或提示的情況下也能自行學習,而在這過程中,機器應該也要學會在還有更合適的結果時,主動調整結果和分組,這種做法是讓機器理解數據,並按照它認為合適的方式來處理數據。
非監管型學習適合用來探索未知的數據,可以揭示可能遺漏的模式,或檢查對人類來說太大以致於無法處理的大型數據集。
非監管型學習如何運作?
要了解非監管型學習,我們必須先了解監督型學習。如果電腦在監督型學習環境中學習識別水果,它將得到一些標記出水果的範例圖像,這稱為輸入數據。例如,標記會說香蕉是長、彎曲和黃色的,蘋果是圓形和紅色的,而橘子是球狀、有蠟和橙色的。經過足夠的時間,機器應該能夠根據這些描述符號,自信地識別出那些水果。例如,如果呈現一個蘋果,機器可以自信地說因為它不是橙色的,所以它不是橘子,而且因為它不是黃色和長的,所以它也不是香蕉。因為它又紅又圓,所以它是一個蘋果。
相比之下,非監管型學習是指完全沒有為數據進行分類或標記的情況。機器對水果的概念一無所知,因此無法標記物體。但是,機器可以根據水果的顏色、大小、形狀和差異,將各種水果分組。機器會根據事物的相似性來分組,並在無標記的數據中,發現隱藏的結構和模式。機器不管對或錯、也沒有老師告訴答案,它只是對數據做單純的分析。
非監管型學習使用一系列演算法,將數據與廣泛的群組、叢集和關聯進行比對。

非監管型學習中的分群演算法
分群是將物件分組在一起,成為稱為叢集的子集。這是獲得數據結構概觀的最佳方法之一。這些叢集中會有一些相似的特徵,因此這方法乃專為利用相同特徵來區分群組而設,之後便會將群組指派給相關的叢集。
階層式分群
這是機器將事物分組到叢集樹的過程,所有數據從單一叢集開始,逐漸拆分成越來越小的叢集。數據將會從最通用的叢集,逐層展開,最後各自歸屬到一個最具體、最小的群組之中。因此最終結果是,您可以看出不同子群組之間具有什麼關聯,或子群組之間相距多遠。
K 均值分群
此演算法將數據分成不同的叢集,這些叢集沒有在數據中附上標記。從數據點到叢集中心的距離取決於關聯強度,所有數據點只能屬於一個叢集。較大的 k 值代表在相同的方式下,群組會較小、精細度較高。每個叢集都會被指派一個數據點標記。
高斯混合模型
以常態鐘形曲線分佈為基礎,群組叢集是以一般預期的密度散佈著,代表整體數據中的副群體。
模糊叢集
這類叢集可以重疊,因此每個數據點可以屬於盡可能多的相關叢集,與數據點只能屬於一個叢集的硬式分群方法不同,這是非監管型學習世界的范恩圖。
分群時會事先假設各群組之間的關係,而這樣得出的群組並非總是描述客戶分類的最佳方式,因為此演算法不會將數據點視為個體,您需要套用更多種統計方法來進一步分析數據。
非監管型學習中的關聯
在機器學習中,演算法會建立規則來查找數據點之間的關聯。它會找出各變數之間的關係,辨識經常連帶發生的項目。例如,超市的購物籃分析可以看到人們傾向於同時購買哪些物品,像是湯品和麵包卷。或者,當人們購買新房子時,他們可能還會購買哪些新物品?此演算法在發現行銷機會方面的表現很傑出。
非監管型學習中的潛在變數模型
潛在變數模型會顯示可觀察變數(或外顯變數)與隱藏或無法觀察的變數(潛在變數)之間的關係,主要用於數據預處理/清理,以減少數據集的特徵數,或將數據集拆分成多個組件。
何時應首選非監管型訓練來處理未知趨勢和模式?
因為機器不知道有一個「正確」的答案,所以只會根據資訊(純粹意義,沒有科學家的偏見)對數據做出決定,這可讓數據科學家更了解數據的真實情況。演算法可能會在數據中發現有趣或隱藏的結構,而數據科學家在過去卻未能發現這些結構,這些隱藏結構被稱為特徵向量。
數據通常不附有標記,因此非監管型學習讓數據科學家不必標記所有內容,尤其標記一切可能是相當耗時且通常不可能完成的任務。此外,非監管型學習演算法還能執行更複雜的處理任務。同樣地,沒有標記代表可以真實對應出數據的複雜關係和叢集;沒有數據標記,就沒有先入為主的想法,也沒有偏見。
當沒有預先存在的數據或特別想獲得的結果時,便是選用非監管型學習的最佳時機。這是因為非監管型學習可以將未知數據集分類,識別有用的特徵,例如企業需要判斷全新產品的目標市場時。
非監管型學習使用一種稱為維度縮減的技術,機器會假設大量數據是冗餘的,並在適用時刪除維度或合併數據的某些部分,數據壓縮了,就可以節省時間和運算能力。
生成模型是非監管型學習的另一個強項,它可顯示數據中的分佈狀態,並在審查數據的同時建立新樣本,例如可以為生成模型提供一組圖像,它就能根據這些圖像再建立一系列組合圖像。