活性化関数を比較する
活性化関数の比較には少しコードが必要ですが、心配はいりません!
第2章で作成した農場の灌漑機向けのマルチラベルモデルに、さまざまな活性化関数を試してみます。関数 get_model('relu') は、このモデルのコピーを返し、隠れ層に 'relu' 活性化関数を適用します。
いくつかの活性化関数をループで回し、それぞれに対して新しいモデルを生成して学習させます。履歴コールバックをディクショナリに保存しておけば、次の演習でどの活性化関数が最も良かったかを可視化できます!
X_train、y_train、X_test、y_test は、モデルの学習にすぐ使える状態です。
この演習はコースの一部です
Kerasで学ぶIntroduction to Deep Learning
演習の手順
- 活性化関数の配列に
relu、leaky_relu、sigmoid、tanhを追加してください。 - 各イテレーションで、現在の活性化関数をパラメータとして渡し
get_model()から新しいモデルを取得します。 - 学習用データと
validation_dataを指定してモデルを学習させ、epochsは 20、verboseは 0 に設定してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Activation functions to try
activations = [____, ____, ____, ____]
# Loop over the activation functions
activation_results = {}
for act in activations:
# Get a new model with the current activation
model = ____
# Fit the model and store the history results
h_callback = ____
activation_results[act] = h_callback