高斯混合模型(Gaussian mixture model)
/ GOW-see-an MIKS-chur MOD-ul /
高斯混合模型假定你的資料是由幾個簡單的鐘形來源混合產生的,並試圖把它們反推出來。想像一個鎮上所有人的身高:那張單一的直方圖有兩個駝峰,因為它暗地裡混合了一條較矮的鐘形曲線(兒童)和一條較高的(成人)。GMM端詳這堆合在一起的資料,琢磨出:這裡頭藏著幾條鐘形曲線、每條以哪兒為中心、它有多寬、以及資料各有多少比例來自每一條?這是聚類,卻建在概率之上。
鐘形曲線——高斯,亦即常態分布——就是那道熟悉的駝峰:大多數取值挨著平均數,越往兩端越稀少。混合模型說,資料是若干這樣的鐘的加權之和。關鍵在於,它不像k均值那樣把每個點硬塞進某一個組,而是給出軟隸屬:它也許會說,某個人有70%的可能來自「成人」那條鐘、30%來自「兒童」那條。它透過一種優雅的來回(EM演算法)學到這一切:先猜出那些鐘,再軟性地分配點,然後把鐘重新擬合到這些分配上,如此重複,直到穩定。
它勝過k均值之處在於靈活:那些鐘可以被拉伸、傾斜成橢圓,於是它能捕捉k均值僵硬的圓圈會糟蹋掉的橢圓形、相互重疊的簇,而那些軟隸屬也誠實地表達了邊界處的不確定。它的軟肋是:你仍得事先選定鐘的數目;它假設底下的那些組真的呈鐘形(這是個實實在在、可能出錯的假設);而且和k均值一樣,它會因起點不同而落入一個糟糕的答案,所以多跑幾遍是明智的。
一張顧客消費額的直方圖有兩個鼓包。GMM把它們解開成兩條鐘形曲線:一個以30美元為中心的「隨意」組(很寬)、一個以120美元為中心的「高端」組(很窄),其中80%的顧客來自前者。一位花了75美元的購物者,被報告為55%隨意、45%高端——對那種「夾在中間」誠實以告。
軟隸屬:一個點可以同時部分地屬於好幾條鐘。
把它當作k均值更靈活、更講概率的表親:它允許傾斜的橢圓形簇,給出軟性的「有多可能」隸屬,而非硬性的歸派。但它倚賴「那些組真的呈鐘形」這個假設——當事實並非如此時,它那些齊整的橢圓反倒會誤導你。