35
整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム (NIPS 2015 採択論文) 相馬 輔 (東京大学) 共同研究者: 田 悠一 (NII & PFI) IBIS 2015 Kawarabayashi Large Graph Project 1 / 24

整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

整数格子点上の劣モジュラ被覆に対する高速アルゴリズム(NIPS 2015採択論文)

相馬輔 (東京大学)共同研究者: 𠮷田悠一 (NII & PFI)

IBIS 2015

Kawarabayashi LargeGraphProject

1 / 24

Page 2: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

自己紹介

相馬輔(そうまたすく)• 東大情報理工数理 7研, D3• 指導教員: 岩田覚教授• 通信・機械学習に組合せ最適化からアプローチ

最近の興味• ネットワーク符号化• 劣モジュラ最適化の近似アルゴリズム• 圧縮センシング・スパース最適化

2 / 24

Page 3: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

概要

• 劣モジュラ被覆と呼ばれる機械学習でよく使われる問題を,整数格子点上に拡張

• 拡張モデルは既存モデルより複雑な状況を扱える

• 効率的な近似アルゴリズムを設計

3 / 24

Page 4: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

劣モジュラ最適化劣モジュラ関数: “効率的”に解ける離散構造に現れる関数

Xf(X) = 3

ネットワークフロー 全域木

f : 2S → Rが劣モジュラ関数:

f(X ∪ s) − f(X) ≥ f(Y ∪ s) − f(Y) (X ⊆ Y , s < Y)

“限界効用逓減 (diminishing return)”

4 / 24

Page 5: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

劣モジュラ最適化劣モジュラ関数: “効率的”に解ける離散構造に現れる関数

Xf(X) = 3

ネットワークフロー 全域木

f : 2S → Rが劣モジュラ関数:

f(X ∪ s) − f(X) ≥ f(Y ∪ s) − f(Y) (X ⊆ Y , s < Y)

“限界効用逓減 (diminishing return)”

4 / 24

Page 6: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

機械学習での劣モジュラ最適化

オブジェクト検知

[Song et al. ’14]

センサー配置問題[Krause-Guestrin ’05]

Image Segmentation[Jegelka-Bilmes ’11]

• 企画セッション (3日目): 「機械学習と組合せ最適化」

• チュートリアル: 「劣モジュラ最適化に基づく特徴選択と構造正則化入門」 (河原先生)

5 / 24

Page 7: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

劣モジュラ被覆 [Wolsey ’82]

c, f : 2S → R+ 単調劣モジュラ関数, α > 0

min c(X) sub. to f(X) ≥ α

コスト 解の品質保証

6 / 24

Page 8: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

劣モジュラ被覆 [Wolsey ’82]

c, f : 2S → R+ 単調劣モジュラ関数, α > 0

min c(X) sub. to f(X) ≥ α

コスト 解の品質保証

6 / 24

Page 9: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

劣モジュラ被覆 [Wolsey ’82]

c, f : 2S → R+ 単調劣モジュラ関数, α > 0

min c(X) sub. to f(X) ≥ α

コスト 解の品質保証

応用:• センサー配置 [Krause-Guestrin ’05, Krause-Leskovec ’08]

• 文書要約 [Lin-Bilmes ’10]

• オブジェクト検知 [Song et al. ’14, Chen et al. ’14]

6 / 24

Page 10: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

劣モジュラ被覆 [Wolsey ’82]

c, f : 2S → R+ 単調劣モジュラ関数, α > 0

min c(X) sub. to f(X) ≥ α

コスト 解の品質保証

既存研究:• NP困難• c(X) = |X |のとき, O(log d

β)-近似 [Wolsey ’82]

• f , cが整数値のとき, O(ρ log d)-近似 [Wan et al. ’09]

d = maxs f(s), ρ: c の曲率,β := min{f(s | X) : s ∈ S,X ⊆ S, f(s | X) > 0}

6 / 24

Page 11: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

整数格子点上の劣モジュラ被覆

c, f : ZS+ → R+整数格子点上の単調DR劣モジュラ関数

α > 0, r ∈ Z+

min c(x) sub. to f(x) ≥ α, 0 ≤ x ≤ r1

注意: r = 1 =⇒ (集合版)劣モジュラ被覆

7 / 24

Page 12: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

結果

ZS+上の劣モジュラ被覆に対する近似アルゴリズム

• 近似比: O(ρ log d/β),計算量: O (n log nr log r)

• r = 1の場合,既存の最良近似比と一致

• 数値実験により解の品質・効率性を確認

d := maxs f(es), ρ := cの曲率,β := min{f(es | x) : s ∈ S, x ∈ ZS

+, f(es | x) > 0}

8 / 24

Page 13: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

整数格子点上の劣モジュラ関数f : ZS

+ → R

DR(Diminishing Return)劣モジュラ:f(x + ei) − f(x) ≥ f(y + ei) − f(y)

(x ≤ y ∈ ZS , i ∈ S)

cf. 限界効用逓減性:f(X ∪ s) − f(X)≥ f(Y ∪ s) − f(Y)

注意: 以下の不等式より強い性質

f(x) + f(y) ≥ f(x ∨ y) + f(x ∧ y)

(x, y ∈ ZS)

cf.f(X) + f(Y)≥ f(X ∪Y)+ f(X ∩Y)

成分ごとmax 成分ごとmin

集合関数だと同値

9 / 24

Page 14: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

整数格子点上の劣モジュラ関数f : ZS

+ → R

DR(Diminishing Return)劣モジュラ:f(x + ei) − f(x) ≥ f(y + ei) − f(y)

(x ≤ y ∈ ZS , i ∈ S)

cf. 限界効用逓減性:f(X ∪ s) − f(X)≥ f(Y ∪ s) − f(Y)

注意: 以下の不等式より強い性質

f(x) + f(y) ≥ f(x ∨ y) + f(x ∧ y)

(x, y ∈ ZS)

cf.f(X) + f(Y)≥ f(X ∪Y)+ f(X ∩Y)

成分ごとmax 成分ごとmin

集合関数だと同値

9 / 24

Page 15: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

整数格子点上の劣モジュラ関数f : ZS

+ → R

DR(Diminishing Return)劣モジュラ:f(x + ei) − f(x) ≥ f(y + ei) − f(y)

(x ≤ y ∈ ZS , i ∈ S)

cf. 限界効用逓減性:f(X ∪ s) − f(X)≥ f(Y ∪ s) − f(Y)

注意: 以下の不等式より強い性質

f(x) + f(y) ≥ f(x ∨ y) + f(x ∧ y)

(x, y ∈ ZS)

cf.f(X) + f(Y)≥ f(X ∪Y)+ f(X ∩Y)

成分ごとmax 成分ごとmin

集合関数だと同値

9 / 24

Page 16: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

整数格子点上の劣モジュラ関数f : ZS

+ → R

DR(Diminishing Return)劣モジュラ:f(x + ei) − f(x) ≥ f(y + ei) − f(y)

(x ≤ y ∈ ZS , i ∈ S)

cf. 限界効用逓減性:f(X ∪ s) − f(X)≥ f(Y ∪ s) − f(Y)

注意: 以下の不等式より強い性質

f(x) + f(y) ≥ f(x ∨ y) + f(x ∧ y)

(x, y ∈ ZS)

cf.f(X) + f(Y)≥ f(X ∪Y)+ f(X ∩Y)

成分ごとmax 成分ごとmin

集合関数だと同値

9 / 24

Page 17: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

整数格子点上の関数を考える意味

集合関数モデルの制限: 2値変数しか扱えない

集合関数では捉えきれない問題• 最適予算配分問題 [Alon et al.’13,

S.-Kakimura-Inaba-Kawarabayashi ’14] (3日目の垣村さんの talk)

• センサー配置問題

整数格子点上の劣モジュラ関数なら,既存モデルの利点を保ったまま多値変数を扱える

10 / 24

Page 18: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

アイデアGreedy

(集合版)劣モジュラ被覆へ帰着

• 擬多項式時間• 近似比は良い

Decreasing Thresholdしきい値・二分探索 で高速化したGreedy

• 多項式時間• (定数倍を除き)同じ近似比

しきい値による高速化手法[Badanidiyuru-Vondrak ’14]

11 / 24

Page 19: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

アイデアGreedy

(集合版)劣モジュラ被覆へ帰着

• 擬多項式時間• 近似比は良い

Decreasing Thresholdしきい値・二分探索 で高速化したGreedy

• 多項式時間• (定数倍を除き)同じ近似比

しきい値による高速化手法[Badanidiyuru-Vondrak ’14]

11 / 24

Page 20: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

Greedy

1: x ← 02: while f(x) < α :

3: s ← argmaxs∈S

{f(es |x)c(es |x) : x(s) < r

}4: x ← x + es5: return x

f(es | x) = f(xs + x) − f(x)

f(es | x)c(es | x)

=ゲイン増分コスト増分

=コスト・ゲイン比

12 / 24

Page 21: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

Greedyの問題点

× 1歩ずつしか進めない ... 擬多項式時間

解決策• しきい値による高速化手法 [Badanidiyuru-Vondrak ’14]

• 二分探索によるステップサイズの決定 [S.-Yoshida ’15]

しきい値 θよりコスト・ゲイン比が良い領域をできるだけ大きく進む

13 / 24

Page 22: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

Greedyの問題点

× 1歩ずつしか進めない ... 擬多項式時間

解決策• しきい値による高速化手法 [Badanidiyuru-Vondrak ’14]

• 二分探索によるステップサイズの決定 [S.-Yoshida ’15]

しきい値 θよりコスト・ゲイン比が良い領域をできるだけ大きく進む

13 / 24

Page 23: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

提案アルゴリズム

1: x ← 02: for (θ =十分大きな値; θ ≥十分小さな値; θ ← θ(1 − ϵ)) :3: for s ∈ S :

4:f(kes | x)

kc(es)≥ θとなる最大の 0 < k ≤ r − x(s)を二分

探索5: if k が存在: x ← x + kes

6: if f(x) ≥ α: return x7: return x

14 / 24

Page 24: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

提案アルゴリズムf(kes | x)

kc(es)=コスト・ゲイン比

f(kes | x)c(kes | x)

の下界

k に関して単調減少

s

f(·|x)c(es)

ステップサイズ k

傾きθ

15 / 24

Page 25: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

結果

定理提案アルゴリズムは (1 + 3ϵ)ρ

(1 + log d

β

)-近似の (ほぼ)

実行可能解を O(

log nrcmaxδcmin

log r)時間で出力する.

注意:• (ほぼ)実行可能は f(x) ≥ (1 − δ)αの意味• f :整数値なら常に実行可能解を出力する

16 / 24

Page 26: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

数値実験f(x): データセットから生成, c(x) := ∥x∥1データセット:

• BWSN ... 現実の貯水池のネットワーク

• Synthetic ... ランダムデータ

比較対象:

• Greedy ... (集合版)劣モジュラ被覆への帰着※擬多項式時間

• Degree ... f(es)が大きい s から選択

• Uniform ... f(k1) ≥ αとなる最小の k1を出力

計算機: Xeon E5-2690 2.9GHz CPU, 256GB RAM (4GBで十分)

17 / 24

Page 27: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

BWSN (Battle of Water Sensor Network) [Ostfeld et al. ’08]

• 126頂点, 168枝

• 96時間までの汚染シミュレーション3000通り

S: センサー集合, x: センサーの電力分布,Pr(s が汚染を検知する) = 1 − (1 − p)x(s) (p = 0.001)

f(x) = E[96 × 60 × 60 − (汚染検知時刻)]

18 / 24

Page 28: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

Synthetic

ランダム二部グラフ G := (S,T ;E)

• |S | = |T | = 100000

• S 上の次数分布: Pr(d(s) = k ) ∝ k−3.0 (s ∈ S)

• 各 s はランダムな T の点に接続

パラメータ: p = 0.001

f(x) :=∑t∈T

1 − ∏s∈Γ(t)

(1 − p)x(s)

19 / 24

Page 29: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

BWSN:目的関数値

0 500 1000 1500 2000 2500 3000α

101

102

103

104

|x| 1

OursGreedyDegreeUniform

• Greedyに匹敵する性能20 / 24

Page 30: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

BWSN:実行時間

0 500 1000 1500 2000 2500 3000α

10-2

10-1

100

101

102

103

time

(s)

OursGreedyDegreeUniform

• Greedyより 10倍高速21 / 24

Page 31: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

Synthetic: 目的関数値

0 500 1000 1500 2000 2500 3000α

103

104

105

106

107

|x| 1

OursGreedyDegreeUniform

• Greedyに匹敵する性能22 / 24

Page 32: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

Synthetic: 実行時間

0 500 1000 1500 2000 2500 3000α

10-1

100

101

102

103

time

(s)

OursGreedyDegreeUniform

• Greedyより 10倍高速23 / 24

Page 33: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

結果

ZS+上の劣モジュラ被覆に対する近似アルゴリズム

• 近似比: O(ρ log d/β),計算量: O (n log nr log r)

• r = 1の場合,既存の最良近似比と一致

• 数値実験により解の品質・効率性を確認

d := maxs f(es), ρ := cの曲率,β := min{f(es | x) : s ∈ S, x ∈ ZS

+, f(es | x) > 0}

24 / 24

Page 34: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

ϵ とコスト (BWSN)

0 500 1000 1500 2000 2500 3000α

0

10-3

10-2

10-1

100

101

102

Rela

tive c

ost

incr

ease

1.00.10.010.0010.0001

25 / 24

Page 35: 整数格子点上の劣モジュラ被覆に対する 高速アルゴリズム - …ibisml.org/archive/ibis2015/s2-soma.pdf · 機械学習での劣モジュラ最適化 オブジェクト

ϵ と実行時間 (BWSN)

0 500 1000 1500 2000 2500 3000α

10-1

100

101

102

103

tim

e (

s)

1.00.10.010.0010.0001Greedy

26 / 24