deep forest: towards an alternative to deep neural networks

40
DEEPFOREST: TOWARDS AN ALTERNATIVE TO DEEP NEURAL NETWORKS Zhi-Hua Zhou and Ji Feng 20171020DLゼミ 発表者 B4 吉田拓海 1

Upload: harmonylab

Post on 24-Jan-2018

297 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Deep Forest: Towards An Alternative to Deep Neural Networks

DEEPFOREST: TOWARDS AN

ALTERNATIVE TO DEEP NEURAL NETWORKS

Zhi-Hua Zhou and Ji Feng

2017年10月20日 DLゼミ

発表者 B4 吉田拓海

1

Page 2: Deep Forest: Towards An Alternative to Deep Neural Networks

論文概要

■ 現在の深層モデル

– ニューラルネットワーク

■ Deep Forest(gcForest)を提案

– 決定木アンサンブルアプローチ

– 広範囲のタスクでDNNと競える高い性能

■ IJCAI 2017

■ 論文URL

– https://arxiv.org/abs/1702.08835

Deep Learning が他のモジュールでも実現できるか?

2

Page 3: Deep Forest: Towards An Alternative to Deep Neural Networks

関連研究

■ Deep neural decision forests. [Kontschieder et al.,2015]

– DNNの特徴を利用したランダムフォレスト

– DNNより性能が向上

– ICCV2015 best paper

– DNNとの組み合わせ

■ gcForestはDNNの代替

3

Page 4: Deep Forest: Towards An Alternative to Deep Neural Networks

Deep Neural Network

■ 強力

■ 様々なタスクで成功

– 特に視覚、音声情報を含むタスク

■ 欠点

– 訓練データが大量に必要

■ 現実のタスクでは、ラベル付けされたデータが不足

■ ラベリングのコストが高い

– モデルが複雑

■ 訓練には強力な計算設備が必要

■ ハイパーパラメータが多い上に、学習性能がその調整に依存

■ 理論的な解析が難しい

4

Page 5: Deep Forest: Towards An Alternative to Deep Neural Networks

Deep Neural Network

■ 表現学習

– 生の入力から特徴を抽出する

– DNNにとって重要

■ 大規模なデータを活用するためには、学習モデルのキャパシティも大きい必要がある

■ gcForestを提案

これらの特性を他の学習モデルに与えることが出来れば、DNNと競える性能を達成することができるのでは?

5

Page 6: Deep Forest: Towards An Alternative to Deep Neural Networks

gcForest

■ カスケード構造

– 表現学習を可能に

– カスケードレベル数は適応的に決定可能

■ モデルの大きさ(複雑さ)を適応的に決定

■ Multi-grained scanning

– 表現能力を高める

6

Page 7: Deep Forest: Towards An Alternative to Deep Neural Networks

gcForest

■ ハイパーパラメータ数が少ない

– デフォルトで様々なタスクに対応可能(堅牢)

■ DNNに対して競争力の高い性能を持つ一方で訓練時間は短い

■ この論文の範囲を超えるけど理論的分析も簡単

7

Page 8: Deep Forest: Towards An Alternative to Deep Neural Networks

カスケード構造

■ 各レベルは、その前のレベルで処理された特徴情報を受け取り、その処理結果を次のレベルに渡す

8

Page 9: Deep Forest: Towards An Alternative to Deep Neural Networks

カスケード構造

■ 多様性がアンサンブル構築にとって重要

– 異なる種類のフォレストを使用

– 図は各レベルが2つのランダムフォレスト(黒)、2つの完全ランダム決定木フォレスト (青)で構成

9

Page 10: Deep Forest: Towards An Alternative to Deep Neural Networks

カスケード構造

■ インスタンスが与えられると、インスタンスが属するノードのトレーニング例のクラスごとの割合をカウントし、全ツリーの平均をとる

10

Page 11: Deep Forest: Towards An Alternative to Deep Neural Networks

各フォレストの学習

■ 完全ランダム決定木フォレスト

– 500個の木を含む

– 決定木の各ノードで分割のための特徴をランダムに選択

– 各ノードが同じクラスのインスタンスだけとなるまで成長

■ ランダムフォレスト

– 500個の木を含む

– 𝑑個の特徴を候補としてランダムに選択し、その中から最もGini係数の良いものを分割に使用することで作成(d:入力特徴数)

11

Page 12: Deep Forest: Towards An Alternative to Deep Neural Networks

各フォレストの学習

■ K-fold cross validation(実験ではK=3)

■ カスケードの拡張

1. 新しいレベルを拡張

2. カスケード全体の性能を検証セットで推定

3. 性能が大幅に向上しなければ、学習終了

– カスケードレベルが自動的に決定される

– DNNがモデルの複雑さが固定されているのとは対照的に、適切な時に学習を終了し、モデルの複雑さを適応的に決定

– 大規模なものに限らずに、様々なスケールのデータに適用可

12

Page 13: Deep Forest: Towards An Alternative to Deep Neural Networks

Multi-Grained Scanning

■ 特徴間の関係を扱う目的

– CNN、RNNに触発

13

Page 14: Deep Forest: Towards An Alternative to Deep Neural Networks

システムの概要

■ gcForestの全体的な手順(例)

– 元の入力が400次元

– 3つのウィンドウサイズがMulti-Grained Scanningに使用

– 予測するクラスは3クラス

14

Page 15: Deep Forest: Towards An Alternative to Deep Neural Networks

システムの概要

■ m個の訓練例について、サイズ100のウィンドウは、301×mの100次元訓練例のデータセットを生成する

15

Page 16: Deep Forest: Towards An Alternative to Deep Neural Networks

システムの概要

■ これらのデータは、完全ランダム決定木フォレストと、ランダムフォレストの訓練に使用

■ 1806次元の特徴ベクトルが得られる

– カスケードの1段目を訓練するのに使用(1𝐴)

16

Page 17: Deep Forest: Towards An Alternative to Deep Neural Networks

システムの概要

■ 同様に、サイズ200は1206次元、サイズ300は606次元の特徴ベクトルを生成する

– それぞれ2段目(1𝐵)、3段目(1𝐶)の訓練に使用

17

Page 18: Deep Forest: Towards An Alternative to Deep Neural Networks

システムの概要

■ カスケードを成長させる(段を増やしていく)

– 検証が収束するまで繰り返す

18

Page 19: Deep Forest: Towards An Alternative to Deep Neural Networks

システムの概要

■ 最終的な予測は、最後のレベルで4つの3次元ベクトルを集約し、集約された最大値を有するクラスをとる

19

Page 20: Deep Forest: Towards An Alternative to Deep Neural Networks

ハイパーパラメータ

■ DNNとgcForestの比較

– 太字:比較的大きな影響力をもつパラメータ

– 「?」:デフォルト値が不明、タスクによって異なる設定が必要

20

Page 21: Deep Forest: Towards An Alternative to Deep Neural Networks

実験

■ gcForest, DNN, その他学習アルゴリズムの比較

■ 目的

– gcForestが簡単なパラメータ調整で、DNNと競える性能を達成できることを検証する

■ 全ての実験で、gcForestは同じカスケード構造を使用

– 各レベルは、それぞれ500個の木を含む4つの完全ランダム決定木フォレストと4つのランダムフォレストで構成

– タスク固有のチューニングを行うと性能が向上することに注意

21

Page 22: Deep Forest: Towards An Alternative to Deep Neural Networks

実験

■ カスケードの訓練

– カスケードレベル数は自動的に決定

– 訓練セットを育成セットと推定セットに分割(8:2)

■ 育成セットを使用してカスケードを拡大

■ 推定セットを使用して性能を推定する

– 新しいレベルを増やしても性能が向上しない場合はカスケードの成長は終了し、推定レベル数を取得

– 成長セットと推定セットをマージした訓練セットで再訓練

22

Page 23: Deep Forest: Towards An Alternative to Deep Neural Networks

実験

■ Mult-Grained Scanning

– 3つのウィンドウサイズを使用

– 入力特徴がd次元の場合

■ 𝑑/16 , 𝑑/8 , 𝑑/4

– 入力特徴がパネル構造(画像など)の場合ウィンドウもパネル構造

23

Page 24: Deep Forest: Towards An Alternative to Deep Neural Networks

実験

■ DNN– 活性化関数:ReLU

– 損失関数:クロスエントロピー

– 最適化手法:adadelta

– Dropout率:0.25 , 0.5■ (データのスケールに応じて使用)

– ネットワーク構造のハイパーパラメータはタスク間で固定できない■ 検証セットで様々なアーキテクチャを検討し、最高の性能

も持つものを選択し、訓練セットで再訓練し、テスト精度を報告

24

Page 25: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果①(画像分類)

■ MNIST

– 0~9の手書きの数字画像

– サイズ28×28

– 60000の訓練(および検証)データ

– 10000のテストデータ

25

Page 26: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果①(画像分類)

■ LeNet-5

– DropoutとReLUを備えたLeNetの最新版

■ Deep Belief Net

– A fast learning algorithm for deep belief nets. [Hinton et al., 2006]

■ RandomForest

– 2000本の木を含むランダムフォレスト

26

Page 27: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果②(顔認識)

■ ORLデータセット

– 40人のグレースケール顔画像

– 40人×10枚=計400枚

■ 1人当たり、5枚/7枚/9枚の画像を訓練に使用し、残りの画像でテストを行う

27

Page 28: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果②(顔認識)

■ CNN(他の構成も試した中で最高の性能)

– 3×3カーネルの32個の特徴マップを生成する2つの畳込み層からなる

– 各畳込み層は2×2のマックスプーリング層を持つ

– その後ユニット数128、40個の全結合層

– 出力層はソフトマックス

– 活性化関数:ReLU

– 損失関数:クロスエントロピー

– Dropout率:0.25

– 最適化手法:adadelta

– バッチサイズ:10

– エポック数:50

■ kNN

– k=328

Page 29: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果②(顔認識)

■ gcForestは3つの全ケースにおいて良い結果が出た

29

Page 30: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果③(音楽分類)

■ GTZANデータセット

– 10ジャンルの音楽クリップが含まれる

– 1ジャンル100トラック

– 各トラックは30秒間

– 訓練用の700クリップとテスト用300クリップに分割

– 30秒間の音楽クリップを表現するために、MFCC特徴を使用する

■ オリジナル音波を1280×13の特徴行列に変換

30

Page 31: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果③(音楽分類)

■ CNN

– 畳込み層として32個の特徴マップを生成する13×8カーネルを使用し、それぞれにプーリング層が続く

– その後ユニット数1024と512の全結合層

– 出力層はソフトマックス

■ MLP

– 1024と512の全結合

■ CNN、MLP

– 活性化関数:ReLU

– 損失関数:カテゴリクロスエントロピー

31

Page 32: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果④(手の動きの認識)

■ sEMGデータセット

– 手の動きの筋電図の時系列データ

– 6つの手の動きの1つにそれぞれ属する1800個のデータ

– 筋電図センサが1秒間に500個の特徴を捉え、各データは3000個の特徴をもつ(6秒?)

32

Page 33: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果④(手の動きの認識)

■ MLP

– 入力-1024-512-出力

■ LSTM

– 隠れユニット数:128

– シーケンス長:6

33

Page 34: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果⑤(感情分類)

■ IMDBデータセット

– 訓練用:25000件の映画レビュー

– テスト用:25000件の映画レビュー

– レビューはtf-idf特徴量によって表される

■ tf:単語の出現頻度を表す

– 文章dにおける単語tのtf=𝑑内での𝑡の出現回数

𝑑内の全単語数■ idf:単語が

– 単語tのidf=log𝑁

𝑡が出現する文章数+ 1

■ tf-idf = tf * idf

34

Page 35: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果⑤(感情分類)■ CNN

– Convolutional neural networks for sentence classification. [Kim, 2014]

■ MLP

– 入力-1024-512-256-出力

■ gcForest

– tf-idfは空間的関係、連続的関係を持たないことから、Multi-grained scanningは使用しない

35

Page 36: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果⑤(感情分類)

■ 計算時間(訓練)

– 実験環境

■ CPU:Intel E5 2695 v4 CPUs (18 cores) ×2

■ GPU:NVIDIA TITAN X

■ IMDBデータセット:特徴5000、25000例

– gcForest(CPU)

■ カスケードレベル毎に267.1秒

■ 9レベルで終了したので合計で2404秒(40分)

– MLP(CPU)

■ 収束に50エポック

■ 1エポックに93秒、合計4650秒(77.5分)

– MLP(GPU)

■ 1エポックに14秒、合計700秒(11.6分)

36

Page 37: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果⑥(低次元データ)

■ UCIデータセット

– LETTER

■ 文字画像の特徴データベース、手紙を特定

– ADULT

■ 国税調査データに基づいて、所得が$50,000/年を超えるかどうかを予測

– YEAST

■ タンパク質の細胞局在部位の予測

特徴数 訓練データ数 テストデータ数

LETTER 16 16,000 4,000

ADULT 14 32,561 16,281

YEAST 8 1,038 44637

Page 38: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果⑥(低次元データ)

■ MLP(各データで最高の性能をもつ構造)

– LETTER :入力-70-50-出力

– ADULT :入力-30-20-出力

– YEAST :入力-50-30-出力

■ gcForest

– Multi-grained scanningは使用しない

– LETTER,ADULT,YEAST 全てで同じ設定

38

Page 39: Deep Forest: Towards An Alternative to Deep Neural Networks

実験結果⑦(Multi-Grained Scanning)

■ Multi-Grained Scanningの寄与を調べるための実験

■ 空間的、連続的な特徴関係が存在する場合、Multi-Grained Scanning は性能を向上させる

39

Page 40: Deep Forest: Towards An Alternative to Deep Neural Networks

結論

■ gcForestは実験でDNNと競える性能を示した

■ gcForestはハイパーパラメータが少ない、

■ また同じパラメータ設定でも様々なタスクで優れた性能が得られる

40