Contenu connexe Similaire à 画像処理分野における研究事例紹介 Similaire à 画像処理分野における研究事例紹介 (20) 画像処理分野における研究事例紹介1. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
画像処理分野における研究事例紹介
西田典起
東京大学大学院 情報理工学系研究科 創造情報学専攻
Machine Perception Group 中山英樹研究室
nishida@nlab.ci.i.u-tokyo.ac.jp
第 2 回 音響学会関西支部談話会
Match 28, 2016
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 1 / 57
2. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
Contents
1 Convolutional Neural Networks のおさらい
2 コンピュータビジョンにおける最近の研究事例
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 2 / 57
3. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
コンピュータビジョンのワークフロー
▶ 伝統的なパターン認識: 予め作り込まれて fix された特徴量抽出
▶ 近年までの主な手法
▶ Deep Learning: 表現学習, 階層的な構造, end-to-end な学習
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 3 / 57
4. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
Convolutional Neural Networks (CNNs)
http://cs231n.github.io/convolutional-networks/
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 4 / 57
5. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込みの例: 微分フィルタとエッジ抽出
微分フィルタ:
wv =
−1 0 1
−1 0 1
−1 0 1
, wh =
−1 −1 −1
0 0 0
1 1 1
(1)
これらのフィルタを画像のすべての位置について畳み込むと, エッ
ジを抽出可能
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 5 / 57
6. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込み層
http://cs231n.github.io/convolutional-networks/
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 6 / 57
7. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込み層
http://cs231n.github.io/convolutional-networks/
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 7 / 57
8. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込み層
http://cs231n.github.io/convolutional-networks/
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 8 / 57
9. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込み層
http://cs231n.github.io/convolutional-networks/
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 9 / 57
10. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込み層
http://cs231n.github.io/convolutional-networks/
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 10 / 57
11. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込み層
http://cs231n.github.io/convolutional-networks/
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 11 / 57
12. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込み層
http://cs231n.github.io/convolutional-networks/
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 12 / 57
13. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込み層
http://cs231n.github.io/convolutional-networks/
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 13 / 57
14. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込み層
http://cs231n.github.io/convolutional-networks/
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 14 / 57
15. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
プーリングは局所領域を代表値で集約する
▶ average poling: 局所領域の平均値を代表値とする
▶ max pooling: 局所領域の最大値を代表値とする
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 15 / 57
16. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
プーリングの利点と欠点: “what" と “where" の trade-off
▶ 利点
▶ 位置に関する変動を吸収
▶ 小さなフィルタで大域的な特徴を取れるようになる
▶ 欠点
▶ 位置に関する詳しい情報が失われる
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 16 / 57
17. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
CNN は何をしてるか? なぜ多層なのか? → composition
▶ 層が進むにつれて, CNN はより局所的で低次な情報をどんど
ん composit していき, より大局的で高次な情報を抽出する
▶ ピクセル → エッジ等 → モチーフ → 部分領域 → 物体
▶ 文字 → 単語 → フレーズ → 文 → パラグラフ → story
▶ 音楽 (先ほどの糸山先生の発表)
▶ 本当は CNN に限らず, Recursive Nets など他のモデルも同様
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 17 / 57
18. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
CNN がうまくいくケース
▶ 大域的な意味のある情報が, 局所的な情報の composition で表
されるようなドメイン
▶ 位置に依存しない特徴抽出が有効
▶ 画像以外のデータへの応用例:
▶ 文字レベルの CNN を用いた単語ベクトル表現の学習
▶ 単語レベルの CNN を用いた文ベクトル表現の学習
▶ 時間軸への畳み込みもする CNN を用いた映像認識
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 18 / 57
19. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
Deep Learning を用いた研究事例の紹介
1. AttentionNet: 物体検出
2. Deep Visual Analogy-Making: 画像アナロジー
3. NeuralStyle: 画像生成
4. DCGAN: 画像生成
5. Show, Attend and Tell: 画像説明文生成
6. Spatial Transformer Network: 画像の変換
7. Fully Convolutional Network: セマンティックセグメンテー
ション
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 19 / 57
20. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
R-CNN [Girshick et al., CVPR’14]
物体検出への深層学習の応用ではとても有名, selective search +
CNN
1. selective search で物体の候補領域を複数検出 (約 2k 個)
2. 学習済み CNN を用いて各候補領域から特徴量抽出
3. SVM で各カテゴリについてスコア付け
selective search が遅い, 構成が複雑
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 20 / 57
22. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
アプローチ
NN で徐々に物体候補領域を絞り込んでいく
1. 入力画像の左上点, 右下点の移動方向 (or 停止, 棄却) を予測
2. 予測に従って, 画像を切り取る
3. 切り取った画像を再び入力
4. 停止するまで繰り返す
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 22 / 57
23. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
他手法との比較
データセット: PASCAL VOC 2007
タスク: 人検出
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 23 / 57
24. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
2. Deep Visual Analogy-Making [Reed et al., NIPS’15]
画像のアナロジー A : B :: C : ? を解く
f: エンコーダー, g: デコーダー
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 24 / 57
25. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
アプローチ
▶ 従来の A : B :: C : D の解き方:
argmax
D
cos(f(D), f(B) − f(A) + f(C)) (2)
▶ CNN (with upsampling) で画像を直接生成, f(B) − f(A) 以外
の関係性抽出方法を提案
▶ 学習: ターゲット画像と生成画像との二乗誤差を最小化
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 25 / 57
28. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
3. NeuralStyle [Gatys et al., arXiv:1508.06576]
▶ CNN によって画像の “content"に関する表現と, “style"に関す
る表現を抽出する方法を提案
▶ 二つの画像を入力として, 一方の画像の “content"と, もう一方
の画像の “style"を再現するような復元することで, それらを統
合した画像を再構築できる
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 28 / 57
29. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
「何が」描かれているかの復元
▶ x: ホワイトノイズ画像 (最適化対象)
▶ p: “content"について模倣したい画像
▶ Fl ∈ RNl×Dl : x から計算した第 l 層の feature maps
▶ Pl ∈ RNl×Dl : p から計算した第 l 層の feature maps
▶ Fl と Pl のフロベニウスノルムの二乗を最小化するような x
を求める
Lcontent(x, p, l) =
1
2
∥Fl
− Pl
∥2
F (3)
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 29 / 57
30. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
「どんな風に」描かれているかの復元
▶ q: “style"について模倣したい画像
▶ feature maps そのものを復元するのではなく,
▶ feature map 間の相関に着目
▶ グラム行列 Gl ∈ RNl×Nl
Gl
i,j = (Fl
i )⊤
Fl
j (4)
▶ Fl と Ql のフロベニウスノルムの二乗を最小化するような x
を求める
Lstyle(x, q) =
L∑
l=1
wl{
1
4N2
l D2
l
∥Gl
− Ql
∥2
F } (5)
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 30 / 57
31. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
画像 p の “content"と画像 q の “style"を同時に復元
▶ Lcontent と Lstyle の和を同時に最小化するような画像 x を求
める
▶ 損失関数
Ltotal(x, p, q) = αLcontent(x, p) + βLstyle(x, q) (6)
▶ α と β は trade-off パラメータ
▶ Back propagation と勾配降下法等によって x を最適化
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 31 / 57
33. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
4. DCGAN [Radford et al., ICLR’16]
画像生成
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 33 / 57
34. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
基本フレーム: Generative Adversarial Nets (GAN)
▶ Generative Adversarial Nets (Goodfellow et al., NIPS’14)
× CNN
▶ generator G と discriminator D という二つのニューラルネッ
トワークから構成される
▶ G: pz からサンプリングされた z をもとにデータを生成
▶ D: リアルなデータか G によって生成されたデータかを分類
▶ GAN では, 以下の minmax 最適化問題を解く
min
G
max
D
Ex∼pdata(x)[log D(x)] + Ez∼pz(z)[log(1 − D(G(z)))]
(7)
▶ G は D を騙そうとし, D は G に騙されんとする
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 34 / 57
35. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
Generator in DCGAN
▶ 潜在空間の次元数は 100, z ∈ R100
▶ z を 4 × 4 × 1024 次元へ変換して, 3 次のテンソルへ reshape
▶ stride 幅を 1 以下にすることで (補間を用いる), サイズを大き
くした feature maps を出力可能
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 35 / 57
36. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
潜在空間上でのアナロジー実験 (1)
アナロジータスク: “king" - “man" + “woman" = ? (“queen")
各コンセプトを表現してそうな z を足し引きした結果の z′ を用い
て画像を生成
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 36 / 57
38. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
5. Show, Attend and Tell [Xu et al., ICML’15]
画像の説明文生成 with attention mechanism
▶ 一種の Encoder-Decoder 型
▶ Encoder: 画像から特徴量へエンコードする CNN
▶ Decoder (+ attention mechanism): エンコードされた画像情
報を文へデコードする RNN (LSTM)
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 38 / 57
39. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
Encoder: CNN
▶ CNN を用いて feature maps を抽出
V = {v1, . . . , vL}, vi ∈ RD
(8)
▶ ここで, L = height × width とする.
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 39 / 57
40. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
Decoder: LSTM with attention mechanism (1)
1. 現在の状態 ht−1 を用いて, 画像部分 vi への attention を計算
et,i = f(vi, ht−1) (9)
αt,i =
exp(et,i)
∑L
j=1 exp(et,j)
(10)
2. attention で重み付けられた画像ベクトル集合 V の平均
(Soft Attention. Stochastic Hard Attention は割愛)
ˆzt =
L∑
i=1
αt,ivi ∈ RD
(11)
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 40 / 57
41. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
Decoder: LSTM with attention mechanism (2)
3. RNN の状態 h の更新:
ht = RNN(E[yt−1], ht−1,ˆzt) (12)
4. 単語の予測 (出力)
yt = softmax(Wo(E[yt−1] + Whht + Wzˆzt)) (13)
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 41 / 57
46. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
6. Spatial Transformer Network [Jaderberg et al., NIPS’15]
入力画像 (or feature maps) を変換
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 46 / 57
47. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
Grid Generator Tθ
入力 U をどうやって出力 V に変換するか
→ 出力 V の各位置の値を入力 U のどの位置を中心にサンプリング
するか決定
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 47 / 57
48. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
全体像
Components in Spatial Transformer:
1. Localization network
2. Grid generator
3. Image sampler
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 48 / 57
49. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
もうちょっと詳しく
1. ニューラルネットワークで Grid Generator Tθ のパラメータ θ
を出力
θ = f(U) (14)
2. Grid Generator Tθ を用いて, 出力側 V の位置 (xt
i, yt
i) と入力
側 U の位置 (xs
i , ys
i ) との対応を計算
e.g.,
(
xs
i
ys
i
)
= Tθ(Ui) =
(
θ11 θ12 θ13
θ21 θ22 θ23
)
xt
i
yt
i
1
(15)
3. (xt
i, yt
i) の値は, (xs
i , ys
i ) を中心としてサンプリング
Vi =
W∑
x′=1
H∑
y′=1
Ux′,y′ max(0, 1 − |xs
i − x′
|)max(0, 1 − |ys
i − y′
|)
(16)
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 49 / 57
51. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
7. Fully Convolutional Networks [Long et al., CVPR’14]
CNN を用いた セマンティックセグメンテーション
セマンティックセグメンテーション: pixel ごとのカテゴリ予測
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 51 / 57
52. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
畳み込み層だけ → “Fully Convolutional"
▶ 全結合層 を 1 × 1 convolution に置き換える
▶ upsampling で pixel-wise な予測を行う
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 52 / 57
53. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
何がうれしいのか
▶ 全結合層があると入力画像のサイズが固定される
▶ 画像を固定サイズのパッチに切って何度も実行 ← ムダ!
▶ 畳み込み層は, 任意の入力サイズをとれる
▶ 入力から出力までを畳み込み層だけで定式化できれば, 任意サ
イズの画像に対して一回の実行で予測が可能
▶ その結果, 学習・テストが高速に
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 53 / 57
54. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
“where" に関する details は重要
▶ 上位層では “where" に関する details が失われている
▶ しかし, セマンティックセグメンテーションでは details も重要
▶ details が残っている下位層における情報も予測時に使う
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 54 / 57
55. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
Skip Connection の効果
▶ 狙い通り, 下位層の情報も使うとより詳細なセグメンテーショ
ンが可能
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 55 / 57
56. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
まとめ
▶ Convolutional Neural Networks について簡単に解説
▶ CV を中心に最近の研究事例を紹介
1. AttentionNet: 物体検出
2. Deep Visual Analogy-Making: 画像アナロジー
3. NeuralStyle: 画像生成
4. DCGAN: 画像生成
5. Show, Attend and Tell: 画像説明文生成
6. Spatial Transformer Network: 画像変換
7. Fully Convolutional Network: セマンティックセグメンテー
ション
▶ 今後: 物体間の関係性認識, 詳細カテゴリ分類 (FGVC), 映像タ
スクへの拡張, unsupervised learning, one-shot learning
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 56 / 57
57. Convolutional Neural Networks のおさらい コンピュータビジョンにおける最近の研究事例
参考文献
Girshick, R., Donahue, J., Darrell, T., & Malik, J. Rich feature hierarchies for accurate object detection and semantic
segmentation. In CVPR, 2014.
Yoo, D., Park, S., Lee, J. Y., Paek, A. S., & So Kweon, I. AttentionNet: Aggregating Weak Directions for Accurate
Object Detection. In ICCV, 2015.
Reed, S. E., Zhang, Y., Zhang, Y., & Lee, H. Deep Visual Analogy-Making. In NIPS, 2015.
Gatys, L. A., Ecker, A. S., & Bethge, M. A neural algorithm of artistic style. arXiv:1508.06576, 2015.
Radford, A., Metz, L., & Chintala, S. Unsupervised Representation Learning with Deep Convolutional Generative
Adversarial Networks. In ICLR, 2016.
Goodfellow, I., Pouget-Abadie, J., Mirza, M., Xu, B., Warde-Farley, D., Ozair, S., ... & Bengio, Y. Generative
adversarial nets. In NIPS, 2014.
Xu, K., Ba, J., Kiros, R., Courville, A., Salakhutdinov, R., Zemel, R., & Bengio, Y. Show, attend and tell: Neural image
caption generation with visual attention. In ICML, 2015.
Jaderberg, M., Simonyan, K., & Zisserman, A. Spatial transformer networks. In NIPS, 2015.
Long, J., Shelhamer, E., & Darrell, T. Fully convolutional networks for semantic segmentation. In CVPR, 2015.
西田典起 画像処理分野における研究事例紹介 東京大学 情報理工学系研究科 57 / 57