データ分析関連のまとめ

データ分析・機械学習周りのもくもく会LTやイベント参加をまとめていきます

A Three-Level Optimization Model for Nonlinearly Separable Clustering

A Three-Level Optimization Model for Nonlinearly Separable Clustering(AAAI2020 Accepted paper)を読んでまとめました。
解釈間違い等ある時がありますので、その場合指摘いただけると助かります。

目次

背景と概要

  • 複雑な構造をもつ実世界のデータでは、nonlinearly separable clusteringがクラスタリング問題として研究されているものの一つとなっている。
  • nonlinearly separable clusteringとして現在以下のようなものがある
    • kernel k-means clustering
    • spectral clustering
    • density clustering
  • ただ、効率とクラスタリングの有効性(精度?)のバランスを取るのが難しい
  • 本論文では、3段階のclusteringを提案
    • linearly separable clustering
    • nonlinearly separable clustering
    • ensemble clustering
  • 上記clusteringの最適化問題を解くために、NKM-NSC algorithmという問題を3つのパートに分けて計算する手法を提案

The three-level optimization model

  • 仮定:nonlinearly separable clusterは、いくつかの小さなlinearly separable clusterから成る。
  • 下記が今回のモデルの概要図となる。

f:id:yhiss:20200516145302p:plain
モデル概要

モデルの流れ

X:n×mのデータ行列
n:オブジェクト数
m:feature数

  • Xにlinear clusteringを実行する事でn×pの分割した行列Wを得る
    • p:Wのcluster数であり、実際のcluster数kより小さい必要がある
    • linear clusteringのタスク:同一clusterのものを、幾何空間上で見た時に似ているものをクラスタリングする。
  • 行列Wのそれぞれのclusterに対してnonlinear clusteringを実行してk個のnonlinear clusterにする。
    • その結果できる行列:H(p×k)
  • そして行列U(n×k)が得たい行列となる。
  • やりたいこと:WとHを統合してUに近いものを作る( WH \approx U)。
    • この近似精度はWとHのクオリティに依存する。
    • Uへの統合の推定量としてT(>1)を導入。

最適化問題

Linearly separable clusteringにおける最適化

 f_{L(t)} = || X- W_t V_t ||_F^2
  • 与えられたデータXに対するt回目のlinear clustering(1 ≦ t ≦T)
  • classicalなk-means

Nonlinearly separable clusteringにおける最適化

 f_{G(t)} = || \phi(V_t)- H_t Z_t ||_F^2 = Tr(K_t) - Tr(\hat{H_t^T} K_T \hat{H_t})
  • Linearly separable clusteringの結果に対するt回目のnonlinear clustering
  • kernel k-means

    Ensemble clusteringにおける最適化

 f_{E(t)} = || W_t \hat{H_t}- U G_t ||_F^2

最適化問題の最終系

 \underset{U}{min}F = \sum_{t=1}^{T} \alpha f_{L(t)} + \beta f_{G(t)} + \gamma f_{E(t)}
 \alpha,\beta,\gamma : weight

制約条件

 \omega_{t(ij)} \in \{0,1\}, \sum_{j=1}^{p} \omega_{t(ij)}=1, 1<\sum_{i=1}^{n} \omega_{t(ij)} < n
 h_{t(ij)} \in \{0,1\}, \sum_{j=1}^{k}h_{t(ij)}=1, 1<\sum_{i=1}^{n} h_{t(ij)} < p
 u_{t(ij)} \in \{0,1\}, \sum_{j=1}^{k}u_{t(ij)}=1, 1<\sum_{i=1}^{p} u_{t(ij)} < n

最適化問題のsolution(NKM-NSC algorithm)

  • 最適化問題を以下の3つの問題に分割。
  • 全体の流れは下図のようになる。

Problem P1

  • H,U,Gが与えられている状態で以下を最小化
 \underset{W_t,V_t}{min} \alpha f_{L(t)} + \gamma f_{E(t)}
  • k-meansとして解く

Problem P2

  • W,V,U,Gが与えられている状態で以下を最小化
 \underset{H_t}{min} \beta f_{G(t)} + \gamma f_{E(t)}
  • spactral methodで解く

Problem P3

  • W,V,Hが与えられている状態で以下を最小化
 min \sum_{t=1}^{T} || W_t \hat{H_t}- U G_t ||_F^2

f:id:yhiss:20200516164401p:plain
アルゴリズム全体図

実験解析

  • 8つの人工データと7つのリアルデータで実験をしている。

  • アルゴリズムの計算時間

f:id:yhiss:20200516165303p:plain

f:id:yhiss:20200516165326p:plain

参考文献

http://www.jiyeliang.net/Cms_Data/Contents/SXU_JYL/Folders/ConferencePapers/~contents/3LVJ79MHKSD8CG3U/AAAI-BaiL.4078.pdf