吳恩達機器學習筆記 —— 14 無監督學習

xingoo發表於2018-07-25

本章講述的是第一個無監督的機器學習演算法,在無監督的演算法中,樣本資料只有特徵向量,並沒有標註的y值。比如聚類演算法,它可以用在市場分類、社交網路分析、天體資料分析等等。

更多內容參考 機器學習&深度學習

在做聚類時,最簡單的演算法就是k-means,一般的流程是:

  1. 首先隨機選擇k個聚類中心點
  2. 遍歷所有的樣本,選擇一個距離最近的中心點,並標記為對應的聚類
  3. 重新針對類簇計算中心點
  4. 重複2-3的過程

還有一個演算法在這次的課程中沒有提到,就是kmeans++,它與上面的kmeans不同的是,選擇中心點是首先隨機選擇一個,然後選擇一個離當前最遠的作為下一個中心點....

聚類演算法有時候並不是那麼完美分割的,大部分的時候資料都是連線在一起的:

吳恩達機器學習筆記 —— 14 無監督學習

k-means的優化目標:其實就是每個樣本點與其中心點計算一次距離,全部樣本的平均距離就是演算法的優化目標,min(path)越小,代表聚類演算法越好。不過細想一下,如果K越大,這個值就會越小。所以這個值也只能作為一個參考而已...

吳恩達機器學習筆記 —— 14 無監督學習

k-means的演算法效果很大程度上取決於初始節點的選取。因此可以多嘗試隨機幾次看看效果:

吳恩達機器學習筆記 —— 14 無監督學習

在聚類演算法中還有一個很重要的問題,就是K值如何選取:可以通過下面的肘點法選擇,比如下面左邊的圖,隨著k的值增加,損失值開始下降,那麼那個拐點就是我們選擇的最佳值;不過有時候,曲線會像右邊的圖一樣,這時肘點法就不起作用了,最終可以依賴於業務含義來選擇k的值。

吳恩達機器學習筆記 —— 14 無監督學習

相關文章