Kerasモデルで使用されるレイヤーの数について少し混乱しています。ドキュメントは、問題に関してかなり不透明です。
Jason Brownleeによると、最初のレイヤーは、技術的には_input_dim
_で指定された入力レイヤーと隠しレイヤーの2つのレイヤーで構成されています。 his blog の最初の質問をご覧ください。
Kerasのすべてのドキュメントでは、最初のレイヤーは一般にmodel.add(Dense(number_of_neurons, input_dim=number_of_cols_in_input, activtion=some_activation_function))
として指定されています。
したがって、作成できる最も基本的なモデルは次のようになります。
_ model = Sequential()
model.add(Dense(1, input_dim = 100, activation = None))
_
このモデルは、100次元の入力が単一の入力ニューロンを通過する単一のレイヤーで構成されていますか、それとも2つのレイヤーで構成されていますか?
さらに、このようなモデルを指定する場合、いくつのレイヤーがありますか?
_model = Sequential()
model.add(Dense(32, input_dim = 100, activation = 'sigmoid'))
model.add(Dense(1)))
_
これは、1つの入力層、1つの隠れ層、および1つの出力層を持つモデルですか、またはこれは1つの入力層と1つの出力層を持つモデルですか?
最初の質問のモデルは次のとおりです。
1つの入力層と1つの出力層。
2番目の質問:
1つの入力層
1つの隠れ層
1つの活性化層(シグモイド層)
1つの出力層
入力レイヤーの場合、これはinput_dim argまたはinput_shapeを使用してKerasによって抽象化されますが、このレイヤーは次の場所にあります。
from keras.layers import Input
アクティベーションレイヤーについても同じです。
from keras.layers import Activation
最初の1つは、単一の出力ニューロンに接続された100個のニューロン入力層で構成されます
2番目の層は、100個のニューロン入力層、32個のニューロンの1つの隠れ層、1つの単一ニューロンの1つの出力層で構成されます。
最初のレイヤーを、指定した数のニューロン(最初の場合は1、2番目の場合は32 1)
Kerasでは便利なのはコマンドです
model.summary()