HOME > natural science Laboratory > コンピュータ・シミュレーション講座 > ゼロから作るDeep Learning

ゼロから作るDeep Learning
1n1型2層ニューラルネットワークで1変数関数を学習させてみる3:ニューロン数による学習効果の違い

文責:遠藤 理平 (2017年4月17日) カテゴリ:ゼロから作るDeep Learning(14)

昨今注目を集めているAI(人工知能)を学びたいと思い立ち、ディープラーニング(Deep Learning、深層学習)と呼ばれるAIの数理モデルである多層構造のニューラルネットワークを書籍「ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装」を参考にを独習していきたいと思います。本書籍ではプログラミング言語としてPythonが利用されていますが、本項ではJavaScriptで実装していきます。

目次


ニューロン数による学習効果の違い

入力と出力が1個、隠れ層が10個のニューロンで構成されるニューラルネットワークで学習した前項の3次関数の学習を題材にして、ニューロン数を変更した場合の学習効果の違いを検証します。

横軸:ニューロン数、縦軸:損失関数

次のグラフはニューロン数に対する損失関数の値(10回の平均値)です。3本のグラフは学習回数1000回、2000回、3000回に対応します。 (※)読み込みごとに計算しているためグラフ表示までに10秒程度掛かります。

実行ごとに若干のばらつきはありますが、ニューロン数は多い方、学習回数は多い方が損失関数の値が小さくなり、うまく学習できていることがわかります。 3次関数の場合には、ニューロン数7個で2000回程度で概ね表現できていることがわかりました。今回は隠れ層が1層でしたが層数の依存性も今後検証していきます。



▲このページのトップNPO法人 natural science トップ

関連記事

ゼロから作るDeep Learning







▲このページのトップNPO法人 natural science トップ