第34課 GMM 將「混」在一起的樣本各歸其源

2021-10-09 16:34:00 字數 718 閱讀 3739

前面我們講的 kmeans 和譜聚類都是將特徵空間中的乙個個個體,依據它們相互之間的關係,歸屬到不同的簇中。

用個形象點的比喻,我們將特徵空間想象成乙個二維的平面,樣本資料則是「散落」在這個平面上的一顆顆「豆子」。

前面講的聚類方法就好像:我們根據某種原則(kmeans 和譜聚類的具體原則不同),把這些「散落在地」的「豆子」撿到乙個個「筐」裡。

這些「豆子」原本並沒有乙個特定的歸屬,是我們在「撿」的過程中決定了把它們扔到哪個「筐」裡。某一顆「豆子」被歸屬到某個「筐」的原因,很大程度上受它周圍「豆子」歸屬的影響。

反過來,如果我們這麼考慮問題:

在特徵空間中的樣本,其實都是有各自的歸屬的。本來乙個特定的樣本就應該屬於乙個特定的簇。

只不過,在我們拿到樣本的時候,原本屬於不同簇的若干樣本在特徵空間中「混在了一起」。

我們要做的,其實是把它們按照原本的歸屬區分開。

我們拿了乙個西紅柿,「啪」一下摔在了廚房的地板上,摔了個粉碎,於是形成了左下的一片紅色「顆粒」;然後拿了乙個獼猴桃,「啪」地摔成了右側那一片綠色「顆粒」;又摔了個苦瓜,形成了左上的一片黃色顆粒。

這個時候,我們讓乙個小機械人來把這三種瓜果的碎屑顆粒分別收拾到三個不同的容器裡。這個小機械人是個色盲,它看到的廚房地板是下圖這個樣子的:

《笨辦法學Python》 第34課手記

本節課講訪問列表的元素,其實跟c中訪問陣列元素是一樣的。至於那道練習題,是為了讓你熟記序數和基數在程式設計上的區別。這裡就不貼答案了。我們日常使用的計數,是從1開始的,而程式語言的計數,是從0開始的。也就是說,列表中最靠前的元素是第0號元素,而不是我們日常生活中的第1號元素。例如,定義月份這個列表時...

《笨辦法學Python》 第34課手記

本節課講訪問列表的元素,其實跟c中訪問陣列元素是一樣的。至於那道練習題,是為了讓你熟記序數和基數在程式設計上的區別。這裡就不貼答案了。我們日常使用的計數,是從1開始的,而程式語言的計數,是從0開始的。也就是說,列表中最靠前的元素是第0號元素,而不是我們日常生活中的第1號元素。例如,定義月份這個列表時...

C語言高階 第34課 多維陣列和多維指標(難點)

指向指標的指標 指標的本質是變數 指標會占用一定的記憶體空間 可以定義指標的指標來儲存指標變數的位址值。int main 為什麼需要指向指標的指標?指標在本質上也是變數 對於指標也同樣存在傳值呼叫和傳址呼叫。include include include int reset char p,int s...