ML Lecture 13: Unsupervised Learning - Linear Methods



分兩大類

Clusering

K-means

有一堆unlabeled data {x1, x2, ..., xN},希望做成K個cluster

  1. 找出K個center,假如unlabeled data是vector,那這些center也要是一樣長度的vector(可以從training data裡面隨機找K個)
  2. 決定現在每一個object屬於哪一個center ,重複以下
    1. 看每個值跟哪一個center最接近,就屬於他
    2. 把center抓出來,算出整個cluster裡面的平均,變成新的center

Hierarchical Agglomerative Clustering (HAC)

  1. 建立一個樹
    1. 每個sample兩兩計算相似度,挑最相似的pair出來,merge再一起,用一個平均後的向量表示
    2. 計算n-1個sample兩兩相似度,挑最相似的pair出來,merge再一起,用一個平均後的向量表示
    3. 重複直到建立好tree
  2. 在樹上切一刀,根據切的地方,分成不同cluster

Distributed Representation

因為直接給定一個cluster太武斷,所以可以用Distributed Representation的方式表達,也就是說,這特sample屬於幾%的cluster1 幾%的cluster2 ...