ディープラーニング

ディープラーニングを動画で理解する(解説)

更新日:

DNN図カラー

 

この記事では、(記事)ディープラーニングを動画で理解する の記事に載せた動画の解説をします。

DNN内部の実行順序は次のとおりです。具体的に見ていきましょう。

DNN

 

動画で表しているのはディープニューラルネットワーク(DNN)です。これはディープラーニングの基本となるモデルです。

これを応用した畳み込みニューラルネットワーク(CNN)が画像処理によく使われていますが、小さな画像であればDNNでも処理ができます。

 

 

1.入力を行列にする

 

 

ニューラルネットワークの中身は行列の計算です。入力したデータは画像も音声も数値も全て行列に置き換えられます。

例えば画像は1ドット毎に [縦、横、色] という数値に置き換えることができます。これを分けたり結合したりする計算に行列が都合いいのです。また、大きなサイズのデータや大量のデータを処理することにも行列は長けています。

入力層は、動画のように1ドット単位で入力するケースがあるほか、複数の画像をバッチという形にまとめて、まとまりを行列にして入力することもあります。

 

2.順伝播する

 

 

入力されたデータ(行列)は中間層、出力層に向かって計算を行います。順伝播(じゅんでんぱん)といいます。

順伝播の間に、データに重み(W)というものがかけ算されます。そして、隣り合う数値が足し算され、次の層へ進みます。

 

なぜ重み(W)をかけ算するの? -> 特徴である部分を強調するためです。

なぜ隣り合う数値を足し算するの? -> データの継ぎ目を作りたくないからです。

な -> ええい、正直言うと、脳神経を真似て作ってみたらうまくいったんです!

 

3.一時結果を出す

 

 

この絵は分かり易くするため少し嘘が入っています。

出力を30%と出してますが、本当は少し手前で損失(ロス)という数値を出してから折り返します。

30%というのは、入力した手書き文字が5である確率を示しています。これを100%にするよう、これからDNNは頑張っていきます。

近づけるにはあと70%必要ですね。これがロスのようなものです。

 

4.逆伝播する

 

 

ロスが出たら、計算を逆に行っていきます。逆伝播といいます。

何のための逆伝播でしょうか。重み(W)を修正するためにあります。

先ほどの一時結果が100%へ近づくようなWにしていきます。ただしできるだけ滑らかに変化していくよう、微分を使った計算になります。

微分と聞くと難しそうですが、逆伝播を使うと簡単に計算できるのです。そのように考えられているんですね。なにしろ何百・何万回と往復するので、できるだけ簡単な計算でないといけません。

 

5.順伝播と逆伝播を繰り返す

 

 

こうした順伝播・逆伝播を繰り返し、100%に近づけていきます。この時、重みWが変化し続けます。

何回往復するかは実行する側が定義します。どの程度で精度が頭打ちになるか、実行する側も何度か試行が必要です。

100%になるAIは現在のところないので、9割以上になれば良いところ、として終了させます。

 

 

6.学習済みの重みWが求まる

 

 

こうして終了した時には、正解に近い結果を出せるような重みWが求まります。このWの集まりが学習済みモデル(パラメータともいいます)となります。

動画はこちら → (記事)ディープラーニングを動画で理解する

 

 

DNNの計算要素

 

以上の学習は、次のような要素が入っています。それぞれ複数の手法があり、選択によってモデルの精度が変わってきます。機会があれば紹介していきます。

 

  • 活性化関数
  • 正則化
  • 損失関数
  • 最適化アルゴリズム

 

 

-ディープラーニング

Copyright© やさしいAIの始め方 , 2024 All Rights Reserved Powered by STINGER.