0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ゼロから作るDeepLearningを読んで1

Last updated at Posted at 2018-03-21

はじめに

 O'REILLYから出版されている「ゼロから作るDeepLearning」を読んで、自分なりに纏めた内容です。
 書籍には、PythonでDeepLearningを作成する手順や各種関数の説明などがありますが、主に理論寄りの内容を書いていきます。

活性化関数について

DeepLearningでは、複数の層からなるニューラルネットワークを形成し、入力層から出力層へ伝播する際に下図のように計算されます。
活性化関数の略図.png

\begin{eqnarray}
a=b+w_{1}x_{1}+w_{2}x_{2}
\end{eqnarray}
\begin{eqnarray}
y=h\left( a\right) 
\end{eqnarray}

[補足]
   $ b $ :  バイアス
  $ w_{1} $ :  $ x_{1} $の重み
  $ w_{2} $ :  $ x_{2} $の重み

上図の$ h\left( \right) $が活性化関数です。

活性化関数の例

シグモイド関数

\begin{eqnarray}
 h\left( x\right)=\dfrac {1}{1+\exp \left( -x\right) } 
\end{eqnarray}

sigmoid_graph.png

ステップ関数

\begin{eqnarray}
h\left( x\right) =\begin{cases}1\left( x >0\right) \\
 0\left( x\leqq 0\right) \end{cases} 
\end{eqnarray}

step_function_graph.png

ReLU関数

\begin{eqnarray}
h\left( x\right) =\begin{cases}x\left( x >0\right) \\
 0\left( x\leqq 0\right) \end{cases} 
\end{eqnarray}

ReLU_graph.png

出力層の設計

出力層の活性化関数($ \sigma \left( \right) $とする)を変更することで、分類問題や回帰問題に使用できます。

  • 分類問題:データがどの分類に属するかを判定(0-9の手書き画像から、その画像の数値を判定)
  • 回帰問題:入力データから数値の予測(例:写真から値段や大きさを予測)

出力層の関数

ソフトマックス関数

\begin{eqnarray}
y_{k}=\dfrac {\exp \left( a_{k}\right) }{\sum ^{n}_{i=1}\exp \left( a_{i}\right) }
\end{eqnarray}

分類問題で使用されるよう。

ソフトマックス関数の特徴

ソフトマックス関数の出力は0から1.0までの値になります。つまり、出力値は確率として解釈することが出来る。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?