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.

20150310 第1回 ディープラーニング勉強会

1,378 views

Published on

Udacityで公開されているTensorflowを使ったディープラーニング教材をベースに、社内勉強会を実施しました。
私の担当回のみ公開用に編集してアップロードします。

Published in: Data & Analytics
  • Be the first to comment

20150310 第1回 ディープラーニング勉強会

  1. 1. ディープラーニング勉強会 第1回 March 10 2016
  2. 2. GoogleのAlphaGOが囲碁プロ棋士イ・セドル氏に勝利 囲碁の問題は、それがとてつもなく複雑であるという ことだ。チェスの平均的な手数はおよそ35通りだが、 囲碁のそれは250通りである。それぞれの 手のあとに は、さらに250の選択肢がある。そのため最も強力な スーパーコンピューターでさえ、すべての手の可能性 を見通すことはできない。ハサビスが言うように「宇 宙の原子の数よりも囲碁の打ち手の数の方が多い」の だ。ゲームで勝つためには、計算以上のことができる AIを必要とする。人間の視力や直観力、学ぶことがで きる何かを模倣する必要があるのだ。 だからこそ、グーグルとフェイスブックは囲碁の問題 に取り組んでいる。AIがそのような巨大で複雑な問題 を解決できるならば、現実世界でより実際的な仕事を 行うAIシステムをつくる足がかりとして、彼らが囲碁 から学んだことを使うことができるからだ。 もし、AIが囲碁で人間を打ち負かしたなら https://wired.jp/2016/03/09/googles-go-victory/ 囲碁AI「AlphaGo」勝利は「衝撃的な結果」「棋士になって1番ショック」――プロ棋士や開発者の反応は http://www.itmedia.co.jp/news/articles/1603/10/news093.html 2
  3. 3. ニューラルネットワークから ディープラーニングへ 3
  4. 4. ニューラルネットワーク研究の系譜 1950 1960 1970 1980 1990 2000 2010 ニューロンと シナプスの発見 パーセプトロン 誤差逆伝播学習 (バックプロパゲーション) 人工神経細胞の 情報処理研究 人工知能の誕生 1943-1956 黄金時代 1956-1974 AIの冬第1期 1974−1980 ブーム 1980–1987 AIの冬第2期 1987−1993 パーセプトロンが 線形非分離の 問題を解けない指摘 オートエンコーダー ネオコグニトロン ボルツマンマシン 深層自己符号化器 LeNet-5 Alexnet 深層信念ネットワーク 4
  5. 5. ニューロンのモデル化 神経細胞(ニューロン) θ (Bias) 𝑥1 𝑥2 𝑥 𝑛 ⋮ 𝑦 入力 𝑤1 𝑤2 𝑤 𝑛 重み 出力 ニューロンモデル  多入力1出力の非線形素子としてモデル化 神経細胞を機械で模倣したら…? 神経による筋収縮の指令-ニューロン http://www.tmd.ac.jp/artsci/biol/textlife/neuron.htm 5
  6. 6. 活性化関数とダミー変数 θ (Bias) 𝑥1 𝑥2 𝑥 𝑛 ⋮ 𝑦 = 𝑎 𝑖 𝑤𝑖 𝑥𝑖 − 𝜃 入力 𝑤1 𝑤2 𝑤 𝑛 重み 出力 活性化関数  入力値の線形結合+活性化関数による非線形変換  活性化関数の例:しきい関数(ヘビサイド関数) 𝑎𝑡ℎ𝑟 𝑥 = 1 𝑖𝑓 𝑥 ≥ 0 0 𝑖𝑓 𝑥 < 0  活性化関数の例:シグモイド関数 𝑎 𝑠𝑖𝑔 𝑥 = 1 1 + 𝑒−𝑥 θ (Bias) 𝑥1 𝑥2 𝑥 𝑛 ⋮ 𝑦 = 𝑎 𝑖=0 𝑛 𝑤𝑖 𝑥𝑖 = 𝑎(𝑤Τ ∙ 𝑥) 入力 𝑤1 𝑤2 𝑤 𝑛 重み 出力 ダミー変数の導入  つねに1の値を取るダミー変数𝑥0を導入して、 𝑥 = 𝑥0, ⋯ , 𝑥𝑛 , 𝑤 = (𝑤0, ⋯ , 𝑤𝑛)とすれば 𝑦 = 𝑎 𝑖=0 𝑛 𝑤𝑖 𝑥𝑖 = 𝑎 𝑤Τ ∙ 𝑥 と書ける。ここで𝑤0 = −𝜃である。つまり、閾値をダミー変数からの 入力とみなすことで、式の形をベクトルの内積で表せる。 活性化関数 𝑥0 = 1 𝑤0 = −𝜃 ダミー変数 活性化関数で神経細胞の発火 (スパーク)を模倣する 6
  7. 7. ベクトルの転置と内積 𝑤1 𝑤2 ⋮ 𝑤 𝑛 ⊺ ∙ 𝑥1 𝑥2 ⋮ 𝑥 𝑛 行と列を入れ替えた(転置) 𝑤1, 𝑤2, ⋯ , 𝑤𝑛 ∙ 𝑥1 𝑥2 ⋮ 𝑥 𝑛 = 𝑤1 × 𝑥1 + 𝑤2 × 𝑥2 + ⋯ + 𝑤𝑛 × 𝑥𝑛= ベクトル(行列)のかけ算は行×列の足し算 𝑖=1 𝑛 𝑤𝑖 × 𝑥𝑖= 足し算を示す記号シグマ(Σ)の導入  線形結合 各変数に対して、重み(固定値)をそれぞれ掛け合わせて足し算するような結合方法を線形結合と言う シンプルな方法ではあるが、線形結合は解析的に解を求められるので、変数間の関係を記述する基本となる 逆に言うと、非線形結合の場合は解が一意に求まらない可能性がある 線形結合は線形代数(ベクトル、行列の演算)の基礎であり、統計分析や機械学習をサポートするプログラミング言語の多くは 線形代数の演算をプログラム上で簡単に記述できるようにしている  例 線形結合:𝑎 × 𝑥1 + 𝑏 × 𝑥2 + 𝑐 × 𝑥3 非線形結合:𝑎 × 𝑥1 × 𝑥2 + 𝑏 × 𝑥2 4 + 𝑐 × log(𝑥3) データが行列(表形式)なのだから、 重みとかも全て行列で表しておくと 計算とか速い! 7
  8. 8. Softmax関数 8
  9. 9. Softmax関数  シグモイド関数を多クラス分類に拡張したもの  出力は分類するクラスそれぞれに所属する確率で、その総和は1となる 𝑎 𝑠𝑜𝑓𝑡𝑚𝑎𝑥 = exp(𝑥𝑘) 𝑖=1 𝑛 exp(𝑥𝑖) = exp(𝑥𝑘) exp 𝑥1 + exp 𝑥2 + ⋯ + exp(𝑥𝑛)  xがベクトルで渡された場合は 𝑥 = 3 1 0.2 𝑎 𝑠𝑜𝑓𝑡𝑚𝑎𝑥 𝑥 = exp 3 exp 3 + exp 1 + exp 0.2 exp 1 exp 3 + exp 1 + exp 0.1 exp 0.2 exp 3 + exp 1 + exp 0.2 = exp(3) exp(1) exp(0.2) × 1 exp 3 + exp 1 + exp(0.2) = exp( 𝑥) × 1 𝑠𝑢𝑚(exp 𝑥 ) 9
  10. 10. Softmax関数 10
  11. 11. 思考実験 0.2 1.2 1 2.7 3 20 &=𝑎 𝑠𝑜𝑓𝑡𝑚𝑎𝑥 3 1 0.2 &= exp 3 exp 1 exp 0.2 ÷ exp 3 + exp 1 + exp 0.2 &= 0.84 0.11 0.05 1の周辺だと、確率はばらける 11
  12. 12. 思考実験 - 各値を10倍した場合 2 7 10 22026 30 1.06×1013 &=𝑎 𝑠𝑜𝑓𝑡𝑚𝑎𝑥 30 10 2 &= exp 30 exp 10 exp 2 ÷ exp 30 + exp 10 + exp 2 &≈ 1 0 0 数が大きいと、一番大きい値がほ とんど100%の確率で起こる 12
  13. 13. 思考実験 - 各値を1/10倍した場合 0.02 1.02 0.1 1.10 0.3 1.34 &=𝑎 𝑠𝑜𝑓𝑡𝑚𝑎𝑥 0.3 0.1 0.02 &= exp 0.3 exp 0.1 exp 0.02 ÷ exp 0.3 + exp 0.1 + exp 0.02 &= 0.38 0.31 0.29 数が小さいとどれが起こるか分か らない(確率が均等) 13
  14. 14. ニューラルネットワークから ディープラーニングへ(続き) 14
  15. 15. 誤り訂正学習(error correction learning) θ (Bias) 𝑥1 𝑥2 𝑥 𝑛 ⋮ 𝑦 入力 𝑤1 𝑤2 𝑤 𝑛 重み 出力 𝑥0 = 1 𝑤0 = −𝜃  1個のニューロンの学習 ニューロンへの入力の重みwと閾値θを決定することで、そのニューロンの入力と出力の関係が決まる ニューロンが与えられたデータに対して最適な重みと閾値を形成していくことを学習と呼ぶ Donald Hebbが1949年に書いた『行動の機構』の中で、「生物学的にシナプスを経て到着した入力が直ちにパルスを発生させる時、 その結合係数の効率は少し増加する」と提唱した そこからHebbはニューラルネットワークの重みを変化させることで学習ができるという仮説を立てた  アルゴリズム 1: 学習データの中の入力𝒙𝒋に対して、現在の重み𝒘を用いて出力𝑦を計算する 2: if 𝑦が正解𝑡𝑗と一致 then 3: 何もしない 4: else 5: 重み𝑤を次式で更新する 𝑤 ← 𝑤 + 𝜂(𝑦 − 𝑡𝑗) 𝑥 6: end if これは、正解と一致しない場合に少しずつ重みを更新するアルゴリズムである 𝜂は一回の更新量を決める小さな正の整数で、学習率と呼ばれる データがどのようにして生成されたか知らないが、 ニューロンは重みをうまく調整(学習)して、 入力から出力を予測することができる! 15
  16. 16. 誤り訂正学習  活性化関数 ヘビサイド関数として、𝑤0 ∙ 𝑥0 + 𝑤1 ∙ 𝑥1 + 𝑤2 ∙ 𝑥2 = tの値が0以上なら1、0未満なら0を出力する  重み初期値 簡単のために、初期値は全て0とする  学習率 簡単のために学習率は1とする  学習データ 𝒙0 𝒙 𝟏 𝒙2 𝒚 1 0 0 0 1 1 0 1 1 0 1 1 1 1 1 1  学習1回目 上のレコードから順に読んで、重みを更新する(オンライン学習) 𝒘0 𝒘 𝟏 𝒘 𝟐 𝒙0 𝒙 𝟏 𝒙2 𝒚 𝒕 重み変更 0 0 0 1 0 0 0 1 有り -1 0 0 1 1 0 1 0 有り 0 1 0 1 0 1 1 1 無し 0 1 0 1 1 1 1 1 無し 活性化関数 の計算結果 yとtの比較 結果 𝑤0 𝑤1 𝑤2 ← 0 0 0 + 0 − 1 1 0 0 = −1 0 0 𝑤0 𝑤1 𝑤2 ← −1 0 0 + 1 − 0 1 1 0 = 0 1 0 更新式 𝑤 ← 𝑤 + 𝜂(𝑦 − 𝑡𝑗) 𝑥 ヘビサイド関数 𝑎𝑡ℎ𝑟 𝑥 = 1 𝑖𝑓 𝑥 ≥ 0 0 𝑖𝑓 𝑥 < 0 16第4章 ニューロンの学習について http://ipr20.cs.ehime-u.ac.jp/column/neural/chapter4.html
  17. 17. 誤り訂正学習  学習2回目 𝒘0 𝒘 𝟏 𝒘 𝟐 𝒙0 𝒙 𝟏 𝒙2 𝒚 𝒕 重み変更 0 1 0 1 0 0 0 1 有り -1 1 0 1 1 0 1 1 無し -1 1 0 1 0 1 1 0 有り 0 1 1 1 1 1 1 1 無し 更新式 𝑤 ← 𝑤 + 𝜂(𝑦 − 𝑡𝑗) 𝑥 活性化関数 の計算結果 yとtの比較 結果 𝑤0 𝑤1 𝑤2 ← 0 1 0 + 0 − 1 1 0 0 = −1 1 0 𝑤0 𝑤1 𝑤2 ← −1 1 0 + 1 − 0 1 0 1 = 0 1 1 ヘビサイド関数 𝑎𝑡ℎ𝑟 𝑥 = 1 𝑖𝑓 𝑥 ≥ 0 0 𝑖𝑓 𝑥 < 0  学習3回目 𝒘0 𝒘 𝟏 𝒘 𝟐 𝒙0 𝒙 𝟏 𝒙2 𝒚 𝒕 重み変更 0 1 1 1 0 0 0 1 有り -1 1 1 1 1 0 1 1 無し -1 1 1 1 0 1 1 1 無し -1 1 1 1 1 1 1 1 無し 𝑤0 𝑤1 𝑤2 ← 0 1 1 + 0 − 1 1 0 0 = −1 1 1  学習4回目 𝒘0 𝒘 𝟏 𝒘 𝟐 𝒙0 𝒙 𝟏 𝒙2 𝒚 𝒕 重み変更 -1 1 1 1 0 0 0 0 無し -1 1 1 1 1 0 1 1 無し -1 1 1 1 0 1 1 1 無し -1 1 1 1 1 1 1 1 無し 17
  18. 18. パーセプトロンの限界  連合層による情報処理能力の向上 前処理として、固定結合のノード層で非線形結合を行うことで 単純パーセプトロンの情報処理能力が向上する (誤り訂正学習では、出力層に直結するネットワークの重みしか 更新できないため、連合層への重みは固定値) 固定結合の非線形変換 (前処理) 単純パーセプトロン の学習 パーセプトロン(Rosenblatt, 1958)  非線形な問題は解けない 1960年代後半に、Minskeyらがパーセプトロンでは 計算できない問題があることを理論的に示した ? AIの冬 第1期へ パーセプトロンの学習は1層まで 18
  19. 19. 多層パーセプトロン  多層パーセプトロン(階層型ニューラルネットワーク) 入力層→隠れ層→出力層へと一方向に伝播されるネットワーク パラメータ最適化はNP困難だが、誤差逆伝播法で局所最適解に収束  十分な数のニューロンが隠れ層に存在すれば、任意の非線形連続関数は3層のネットワークで近似できることが理論的に示されている 4層以上(隠れ層2層以上)をディープラーニングと呼ぶが、 計算量が多く、またそのようなネットワークを持つ必然性は理論的に示されていない 入力層 隠れ層 出力層 2層以上のニューラルネットワークも 解けるようになった! 19
  20. 20. 誤差逆伝播法(Backpropagation)  基本的なコンセプトは誤り訂正学習と同じ 出力した結果と正解のラベルを比較して、誤差を逆向きに伝えて誤差が小さくなる 方向に各ニューロン(ノード)で重みを調整する  活性化関数は微分可能な関数にする 微分可能にすることで、誤差のフィードバック寄与を偏微分係数で計算できるようにした 入力層 隠れ層 出力層 フィードフォワード とりあえず、学習データからニューラルネット ワークを通して結果を出す 𝑥𝑖 𝑡𝑖 フィードバック 結果と正解データを比較して、誤差を一つ前の ノードに按分していく 非線形問題を解くニューラルネットワークも これで作れる! 𝐿 = 1 2 𝑦𝑖 − 𝑡𝑖 2 𝑓ℎ𝑖𝑑𝑑𝑒𝑛 20
  21. 21. コスト関数(cost function) 各ノードの重みをどのような方向で更新したら良い?  数理最適化問題 コスト関数を最小(または最大)にするように重みを更新していく  Cross Entropyとコスト関数 Cross EntoropyはSoftmax関数の出力𝑆と正解ラベル𝐿の距離の様なもので、次の定義となる &𝐷 𝑆, 𝐿 = − 𝑖 𝐿𝑖 𝑙𝑜𝑔(𝑆𝑖) このCross Entropyを用いて、コスト関数を以下の様に定義することができる ℒ = 1 𝑁 𝑖 𝐷(𝑆 𝑤𝑥𝑖 + 𝑏 , 𝐿𝑖)  局所最適解 例えば、コスト関数の値を最小化するように重みを更新していった際に、 学習率をかけた程度に重みを更新しても コスト関数の値が下がらなくなり、重みの更新が停止する場合がある。 この場合に全体で見たときの最適な重み(大域的最適解)ではなく、 局所最適解にはまってしまうことがある 更新式 𝑤 ← 𝑤 + 𝜂(𝑦 − 𝑡𝑗) 𝑥 学習率 http://www.msi.co.jp/nuopt/docs/v17/manual/html/0B-05-00.html 21
  22. 22. 確率的勾配降下法 (Stochastic Gradient Descent) 全データを使って重みの更新する方向を決めると計算 が重いので、ランダムで抜き出した一部のデータだけ を使って重みの更新をしてみる  最急降下法 全データを使って重みを更新していく データが多いと当然、計算量が多い  確率的勾配降下法 ランダムでピックアップしたデータで重みを更新する 1回1回は必ずしも最適な重み(コスト関数を最小化するもの) に近づいているとは限らない サンプルサイズを小さくすればイテレーションスピードが上がるが イテレーション回数が増えるのでバランスを取る 確率的勾配降下法とは何か、をPythonで動かして解説する http://qiita.com/kenmatsu4/items/d282054ddedbd68fecb0 22
  23. 23. 確率的勾配降下法のテクニック 確率的勾配降下法 http://akabe.github.io/2015/01/StochasticGradientDescent  入力値について 平均=0、分散を小さい値に標準化などしておく(学習のイテレーション回数を減らすため)  重みの初期値について 平均=0、小さい分散でランダム化しておく(初期値が全てゼロだと、初めから局所最適解で学習が一切進まない場合がある)  Momentum 重みの更新式を学習のステップごとに変化させていく 学習のステップの初期段階では、大きく重みを変化させていって、学習の最終段階では小さく重みを変化させたい  Learning Rate Decay 学習のステップを進めるにつれて、学習率を下げる Momentumと狙いは同じで、最初は大きく、最後は小さく重みを変化させたい Momentumと併用する 23
  24. 24. 機械学習モデルの評価 教師あり学習(ニューラルネットワークなど)における 過剰適合。訓練時のエラーを青、評価時のエラーを赤で 示している。訓練時のエラーが減少しているのに、評価 時のエラーが増えている場合、過剰適合が起きている可 能性がある。 https://ja.wikipedia.org/wiki/%E9%81%8E%E5%89%B0%E9%81%A9%E5%90 %88  過学習とは ニューラルネットワークの学習を完了させると、学習に使用したデータに対しては 非常に高い性能を示すが、新規データに対しては大した性能を示さない場合がある。 これを過学習と呼ぶ。  ホールドアウト検証 過学習を防ぐための一つの方法として、データをトレーニング、バリデーション、 テストに3分割して学習を進めるホールドアウト検証という方法がある 全データ数が30000より少ない場合はクロスバリデーションを検討しても良いが、 実行時間がかかるということを念頭に置くこと 基本的にはデータを増やすほうが良い戦略 トレーニング 学習時の重みの更新に使用 バリデーション 学習時に未知データに対する適 合度合いの性能評価に使用 学習の早期打ち切りなどのハイ パーパラメータ調整にも使用さ れることもある テスト 学習時には使用しない 学習が完全に完了した後 に、完全に新規のデータ に対するモデルの性能を 測定するために使用  Rule of 30 モデルに変更があった際に、バリデーションセットでの正解数が30増加していれば、 モデルの性能が向上しているとみなす経験則(ヒューリスティック) 24
  25. 25. 多層ニューラルネットワークの限界  層の数やそれぞれの層のノードをいくつにするか? 原理的には隠れ層が1層あれば任意の入出力関係を実現可能 タスクによっては隠れ層のノード数が非常に多くなるため、層の数を増やす方が性能が上がることも期待される また、生物の脳でも複数の階層を持つ特徴抽出が行われていることが示唆されている  過学習しやすい 誤差逆伝播法を深層ニューラルネットワークに適用した場合に明らかになったのは、局所最適解の問題が深刻になるということであった  勾配消失問題 層が深くなればなるほど、出力層から入力層へ戻ってくる誤差が減衰して、入力層近くでは学習が進まない  サポートベクターマシン(SVM)の登場 局所最適解への収束という問題が無く、カーネル法で複雑な非線形タスクの識別も可能、 手書き文字認識を初めとするさまざまなベンチマークテストでニューラルネットワークを上回る性能を示した AIの冬 第2期へ 25 “深層学習 Deep Learning”, 人工知能学会監修, 近代科学社, 2015
  26. 26. NETtalk (Sejnowski, 1986)  ニューラルネットワークに英語の発音を学習させる NETtalk Test https://youtu.be/gakJlr3GecE 26
  27. 27. ネオコグニトロン (Fukushima, 1979) 画像認識においては、入力画像内での文字の位置が ずれたり、多少変形していたりしても認識結果が変 わらないことが望ましい ネオコグニトロンは、細胞の層を何段も階層的につ ないで組み立てた多層の神経回路である。この回路 の中には、図形の特徴を抽出する「S細胞」層と、特 徴の位置ずれを吸収する働きを持つ「C細胞」の層と が交互に並んでいる。 畳み込みニューラルネットワーク(CNN)の源流 意図的に一部のノード間は接続していない 27 神経回路モデル「ネオコグニトロン」 http://dbnst.nii.ac.jp/pro/detail/498
  28. 28. LeNet (LeCun, 1989) 畳み込みニューラルネットワーク(CNN)の源流 意図的に一部のノード間は接続していない 28 LeNet-5, convolutional neural networks http://yann.lecun.com/exdb/lenet/
  29. 29. 自己符号化器(Autoencoder)  砂時計型ニューラルネットワーク(hourglass-type neural network) 入力よりも、中間層のノードを少なくしたニューラルネットワーク 中間層のノードでは情報の次元削減が行われた表現が得られることを確認  主成分分析と同等 ノードの活性化関数として恒等関数(identity function)を用いた場合は、 主成分分析と同等の処理結果が得られることを確認  実用的では無い タスクに依らない汎用の内部表現を得る手段として興味深いものであったが、 圧縮符号化の能力は他の符号化法と比較してそれほど高くなかったため、 実用的には注目されなかった ⋮ ⋮ 情報の低次元化にニューラルネットワークを使う 入力層 隠れ層 出力層 29 “深層学習 Deep Learning”, 人工知能学会監修, 近代科学社, 2015
  30. 30. 積層自己符号化器(Stacked Autoencoder) 自己符号化器を繰り返し適用して 勾配消失問題を回避する  事前学習 発見から約20年後の2006年頃に、Bemingoらは自己符号化器を 多層のネットワークの事前学習(pre-training)の手法として用いる貪欲学習を提案した ① 隠れ層が1層の自己符号化器を学習させる (隠れ層が1層なので勾配消失問題を回避) ⋮ ② 出力層を削除して入力を 次元削減表現に変換するネットワークを得る ⋮⋮ ⋮ ③ 次元削減信号を入力信号として、 さらに後ろの層で自己符号化学習を適用して より低次元の内部表現を得る 30 “深層学習 Deep Learning”, 人工知能学会監修, 近代科学社, 2015
  31. 31. Large Scale Unsupervised Learning (Ng, 2012)  9層のニューラルネットワークを使った教師無し学習 パラメータ数10億個 16コアPC1000台のPCクラスタ×3日間 入力はYouTubeから切り出された1000万枚の画像  結果 人の顔や猫の顔、瓶などさまざまな種類の物体に特異的に 応答するノードが形成されたと報告 31
  32. 32. ディープラーニングの現状と今後  ディープラーニングは性能の良さで注目されているが • ディープラーニングによって得られる内部表現がなぜ良い性能につながるのか明確では無い • どのようなタスクにどのような構造のネットワークが適しているのか判明していない  貪欲学習 • 経験的に実問題でうまくいくことが知られているが、原理的には局所最適解に陥っている可能性がある  得られたモデルの理解 • 解釈が困難 • 内部表現の多変量解析を行う、浅い層のノード値をサンプリングする、 あるノードが強く反応する入力信号を合成するなどで解釈しようと試みている  入力信号や内部表現は特徴ベクトルで良いのか? • 言語の意味や一連の行動のように組合せ構造に意味がある情報の表現として適切か明らかでは無い  注目すべき最新の研究としては • 画像を入力として画像の説明文を出力する • テキストを入力として別の言語のテキストを出力する • 最適な行動系列を探索学習する 学習の局所収束 中間表現の 解釈困難性  知的情報処理のタスクが高度化している • 手書き数字認識から一般物体認識へ • 音声認識から連続音声認識へ • 形態素解析から談話理解や統計的機械翻訳へ 果たしてどこまで人間の知能に迫り、それを超えてゆくのか? 32“深層学習 Deep Learning”, 人工知能学会監修, 近代科学社, 2015
  33. 33. ディープラーニングの全体像 確定的 自己符号化器 Autoencoder [AE] 深層自己符号化器 Deep Autoencoder [DAE] 階層型ニューラルネット Hierarchical Neural Network [HNN] 深層(階層型)ニューラルネット Deep (Hierarchical) Neural Network [DNN] 再帰ニューラルネット Recursive Neural Network [RNN] 畳み込みニューラルネット Convolutional Neural Network [CNN] 回帰結合ニューラルネット Recurrent Neural Network [RNN] 確率的 制限ボルツマンマシン Restricted Boltzmann Machine [RBM] 深層信念ネットワーク Deep Belief Network [DBN] 深層ボルツマンマシン Deep Boltzmann Machine [DBM] 深層化 再帰的部分構造 畳み込み構造 回帰結合入力 深層化 深層化(有向) 深層化(無向) 33“深層学習 Deep Learning”, 人工知能学会監修, 近代科学社, 2015

×