ML Lecture 15: Unsupervised Learning - Neighbor Embedding

PDF

Manifold Learning

  • 在高維空間上,只有靠得比較近的 data point 做 Euclidean Distance 才合理,若 data point 之間離得比較遠,使用 Euclidean Distance 就不合理,因此降維使得 Euclidean Distance 合理

Locally Linear Embedding (LLE)

  1. 先選出 的 neighbor ,他們之間的關係寫做
  2. 希望 可以寫成 neighbors 的 linear combination,因此要 minimize ,得到所有
  3. 希望降維後的 space 仍然保持原來 space 的關係,也就是希望可以利用同樣的 linear combination 產生 ,因此要 minimize

LLE 需要選好 neighbor 的數量,才會 work

  • 太少不會 work
  • 太多也不 work,原因:回想 manifold learning,距離太遠的 data point 使用 Euclidean Distance 不合理

Laplacian Eigenmap / Spectral Clustering

  • Graph-based approach
  • Assumption: if and are close in a high density region, and are then close to each other

回想 semi-supervised learning

- w_{i,j}: 相連的data i和j的相似程度,若沒相連則=0

    • 寫平方不太好,寫 Euclidean Distance 比較好
  1. 但是這樣的 constraint 還不夠,因為它會想把所有 z 都設 0,所以要再對 z 下 constraint
    • if the dim of is ,
  2. 這樣解出來的 其實就是 graph Laplacian 的 Eigen Vector
  3. 找到 之後再對 做 clustering,這種做法叫 spectral clustering

T-distributed Stochastic Neighbor Embedding(t-SNE)

之前做法的問題

  • 只假設相近的 data point 要相似,沒有說不相近的要分開

t-SNE

  1. 計算所有 之間的相似度
    • 之後會說相似度的計算方式
  2. 做 normalize 得到
    • normalize 是必要的,因為你不知道計算出的 scale 在什麼範圍
  3. 可以用類似的方式對 lower dimension 計算
  4. 找到 使得 的 distribution 越接近越好,因此 minimize
    • 可以用 gradient descent 解這問題
  • 將x降維到z上
  • : 對於而言,與他相似的機率,各個xj的此項加總為1
  • 找出一組 z 使得 之間的 KL Divergence越小越好
  • data point 很多的時候,可能先做 PCA 降維,再 t-SNE 比較快
  • 每有一個新的 data point 就要重 train 一次 t-SNE,所以通常只用來 visualize

Similarity Measure

之前的 graph-based 方法說用 RBF function 比較好

因此計算 之間的 similarity 時:

而計算 的 similarity 時:

SNE

  • 合理, 使用同樣的 similarity function

t-SNE

    • 可是錄音說是 Euclidean Distance 的平方欸@@
  • 利用 t-distribution,則本來遠的會拉更遠

results matching ""

    No results matching ""