SlideShare ist ein Scribd-Unternehmen logo
1 von 179
Downloaden Sie, um offline zu lesen
第26回 名古屋CVPRML勉強会

Random Forests祭り

http://www.vision.cs.chubu.ac.jp/CVTutorial/

藤吉研究室
中部大学工学部情報工学科

1
1. Random Forests
2. 学習を用いたキーポイントマッチングの高速化

-

Random Forestsを用いたキーポイントマッチング
2段階Random Forestsによる高精度化

3. Random Forestsを用いた物体検出
4. Random Forestsを用いた人体姿勢推定
5. Regression Forests
6. その他の問題設定への応用
1. Density Forests
2. Semi-Supervised Forests
2
Random Forests

[Breiman, 2001]

• アイデア
‒ 決定木学習 + アンサンブル学習 + ランダム学習
• 別名
‒ Randomized Trees
‒ Randomized Forests
‒ Randomized Decision Forests

• できること
‒ マルチクラス識別
‒ クラスタリング

• 特徴
‒ シンプルかつ高速な学習と識別

3
CVへの応用:キーポイントマッチング

[Lepetit et al., 2006]
4
CVへの応用:物体認識&セグメンテーション

[Shotton et al., 2008]
5
CVへの応用:その他
• 文字認識

[Amit & Geman, 1997]

• visual word クラスタリング[Moosmann et al., 2006]
• 行動認識&姿勢推定[山下 et al., 2010]

6
CVへの応用4:人検出
• パーツベースの人検出 [三井 et al., 2011]
‒ 人の領域をパーツに分割し、RFsによるマルチクラス識別器を構築
C0

C1

C2

C3

C4

C5

Randomized Trees マルチクラス識別器
Tree0

Tree1

TreeT-1
…

…

h0 = Ave

(

…

+

…

+

…

+

)=

0.61
0.29

= 0.32

提案手法

従来法

7
Random Forestsの特徴
• メリット
‒ 高速な学習・識別
• ランダム学習により高次元特徴(数万∼)でも効率的な学習が可能
• 選択された特徴量のみで識別

‒ 教師信号のノイズに強い
• 学習データのランダム選択によりノイズの影響を抑制

• デメリット
‒ オーバーフィッティングになりやすい
• パラメータが多い(木の数,木の深さ,サブセット)
• 学習データ数が少ないとうまく学習できない
→ 大量の学習データを取得 or 生成する工夫が必要
8
マルチクラス識別器の比較(思いっきり主観です!)

SVM
Boosting
(one-vs-rest) (Joint Boosting)

Random
Forests

学習データの数

少

中

多

ノイズの影響

少

大

少

学習時間

中

遅い

速い

識別時間

遅い

中

速い

9
1. Random Forests の学習アルゴリズム

10
木構造を利用した識別器

学習サンプル
カテゴリ1
1. 0.8 1.2 3.4
2. 0.2 2.3 4.2
3. 1.1 4.1 2.6
4. 4.2 1.3 2.1

カテゴリ2
... 3.2
... 4.2
... 6.7
... 2.4

1. 2.3 5.2 1.2 ...
2. 0.2 5.2 3.4 ...
3. 1.1 2.5 5.2 ...
4. 1.2 3.6 6.2 ...

カテゴリC
6.2
7.2
3.2
6.3

1. 2.1 1.2 2.5 ...
2. 1.2 2.7 7.4 ...
3. 2.1 3.1 3.3 ...
4. 1.7 4.2 8.2 ...

2.6
3.2
8.5
2.1
分岐ノード
末端ノード

0
深さD

1
2
3

tree1

treeT
決定木の数
11
学習アルゴリズム
Random Forestsの学習アルゴリズム

・前処理
− データ集合 S から T 個のサブセット作成
・For t = 1, 2, …, T  サブセットの数だけ木を作成
­ IF エントロピー H(S)=0 or 指定した深さDに達した
・末端ノード作成

­ ELSE
・分岐関数候補をランダムに K 個選択
・ For k = 1, 2, …, K

- 候補 k を用いてサンプルの分割
- 候補 k の情報利得算出
・最も情報利得Iが高い候補を選択
・単純ベイズ識別器作成
12
サブセットの作成
• サンプル集合 S を用意
‒ サンプルi ∈ S には特徴ベクトル vi, 教師信号 ci が付与

• サブセットの作成
‒ T 個のサブセットをランダムに作成
サンプル集合 S

サブセット S1

サブセット S2

サブセット ST
13
サブセット作成のポイント
• サブセット間のサンプルの数は統一
‒ 木の数と密接な関係

• 完全なランダム選択
‒ サブセット間でのサンプルの重複を許容
‒ 学習に利用されないサンプルも許容
サンプル集合 S

サブセット S1

サブセット S2

サブセット ST
14
学習アルゴリズム
Random Forestsの学習アルゴリズム

・前処理
− データ集合 S から T 個のサブセット作成
・For t = 1, 2, …, T  サブセットの数だけ木を作成
­ IF エントロピー H(S)=0 or 指定した深さDに達した
・末端ノード作成

­ ELSE
・分岐関数候補をランダムに K 個選択
・ For k = 1, 2, …, K

- 候補 k を用いてサンプルの分割
- 候補 k の情報利得算出
・最も情報利得Iが高い候補を選択
・単純ベイズ識別器作成
15
分岐関数の決定方法
• 一般的には2つの方法が取られる
‒ 情報量を基準として複数の候補から良いものを選択 ( K>1 )
• Random Forests[ L. Breiman 01 ]
• Semantic Texton Forests[ J. Shotton 08 ]

‒ 単純にランダム選択 ( K=1 )
• Extremely Randomized Trees[ P. Geurts 06 ]
• Keypoint Matching

[ V.Lepetit 08 ]

16
分岐関数の設計
• 基本的に設計は自由
‒ しきい値,特徴量の大小関係

• Semantic Texton Forestsではしきい値を利用

i

f (p)
f (p)
f (p)

=
=
=

Px1 ,y1 ,c1
Px1 ,y1 ,c1 + Px2 ,y2 ,c2
Px1 ,y1 ,c1 Px2 ,y2 ,c2

f (p)

p

=

|Px1 ,y1 ,c1

Px2 ,y2 ,c2 |

Pixel&i&gives&patch&p
(21x21 pixels'in'experiments)'

分岐ルール:

f (v) < t
otherwise

:左に分岐
:右に分岐
17
分岐関数候補の選択
• 学習サンプルの特徴ベクトルから候補を選出
‒ 分岐関数 f と しきい値 t の組み合わせをK個ランダムに選択

• 例:1000次元の特徴ベクトル

Freq.

1.0

1

2

3

4

5

6

7

8

993 994 995 996 997 998 9991000

特徴次元
{ (2, 0.1)1, ( 993, 0.3 )2, ( 6, 0.2 )3, ( 999, 0.2 )4, ... , ( 4, 0.3 )K}
候補数 K = √(特徴次元数1000) ≒ 32 が推奨されている[Breiman ’01]
18
分岐関数候補数とランダム性
• 分岐関数候補数を多く設定
‒ ランダム性の低い決定木
‒ 学習時間が増加
‒ 識別性能の向上

• 分岐関数候補数を少なく設定
‒ ランダム性の高い決定木
‒ 学習時間の削減
‒ 識別性能の低下

19
学習アルゴリズム
Random Forestsの学習アルゴリズム

・前処理
− データ集合 S から T 個のサブセット作成
・For t = 1, 2, …, T  サブセットの数だけ木を作成
­ IF エントロピー H(S)=0 or 指定した深さDに達した
・末端ノード作成

­ ELSE
・分岐関数候補をランダムに K 個選択
・ For k = 1, 2, …, K

- 候補 k を用いてサンプルの分割
- 候補 k の情報利得算出
・最も情報利得Iが高い候補を選択
・単純ベイズ識別器作成
20
サンプルの分割と情報利得の算出
• 分岐関数候補を用いてサンプルを分割
Sl
Sr

= {i

Sj |fk (vi ) < tk }

= Sj  Sl

Sl : 左に分岐するサンプル集合
Sr : 右に分岐するサンプル集合

• 情報利得 I により候補を評価
Ij = H(Sj )
i=L,R

= H(Sj )

i
|Sj |
i
H(Sj )
|Sj |

|Sl |
H(Sl )
|Sj |

H : 情報エントロピー
Sj : 親ノードのサンプル集合

|Sr |
H(Sr )
|Sj |
21
情報エントロピー
• カテゴリの出現確率の偏りを表す
‒ クラスの出現確率に偏りが少ない場合エントロピーは大
1.00

エントロピー :

エントロピー

0.75

C

Pc log2 Pc

H(S) =

0.50

c=1

0.25

0

0.0

0.2

0.4

0.6

0.8

1.0

カテゴリ1の出現確率

2カテゴリの出現確率とエントロピー
22
情報利得
• ノードを分割後に減少したエントロピーの量
|Sl |
H(Sl )
|Sj |

情報利得: Ij = H(Sj )

親ノードのエントロピー
5
5
H(Sj ) =
log2
8
8
候補1のエントロピー
2
2
L
H(S1 ) =
log2
4
4
候補2

親ノードSj

候補1

3
3
log2
4
4
候補2のエントロピー
3
3
L
H(S2 ) =
log2
4
4
R
H(S1 ) =

R
H(S2 ) =

I1 = 0.954

4
8

1.0

4
8

0.0485

0.811 I2 = 0.954

4
8

0.811

4
8

4
4
log2
4
4

|Sr |
H(Sr )
|Sj |
3
3
log2 = 0.425 + 0.529 = 0.954
8
8
2
2
log2 = 0.5 + 0.5 = 1.0
4
4
1
1
log2 = 0.311 + 0.5 = 0.811
4
4
1
1
log2 = 0.311 + 0.5 = 0.811
4
4
0
0
log2 = 0.0 + 0.0 = 0.0
4
4

0.0

0.549
23
実装上の情報利得
• 親ノードの情報エントロピーは変化しない
I1

=

0.954

=

0.0485

4
8

1.0

4
8

0.811 I2

=

0.954

=

0.549

4
8

0.811

4
8

0.0

→子ノードのエントロピーが最大となる候補を選択
→計算コストの削減

Ij
Ij

|Sl |
|Sr |
= H(Sj )
H(Sl )
H(Sr )
|Sj |
|Sj |
|Sl |
|Sr |
=
H(Sl )
H(Sr )
|Sj |
|Sj |
実装上の情報利得
24
分岐ノード決定過程
• 分岐ノード決定シミュレーション
‒ 分岐関数:2次元空間を分割する一次関数
‒ 3つの分岐関数から最適なものを見つける
2
y

1
カテゴリ数 : 4

3

サンプル数 : 4 × 33

x
25
分岐ノード決定過程1
• 分岐関数候補1
2

y

1
0.50
0.49
0.01
0

3

0.49

0.50
0 0.01

Pl (c)

Pr (c)
C

x

c=1

1

y

Sl

Pc log2 Pc

エントロピー : H(S) =
H(Sl ) = 1.10

Sr

H(Sr ) = 1.10

情報利得 : I =
x

I1 =

|Sl |
H(Sl )
|Sj |
1.10

|Sr |
H(Sr )
|Sj |
26
分岐ノード決定過程2
• 分岐関数候補2
2

y

1
0.500.50

3

0

0.50

0

0.50
0 0

Pl (c)

Pr (c)
C

x

Pc log2 Pc

エントロピー : H(S) =
c=1

y

2

Sl

H(Sl ) = 1.0

Sr

H(Sr ) = 1.0

情報利得 : I =
x

I2 =

|Sl |
H(Sl )
|Sj |
1.0

|Sr |
H(Sr )
|Sj |
27
分岐ノード決定過程3
• 分岐関数候補3
2

y

1
0.46 0.51

3
0

0.49
0.46
0.04 0

0.03

Pl (c)

Pr (c)
C

x

Pc log2 Pc

エントロピー : H(S) =
c=1

y
3

H(Sl ) = 1.16

Sr

H(Sr ) = 1.21

情報利得 : I =
Sl

I3 =

|Sl |
H(Sl )
|Sj |
1.185

|Sr |
H(Sr )
|Sj |

x
28
分岐ノード決定過程4
• 分岐ノード決定シミュレーション
‒ 分岐関数:2次元空間を分割する一次関数
‒ 3つの分岐関数から最適なものを見つける
2
y

1
カテゴリ数 : 4
サンプル数 : 4 × 33

3

I1 =

1.10

I2 =

1.0

I3 =

1.185

max

→分岐関数候補 2 を選択
x
29
学習アルゴリズム
Random Forestsの学習アルゴリズム

・前処理
− データ集合 S から T 個のサブセット作成
・For t = 1, 2, …, T  サブセットの数だけ木を作成
­ IF エントロピー H(S)=0 or 指定した深さDに達した
・末端ノード作成

­ ELSE
・分岐関数候補をランダムに K 個選択
・ For k = 1, 2, …, K

- 候補 k を用いてサンプルの分割
- 候補 k の情報利得算出
・最も情報利得Iが高い候補を選択
・単純ベイズ識別器作成
30
末端ノードの作成条件
• エントロピー H(S) が0になった時
‒ これ以上分岐が出来ないのため終了

• 指定した深さD まで学習が進んだ時
‒ 過学習を防ぐため

31
エントロピー H(S) が0になる場合
• Sr と Sl に単一カテゴリのサンプルが属する状態になる
→ 分岐ができない
1.0

y
P (c)
C

Pc log2 Pc

エントロピー : H(S) =
c=1

H(Sj ) = 0.0

x
32
指定した深さに達する場合
• 木が深くなるほど過学習になる
→ 木の深さを制限して対応
例:最大の深さ3で学習
y

0
1
2

3
→ 指定した深さに成長したため
x

末端ノード
33
末端ノード作成
• カテゴリの出現確率Pn (c)
‒ サンプル集合Sに付与された教師信号を投票

確率

サブセット St

カテゴリ C
34
実装上の注意点
• 学習サンプルの各クラスのサンプル数が不均等の場合
→ Inverse Label Frequencyが必要

• 学習サンプル I すべてを用いてクラスの頻度分布を作成
‒ あるサンプル i ∈ I に付けられているラベルを ciを利用

c

=

[c = ci ]

頻度

1

i I
カテゴリ C

• カテゴリの頻度分布作成時に重み付け
35
学習アルゴリズム
Random Forestsの学習アルゴリズム

・前処理
− データ集合 S から T 個のサブセット作成
・For t = 1, 2, …, T  サブセットの数だけ木を作成
­ IF エントロピー H(S)=0 or 指定した深さDに達した
・末端ノード作成

­ ELSE
・分岐関数候補をランダムに K 個選択
・ For k = 1, 2, …, K

- 候補 k を用いてサンプルの分割
- 候補 k の情報利得算出
・最も情報利得Iが高い候補を選択
・単純ベイズ識別器作成
36
単純ベイズ識別器の作成
• T 個の決定木をトラバーサル
v

v
tree tT

tree t1

……

1

Average
+

……

+

P1 (c|v)

識別結果の統合:
単純ベイズ識別器:

T

Pt (c|v)

1
P (c|v) =
T

=

8

4 523
7
6

T

Pt (c|v)
t=1

Ci = arg max P (ci |v)
ci

37
Random Forestsによる学習過程
• トイプロブレムを利用して学習過程を観察
480
トイプロブレム

・分類問題:3クラス
・特徴次元:2次元
・学習パラメータ
木の数 1
分岐候補 25
深さ 4

0

640

38
学習過程1
• 深さ1
480

ノード

I

:−0.68

特徴量  :x
しきい値 :393
0

393

640

39
学習過程2
• 深さ2
480

ノード

I

:−0.04

特徴量  :x
しきい値 :233
0

233

640

40
学習過程3
• 深さ3
480

212

ノード

I
0

640

:−0.23

特徴量  :y
しきい値 :227
41
学習過程4 (終了)
• 深さ4
480

0

256

ノード

640

I

:0.0

特徴量  :x
しきい値 :256
42
パラメータ調整のコツ
• 過学習を回避するためには
‒ 深さを浅く設定する

• 表現能力をあげるためには
‒ 木の数を増やす

• 分岐ノード候補数
‒

特徴次元数 が推奨

• サブセットに分けるデータの数
‒ サブセット間で若干重複がある程度の数

43
木の数による識別境界の変化

44
木の数による識別境界の変化
• 分岐関数の候補数:15

木の数:5

木の数:300
→マージン最大化
45
Random Forestsのソースコード
• Random Forestsの学習,識別
‒ URL : http://www.vision.cs.chubu.ac.jp/CVTutorial/
‒ Dataset : 人工生成サンプル
‒ 作成環境 : Visual Studio Ver. 2008, C++
‒ 学習プログラム:main_training.cpp
‒ 学習パラメータの設定
• Learn関数の引数に設定
(numTrees, maxDepth, featureTrials,
thresholdTrials, dataPerTree)
‒ 識別プログラム:main_evaluate.cpp

46
Boosted Random Forest[MIRU2013]
•  Random Forest Boosting
%$

#
  

$


$ 

!$
!

$

$
47%
47
まとめ:Random Forests
• Random Forests
‒ 決定木を用いたマルチクラス識別器
‒ 高速な学習・識別

• Boosted Random Forest

48
2. 学習を用いたキーポイントマッチングの高速化
- Random Forestsを用いたキーポイントマッチング
- 2段階Random Forestsによる高精度化
- Ferns

49
高速

SIFTアプローチの変遷

高速・高精度化
GPU を用いた
高速化

Lepetit, Fua: 2006
RTs

Sinha, Sudipta: 2006
SIFT-GPU

学習なし

学習あり

手法の高速化
Bay et al.: 2006
SURF
Lowe: 1999
SIFT

頑健性の向上
頑健性の向上
Ke, Sukthankar: 2004
PCA-SIFT
Mikolajczyk, Schmid: 2005
GLOH

高精度

50
Random Forestsによるキーポイントマッチング [Lepetit 06]

• 決定木を用いたキーポイントの分類
‒ 学習
• テンプレートをアフィン変換して学習画像を作成
• 学習画像すべてからキーポイントを検出
• キーポイントを中心とした32 32のパッチを作成
• 決定木の構築

‒ 分類によるマッチング
• 入力画像からキーポイント検出
• キーポイントを中心とした32 32のパッチを作成
• 決定木によりキーポイントをマッチング

51
学習画像の生成
• 見えの変化に対応するためテンプレートをアフィン変換
‒ ランダムなパラメータでアフィン変換行列を作成
• 回転,スキュー,平行移動,スケール
( x , y ):テンプレート上の座標
( x’ , y’ ):アフィン変換後の座標

52
アフィン変換に頑健なキーポイント選択
• 学習画像すべてからキーポイントを抽出
‒ 逆行列によりテンプレート上の対応するキーポイント算出
‒ 同一位置のキーポイント数をカウント
‒ 多くの画像から検出されたキーポイントを検出(例:200)
→ノイズおよびひずみに安定したキーポイントを選択

53
Random Forestsの構築

学習画像

・・・

キーポイント

・・・

キーポイント

・・・

キーポイント

・・・

・・・

サブセット1 サブセット2

≦

サブセットN

>
ピクセルの位置はランダムに選択
≦

>

54
キーポイントの分類

32×32

テンプレート

入力画像

Tree1

Tree2

≦

>

≦

TreeN

>

≦

>

・・・

  Average

(

+

+ ・・・ +

)

=
c
55
ノードに利用する特徴量
• 2ピクセルを用いた手法
• 4ピクセルを用いた手法
• SIFT特徴量を用いた手法

>

≦

2ピクセル間の輝度

− ≦ −

− > −

2ピクセル対(4ピクセル)の輝度差

≦

>

SIFTヒストグラム間の差

56
ノードにおける特徴(2ピクセルを用いた手法)
• 2ピクセル間の輝度差

m:ピクセル
P:パッチ
Iσ:平滑化後の画像
>

≦

2ピクセル間の輝度
57
ノードにおける特徴(4ピクセルを用いた手法)
• 2つのピクセル対の関係性

m:ピクセル
P:パッチ
Iσ:平滑化後の画像
−

≦

−

−

>

−

2ピクセル対(4ピクセル)の輝度差

58
ノードにおける特徴(SIFT特徴量を用いた手法)
• パッチから得られるSIFT特徴量を使用

u
v

Bin(u, v, o)

o

≦

>

SIFTヒストグラム間の差
59
特徴量の評価実験
• 実験データ
‒ Title:タイトル領域のキーポイント100個
‒ Eyes:画像(目)良識のキーポイント100個

• 比較手法
‒ C2:2ピクセルを用いた手法
‒ C4:4ピクセルを用いた手法
‒ Ch:SIFT特徴量を用いた手法

Advice on writing a book by Prof. Hartley (ICCV2011)

60
特徴量の評価結果
• 実験結果
‒ 木の数が増えるほど精度が高い
‒ C4はC2より精度が低い
‒ ChはC2より精度が高いが、計算コストが高い
マッチング精度
C2
60.7%

57.7%

66.6%

depth12

69.2%

65.1%

75.0%

depth15

77.0%

73.7%

82.4%

depth10
Eyes set

Ch

depth10
Title set

C4

72.7%

70.0%

74.5%

depth12

78.6%

76.1%

84.2%

depth15

84.7%

81.4%

84.2%

61
SIFTによるマッチング結果

対応点数:18 正解点数: 5

62
SURFによるマッチング結果

対応点数:25 正解点数:13
63
Random Forestsによるマッチング結果

対応点数:38 正解点数:38
64
2. 学習を用いたキーポイントマッチングの高速化
- Random Forestsを用いたキーポイントマッチング
- 2段階Random Forestsによる高精度化
- Ferns

65
Random Forestsによるマッチング精度

検出例(40度):217/217 (100%)

検出例(70度):1/4 (25%)

射影変化が大きいと精度が低下
66
2段階のRandom Forestsによる高精度化

[西村 et al., 2010]

• 学習画像の生成
‒ 3次元上の回転を表現

• 決定木の構築
‒ 視点変化とキーポイント多様性を同じRandom Forestsで表現

2段階にRandom Forestsを構築

→ 視点の変化とキーポイントの多様性を個々のRandom Forestsで表現

67
前処理:学習画像の生成
• オイラー角を用いて3次元上の回転を表現
‒ Viewpointをψθφ回転角で定義
z

Viewpoint

68
学習画像の生成例

θ

φ

0

36

72

108

144

180

216

251

288

324

45

60

70

ψ=90

69
提案手法:2段階のRandom Forests

入力画像
Viewpoint分類のためのRandom Forests

・・・

Viewpointクラス1

Tree 1

Tree N1

Tree 2

Viewpointクラス3に分類
Viewpointクラス2

Keypoint分類のためのRandom Forests

・・・
Viewpointクラス3

学習画像

Tree 1

Tree 2

Tree N2

Keypoint分類結果
70
提案手法:2段階のRandom Forests

入力画像
Viewpoint分類のためのRandom Forests

・・・

Viewpointクラス1

Tree 1

Tree N1

Tree 2

Viewpointクラス1に分類
Viewpointクラス2

Keypoint分類のためのRandom Forests

・・・
Viewpointクラス3

学習画像

Tree 1

Tree 2

Tree N2

Keypoint分類結果
71
1段階目:Viewpointの分類

入力画像

1

10

20

30

Viewpointクラス

クラス1に分類

セントロイド画像

72
1段階目:Viewpointの分類

入力画像

1

10

20

30

Viewpointクラス

クラス12に分類

セントロイド画像

73
2段階目:キーポイント分類のRandom Forestsの構築
サブセットT
サブセット2
サブセット1

:1

:1

:1

:1

:1

:1

・・・
Tree 1

Tree N2

Tree 2

Viewpointクラス1
サブセットT2
サブセット2
サブセット1

:2

:2

:2

:2

:2

:2

・・・
Tree 1

Tree N2

Tree 2

Viewpointクラス2
・・・
サブセットT2
サブセット2
サブセット1

:K

:K

:K

:K

:K

:K

ViewpointクラスK

・・・
Tree 1

Tree 2

Tree N2
74
2段階目: Keypointの分類結果

Randomized Trees: 5/7 (71%)

提案手法:38/45 (84%)

75
キーポイントマッチング結果の比較

SIFT:0/1 (0%)

ASIFT:276/276 (100%)

RTs :1/4 (25%)

2段階RTs:23/26 (88%)

76
キーポイントマッチング手法の比較

100

2段階RTs

ASIFT

マッチング精度 [%]

95
90
85

RFs
RTs

SURF
80

SIFT

75
70
10

100

1000

10000

100000

処理時間 [ms]

キーポイントマッチング(全探索)を決定木分類の問題として解く
→高性能化と高速化を同時に実現
77
2段階Random Forestsによるキーポイントマッチング

78
2. 学習を用いたキーポイントマッチングの高速化
- Random Forestsを用いたキーポイントマッチング
- 2段階Random Forestsによる高精度化
- Ferns

79
Random Ferns [Özuysal et al.,2010]
• キーポイント識別に特化させたRandom Forests
‒ 決定木のメモリ容量を削減
‒ 同じ階層で共通の分岐関数を使用
→ 各分岐関数の出力でリーフノードを表現可能
f0

f1

f3

f2

f4

f0

f0

f5

f1

f6

f2

f1

f2

f2

f1

f2

f2
Ferns
(シダ植物)

80
Random Fernsの構築1
• 分岐関数の出力パターンからクラスの頻度分布を作成
‒ 分岐関数はランダムで決定
Fern

0

1

(011)2 = 3

1

0

1

(101)2 = 5

0

1

0

(010)2 = 2

0
カテゴリciの学習画像

1

1

1

(011)2 = 3

0123456
カテゴリciの頻度分布

81
Random Fernsの構築2
• 分岐関数の出力パターンからクラスの頻度分布を作成
Ferns

クラスc1

クラスc2

クラスc3

0 1 23 4 5 6

0 1 23 4 5 6

0 1 23 4 5 6

0 1 23 4 5 6

0 1 23 4 5 6

0 1 23 4 5 6

0 1 23 4 5 6

0 1 23 4 5 6

0 1 23 4 5 6

Fern 1

・・・

・・・

・・・

・・・

Fern 2

Fern T

82
Random Fernsの識別
• 各クラス毎に各Fernの頻度を総積して分類
クラスc1

Ferns

クラスc2

クラスc3

0 1 234 5 6

0 1 234 5 6

0 1 234 5 6

0 1 234 5 6

0 1 234 5 6

0 1 234 5 6

(001)2
1

…

…

未知入力

・・・

5

…

(101)2

(010)2
2

0 1 234 5 6

0 1 234 5 6

0 1 234 5 6

最終結果:
83
まとめ: キーポイントマッチング
• 学習を用いたキーポイントマッチングの高速化
‒ Random Forestsを用いたキーポイントマッチング
• SIFTベースの手法より高速・高精度化

‒ 2段階Random Forestsによる高精度化
• Viewpontに分けてから分類

‒ Ferns
• Random Forestsの軽量化

84
3. Random Forestsを用いた物体検出
- Hough Forests
- 事例ベースのRandom Forests

85
Hough Forests [Gall et al., 2011]
• Random Forestsモデルの特定物体検出器
• アイデア
‒ 局所パッチを用いた投票により物体重心を推定

• メリット
‒ 部分的な遮蔽があっても検出可能

• デメリット
‒ スケール変化に対応できない
• 入力画像のスケールを変化させて対応

86
学習サンプル
• 学習用画像からパッチを抽出
‒ 検出対象を含むパッチ:ポジティブサンプル
• 物体中心とのオフセットベクトル:di

‒ 背景領域のパッチ:ネガティブサンプル
• オフセットベクトルなし

学習サンプル
ポジティブ

重心
学習用画像

ネガティブ

切り出し
オフセットベクトル
87
Hough Forestsの分岐関数
• 分岐関数はパッチ内の輝度差を比較
‒ 輝度差がしきい値以下の場合は左, それ以外は右に分岐

-

 Th

分岐ノード
右に分岐

88
Ir = In Il
Ir = In Il
分岐関数の決定方法

•

(5)

|Il |
|Ir |
歩行者検出結果
∆E = E(In ) − Hough ImageV
E(Il ) −
E(Ir )
(6)
|Il ||In |
|Ir |
|In |
∆E = E(In ) −
E(I ) −
E(Ir )
評価関数の値が最小の候補を分岐関数に決定
図 l
|In | 6: 投票処理を用いた歩行者検出
|In |

(5)

(6)

N k
argminA はオフセットベクトル 0}) + U ({pi |tk (IiU2 = 1}))
ここで d (U ({pi |t (Ii ) = di の平均値であるので, ) はオフセットベクトルの分散に相
E(I) = −左の子ノードに分岐した
Pn log2N n
P
(7)
k
右の子ノードに分岐した
当する.2 つの評価関数を用いて,各ノードの分岐関数は以下の手順で選択される.まず,式
サンプル集合
n=1
E(I) = −

P log P

サンプル集合

(7)

n
2 n
(2) の分岐関数のプール {tk } を生成する.そして,式 (10) を用いて背景パッチと物体パッチの
tk : k番目の分岐関数の候補
n=1
不確実性が最小となる分岐関数を選択する.
T
pi :サンプル集合
P

•

1
S
p(C = P |S) = argminP t({pN k (Ii ) = 0) + U ({pi |tk (Ii ): = 0)) (8)
(U T i |t
パッチ画像
SP
T
St 1 St
+
t
k
p(C = P t=1 =
|S)
T
SP + SN
2つの評価関数を階層とサンプル数に応じて選択
t
t=1 t

‒

U1 (A) =

‒

(8)

(10)

ここで, は 1 か 2 のいずれかをランダムに選択することを表している.しかし,入力される
パッチ集合に含まれる背景パッチの数があまりに少ない場合,オフセットの不確実性が最小と
クラスラベルのエントロピー
なるように分岐関数を選択するため−には 2 が適用される.また, に (9) 2 を交互に選択す
1と
|A|(−c · logc − (1 − c) · log(1 c))
A : パッチ集合
ることで,末端ノードでは確実に双方の不確実性が減少していると考えられる.このように構
c : Aのポジティブクラスの確率
U1 (A) = |A|(−c · logc − (1 − c) · log(1 − c))
(9)
築した木を用いてオブジェクトの検出を行う.
識別
オフセットベクトルの分散の値

HF による物体検出では,入力画像に含まれる対象オブジェクトを投票処理により,重心を求
(di − dA )2
(10)
dA : Aのオフセットベクトルの平均
2
めることでオブジェクトを検出することができる.第 1 段階により検出された歩行者候補領域
i:ci =1
U2 (A) =
(di − dA )
(10)
から抽出したパッチを各決定木に入力する.末端ノードに到達した,画像中のある位置 y のパッ
i:ci =1
チ I(y) が画像中の異なる位置 x を中心としたオブジェクトに含まれる確率を式 (11) により算
出して,木の本数 T で平均する.
89

U2 (A) =

k

k
末端ノードの作成
• 末端ノードに保存される情報
‒ クラス確率 CL
‒ オフセットベクトル d
到達したパッチ

50

0

P

-50
-75

N

クラス確率

CL

物体中心

・
・
・
・
0

75

オフセットベクトル
90
Hough Forestsの識別
• 入力画像からパッチを抽出
‒ 各決定木に入力
‒ 決定木の出力を尤度マップに投票
‒ mean shift等を用いて物体重心を検出

尤度マップ

検出結果

91
事例ベースのRandom Forest [Dahang et al., 2012]
• アイデア
‒ テンプレートと未知入力サンプルの距離計算により左右に分岐
‒ 学習により最適なテンプレートとしきい値を選択

• メリット
‒ 高速な識別
• DOT特徴を用いた類似度計算 → SSDによる高速な距離計算
• カスケード構造のRandom Forest → 探索空間の削減

92
カスケード構造のRF による歩行者検出器
• 第1段階:Holistic RFにより歩行者候補領域を検出
‒ Random Forestsと同じ学習アルゴリズムを使用

• 第2段階:Patch-based RF による歩行者検出
‒ Hough Forestsと同じ学習アルゴリズムを使用

入力画像

第1段階

第2段階

歩行者候補領域

歩行者検出結果

93
DOT特徴量 [Hinterstoisser et al., 2010]
• DOT特徴を使用
‒ 局所領域の離散的な勾配方向毎に勾配強度をバイナリコード化
• 最上位ビットは注目画素が垂直の場合1, それ以外は0

τ

入力画像

セル

勾配方向ヒストグラム
バイナリ化

0 0 1 1 1 0 1 0
94
CL

V (x) =
d

t t=1

p(E(x)|I(y); {Tt }T )
t=1

(13)

分岐関数の設計

F (S, Ti )  τi
F (S, Ti )  τi
otherwise

CL

otherwise
テンプレートとサンプルの距離計算により左右に分岐
F (S, T )  τ

•

i

i

(14)

(14)

otherwise

‒ Holistic RFとPatch-based RFで同じ分岐関数を使用

T
SN
t

T

F (S, Ti )  τi :左に分岐
otherwise
:右に分岐

SN
t

分岐関数:

SP P
t S
t

未知サンプルの

S : 未知サンプル
Ti : テンプレート
τi : しきい値

(14)

テンプレートの

バイナリコード

未知サンプル

バイナリコード
T
P T = = 0)    1, 2, · · , n
FF (S,T ))=
(S, Ti =
δ(P ⊗ dPd 0)    d = d = ·1, 2, · · ·
S
Pd
S ∈S
Pd ∈S AND演算子
T ∈T
Pd
T
Pd ∈T

S
Pd

FP(S, T ) =
T
d

S
分岐ノード P1
T
P1
S
P2
T
P2

ss
δ(Pd d
⊗

,n

(15)
n : セルの数

S
P2 0 1 0 0 1 0 1 0
s
T
δ(Pd ⊗ Pd = 0)    d = 1, 2, · · ·
T
P2 0 1 0 1 0 1 0 1
S
Pd ∈S
テンプレート
T
Pd ∈T 0 1 0 0 0 0 0 0 ≠ 0 )
δ(
1

(15)

,n

95
歩行者検出の結果例

[Dahang et al., 2012]

人が密集するような状況においても高精度に検出
96
4. Random Forestsを用いた人体姿勢推定
- 距離測定カメラと距離画像
- Random Forestsを用いた人体姿勢推定

97
人体姿勢推定の動向
• モーションキャプチャ
‒ リアルタイムで様々な運動を行う人体の形状・サイズ全ての
取得は不可能
‒ 高速に取得は可能だが,再初期化や頑健な認識が困難
‒ 距離測定カメラは一般的に高価

• KINECT
‒ 高速,高精度,低計算コストで深度画像を取得
• 再初期化の処理が不必要

‒ 低価格
98
距離測定カメラ
• TOF方式
‒ 赤外光の反射時間

スイスmesa社

PMDTec

XBOX ONE(2013)

パナソニック

• パターン照射方式
‒ 赤外光パターンを照射し解析

Microsoft Kinect

Xtion Pro
99
TOF(Time of Flight)カメラ

Principles of ToF Imaging

• TOF(飛行時間)方式

Continuous Wave Modulation
• Continuous light waves instead of short light pulses
‒ LED光源を変調させ、CCD/CMOS イメージセンサは各画素ご
• Modulation in terms of frequency of sinusoidal waves
とに反射してきた変調信号の位相を計測
• Detected wave after reflection has shifted phase
• Phase shift proportional to distance from reflecting surface
‒ 各画素の距離は変調信号の周期の分数として定義

continuous wave

...

Phase Meter
20 MHz
Emitter

...

...

...

Detector

phase shift
3D Surface

13

100
KINECTカメラ
• パターン照射方式
‒ プロジェクションパターンの斑点間の幅を用いて三角測量によ
り3次元形状を計測

KINECT照射パターン

Picture from the Artist Audrey Penven

101
距離画像
• メリット
‒ 暗闇においても距離情報を取得可能
‒ テクスチャ情報がないため,プライバシー保護に最適

カラー画像

距離画像

102
Random Forestsによる人体姿勢推定 [Shotton et al.,2011]

• 単一の深度画像からの人体姿勢認識
‒ 高速、高精度、低計算コスト
‒ 応用先:NUI (Natural User Interface)

入力:単一の深度画像

出力:3次元間接位置(姿勢)
103
手法の流れ
1. 深度画像から人体を検出(背景差分)
2. 人体をパーツ分割
3. 関節の3次元位置を取得

104
アプローチ
1. 人体パーツの学習データ
‒ 様々な姿勢の人体深度データを人工的に生成

2. 人体パーツ識別・姿勢推定
‒ 高速に計算可能な特徴量
‒ Random Forests識別器による人体パーツ識別

105
CGによる人体データの生成
• CGにより生成する人体形状データ
‒ Autodesk MotionBuilder内の3Dメッシュデータを利用
• 15種類の素体データ

Autodesk MotionBuilder

※ パーツの学習用に色分け済み
106
人体モデルにモーションを付加
• モーションキャプチャデータ
‒ mocap(CMU): http://mocap.cs.cmu.edu/
• 特定の運動時の各関節の角度データ
• 100,000データ

107
学習データの自動生成
• 学習データの生成の流れ
‒ Autodesk MotionBuilderより素体を選択
‒ 素体の各関節にモーションキャプチャのデータを設定し,
3Dメッシュを変形
• 色々なパラメータをランダムに設定
‒ 身長・幅・形状・カメラ姿勢・カメラノイズ・衣服・髪など

‒ 3Dメッシュをレンダリングし,深度バッファを取得
人体データ

Autodesk MotionBuilder

モーションデータ

学習データ

108
深度の差に基づく特徴量
• 注目点周辺の2点間の深度の差

:注目ピクセル

:差分を求める選択した2点

θ1 :距離差が大きい(背景と体)

θ1 : 距離差が小さい(頭と体)

θ2 :距離差が大きい(背景と腕)

θ2 : 距離差が小さい(腕や足等の細い部位)
109
Random Forests による識別器の学習
• 生成した人体パーツ画像データを学習
‒ 学習の入力:1画素毎単位の特徴量 + 正解人体パーツラベル

学習サンプル

深度画像

1

パーツのラベル

各ノードでθとτを決定

110
各画素毎の人体パーツ推定結果

Figure 9. Example results from the Ganapathi et al. test set. This
111
関節の3次元位置推定
• 各パーツごとに関節の3次元位置を推定
‒ 密度推定を行い,最頻値を推定
• ミーンシフトベースの手法を利用

カーネル密度推定(パーツクラスcに対する)

:3次元空間中の位置(画像上の位置 に対応)

112
人体姿勢推定

Xbox 360 GPU上で5ms/frame以下 (200FPS) で動作
113
5. Regression Forests - 回帰分析への応用 -

114
•
•

Regression Forests
学習アルゴリズム

-

•

予測の統合

最小二乗法との比較

-

•

分岐ノードの決定

回帰

-

•

回帰木の作成

UCI Machine Learning Repository を用いた比較

CV分野への応用

115
Random ForestsとRegression Forests
• Random Forests : クラス分類問題
‒ 決定木:クラス確率を保持
‒ 入力 : 連続変数
‒ 出力 : カテゴリごとの確率

• Regression Forests : 回帰問題
‒ 回帰木:回帰係数を保持
‒ 入力 : 連続変数
‒ 出力 : 連続変数
Random Forests

Regression Forests

116
回帰分析
• 入力変数から出力変数の値を予測
• 線形,非線形などの回帰モデル
‒ 回帰係数を最小二乗法などで求める問題
線形モデル

y = a + bx
ˆ
y

?

y = a + bx + cu
ˆ
出y

回帰直線

力

回帰平面
?

出
力
x

x
入力

u

入力

学習サンプル
未知入力サンプル

117
Regression Forestsとは
• 目的
‒ 高精度な回帰分析
‒ 線形,非線形な回帰

• メリット
‒ 予測モデルにより様々な回帰分析が可能

• デメリット
‒ 最小二乗法による線形回帰より学習に時間が必要

118
学習アルゴリズム
• 前処理
‒ サンプル集合をサブセットに分割

• 回帰木の作成
‒ 分岐ノードの学習
‒ 末端ノードの作成
‒ 予測モデル

119
前処理
• Random Forestsと同様にサブセットを作成
‒ ランダムサンプリングによって任意の数のサンプルを抽出
‒ サブセット間の重複は許容
サンプル集合 S

サブセット S1

サブセット S2

サブセット ST

120
回帰木の作成
• サブセットを用いて回帰木を作成
‒ 分岐ノード
• サンプルの特徴量としきい値の比較しサンプルを左右に分岐

‒ 末端ノード
• 辿り着いた学習サンプルを回帰分析した結果を保存

分岐ノード
末端ノード

121
分岐ノードの決定過程
• ランダムに特徴次元としきい値を選択
y
1 2 3

Sj

j

出

y
¯

R
Sj

L
Sj

力

jR

jL

x

入力

• 目的関数を最大にする特徴次元としきい値を選択
子ノードの和
目的関数

Ij =

(y

yj )2
¯

(x,y) Sj

現在のノード j における分散

(y
i=L,R

yj )2
¯

i
(x,y) Sj

子ノード

j L , j Rの分散

122
分岐ノード決定過程1
• 候補1の目的関数の評価値を算出
‒ 分割したサンプル集合を用いて y についての分散を算出

y

1

2

3

y

1

出
力

候補1により
サンプルを分割

入力

x

x
L

R
2
L

= 6.0

2
R

= 12.0

123
分岐ノード決定過程2
• 候補2の目的関数の評価値を算出
‒ 分割したサンプル集合を用いて y についての分散を算出

y

1

2

3

2

y

出
力

候補2により
サンプルを分割

入力

x

x
L

R

2
L

= 11.3

2
R

= 12.0

124
分岐ノード決定過程3
• 候補3の目的関数の評価値を算出
‒ 分割したサンプル集合を用いて y についての分散を算出

y

1

2

3

3

y

出
力

候補3により
サンプルを分割

入力

x

x
L
2
L

= 20.1

2
R

= 0.6

R

125
分岐ノード決定過程4
• 目的関数が最大となる分岐関数に決定

y

1

2

3

I1 = 35.8
I2 = 35.8

(11.3 + 0.8) = 23.7

I3 = 35.8

出

(6.0 + 12.0) = 17.8

(20.1 + 0.6) = 15.1

力

入力

x

→末端ノードを作成する条件を満たすまで分岐を繰り返す
126
末端ノードの作成
• 一定の条件に達した場合に末端ノードを作成
‒ 深さ,到達したサンプル数....etc.

• 到達したサンプルを用いて回帰分析
‒ 回帰係数を保存

y
保存

出
力

入力

x
127
回帰
• 未知入力サンプルを各回帰木に入力
‒ 辿り着いた末端ノードの回帰係数を用いて予測値を出力

・・・

y1
ˆ

y2
ˆ
yˆ
T

1
ˆ
→各回帰木の出力を合成 y = T

T

yt
ˆ
t=1

128
回帰木の統合(tree1)
• 平均モデルを用いたRegression Forestsによる回帰
300

train sample
tree1

Y

250

200

150

100
0

50

100

150

200
X

250

300

350

400

129
回帰木の統合(tree2)
• 平均モデルを用いたRegression Forestsによる回帰
300

train sample
tree2

Y

250

200

150

100
0

50

100

150

200
X

250

300

350

400

130
回帰木の統合(tree3)
• 平均モデルを用いたRegression Forestsによる回帰
300

train sample

tree3

Y

250

200

150

100
0

50

100

150

200
X

250

300

350

400

131
回帰木の統合(tree4)
• 平均モデルを用いたRegression Forestsによる回帰
300

train sample

tree4

Y

250

200

150

100
0

50

100

150

200
X

250

300

350

400

132
回帰木の統合(tree5)
• 平均モデルを用いたRegression Forestsによる回帰
300

train sample

tree5

Y

250

200

150

100
0

50

100

150

200
X

250

300

350

400

133
回帰木の統合(Regression Forests)
• 平均モデルを用いたRegression Forestsによる回帰
300

train sample
output
tree1
tree2
tree3
tree4
tree5

Y

250

200

150

100
0

50

100

150

200
X

250

300

350

400

134
回帰モデル
• 末端ノードの回帰モデルは自由に設計
‒ 平均
• サンプル集合の目的変数の平均値を予測とする

‒ 線形回帰
• 最小二乗法などを用いて線形回帰

‒ 確率的線形回帰
y

• 線形回帰+分散による信頼性の算出
y

x
平均
計算コスト
回帰精度

小
低

y

x
線形

x
確率的線形
大
高

135
回帰モデル:平均モデル
• 木の数:5,木の深さ:10
400

train sample
output

350

300

Y

250

200

150

100

50

0
0

50

100

150

200
X

250

300

350

400

136
回帰モデル:線形モデル
• 木の数:5,木の深さ:2
400

train sample
output

350

300

Y

250

200

150

100

50

0
0

50

100

150

200

250

300

350

400

X

137
回帰モデル:確率的線形モデル
• 木の数:10,木の深さ:2
400

train sample
output
kukan +
kukan -

350

300

Y

250

200

150

100

50

0
0

50

100

150

200
X

250

300

350

400

→サンプルの分散に基づき回帰の信頼性を表現

138
実データを用いた最小二乗法との比較
• 最小二乗法とRegression Forestsの比較
• UCI Machine Learning Repositoryのデータセット
‒ 機械学習のベンチマークデータセット
‒ URL : http://archive.ics.uci.edu/ml/
‒ 回帰,クラス分類問題などを扱う
‒ Dataset : Concrete Compressive Strength Data Set
• 目的変数:コンクリートの強度(1次元)
• 従属変数:8次元の実数
• サンプル数:1030

139
Regression Forestsと最小二乗法の比較
• 木の学習パラメータ
‒ 木の数 : 5, 10
‒ 木の本数 : 5. 10
‒ サブセットのサイズ : 1.0

• 残差の2乗和を比較

→残差を大幅に減少

140
人体の向き推定
• 10度毎に学習し5度毎に評価
• 平均モデル
‒ 5クラスに分けてRandom Forestを学習
‒ 末端ノードはラベルの平均値を保存

• 線形モデル
‒ Regression Forestにより学習
‒ 末端ノードは最小二乗法による回帰予測を保存

-90°

-45°

0°

45°

90°

141
平均モデルと線形モデルの推定結果例
• 人体姿勢推定
‒ 10度刻みの角度で学習
16.00
14.00

平均誤差 [deg]

12.00
10.00
8.00
6.00
4.00
2.00
0.00
-100

-80

-60

-40

-20

0

20

40

60

80

100

人体の向き [deg]

142
CV分野への応用1
• 距離画像からの人体姿勢推定 [Girshick R. et al., 2011]
‒ Regression Forestにより,直接関節の三次元位置を回帰して推定
‒ 入力:距離画像の2点間の距離差( [Shotton et al., 2011]と同じ)
‒ 出力:人体の関節3次元位置

143
CV分野への応用2

• Conditional Regression Forestsによる
顔向き推定と顔特徴点の推定 [Dantone, M. et al., 2012]
etection using Conditional Regression Forests
‒ 入力:パッチ(Haar-like特徴:領域間の輝度差)
1,3

Gall1,2
Gabriele Fanelli1
for Intelligent Systems, Germany

ch

3

Luc Van Gool
KU Leuven, Belgium

‒ 出力:顔向き,器官位置
vangool@esat.kuleuven.be

jgall@tue.mpg.de

mages is a
ethods that
es. Here we
ask. While
acial image
m the entire
he relations
xperiments,
emonstrate
regression
aluated the
e Wild [20]
ieved while

like human
ature point

Figure 1. Our approach estimates facial feature points from 2D
images in real-time.

spatial relations between image patches and facial features

144
複数パスを考慮したRegression Forestsによる
カメラのヨー角の推定
• Regression Forests:回帰木を構築して回帰分析を解くアプローチ
  トラバーサル時にノイズの特徴次元を参照すると分岐が反転
‒ ノイズにより推定精度の低下

従来法

ノイズによる分岐の反転で
推定精度が低下

提案手法

複数のパスによりノイズの影響を低減

145
複数パスを考慮したRegression Forestsによる
カメラのヨー角の推定
平均誤差

誤差の分散

RegF

0.031

0.0007

提案手法

0.027

0.0004

ノイズが40%の状態では
8%の精度向上
ヨー角の推定結果

ノイズに対して頑健な回帰推定を実現

推定したヨー角からの距離算出結果

146
6. Random Forestsの他の問題設定への適用

- Density Forests - 密度推定 - Semi-supervised Forests - 半教師付き学習 -

147
Density Forestsとは
• 目的
‒ Forestモデルを用いたサンプル集合の密度推定

• メリット
‒ 複雑な問題に対し柔軟な密度推定が可能

148
Random ForestsとDensity Forests
• Random Forests : クラス分類問題
‒ 決定木:クラス確率を保持
‒ 入力 : 連続変数
‒ 出力 : カテゴリごとの確率

• Density Forests : 密度推定問題
‒ 密度木:密度分布を保持
‒ 入力 : 連続変数
‒ 出力 : 推定密度
Random Forests

Density Forests

149
密度木の作成
• サンプル集合を用いて密度木を作成
‒ 分岐ノード
• サンプルの特徴量としきい値の比較しサンプルを左右に分岐

‒ 末端ノード
• 辿り着いた学習サンプル集合の密度分布を保存

分岐ノード
末端ノード

150
分岐ノードの学習
• ランダムに特徴次元としきい値の候補を選択
Sj
1
x2
j

2

€

L
Sj

R
Sj

jL

jR

x1

• 候補の中から目的関数を最大にするものを選択
‒ ラベルがないため正規分布のエントロピーを利用

€
目的関数

Ij = log(| (Sj )|)
i {L,R}

親のノード j の正規分布のエントロピー 子ノード

i
|Sj |
i
log(| (Sj )|)
|Sj |

j L , j R の正規分布のエントロピー
151
分岐ノード決定過程1
• 候補1の目的関数の評価値を算出

x2

1

x2

Sj

L
Sj

1

R
Sj

2

€

€

候補1により
サンプルを分割

x1

x1
L

€

R

I1 = 5.67 − (1.25 +1.30) = 3.12
€

152
分岐ノード決定過程2
• 候補2の目的関数の評価値を算出

x2

1

x2

Sj
R

R
Sj

2

2

€

€

候補2により
サンプルを分割

L
Sj

L

x1

€

x1

I2 = 5.67 − (2.35 + 2.13) = 1.19
€

153
分岐ノード決定過程3
• 目的関数が最大となる分岐関数に決定
→ 候補1の方が情報利得が大きくなる

x2

1

Sj
2

€

I1 = 5.67 − (1.25 +1.30) = 3.12
I2 = 5.67 − (2.35 + 2.13) = 1.19

x1

€
→末端ノードを作成する条件を満たすまで分岐を繰り返す
€€
154
末端ノードの作成
• 終了条件(深さ,到達したサンプル数....etc. )
• 到達したサンプル集合を用いて密度分布を算出
‒ すべての末端ノードの密度分布情報を保存

µ, Λ保存

µ, Λ保存

µ, Λ保存

µ, Λ保存

:サンプル
:密度分布
155
分配関数
• 各ノードに到達した学習サンプルはひとつの
多変量正規分布        にまとめられる
‒ 正規分布の重なりを考慮し分配関数 を用いて正規化
: 入力サンプル
: 各末端ノードに到達したサンプルの割合
: 各末端ノードに到達した各次元の平均値
: 各末端ノードの共分散行列

‒ 高次元な の計算は困難であるため近似を行う

: 積分の間隔

間隔を狭くする事で近似はより正確になる
一本の木から得られる密度分布
156
アンサンブルモデル
• サンプル集合を密度木に入力
‒ 辿り着いた末端ノードの密度分布を用いて推定密度を出力
サンプルの割合

各木の出力:
分配関数

tree 1

末端ノードの正規分布

tree 2

tree T

・・・

Average

p1 (v)

+

p2 (v)

+ +

1
→各密度木の出力を合成 p(v) =
T

pT (v)

/T

T

pt (v)
t

157
入力データ

Density Forests による密度推定結果

Density Forests

高

低

158
アンサンブルモデルの効果
• 個々の木の出力では特徴をとらえきれてないが
木の出力を合成することで滑らかな密度推定が可能

高

+

/T =

+ +

低

tree 1
€

tree 2
€
各treeの出力

tree T

€

forestsの出力

159
6. Random Forestsの他の問題設定への適用

- Density Forests - 密度推定 - Semi-supervised Forests - 半教師付き学習 -

160
Semi-supervised とは
• supervised:教師あり学習
‒ すべてのサンプルにラベルがある

• unsupervised:教師なし学習
‒ すべてのサンプルにラベルが無い

• semi-supervised:半教師あり学習
‒ ラベル付きの小規模なサンプル集合と
ラベル無しの大規模なサンプル集合が混合
‒ 代表的な手法
• トランスダクティブサポートベクターマシン(TSVM)

161
Semi-supervised learning
• 識別性能を向上するためラベル付けされていない
サンプルを有効に活用
‒ トランスダクティブ学習を行う

部分的にラベル付けされたサンプル

ラベルの伝播

識別境界

vl
vu
€
€
:ラベル付きサンプル
:ラベル無しサンプル
162
Semi-supervised Forests
• 教師あり学習と密度推定の両方の考え方を利用
‒ ラベル付きサンプルの情報利得とラベル付き,ラベル無し
サンプル集合の正規分布のエントロピーにより分割
‒ ラベルなしサンプルにラベルを伝播
• クラス確率を定義

クラス確率

Random Forests

密度

+
Density Forests

163
分岐ノードの選択
• 目的関数を最大とする組み合わせ情報利得により
学習サンプルの分類と高密度領域を分割
目的関数:

教師なし:

:ユーザーで定義される変数間の相対的な重み

ラベル付き,ラベル無し
両方のデータを用いる

密度推定と同様に正規分布のエントロピーにより算出

教師あり:

ラベル付きデータのみを
用いる

従来の分類木のようにクラス確率のエントロピーにより算出
164
分岐ノードの選択
• 目的関数を最大とする組み合わせ情報利得により
学習サンプルの分類と高密度領域を分割
目的関数:

:ユーザーで定義される変数間の相対的な重み

→ラベル付きサンプルのクラス確率のエントロピーが小さく
 全てのサンプルの正規分布のエントロピーが小さいものが選択される
165
Semi-supervised Forestsの構築
• 末端ノードに各次元の平均値と共分散行列を保存
Tree T

Tree 1

...

学習サンプル

µ, Λ保存
µ, Λ保存

166
ラベルの伝播
• ラベル無しサンプルとの測地線距離が
最小となるラベル付きサンプルのラベルを伝播
:クラス
:測地線距離

測地線距離

:測地線パス
:測地線パスの長さ
:すべての測地線パス
:初期点,終了点

局所距離(マハラノビス距離)

:各ポイントの距離
:  によって末端ノードの共分散行列

167
帰納
• サンプルにラベルを伝播した結果を用いて
末端ノードにクラス確率    を定義
‒ 帰納的にforestの構築を行うため新しい分類器の学習は不要
Tree T

Tree 1

...

168
Semi-supervised ForestsとSVM,TSVMの比較
入力データ

SVM

TSVM

Semi-Supervised Forest

[Criminisi et al., 2011]
169
Semi-supervised Forests による分類結果

入力データ

深さD=6

深さD=10

ラベル付き
データ数
4個
(各クラス1個)

ラベル付き
データ数
8個
(各クラス2個)

[Criminisi et al., 2011]
170
チュートリアル資料:Random Forests[Criminisi et al., 2011]
• Classification, Regression, Density Estimation,
Manifold Learning and Semi-Supervised Learning

チュートリアル: http://research.microsoft.com/en-us/groups/vision/decisionforests.aspx
171
参考文献1
1. Random Forests
-

[Breiman, 2001] L. Breiman, Random Forests., Machine Learning 45 (1): 5‒32,
2001.

-

[Lepetit et al., 2006] V. Lepetit and P. Fua, Keypoint Recognition using
Randomized Trees , IEEE Transactions on Pattern Analysis and Machine
Intelligence, Vol. 28, Nr. 9, pp. 1465-1479, 2006.

-

[Shotton et al., 2008] J. Shotton, M. Johnson, R. Cipolla, Semantic Texton
Forests for Image Categorization and Segmentation. , In Proc. IEEE CVPR 2008.

-

[Amit  Geman, 1997] Y. Amit and D. Geman Y, Shape Quantization and
Recognition with Randomized Trees , Neural Computation, vol. 9, pp.
1545-1588, 1996

-

[Moosmann et al., 2006] F. Moosmann, B. Triggs, and F. Jurie, Fast
Discriminative Visual Codebooks using Randomized Clustering Forests. , In
NIPS, 2006.

-

[山下 et al., 2010] 山下隆義, 山内悠嗣, 藤吉弘亘, Boosted Randomized Trees によ
る人物検出と行動の同時認識, 第13回画像の認識・理解シンポジウム(MIRU2010),
2010.

-

[Geurts et al., 2006] P. Gurts, D. Ernst, and L. Wehenkel, Extremely Randomized
Trees , Machine Learning, vol. 63, issue 1, pp. 3-42, 2006.
172
参考文献1
2. 学習を用いたキーポイントマッチングの高速化
-

[西村 et al., 2010] 西村孝, 清水彰一, 藤吉弘亘, 2段階のRandomized Treesを用いた
キーポイントの分類, 第13回画像の認識・理解シンポジウム(MIRU2010), 2010.

-

[Özuysal et al.,2010] M. Özuysal, M. Calonder, V. Lepetit, P. Fua, Fast Keypoint
Recognition using Random Ferns IEEE Transactions on Pattern Analysis and
Machine Intelligence, Vol. 32, Nr. 3, pp. 448 - 461, 2010.

3. Random Forestsを用いた物体検出
-

[Gall et al., 2011] J.Gall, A.Yao, N.Razavi, L.Van Gool, and V. Lempitsky, Hough
forests for object detection, tracking and action recognition , IEEE Transactions
on Pattern Analysis and Machine Itelligence, vol. 33, no. 11, pp. 2188-2202,
2011.

-

[Dahang et al., 2012] Tang Danhang, Yang Liu, and Tae-Kyun Kim. Fast
Pedestrian Detection by Cascaded Random Forest with Dominant Orientation
Templates , BMVC, pp. 58.1-58.11, 2012

-

[Hinterstoisser et al., 2010] S.Hinterstoisser, V. Lepetit, S. llic, P. Fua, and N.
Navab, Dominant Orientation Templates for Real-Time Detection of TextureLess Objects , IEEE Computer Society Conference on Computer Vision and
Pattern Recognition, 2010.
173
参考文献3
4. Random Forestsを用いた人体姿勢推定
-

[Shotton et al., 2011] Jamie Shotton, Andrew Fitzgibbon, Mat Cook, Toby
Sharp, Mark Finocchio, Richard Moore, Alex Kipman, Andrew Blake, Real-Time
Human Pose Recognition in Parts from Single Depth Images ,Computer Vision
and Pattern Recognition,vol.2,pp.1297-1304,2011.

-

[Criminisi et al., 2011] A. Criminisi, J. Shotton, and E. Konukoglu, Decision
Forests for Classification, Regression, Density Estimation, Manifold Learning
and Semi-Supervised Learning, no. MSR-TR-2011-114, 28 October 2011.

5. Regression Forests
-

[Girshick R. et al., 2011] Girshick R., Shotton J., Kohli P., Criminisi A., and
Fitzgibbon A., Efficient regression of general-activity human poses from depth
images , Computer Vision (ICCV), 2011 IEEE International Conference on, 415
-422, 2011.

-

[Dantone, M. et al., 2012] Dantone M., Gall J., Fanelli G., and Van Gool L., Realtime facial feature detection using conditional regression forests , Computer
Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on, 2578 -2585,
2012.
174
プログラム解説
• プログラム構成
‒ main_training.cpp (学習のメイン関数)
‒ main_evaluate.cpp (識別のメイン関数)
‒ rts_forest.cpp (RFの生成・走査に関する処理関数)
‒ rts_tree.cpp (決定木の生成・走査に関する処理関数)
‒ rts_forest.hpp (決定木のパラメータに関するヘッダ)
‒ rts_tree.hpp (決定木の生成・走査に関するヘッダ)
‒ rts_feature.hpp (特徴量を格納するクラスが書かれたヘッダ)
‒ rts_node.hpp (各ノードの情報を格納するクラス)
‒ rts_sample.hpp (各サンプルの特徴ベクトルとラベルを格納
するクラス)
175
データ構造
• サンプル
‒ 特徴ベクトル
• Feature feature_vec(vector型float配列);

‒ 教師信号
• int label;

• ノード
‒ int feature_id;
‒ float threshold;

// feature ID
// threshold

‒ float *distribution; // distribution histogram
‒ Node *lChild;

// left Child node

‒ Node *rChild;

// right Child node
176
プログラム解説
サブセット
決定木のパラメータ

学習
main_training
・サンプル入力
・Forest の学習
サンプル集合
決定木のパラメータ

rts_forest
・サブセットの生成
・決定木の生成

rts_tree

・分岐関数の選択
サンプル集合

・末端ノードの生成
・決定木の情報の保存

・末端ノードの生成
- 教師信号の投票
- 出現確率の正規化

・ノードの書き出し
サンプル集合

識別
main_evaluate

特徴ベクトル

rts_forest

サンプル

・Forest の読込み

・決定木による識別

・サンプルの読込み

・決定木の出力を統合

・識別

rts_tree
・決定木の走査
末端ノードの
クラス確率

Forest 全体の
クラス確率

177
rts_forest.cpp
Learn
- サンプルから Forest を生成する関数
- 引数 : 決定木のパラメータとサンプル集合
- tree の BuildTree, BuildHistgram を呼び出し

EstimateClass
- 未知入力サンプルの識別を行う関数
- 引数 : 識別サンプル ( 特徴ベクトル )
- tree の Traversal を呼び出し

Save

Load

- Forest を保存する関数

- Forest を読み込む関数

- 引数 : ファイル名

- 引数 : ファイル名

- tree の Save を呼び出し

- tree の Load を呼び出し
178

Weitere ähnliche Inhalte

Was ist angesagt?

データサイエンス概論第一=8 パターン認識と深層学習
データサイエンス概論第一=8 パターン認識と深層学習データサイエンス概論第一=8 パターン認識と深層学習
データサイエンス概論第一=8 パターン認識と深層学習Seiichi Uchida
 
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知画像処理AIを用いた異常検知
画像処理AIを用いた異常検知Hideo Terada
 
SMO徹底入門 - SVMをちゃんと実装する
SMO徹底入門 - SVMをちゃんと実装するSMO徹底入門 - SVMをちゃんと実装する
SMO徹底入門 - SVMをちゃんと実装するsleepy_yoshi
 
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement LearningPreferred Networks
 
劣モジュラ最適化と機械学習1章
劣モジュラ最適化と機械学習1章劣モジュラ最適化と機械学習1章
劣モジュラ最適化と機械学習1章Hakky St
 
機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)Satoshi Hara
 
確率モデルを用いた3D点群レジストレーション
確率モデルを用いた3D点群レジストレーション確率モデルを用いた3D点群レジストレーション
確率モデルを用いた3D点群レジストレーションKenta Tanaka
 
アンサンブル木モデル解釈のためのモデル簡略化法
アンサンブル木モデル解釈のためのモデル簡略化法アンサンブル木モデル解釈のためのモデル簡略化法
アンサンブル木モデル解釈のためのモデル簡略化法Satoshi Hara
 
因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説Shiga University, RIKEN
 
トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?hoxo_m
 
SHAP値の考え方を理解する(木構造編)
SHAP値の考え方を理解する(木構造編)SHAP値の考え方を理解する(木構造編)
SHAP値の考え方を理解する(木構造編)Kazuyuki Wakasugi
 
ブースティング入門
ブースティング入門ブースティング入門
ブースティング入門Retrieva inc.
 
10分でわかる主成分分析(PCA)
10分でわかる主成分分析(PCA)10分でわかる主成分分析(PCA)
10分でわかる主成分分析(PCA)Takanori Ogata
 
[DL輪読会]近年のエネルギーベースモデルの進展
[DL輪読会]近年のエネルギーベースモデルの進展[DL輪読会]近年のエネルギーベースモデルの進展
[DL輪読会]近年のエネルギーベースモデルの進展Deep Learning JP
 
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...西岡 賢一郎
 
[DL輪読会]Neural Ordinary Differential Equations
[DL輪読会]Neural Ordinary Differential Equations[DL輪読会]Neural Ordinary Differential Equations
[DL輪読会]Neural Ordinary Differential EquationsDeep Learning JP
 
グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知Yuya Takashina
 
はじめてのパターン認識8章サポートベクトルマシン
はじめてのパターン認識8章サポートベクトルマシンはじめてのパターン認識8章サポートベクトルマシン
はじめてのパターン認識8章サポートベクトルマシンNobuyukiTakayasu
 

Was ist angesagt? (20)

データサイエンス概論第一=8 パターン認識と深層学習
データサイエンス概論第一=8 パターン認識と深層学習データサイエンス概論第一=8 パターン認識と深層学習
データサイエンス概論第一=8 パターン認識と深層学習
 
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知画像処理AIを用いた異常検知
画像処理AIを用いた異常検知
 
SMO徹底入門 - SVMをちゃんと実装する
SMO徹底入門 - SVMをちゃんと実装するSMO徹底入門 - SVMをちゃんと実装する
SMO徹底入門 - SVMをちゃんと実装する
 
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
 
劣モジュラ最適化と機械学習1章
劣モジュラ最適化と機械学習1章劣モジュラ最適化と機械学習1章
劣モジュラ最適化と機械学習1章
 
機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)
 
Stanでガウス過程
Stanでガウス過程Stanでガウス過程
Stanでガウス過程
 
確率モデルを用いた3D点群レジストレーション
確率モデルを用いた3D点群レジストレーション確率モデルを用いた3D点群レジストレーション
確率モデルを用いた3D点群レジストレーション
 
アンサンブル木モデル解釈のためのモデル簡略化法
アンサンブル木モデル解釈のためのモデル簡略化法アンサンブル木モデル解釈のためのモデル簡略化法
アンサンブル木モデル解釈のためのモデル簡略化法
 
因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説
 
トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?
 
SHAP値の考え方を理解する(木構造編)
SHAP値の考え方を理解する(木構造編)SHAP値の考え方を理解する(木構造編)
SHAP値の考え方を理解する(木構造編)
 
ブースティング入門
ブースティング入門ブースティング入門
ブースティング入門
 
10分でわかる主成分分析(PCA)
10分でわかる主成分分析(PCA)10分でわかる主成分分析(PCA)
10分でわかる主成分分析(PCA)
 
[DL輪読会]近年のエネルギーベースモデルの進展
[DL輪読会]近年のエネルギーベースモデルの進展[DL輪読会]近年のエネルギーベースモデルの進展
[DL輪読会]近年のエネルギーベースモデルの進展
 
Random Forestsとその応用
Random Forestsとその応用Random Forestsとその応用
Random Forestsとその応用
 
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
 
[DL輪読会]Neural Ordinary Differential Equations
[DL輪読会]Neural Ordinary Differential Equations[DL輪読会]Neural Ordinary Differential Equations
[DL輪読会]Neural Ordinary Differential Equations
 
グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知
 
はじめてのパターン認識8章サポートベクトルマシン
はじめてのパターン認識8章サポートベクトルマシンはじめてのパターン認識8章サポートベクトルマシン
はじめてのパターン認識8章サポートベクトルマシン
 

Andere mochten auch

「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京Koichi Hamada
 
Problem Based Learning with LEGO Mindstorms
Problem Based Learning with LEGO MindstormsProblem Based Learning with LEGO Mindstorms
Problem Based Learning with LEGO MindstormsHironobu Fujiyoshi
 
VIEW2013 Binarycode-based Object Recognition
VIEW2013 Binarycode-based Object RecognitionVIEW2013 Binarycode-based Object Recognition
VIEW2013 Binarycode-based Object RecognitionHironobu Fujiyoshi
 
次世代セキュリティを牽引する画像解析技術の最新動向 - 距離情報を用いた物体認識技術 -
次世代セキュリティを牽引する画像解析技術の最新動向 - 距離情報を用いた物体認識技術 -次世代セキュリティを牽引する画像解析技術の最新動向 - 距離情報を用いた物体認識技術 -
次世代セキュリティを牽引する画像解析技術の最新動向 - 距離情報を用いた物体認識技術 -Hironobu Fujiyoshi
 
-SSIIの技術マップ- 過去•現在, そして未来 [領域]認識
-SSIIの技術マップ- 過去•現在, そして未来 [領域]認識-SSIIの技術マップ- 過去•現在, そして未来 [領域]認識
-SSIIの技術マップ- 過去•現在, そして未来 [領域]認識Hironobu Fujiyoshi
 
ROSを核としたロボティクス教育(中部大学ロボット理工学科の紹介)
ROSを核としたロボティクス教育(中部大学ロボット理工学科の紹介)ROSを核としたロボティクス教育(中部大学ロボット理工学科の紹介)
ROSを核としたロボティクス教育(中部大学ロボット理工学科の紹介)Hironobu Fujiyoshi
 
Tutorial for robot programming with LEGO mindstorms EV3
Tutorial for robot programming with LEGO mindstorms EV3 Tutorial for robot programming with LEGO mindstorms EV3
Tutorial for robot programming with LEGO mindstorms EV3 Hironobu Fujiyoshi
 
Feature Selection with R / in JP
Feature Selection with R / in JPFeature Selection with R / in JP
Feature Selection with R / in JPSercan Ahi
 
Inside-Outカメラからの3次元Scan Pathとシーン構造の復元
Inside-Outカメラからの3次元Scan Pathとシーン構造の復元Inside-Outカメラからの3次元Scan Pathとシーン構造の復元
Inside-Outカメラからの3次元Scan Pathとシーン構造の復元Hironobu Fujiyoshi
 
チュートリアルのススメ -チュートリアルのためのチュートリアル-
チュートリアルのススメ -チュートリアルのためのチュートリアル-チュートリアルのススメ -チュートリアルのためのチュートリアル-
チュートリアルのススメ -チュートリアルのためのチュートリアル-Hironobu Fujiyoshi
 
統計的学習手法による物体検出の高精度化と効率化 -人検出の実用化に向けて-
統計的学習手法による物体検出の高精度化と効率化 -人検出の実用化に向けて-統計的学習手法による物体検出の高精度化と効率化 -人検出の実用化に向けて-
統計的学習手法による物体検出の高精度化と効率化 -人検出の実用化に向けて-Hironobu Fujiyoshi
 
藤吉研究室10周年記念「これまで10年,ここから10年」
藤吉研究室10周年記念「これまで10年,ここから10年」藤吉研究室10周年記念「これまで10年,ここから10年」
藤吉研究室10周年記念「これまで10年,ここから10年」Hironobu Fujiyoshi
 
統計的学習手法よる人検出
統計的学習手法よる人検出統計的学習手法よる人検出
統計的学習手法よる人検出Hironobu Fujiyoshi
 
ランダムフォレスト
ランダムフォレストランダムフォレスト
ランダムフォレストKinki University
 
Random Forest による分類
Random Forest による分類Random Forest による分類
Random Forest による分類Ken'ichi Matsui
 
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレストTeppei Baba
 
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチMIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチHironobu Fujiyoshi
 
複数パスを考慮したRegression Forestsによるカメラのヨー角の推定
複数パスを考慮したRegression Forestsによるカメラのヨー角の推定複数パスを考慮したRegression Forestsによるカメラのヨー角の推定
複数パスを考慮したRegression Forestsによるカメラのヨー角の推定MPRG_Chubu_University
 
CVPR2011 Festival PDF
CVPR2011 Festival PDFCVPR2011 Festival PDF
CVPR2011 Festival PDFMasafumi Noda
 

Andere mochten auch (20)

「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
 
Problem Based Learning with LEGO Mindstorms
Problem Based Learning with LEGO MindstormsProblem Based Learning with LEGO Mindstorms
Problem Based Learning with LEGO Mindstorms
 
VIEW2013 Binarycode-based Object Recognition
VIEW2013 Binarycode-based Object RecognitionVIEW2013 Binarycode-based Object Recognition
VIEW2013 Binarycode-based Object Recognition
 
次世代セキュリティを牽引する画像解析技術の最新動向 - 距離情報を用いた物体認識技術 -
次世代セキュリティを牽引する画像解析技術の最新動向 - 距離情報を用いた物体認識技術 -次世代セキュリティを牽引する画像解析技術の最新動向 - 距離情報を用いた物体認識技術 -
次世代セキュリティを牽引する画像解析技術の最新動向 - 距離情報を用いた物体認識技術 -
 
-SSIIの技術マップ- 過去•現在, そして未来 [領域]認識
-SSIIの技術マップ- 過去•現在, そして未来 [領域]認識-SSIIの技術マップ- 過去•現在, そして未来 [領域]認識
-SSIIの技術マップ- 過去•現在, そして未来 [領域]認識
 
ROSを核としたロボティクス教育(中部大学ロボット理工学科の紹介)
ROSを核としたロボティクス教育(中部大学ロボット理工学科の紹介)ROSを核としたロボティクス教育(中部大学ロボット理工学科の紹介)
ROSを核としたロボティクス教育(中部大学ロボット理工学科の紹介)
 
Tutorial for robot programming with LEGO mindstorms EV3
Tutorial for robot programming with LEGO mindstorms EV3 Tutorial for robot programming with LEGO mindstorms EV3
Tutorial for robot programming with LEGO mindstorms EV3
 
Feature Selection with R / in JP
Feature Selection with R / in JPFeature Selection with R / in JP
Feature Selection with R / in JP
 
Inside-Outカメラからの3次元Scan Pathとシーン構造の復元
Inside-Outカメラからの3次元Scan Pathとシーン構造の復元Inside-Outカメラからの3次元Scan Pathとシーン構造の復元
Inside-Outカメラからの3次元Scan Pathとシーン構造の復元
 
チュートリアルのススメ -チュートリアルのためのチュートリアル-
チュートリアルのススメ -チュートリアルのためのチュートリアル-チュートリアルのススメ -チュートリアルのためのチュートリアル-
チュートリアルのススメ -チュートリアルのためのチュートリアル-
 
統計的学習手法による物体検出の高精度化と効率化 -人検出の実用化に向けて-
統計的学習手法による物体検出の高精度化と効率化 -人検出の実用化に向けて-統計的学習手法による物体検出の高精度化と効率化 -人検出の実用化に向けて-
統計的学習手法による物体検出の高精度化と効率化 -人検出の実用化に向けて-
 
藤吉研究室10周年記念「これまで10年,ここから10年」
藤吉研究室10周年記念「これまで10年,ここから10年」藤吉研究室10周年記念「これまで10年,ここから10年」
藤吉研究室10周年記念「これまで10年,ここから10年」
 
統計的学習手法よる人検出
統計的学習手法よる人検出統計的学習手法よる人検出
統計的学習手法よる人検出
 
ランダムフォレスト
ランダムフォレストランダムフォレスト
ランダムフォレスト
 
Random Forest による分類
Random Forest による分類Random Forest による分類
Random Forest による分類
 
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト
 
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチMIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
 
複数パスを考慮したRegression Forestsによるカメラのヨー角の推定
複数パスを考慮したRegression Forestsによるカメラのヨー角の推定複数パスを考慮したRegression Forestsによるカメラのヨー角の推定
複数パスを考慮したRegression Forestsによるカメラのヨー角の推定
 
CVPR2011 Festival PDF
CVPR2011 Festival PDFCVPR2011 Festival PDF
CVPR2011 Festival PDF
 
CVPR Festival
CVPR FestivalCVPR Festival
CVPR Festival
 

Ähnlich wie Random Forests

アンサンブル学習
アンサンブル学習アンサンブル学習
アンサンブル学習Hidekazu Tanaka
 
クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料洋資 堅田
 
プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造Takuya Akiba
 
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレストTeppei Baba
 
Ordered neurons integrating tree structures into recurrent neural networks
Ordered neurons integrating tree structures into recurrent neural networksOrdered neurons integrating tree structures into recurrent neural networks
Ordered neurons integrating tree structures into recurrent neural networksKazuki Fujikawa
 
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)ryotat
 
ハイブリッド型樹木法
ハイブリッド型樹木法ハイブリッド型樹木法
ハイブリッド型樹木法Mitsuo Shimohata
 
数理情報学特別講義ⅰ輪講
数理情報学特別講義ⅰ輪講数理情報学特別講義ⅰ輪講
数理情報学特別講義ⅰ輪講Shengbo Xu
 
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】Naoki Hayashi
 
Probabilistic Graphical Models 輪読会 #1
Probabilistic Graphical Models 輪読会 #1Probabilistic Graphical Models 輪読会 #1
Probabilistic Graphical Models 輪読会 #1Takuma Yagi
 
[DL輪読会]VOICEFILTER: Targeted Voice Separation by Speaker-Conditioned Spectrog...
[DL輪読会]VOICEFILTER: Targeted Voice Separation by Speaker-Conditioned Spectrog...[DL輪読会]VOICEFILTER: Targeted Voice Separation by Speaker-Conditioned Spectrog...
[DL輪読会]VOICEFILTER: Targeted Voice Separation by Speaker-Conditioned Spectrog...Deep Learning JP
 
[DL輪読会]Mastering the Dungeon: Grounded Language Learning by Mechanical Turker...
[DL輪読会]Mastering the Dungeon: Grounded Language Learning by Mechanical Turker...[DL輪読会]Mastering the Dungeon: Grounded Language Learning by Mechanical Turker...
[DL輪読会]Mastering the Dungeon: Grounded Language Learning by Mechanical Turker...Deep Learning JP
 
PRML勉強会@長岡 第4章線形識別モデル
PRML勉強会@長岡 第4章線形識別モデルPRML勉強会@長岡 第4章線形識別モデル
PRML勉強会@長岡 第4章線形識別モデルShohei Okada
 
[DL輪読会]Discriminative Learning for Monaural Speech Separation Using Deep Embe...
[DL輪読会]Discriminative Learning for Monaural Speech Separation Using Deep Embe...[DL輪読会]Discriminative Learning for Monaural Speech Separation Using Deep Embe...
[DL輪読会]Discriminative Learning for Monaural Speech Separation Using Deep Embe...Deep Learning JP
 
Shunsuke Horii
Shunsuke HoriiShunsuke Horii
Shunsuke HoriiSuurist
 

Ähnlich wie Random Forests (19)

Random forest の解説
Random forest の解説Random forest の解説
Random forest の解説
 
アンサンブル学習
アンサンブル学習アンサンブル学習
アンサンブル学習
 
クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料
 
プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造
 
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト
 
Ordered neurons integrating tree structures into recurrent neural networks
Ordered neurons integrating tree structures into recurrent neural networksOrdered neurons integrating tree structures into recurrent neural networks
Ordered neurons integrating tree structures into recurrent neural networks
 
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
 
Dive into XGBoost.pdf
Dive into XGBoost.pdfDive into XGBoost.pdf
Dive into XGBoost.pdf
 
PFI Christmas seminar 2009
PFI Christmas seminar 2009PFI Christmas seminar 2009
PFI Christmas seminar 2009
 
ハイブリッド型樹木法
ハイブリッド型樹木法ハイブリッド型樹木法
ハイブリッド型樹木法
 
数理情報学特別講義ⅰ輪講
数理情報学特別講義ⅰ輪講数理情報学特別講義ⅰ輪講
数理情報学特別講義ⅰ輪講
 
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
 
Probabilistic Graphical Models 輪読会 #1
Probabilistic Graphical Models 輪読会 #1Probabilistic Graphical Models 輪読会 #1
Probabilistic Graphical Models 輪読会 #1
 
[DL輪読会]VOICEFILTER: Targeted Voice Separation by Speaker-Conditioned Spectrog...
[DL輪読会]VOICEFILTER: Targeted Voice Separation by Speaker-Conditioned Spectrog...[DL輪読会]VOICEFILTER: Targeted Voice Separation by Speaker-Conditioned Spectrog...
[DL輪読会]VOICEFILTER: Targeted Voice Separation by Speaker-Conditioned Spectrog...
 
[DL輪読会]Mastering the Dungeon: Grounded Language Learning by Mechanical Turker...
[DL輪読会]Mastering the Dungeon: Grounded Language Learning by Mechanical Turker...[DL輪読会]Mastering the Dungeon: Grounded Language Learning by Mechanical Turker...
[DL輪読会]Mastering the Dungeon: Grounded Language Learning by Mechanical Turker...
 
NIPS 2010 読む会
NIPS 2010 読む会NIPS 2010 読む会
NIPS 2010 読む会
 
PRML勉強会@長岡 第4章線形識別モデル
PRML勉強会@長岡 第4章線形識別モデルPRML勉強会@長岡 第4章線形識別モデル
PRML勉強会@長岡 第4章線形識別モデル
 
[DL輪読会]Discriminative Learning for Monaural Speech Separation Using Deep Embe...
[DL輪読会]Discriminative Learning for Monaural Speech Separation Using Deep Embe...[DL輪読会]Discriminative Learning for Monaural Speech Separation Using Deep Embe...
[DL輪読会]Discriminative Learning for Monaural Speech Separation Using Deep Embe...
 
Shunsuke Horii
Shunsuke HoriiShunsuke Horii
Shunsuke Horii
 

Mehr von Hironobu Fujiyoshi

MIRU2020長尾賞受賞論文解説:Attention Branch Networkの展開
MIRU2020長尾賞受賞論文解説:Attention Branch Networkの展開MIRU2020長尾賞受賞論文解説:Attention Branch Networkの展開
MIRU2020長尾賞受賞論文解説:Attention Branch Networkの展開Hironobu Fujiyoshi
 
知識転移グラフによる複数ネットワークの 共同学習
知識転移グラフによる複数ネットワークの 共同学習知識転移グラフによる複数ネットワークの 共同学習
知識転移グラフによる複数ネットワークの 共同学習Hironobu Fujiyoshi
 
【第40回AIセミナー】「説明できるAI 〜AIはブラックボックスなのか?〜」
【第40回AIセミナー】「説明できるAI 〜AIはブラックボックスなのか?〜」【第40回AIセミナー】「説明できるAI 〜AIはブラックボックスなのか?〜」
【第40回AIセミナー】「説明できるAI 〜AIはブラックボックスなのか?〜」Hironobu Fujiyoshi
 
第6回 京都大学-稲盛財団合同京都賞シンポジウム
第6回 京都大学-稲盛財団合同京都賞シンポジウム第6回 京都大学-稲盛財団合同京都賞シンポジウム
第6回 京都大学-稲盛財団合同京都賞シンポジウムHironobu Fujiyoshi
 
エッジにおける深層学習の推論処理の効率化
エッジにおける深層学習の推論処理の効率化エッジにおける深層学習の推論処理の効率化
エッジにおける深層学習の推論処理の効率化Hironobu Fujiyoshi
 
画像認識における特徴表現 -SSII技術マップの再考-
画像認識における特徴表現 -SSII技術マップの再考-画像認識における特徴表現 -SSII技術マップの再考-
画像認識における特徴表現 -SSII技術マップの再考-Hironobu Fujiyoshi
 

Mehr von Hironobu Fujiyoshi (7)

MIRU2020長尾賞受賞論文解説:Attention Branch Networkの展開
MIRU2020長尾賞受賞論文解説:Attention Branch Networkの展開MIRU2020長尾賞受賞論文解説:Attention Branch Networkの展開
MIRU2020長尾賞受賞論文解説:Attention Branch Networkの展開
 
知識転移グラフによる複数ネットワークの 共同学習
知識転移グラフによる複数ネットワークの 共同学習知識転移グラフによる複数ネットワークの 共同学習
知識転移グラフによる複数ネットワークの 共同学習
 
【第40回AIセミナー】「説明できるAI 〜AIはブラックボックスなのか?〜」
【第40回AIセミナー】「説明できるAI 〜AIはブラックボックスなのか?〜」【第40回AIセミナー】「説明できるAI 〜AIはブラックボックスなのか?〜」
【第40回AIセミナー】「説明できるAI 〜AIはブラックボックスなのか?〜」
 
第6回 京都大学-稲盛財団合同京都賞シンポジウム
第6回 京都大学-稲盛財団合同京都賞シンポジウム第6回 京都大学-稲盛財団合同京都賞シンポジウム
第6回 京都大学-稲盛財団合同京都賞シンポジウム
 
エッジにおける深層学習の推論処理の効率化
エッジにおける深層学習の推論処理の効率化エッジにおける深層学習の推論処理の効率化
エッジにおける深層学習の推論処理の効率化
 
画像認識における特徴表現 -SSII技術マップの再考-
画像認識における特徴表現 -SSII技術マップの再考-画像認識における特徴表現 -SSII技術マップの再考-
画像認識における特徴表現 -SSII技術マップの再考-
 
ICCV2011 report
ICCV2011 reportICCV2011 report
ICCV2011 report
 

Random Forests