ディープラーニングの基本・応用②

ディープラーニングの概要と学習の仕組みについて。

目次

AI・ディープラーニングの全体像

  • 人工知能
  • 機械学習
  • ディープラーニングの基本・応用
  • ディープラーニングの研究
  • AIプロジェクト
  • AI社会実装に伴う法律・倫理

ニューラルネットワークの学習プロセス

概要

  • ニューラルネットワークの学習の目標→出力データ(予測結果)と正解ラベルとの誤差を最小化すること
  • 各隠れ層の重みを繰り返し調整し、”予測の誤差”を最小化するようなモデルのパラメータ(重みなど)の値を模索する
勾配降下法重みの値を最適化する方法
誤差逆伝播法重みを更新していくために必要な誤差情報をネットワークの中で伝達する方法

勾配降下法

  • 出力データと正解ラベルとの間の誤差を定量的に表現する→「損失関数(Loss Function)」(誤差関数、ロス関数)
  • 損失関数は、予測値と正解が近いほど小さくなっていく
  • 最も小さい誤差となるパラメータの組み合わせ→「最適解」
  • 損失関数を最小化するよう、ネットワークのパラメータを更新していく
  • 損失関数の変化量を調べるために微分を用いて、パラメータ設定値における接線の傾きを求め、誤差が減る方向(=損失関数の傾きが負の方向)に重みの値を更新していくことを繰り返していく
  • 「勾配降下法(Gradient Descent)」というアルゴリズムによって最適解を見つけていく
  • 損失関数の傾き▽L(w)が0に近づくような重み(w)の組み合わせを求め、重みの値を更新する
    ※▽L:損失関数Lをパラメータwで偏微分した勾配値
    ※w:パラメータ(重み)
  • 「学習率」を適切な値に設定する
  • 学習率の設定値が適切でない場合、真の最適解である「大域最適解」ではなく、特定区間での極小点である「局所最適解」に陥ってしまうリスクがある
  • 各回のパラメータ更新を、1回の「イテレーション(Iteration)」と呼ぶ
  1. パラメータ(重み、バイアス)を初期化する
  2. 学習データを入力層から入力し、ネットワークの中を入力層から出力層の方向に、各層で重みを乗じながら伝播させる
  3. 出力層から予測結果を出力してみる
  4. 出力結果と正解との間の誤差を示す「損失関数」を算出する
  5. 誤差が小さくなるよう、「勾配降下法」を用いて、パラメータを更新する
  6. 「最適解」に到達するため繰り返す

誤差逆伝播法

  • 「順伝播(Forward Propagation;フォワード・プロパゲーション)」→入力層にデータを入れ、各層で重みを乗じつつ、出力層の方向にデータを伝播させていく
  • 「誤差逆伝播(Back Propagation;バック・プロパゲーション)」→誤差については逆方向に伝播させ、出力層から入力側に向けて伝播していき、重みの更新も出力側に近い層から行っていく
  • 問題①「勾配消失問題」ネットワークが深くなるにつれ、重みの更新に必要な情報がうまく伝播できなくなってしまう問題
  • 問題②「局所最適解問題」→最適化が失敗し、局所最適解(偽物の最小点)に陥ってしまう問題

この記事が気に入ったら
いいね または フォローしてね!

  • URLをコピーしました!
目次