O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

20181030 fun

10/30/2018に函館未来大学で行った、機械学習工学に関するプレゼンです。

  • Entre para ver os comentários

20181030 fun

  1. 1. 10/30/2018 はこだて未来大学技術講演会 PFN Fellow 丸山宏 Twitter: @maruyama 機械学習工学に向けて
  2. 2. 自己紹介: Computer Scientist ➔ ?? • 1975 高校のOKITAC4300Cで初めてのプログラミング • 1977 東京工業大学理学部情報科学科へ進学 – 当時情報科学を専門に教える大学は少なかった – 修士課程:米澤明憲先生の指導で、自然言語理解システ ムの研究 • 1983-2009 日本IBM東京基礎研究所 – 自然言語処理、機械翻訳、手書き文字認識、XML、Web サービス、セキュリティなどの研究・開発・標準化・コ ンサルティング いわゆるコ ンピュータ サイエンス 統計 データサイエンス 機械学習 ⚫ 2011-2016 統計数理研究所 — 統計モデリング、ビッグデータ解析 ⚫ 2016年4月: 株式会社Preferred Networks
  3. 3. Agenda 1. 計算とは何か 2. 深層学習とは 3. 深層学習3つの誤解 4. 機械学習工学に向けて 3
  4. 4. 計算とは? 4 自然数から{0,1}への写像の全体 計算可能関数(プログラムの全体) 全域計算可能(必ず停止する) P-SPACE NP完全 P(普通のプログラム) 伝統的な計算機科学で対象とする「計算」は離散のみ!
  5. 5. • y = f(x) • 関数 f の族を考える – y = fθ(x) – 例:線形関数族( y = ax + b)の場合 • θ = <a, b> 5 連続領域における「計算」とは?
  6. 6. 連続領域における計算方式の例:アナログ計算機 6 微分解析機:円盤回転角で表現 東京理科大近代科学資料館 日立ポータブルアナコン:電圧・電流で表現 日立評論 Vol. 39, No. 2 (1957) 実際の計算では誤差は避けられない
  7. 7. 連続領域における計算 7 実数から{0,1}への写像の全体 有限な数のパラメタで表現できる関数 深層学習 少ないパラメタ数で表現できる関数 伝統的統計モデリング 線形関数
  8. 8. 離散領域 連続領域 計算モデル チューリング機械、ラムダ 計算、… 深層学習 計算メカニズム デジタル回路 デジタル計算(近似) 物理現象 結果の精度 誤差無し 誤差あり プログラミング 演繹 演繹・帰納 厳密な仕様 必要 十分な訓練データがあれば不要 8 計算機科学は、連続領域も守備範囲にしよう!
  9. 9. Agenda 1. 計算とは何か 2. 深層学習とは 3. 深層学習3つの誤解 4. 機械学習工学に向けて 9
  10. 10. 深層学習とは何か – (状態を持たない*)関数 Y = f(X)X Y 超多次元、(連 続変数・カテゴ リ変数の任意の 組み合わせ) 判別・制御なら ば比較的低次元、 生成ならば超多 次元 *推論時にパラメタ更新を行うオンライン学習についてはこの限りでない
  11. 11. 普通の(演繹的な)関数の作り方: 例 摂氏から華氏への変換 double c2f(double c) { return 1.8*c + 32.0; } 入力: C 出力: F ただし、FはCを華氏で表したもの 仕様 アルゴリズム F = 1.8 * C + 32モデル 人が持つ 先験的知 識 モデルが既知/アルゴリズムが構成可能である必要
  12. 12. 深層学習の(帰納的な)やり方 – 訓練データで入出力を例示 訓練データセット 観測 訓練(ほぼ自動でパラメタθを決定) モデル/アルゴリズムが未知でもよい!
  13. 13. 13 訓練はどのように動くか (Facebook Yann LeCunによる動画) https://code.facebook.com/pages/1902086376686983
  14. 14. 自動運転のためのセグメンテーション https://www.youtube.com/watch?v=lGOjchGdVQs モデルが不明:人手による正解アノテーション(1)
  15. 15. ロボットビジョン: Amazon Picking Challenge 2016 2nd Place in the Picking Task モデルが不明:人手による正解アノテーション(2)
  16. 16. Modelが不明:人手による正解 Annotation (3)
  17. 17. Consumer Electronics Show (CES) 2016 CESにおける自動運転デモ、深層強化学習による訓練を行ったもの アルゴリズムが不明:逆問題として定式化(1)
  18. 18. 18 強化学習によるシステム開発 https://research.preferred.jp/2015/06/distributed-deep-reinforcement-learning/
  19. 19. 線画への自動着色アプリPaintsChainer アルゴリズムが不明:逆問題として定式化(2)
  20. 20. 統計的機械学習の本質的限界 (1) 訓練データ モデル 将来が過去と同じでないと正しく予測できない 時間軸 過去に観測されたデー タに基づいて訓練 訓練 訓練済みモデルに基いて 新しい値を予測
  21. 21. 統計的機械学習の本質的限界 (2) • 訓練データセットは有限 訓練データセット 内挿 外挿 ?? 訓練データに現れない、希少な事象に対して無力
  22. 22. 統計的機械学習の本質的限界 (3) • 本質的に確率的 元分布 独立・同分布(i.i.d.) 訓練データ 学習済みモデル サンプリング にバイアスが 入ることは避 けられない! 「100%の正しさ」は保証できない
  23. 23. 深層学習とは何か(まとめ) • 関数(プログラム)の作り方 – 演繹でなくて帰納 • モデルやアルゴリズムがわからなくても、訓練データセットがあれば 作れる – 教師信号の与え方次第で、驚くようなことが… • 本質的に統計モデリング – 元分布が独立・同分布であることが前提 – 近似しかできない(バイアスが入ることを避けられない)
  24. 24. Agenda 1. 計算とは何か 2. 深層学習とは 3. 深層学習3つの誤解 4. 機械学習工学に向けて 24 3つの誤解 1. 深層学習は安全でない 2. 深層学習は説明可能でない、制御できない 3. 深層学習は最適な解を出す
  25. 25. 25 誤解1:深層学習は確率的なので安全でない Wall Street Journal, 7/7, 2016 http://jp.wsj.com/articles/SB11860788629023424577004582173882125060236 テスラの事故 ただし… V字開発をすれば100%安全なのか? 出典:Wikipedia
  26. 26. 26 典型的なバグ密度(アセンブラ相当1,000行あたりのバグ数) http://www.softrel.com/Current%20defect%20density%20statistics.pdf
  27. 27. 品質指標 – 多くの場合プロセス品質指標 http://www.ipa.go.jp/files/000028859.pdf この車の安全性は? 例: どのくらいレビュー に時間を割いたか?
  28. 28. 深層学習はより客観的な品質指標が得られる 非公開の評価用データ 自動化された、第3者による評価 評価 評価結果のみ を返す この車の安全性は? ただし、100%の安全性は得られない 「100%の安全」があるようなふりをするのはやめよう!
  29. 29. 誤解2:深層学習は説明不能・制御不能 • 深層学習は説明不能か? – (今の)深層学習は、デジタルコンピュータで実現 • 同じプログラム、同じ入力、同じ訓練データセット、同じ乱数 初期値、… ならば必ず同じ結果が得られる – 結果を、ビット単位で説明しようと思えば可能 – ただし、「それを人間が解釈できるか」は別問題 • そもそも「説明可能性」とは何か? 深層学習の問題ではなく、対象の複雑性の問題 29
  30. 30. 複雑なシステムは説明困難 30 東京電力福島原子力発電所における事故調査・検証委員会 最終報告書「概要」27ページ http://www.cas.go.jp/jp/seisaku/icanps/SaishyuGaiyou.pdf • 例:福島原発の事故は説明できたか? – 東京電力福島原子力発電所における事故調査・検証委員会の報告書 • 14ヶ月の調査 • 中間報告・最終報告合わせて本文約1,000ページ、資料編約700ページ
  31. 31. 複雑さの問題は、IT一般の問題 31 • 複雑・大容量:個人では理解できない – E.g., Linuxカーネルは2,000万行 • 並列・非決定的:動作を再現できない – E.g., オンライン株取引 • 開世界:誰にどのように使われるか事前に特定できない – E.g., SNS • 単一の管理ドメインにない:ガバナンスが効かない、ボーダーレス – E.g., クラウドコンピューティング • 物理世界(連続量)の制御:離散量で近似しかできない – E.g., 航空機の自動操縦装置
  32. 32. 複雑なシステムを完全に制御することはできない • 「キルスイッチ」は制御可能性を担保するか – 無条件に全システムをシャットダウンすることは「制御」といえる か? • 飛行中の航空機、手術中の機械、… • アシュビーの最小多様性原理 (Law of Requisite Variety) – 制御システムは、制御対象システムよりもより多くの状態を持たなけ ればならない – 対象が複雑ならば、それを制御するソフトウェアは複雑にならざるを 得ない 32 「深層学習だから」説明不能・制御不能なのではない 本質は「問題が複雑だから」
  33. 33. 誤解3:深層学習は最適解を出す(1) 強化学習において、衝突のペナルティを無限大にすると? 33 動かないクルマ 効用と安全性のバランスを定量的に要件として書き出す必要!
  34. 34. 34 誤解3:深層学習は最適解を出す(2) • IJCAI 2017 Keynote by Stuart Russell, “Provably Beneficial AI” – 人:「コーヒーをとってきて」 – ロボット: スタバへ行き、列に並んでいる他の客を殺してコー ヒーをとってくる – 人の指示は常に不完全 どちらも、最適化問題における「最適とは何か」の問題を提起 人工知能研究での未解決問題:「フレーム問題」
  35. 35. 誤解3:深層学習は最適解を出す(3) 35 • データに内在するバイアス • 不適切な手法 • 結果の誤った解釈 •ISBN-13: 978-4772695602 • 言われのない不利益 • 差別の助長 • 政治的な誘導
  36. 36. 深層学習が我々に考えさせるもの 3つの誤解 1. 深層学習は安全でない 2. 深層学習は説明可能でない、制御できない 3. 深層学習は最適な解を出す 1. 安全とは何か 2. 説明可能とは何か、制御可能とは何か 3. 最適とは何か 我々が欲しいものは何か、わかっているふりをするのはやめよう 正直になろう
  37. 37. Agenda 1. 計算とは何か 2. 深層学習とは 3. 深層学習3つの誤解 4. 機械学習工学に向けて 37
  38. 38. 「橋やビルを安全に作るた めに土木工学という工学的 ディシプリンが必要であっ たのと同様に、データや機 械学習を利用して分析や意 思決定を行うための工学的 ディシプリンが必要だ」* https://medium.com/@mijordan3/artificial-intelligence-the- revolution-hasnt-happened-yet-5e1d5812e1e7 *丸山による要約 我々は何をすべきか:新しい工学の必要性
  39. 39. 工学とは? 理論(e.g., 構造計算) * 安全係数 新技術が社会に受容されるのは「工学」として熟成されてから 土木工学ハンドブック、969ページ 我々はなぜ安心して橋を渡れるのか? 土木工学の膨大な知見があるから
  40. 40. 40 日本ソフトウェア科学会機械学習工学研究会(MLSE) https://sites.google.com/view/sig-mlse キックオフシンポジウム (5/17) MLSEワークショップ(7/1-2) 人工知能学会MLSE企画セッション (6/8) JSSST全国大会(8/29-31)
  41. 41. 確率的に出てきてしまう「あってはならない解」をどのように排除す るか 41 DLモジュール 出力:n次元実数空間上の点 原理的に、Rn上のどの 点も出てくる可能性 *丸山, 機械学習応用システムにおける不変量の保証について, 日本 ソフトウェア科学会第 35 回大会 (2018 年度) 講演論文集
  42. 42. Motivated Example: コンビニの店長 42 入力変数 x1: 曜日 x2: 気温 : xn: 近所のイベント 出力変数 y1: サンドイッチの仕入量 y2: おにぎりの仕入量
  43. 43. Motivated Example: コンビニの店長 43 入力変数 x1: 曜日 x2: 気温 : xn: 近所のイベント 出力変数 y1: サンドイッチの仕入量 y2: おにぎりの仕入量 店長を模倣するDNN
  44. 44. y1 y2 0 y1 + y2 ≦ C 実行可能解 不変量P(y):実行可能解の制約 0 ≦ y1 0 ≦ y2 どんな入力、どんな訓練データセット、どんなハイパーパラメタに 対しても常に出力が実行可能解になるためには??
  45. 45. 実行不能解 y1 + y2 ≦ C 単純にDNNを訓練すると…
  46. 46. より一般的には凸領域を実行可能領域とする 46 ある内点を選ぶ (ピボットと呼ぶ)
  47. 47. ステップ1(有界化):Rn空間を、n次元ハイパーキューブ に変換 47 シグモイド関数 各次元をシグモイドで有界化 ピボットを原点に重ねる
  48. 48. ステップ2:各点を原点に向けて縮約 48
  49. 49. 変換後の空間での誤差を教師信号として逆伝播することも可能 どんな入力、どんな訓練データセット、どんなハイパーパラメタに 対しても常に出力が実行可能解になる!!
  50. 50. 50 まだまだたくさんのアイディアがあるはずです 12月、奈良でお会いしましょう! http://research.nii.ac.jp/iMLSE/
  51. 51. 51 「コンピュータ・サイエンス」は 新しい領域へ
  52. 52. 52 Thank You

×