概要
RNN(リカレントニューラルネットワーク)とは、再帰的な結合を持ったニューラルネットワークで、時系列データを扱うネットワークである。
ディープラーニングの一種として位置付けられている。
目次
RNN
以下の図がRNNの概略図である。
このように再帰的な結合を持ったネットワークとなっている。
時刻tにおけるRNNの隠れ状態(出力)は以下の式で表される。
xtは時刻tにおける入力、Wihは入力からRNNへの結合重み、Whhはリカレント結合重み、bih、bhhはそれぞれに対応するバイアスである。
活性化関数には、式のようにtanh関数を用いていることもあるが、ReLU関数を用いる場合もある。
活性化関数
活性化関数とは、生体における活性化したニューロンを表現するために考えられた関数である。この活性化関数を通すことで、小さな入力を活性化させ、大きな入力を得ることを可能にしている。RNNの章で挙げたtanh関数とReLU関数について解説する。
tanh関数
以下のようなグラフがtanh関数である。入力が-3から3の場合で表示している。
このようにtanh関数は任意の点で微分可能な関数である。
ReLU関数
ReLU関数は0以下の時に0を返し、0より大きい時、入力された値をそのまま返す関数である。出力をすべて非負値にしたいときに用いる。