|
前提知識
・畳み込みニューラルネットワーク
・kerasによるニューラルネットワーク構築
・kerasインストール方法 , 関数説明
・relu関数 , softmax関数 , sigmoid関数
こちらでkerasを使ったニューラルネットワーク(NN)の使用方法を説明しましたが、ここではkerasによる畳み込みニューラルネットワーク(CNN)の構築方法を説明します。
題材はMNISTの画像データを用いその正答率と測るというものです。プログラムファイル等は以下。
・画像データ:mnist_data.zip
・プログラムファイル:cnn_keras.zip
・kerasのインストール , 関数説明
CNNの構造は以下。

■実行結果
活性化関数はrelu関数、softmax関数を用い、学習繰り返し数(epoch数)20回とした結果、約98%の正解率を得る事ができました。実行時間は約400秒でした。

これ以上学習回数を増やしても高い正解率を得る事はできず、畳み込み層だけを追加しただけでは劇的には正解率は向上しませんでした。更なる改善にはより深い層を追加する必要があり、その方法をこちらで説明します。
なお、活性化関数として中間層と出力層どちらもsigmoid関数を使った場合、10%という非常に低い正解率になります。この原因は不明です。
サブチャンネルあります。⇒ 何かのお役に立てればと
|
|