Kerasでの処理入門(ニューラルネットワーク)[モデル構築]

プログラム
スポンサーリンク

Denseまでで区切ると中途半端なので、Compileまで書いてしまおうかと思います。
Lesson1 手書き文字認識をしよう(ニューラルネットワーク入門)

Sequential定義

Sequentialはモデルを格納するオブジェクトと考えると楽だと思います。
定義したSequentialオブジェクトに対してモデルを付け足していきます。

Dense/Activation定義

addを使用してSequentialに追加していきます。
Activationで定義する活性化関数はDenseでも定義できるので、ここは記載方法の問題だけとなります。

Denseでは「units」と「input_shape」を定義します。
「input_shape」は入力データの次元を定義します。
今回は1次元の784要素を「1データ」として扱います。
unitsは出力データの次元になります。

Activationは活性化関数となります。
この部分は数学知識が必要になってきますね。

Dense/Activation定義では、「データの次元」「活性化関数」を適切に設定できるかが重要となります。

Compile定義

Compileでは「損失関数」「最適化アルゴリズム」「評価関数」の3つを定義します。
評価関数は学習結果の評価時に使用しますので、モデル構築としては「損失関数」「最適化アルゴリズム」の選択が重要になります。

ここまでの内容整理

プログラムとして、分岐もループもありません。
重要なのは「データの次元管理」「階層管理」「活性化関数の選定」「最適化アルゴリズムの選定」「損失関数の選定」です。
コーディング量が変わる部分はDenseの階層だけでしょうか。

コメント

タイトルとURLをコピーしました