Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔

14,393 views

Published on

2018年1月15日の東京大学医学部機能生物学セミナーでの岡野原大輔の講演資料です。

最後の参考文献を修正しました。
修正版はこちらです。
https://www.slideshare.net/pfi/20180115-87025513

Published in: Technology
  • Login to see the comments

20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔

  1. 1. 深層学習の最前線とこれから Preferred Networks 岡野原 大輔 hillbig@preferred.jp 2018/1/15 東京大学医学部機能生物学セミナー
  2. 2. Preferred Networks (PFN)  ミッション: IoT時代に向けた新しいコンピュータを創造する あらゆるモノに知能をもたせ、分散知能を実現する  設 立:2014年3月  所在地:東京都千代田区大手町(日本)、バークレー(米国)  事業内容: IoT(Internet of Things) + 分散機械学習 — 交通システム — 産業用ロボット — バイオヘルスケア 2
  3. 3. Our Strategic Partners and Collaborators
  4. 4. ディープラーニング の最前線
  5. 5. ディープラーニング(深層学習)とは  層が深く、幅も広いニューラルネットワーク を利用した機械学習手法  2012年の大ブレーク以来、研究コミュニティ のみならず産業界に多く使われてきた  画像認識、音声認識、強化学習、自然言語処理 などで劇的な精度向上を果たし、その多くが既に実用化 されている 5 2014年の一般画像認識コンテストで優勝した 22層からなるのGoogLeNetの例 [Google 2014] *http://memkite.com/deep-learning-bibliography/
  6. 6. ディープラーニングの基本計算  下層の入力xを重み付きで足した後に活性化関数hをかけ て出力 – wiがモデルパラメータであり、重みと呼ばれる x1 x2 x3 +1 w1 w2 w3 w4 h = a(x1w1+x2w2+x3w3+w4) h aの例 ReLU: h(x) = max(0, x) a : 活性化関数 バイアス項 活性化関数には、ReLUなど勾配消失問題を 回避できる区分線形関数が多く使われる
  7. 7. ディープラーニングの基本計算 7  先ほどの基本計算を何層にも繰り返して出力yを求める x1 x2 x3 +1 +1 +1 y 深いレイヤーはパーツを組み合わせた 総合的かつ抽象的な情報
  8. 8. 例 入力でみると、各層毎に入力が変形されていく 8 https://colah.github.io/posts/2014-03-NN-Manifolds-Topology/
  9. 9. ディープラーニングの学習 (1/4)  正解ラベルとの違いからエラーLを求める — 例:回帰:l(y, y*)= (y – y*)2  Iが小さくなるように各パラメータ{wi}を調整する(=最適化問題)  問題:各重みをどのように調整すればよいか? → 誤差逆伝播法 x1 x2 x3 +1 +1 +1 正解の出力 ly y* w1 w2 w3 w4 9
  10. 10. 10 ディープラーニングの学習 (2/4) 歯車の例(誤差逆伝播法を理解するため)  問: Aを1回転させるとDは何回転するか?  Cを1回転させるとDは16/12回転 — これを dD / dC = 16/12 と書く(Cをd動かすとDは16/12d動く)  Bを1回転させると,dC / dB = 8/16のため,dD/dB = (16/12)(8/16)=8/12  dD/dA = (dD/dC)*(dC/dB)*(dB/dA) =10/12 答え: 10/12回転 A B C 歯の数が10 8 16 D 12
  11. 11. ディープラーニングの学習 (3/4) 誤差逆伝播法  出力からエラーの勾配をデータの流れとは逆方向に流す – 出力を変えたら、最終目標lがどのように変わるか – 各パラメータについての勾配を正確に求められる x1 x2 x3 +1 r s ly y* yを動かしたら lがどのように 変わるのか sを動かしたら lがどのように 変わるのか wを動かしたら lがどのように 変わるのか w =r
  12. 12. 12 ディープラーニングの学習 (4/4) 確率的勾配降下法  目的関数L(θ)のθについての勾配 v = ∂L(θ)/∂θ は誤差逆伝播法で効率的に求められる — Lはタスクを間違えた時に正の値、正しい時0をとる関数 — -vはL(θ)を最も急激に小さくできる方向  データ毎に θt+1 := θt – αvt と更新 — α>0 は学習率 — 目的関数の曲率を考慮したAdamやRMSpropなどが使われる パラメータ空間 目的関数の等高線 -αv1 θ1 θ2
  13. 13. 13 誤差逆伝播法(後ろ向き自動微分)は強力  誤差逆伝播法は最終的な目的関数の各パラメータや入力 についての勾配を正確に求められる — ある目的関数の値を変えるために各パラメータをどれだけ動か せばよいかが正確にわかる  誤差逆伝播法は前向き計算と同じ計算量 — スケーラブル、パラメータ数に対し線形にスケール  どれだけ複雑な計算グラフであっても計算できる — 1000層を超えても,ループがあっても、分岐があっても大丈夫  確率変数のサンプリングがあっても誤差逆伝播法を使っ て勾配を求められる — 変数変換トリック、REINFORCE
  14. 14. なぜディープラーニングがうまくいくのか?  解明されていない謎が徐々に解けつつある  NNの最適化問題は非凸であり極小解にはまる →大きなNNでは殆ど全ての極小解は最適解 [Nguyen+ 17]  なぜDNNの汎化性能が高いか?パラメータ数が学習事例に対し多い のに過学習しないのか? →SGDによる最適化はベイズ最適化に対応し、見つかる解は幅広な 領域で良い汎化性能を持つ [Hoffman+ 17] パラメータ数が多い方が汎化性能がむしろ高い  自然界にみられるデータが備える特徴とDNNのモデルが一致する [Lin+ 16] — 低次性、局所相互作用性、対称性、マルコフ性 14
  15. 15. 深層学習 = 表現学習、一貫学習(end-to-end学習)  データをどのように表現するか(表現学習)  全モジュールを誤差逆伝播法で一貫して学習 — モジュール毎の局所最適化の問題がない — 信用割り当て問題(誰に間違った責任があるか)を自然に解く 15 特徴設計 ルール ・ プログラム タスクの学習 ルールベース 浅い機械学習 (決定木、RF、SVM、 ロジスティク回帰など) 深層学習 タスクの学習 表現学習 (特徴設計) 人手 データから自動獲得 一貫学習
  16. 16. 深層学習の特徴 マルチモーダル、マルチタスク学習が容易に  マルチモーダル* — 異なる種類の入力を統合 — 統合の仕方はNNが学習する  マルチタスク — 異なるタスクを一緒に扱う — 共通する特徴を学習できる 画像 テキスト ゲノム 入力データ タスクA B C *注:データで全モーダルが揃っている必要はない c.f. DropOut
  17. 17. 17 CityScape Dataset
  18. 18. 18
  19. 19. 19
  20. 20. 20 「ぶつからない車」 トヨタ自動車様との共同展示@CES2016
  21. 21. 21 Amazon Picking Challenge 2016, won 2nd prize
  22. 22. 22 ロボットにインタラクティブに指示をする
  23. 23. 23 二足歩行ロボットの強化学習による制御
  24. 24. 24 強化学習によるドローンの制御 [CEATEC 2016]
  25. 25. 25 PaintsChainer (#PaintsChainer)  Neural network colorize line arts.  Released Jan. 2017, and already painted about one million line images http://free-illustrations.gatag.net/2014/01/10/220000.html Taizan Yonetsuji
  26. 26. 乳がん検査の精度 90% 99% 80%マンモグラフィー リキッドバイオプシー (血液中のmicroRNA) [Shimomura+ Cancer Science 2016] リキッドバイオプシー + Deep Learning
  27. 27. 元画像 Brain tumor segmentation Prediction Annotation by DoctorInput
  28. 28. 教師なし学習 28
  29. 29. 29 代表的な学習手法  教師あり学習 — 入力xから出力yへの写像 y=f(x)を獲得する — 学習データは正解のペア{(x, y)}  強化学習 — 環境において将来期待報酬を最大化する行動を獲得する — 学習データは自分がとった状態とその時の報酬{(x, ri)}  教師なし学習 — 学習データはデータの集合{(xi)}、教師シグナルはそれ以外無い — 観測情報はいくらでも得られる [Doya 99]
  30. 30. 30 予測学習  次にどのようになるのかを予測する — 予測結果が正しいかどうかの結果は時間差でタダで得られる  物体の属性、ダイナミクス、物理モデルなど多くのこと を知っていないと予測できない ?
  31. 31. 31 教師なし学習予測学習の情報量は教師あり学習や強化学習 に比べると非常に大きい  Yann Lecunの講演資料より引用
  32. 32. 32 教師なし学習/予測学習  「脳のシナプスは1014個あるが,人は109秒しか生きら れない。サンプル数よりパラメータ数の方がずっと多い ことになる。(これらのシナプスの重みを決定するため には)1秒あたり105個の制約が必要となり,多くの教師 無し学習をしているとの考えに行き着く」 https://www.reddit.com/r/MachineLearning/comments/2lmo0l/ama_geoffrey_hinton/clyjogf/  1年間に観測できる視覚情報は 10フレーム/秒*36000秒/日*365日=1.3億フレーム これは教師あり学習で使われるImageNetの100倍
  33. 33. 33 教師なし学習/予測学習の役割  データのもつれを解く最適な表現方法を獲得する (disentanglement) — 階層的な構造を理解する  抽象化(認識)ができるようになる — 情報を分解、縮約し、余計な情報を除く  具体化(生成)ができるようになる — データを異なった条件で新しくサンプリングできる  物理モデル、ダイナミクスを理解し予測を可能にする
  34. 34. なぜ生成モデルを扱うのか  より正確な認識,推論をするため — 生成過程が分かっていれば、認識、推論をより正確にできる — 「作ってみせることができなければ理解したとはいえない」 リチャード・ファインマン — 「画像認識をしたければまずレンダリングを勉強せよ」 ジェフリー・ヒントン  そして、大量の教師なしデータxを活用することができる — 生成過程の学習(獲得)はxだけを使って実現可能 — その過程を逆向きにたどれば,xからzを推定できる 34
  35. 35. 認識と生成 (1/2)  データxが未知の因子zに基づいて生成され観測される  生成と認識は対の問題である z x 例:画像の場合 z:物体の形状, カメラの位置, 光源の情報 (ドラゴン, [10, 2, -4], white) x:画像 生成 z x 認識 (または推論) 推論:狭義には事後確率 P(z|x)を求めること
  36. 36. 認識と生成(2/2)  因子は必ずしも1つではなく複数ある場合が一般的 — 分析対象以外の因子(図中c)は共変量ともよばれる — 潜在変数の誤差として撹乱変数とよばれる場合も  世の中のデータの生成過程は非常に複雑 — 生成過程の多くは非線形 — ノイズは様々な場所で加わり、それらは非正規分布  そして、生成過程は一般に未知 — 生成過程のモデルは現実の生成過程の近似である — 例:CGの生成には数十のステップが必要 36 z1 x c h z2 h
  37. 37. 表現学習  データxのそのままの表現ではなく、因子zの表現で扱う と様々なタスクが簡単に学習できる — さらに特徴設計とタスクの学習をつなげてend-to-endでできる 37 特徴設計 ルール ・ プログラム タスクの学習 ルールベース 浅い機械学習 (決定木、SVM、 ロジスティク回帰など) 深層学習 タスクの学習 表現学習 (特徴設計) 人手 データから自動獲得 End- to-End
  38. 38. 多様体仮説:高次元空間に低次元空間が埋め込まれる  観測されるデータがとりうる値の組み合わせは高次元空間 に埋め込まれる低次元の多様体として表される 38 xが表現されている高次元空間 1点1点がありうる データの組み合わせ x上で近くても意味 は全然違う なぜ低次元かというと、 低次元の因子から観測 データが複雑さを上げ ずにに高次元の入力 空間に生成されるため 局所的に低次元の座標系 が埋め込まれる
  39. 39. 表現学習:元の表現から単純な潜在(因子)表現への変換 39 生成 認識 潜在表現  元の表現の近さと意味上の近さは違う場合が多い 因子上の表現では意味上で遠いものは遠く、近いものは近く にマッピングする
  40. 40. 単純な表現では学習が簡単 40 生成 認識 因子上の 単純な表現  多くのタスクは因子と関係しており、因子上では単純な分 類面となる → 学習データは少なくて済む 複雑な分類面を学習するため に教師データはたくさん必要 単純な分類面のため 教師データは少量で十分
  41. 41. 41 例:VAE(後述)により手書き文字データを2次元上の因 子にマッピングした結果 元々の手書き文字データは高次元(784次元)であり,曲がっているが, その因子を求めると,以下のような低次元の表現に変換できる もし,数字の1を分類したいなら この分類面を求めれば良い
  42. 42. 42 顔の潜在空間での遷移の場合 引用: “Progressive Growing of GANs for Improved Quality, Stability, and Variation” x=Gen(z) のzを遷移
  43. 43. 43 一般物体の潜在空間での遷移の例 引用: “Progressive Growing of GANs for Improved Quality, Stability, and Variation”
  44. 44. 深層生成モデル  深層生成モデル — ニューラルネットワークを使った非線形なモデルを 使ってデータを生成できるようなモデル  以下のモデルを詳しく説明 — VAE:変分自己符号化器 — GAN:敵対的生成モデル 44
  45. 45. 45 深層生成モデルとして望ましい性質  P(x)に従ってxを高速にサンプリングできる — 例えば,ボルツマンマシンなどはサンプリング時はMCMCが必要 で遅いためサンプリング目的に使えない  尤度 P(x)を計算できる — P(x)を陽に計算できない場合や下限L(x)しか計算できない場合も  生成されるデータのサポートが低次元多様体である — P(x) > 0であるようなxが低次元空間に広がっている — 生成の直前にノイズを載せない(ガウシアンでモデル化しない) — 最尤推定は直接使えない  log P(xi)が発散してしまう
  46. 46. 46 潜在変数モデル  P(x) = ∑z P(x | z)P(z)  xは観測変数  zは観測できない潜在変数  データセット D={x1, x2, …, xN} — log P(D) = ∑i log P(xi) = ∑i log ∑z P(x | z)P(z) z x
  47. 47. 47 VAE 変分自己符号化器 [Kingma+ 13] z μ (μ, σ) = Dec(z; φ) x〜N(μ, σ) σ x 平均と分散を出力する復号ネットワーク (μ, σ) = Dec(z; φ)を用意する 次の手順でxを生成する (1) z 〜 N(0, I)でサンプリングする (2) (μ, σ) = Dec(z; φ)を計算する (3) x 〜 N(μ, σI)でサンプリングする 確率分布は p(x) = ∫p(x|z)p(z)dz
  48. 48. 48 VAE 変分自己符号化器  p(x|z)p(z)の一つ一つの分布はガウシアンだが、全体 p(x) = ∫p(x|z)p(z)dz は複雑な分布を扱える — ニューラルネットワークが非線形で複雑な変換を扱えるため
  49. 49. 49 VAE 変分自己符号化器 学習は対数尤度最大化で行う 積分があるため直接最大化は困難 次の下限(ELBO: Evidence lower bound) の最大化を行う 提案分布q(z|x)は真の事後確率p(z|x) に近いほど良いが,違っても良い 自由エネルギー c.f. [Friston 2010] このq(z|x)についての最大化は KL(q(z|x) || p(z|x)) の最小化に対応 = 符号化器を学習できる
  50. 50. 50 VAE 変分自己符号化器の学習 (1/4) z μ 復号化器 (μ, σ) = Dec(z; φ) x〜N(μ, σI) σ x z μ σ x 符号化器 (μ, σ) = Enc(x; θ) z〜N(μ, σI) 提案分布q(z|x)を表す xからzを生成する符号化器を用意する 決定的な関数 (逆誤差伝播可能) 確率的な関数 (逆誤差伝播できない)
  51. 51. 51 VA3 変分自己符号化器の学習 (2/4) μ σ x' z μ σ x この二つが合う ように学習する xからzを符号化器でサンプリングし、 そのzを使ってx’をサンプリングし、 xとx’が合うように学習する =さきほどの変分下限の最大化 KL(q(z|x)||p(z)) の最小化も同時にする
  52. 52. 52 VAE 変分自己符号化器の学習 (3/4) この計算グラフはサンプリング( )があるため誤差逆伝播法が使えない ここはサンプリング も含めて((x-μ)/σ)2 で評価可能のため 問題ない μ σ x' z μ σ x ここが問題
  53. 53. 53 VAE 変分自己符号化器の学習 (4/4) 変数変換トリックを使う 確率的な計算を,逆誤差伝播可能な等価な決定的な計算に置き換える μ σ x' z μ σ x ε 全体が逆誤差伝播 可能なグラフに! 潜在変数μにノイズεσを 加えた自己符号化器と みなせる
  54. 54. 54 VAEの学習結果(再掲) zの空間の二次元上へのマッピング
  55. 55. VAEの拡張:条件付き生成 [Kingma+ 14] 55 μ σ x' z μ σ x y yは0から9の 数字の情報 zはスタイル の情報 実際の数字 yだけ変えて生成された数字
  56. 56. 56 VAEの問題点  生成の最後にノイズを入れるため、生成されたデータが ぼやけやすい  尤度を直接出せず下限のみ求まる — 但し、重点サンプリングをして サンプリング数を増やせば尤度 に収束する
  57. 57. 57 β-VAE [Higgins+ ICLR 17]  モデルの尤度の変分下限のKLダイバージェンスの重みβを β>1とすることで情報のdisentanglementが達成できる — 潜在表現をq(z|x)を各次元が独立な分布p(z)に近づけるのを強める — Information Bottleneckの変分最適化と同じ [Alemi 2017]
  58. 58. 階層VAE [Zhao 2017]  因子の階層的な分解を実現する — 階層的な潜在変数モデルは実は1層の潜在変数モデルと等価 — 代わりに生成過程でノイズを段階的に加える c.f. 撹乱変数  c.f. 撹乱変数 1層目: 幅の変化 2層目 : 傾き 3層目 : 数字 各層の潜在変数が異なる意味に対応する
  59. 59. 59 GAN(Generative Adversarial Net)敵対的生成モデル [Goodfellow+14]  二人のプレイヤーが競い合うことで学習する  偽金を作る人(Generator) — 目標はDiscriminatorを騙すこと — 本物そっくりのお金を作るように学習されていく  偽金を見破る人(Discriminator) — 目標はGeneratorの嘘を見破ること — ほんのわずかな違いも見抜けるように学習されていく Generator 本物のお金 Discriminator 本物かな ?偽物のお金 1/2でどちらか 選ばれる
  60. 60. 60 GAN 敵対的生成モデル z x = G(z) x 次の手順でxを生成する (1) z 〜 U(0, I)でサンプリングする (2) x = G(z)を計算する 最後にサンプリング がないことに注意p(z)がGaussianでなく 一様分布Uを使うのも特徴 高次元の一様分布の場合 隅が離れた表現を扱える
  61. 61. 61 GAN 敵対的生成モデルの学習  偽物かを判定するD(x)を用意 — 本物なら1, 偽物なら0を返す  Dは上式を最大化するように学習し Gは最小化するように学習する — この学習はうまく進めば ∫p(z)G(z)dz=P(x), D(x)=1/2という 均衡解にたどり着ける z x' x = G(z) {1(本物), 0(偽物)} y = D(x) x
  62. 62. GANの学習過程のデモ http://www.inference.vc/an-alternative-update-rule-for-generative-adversarial-networks/ 62 動画 それぞれの点は 勾配∂D/∂θに したがって動く
  63. 63. 63 GANの特徴  zがxに比べて低次元であり場合、生成されるデータxは 低次元多様体上に広がる — 尤度が計算できない  最尤推定はできないので、代わりに識別器Dからの勾配 情報を元に最適化する  識別器Dがリプシッツ連続である場合(|D(x)-D(y)|< L|x-y|)、 GAN最適化問題はは最適輸送問題(の双対)と等価 — 二つの確率分布を重ねるように学習する G(z) xの空間
  64. 64. 64 GANによる条件付き生成  条件cをつけt上で様々な生成ができる — G(x, c) D(x, c)  特定クラスの生成 — c: クラス(のone-hot表現)  質問応答 — c: 質問をRNNで読んだ分散表現  超解像 — c:低解像度の画像
  65. 65. 65 GANの最先端 Spectral Normalization + Projection Discriminator  はじめて一つのニューラルネットワークで 1000クラスを超える様々な物体の生成が可能に  Spectral Normalization — 各層の変換のリプシッツを抑える  Projection Discriminator — Discriminatorの最後に条件yとの内積をとる — D(y|x)は簡単な形になるという事前知識を利用 σ(W)はWの最大特異値 Takeru Miyato
  66. 66. x=Gen(z, y) z: 潜在因子 y: ラベル yを遷移
  67. 67.  犬の間で の遷移
  68. 68. 68 画像の異なるクラス間のモーフィング  zを固定したまま、yだけを変化 — 概念を保ったまま、クラスだけを変化 — 犬の頭とキノコの頭が対応している — 犬の頭と塔が対応している
  69. 69.  異なるクラス 間の遷移 別の例
  70. 70. 70 cGANによる超解像  条件を低解像度の画像とした上で超解像を行う
  71. 71. 予測モデル
  72. 72. 72 予測モデル  時系列データには大量の情報が埋め込まれている — 1年間で10時間/日*3600秒/時*365日*10Hz=1.3億回の画像を観察  次の時刻の観測を予測できるように学習すると様々な認 識ができるようになる — オプティカルフロー — 物体の形状 — 物体のダイナミクス — 物体の属性(未来を予測できるように)
  73. 73. 73 動画のモデリングはチャレンジング  1フレームP(x)のモデルは困難、その条件付き確率 P(xt+1|xt)のモデル化は困難 — 予測可能な部分と不可能な部分をどのように区別するか c.f. [Pathak+ 2017]  高次元の情報をうまく低次元に落としさえすれば、予測 は比較的簡単である — 低次元ベクトルをRNN(LSTMなど)を使ってモデル化する — 人の場合、ボーンモデル、メッシュモデル — しかし、事前知識を使ってしまっており未知の物体は対応不可能  一般物体をどのように低次元に落とせるのか?
  74. 74. 教師なし学習でどこまで学習できるか
  75. 75. 75 教師なし学習を適切に設計し順番に学習すれば 多くの視覚能力が得られる(はず) ビデオフレーム補間 [Liu+ ICCV 2017] オプティカルフロー インスタンス セグメンテーション [Pathak+ CVPR 2017] [He+ ICCV 2017] Dense Equivalent Labelling (キーポイント認識の一般化) 深さ情報 自己動き推定 [Zhou+ CVPR 2017] 物体の ダイナミクス推定 物体の三次元 構造推定
  76. 76. 76 言語能力の予想(こちらはさらに野心的な予想)  言語能力も教師なし学習で獲得できるだろう — 隠れ状態は談話/心理空間をランダムウォークしていて、そこから 単語が生成されているモデルと考えられる [Arora+ 2015, Ferrer-i-Cancho+ 2017] — 多くのRNNは遷移に決定的な関数を使っておりBPTTが可能だが表 現力が大きく落ちている — 隠れ状態は今あつかっているサイズ(数千ニューロン)よりはる かに多く(数百万ニューロン)かつスパース、パラメータ数は数 百億のオーダー  言語生成の能力と運動制御の能力はおそらく共通している — 確率的制御。自分と相手の隠れ状態を目的の状態に達するために どのようにたどり着くかを求める
  77. 77. 77 まとめ  深層学習は教師あり学習で大きな成功を収めている — 認識、検出、分類、生成、制御  一方、次の大きな躍進をおこすためには膨大な情報が得 られる教師なし学習で成功する必要がある — 生成は成功しつつある  GANによる画像生成、Wavenetによる音声合成 — 情報の分解(Disentanglement)も徐々に成功している  物体、属性、  教師なし学習の大部分はまだ未解決 — 予測学習
  78. 78. 78 参考文献  [Pathak+ 2017] Curiosity-driven Exploration by Self- supervised Prediction, ICML 2017, D. Pathak and et. al.  [Arora+ 2015] RAND-WALK: A Latent Variable Model Approch to Word Embeddings, S. Arora and et. al.  [Ferrer-i-Cancho+ 2017] The origins of Zipf's meaning- frequency law, R. Ferrer-i-Cancho and et. al.

×