我使用人口普查数据集,并使用以下公式进行标准化:
dtypes = list(zip(X.dtypes.index, map(str, X.dtypes)))
for k,dtype in dtypes:
if dtype == "float32":
X[k] -= X[k].mean()
X[k] /= X[k].std()
从
this
例子。
我发现:
tf.keras.layers.BatchNormalization()
我的模型:
model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(100, activation=tf.nn.relu, input_shape=(input_dim,)))
model.add(tf.keras.layers.BatchNormalization())
model.add(tf.keras.layers.Dense(70, activation=tf.nn.relu))
model.add(tf.keras.layers.Dense(50, activation=tf.nn.relu))
model.add(tf.keras.layers.Dense(25, activation=tf.nn.relu))
# The single output node and Sigmoid activation makes this a Logistic Regression.
model.add(tf.keras.layers.Dense(1, activation=tf.nn.sigmoid))
问题:
1)我可以通过添加这个额外的层来替换现有的标准化吗?
2) 为了推断,额外的一层也可以吗?