python - 如何将 BatchNormalization 应用于 Keras LSTM 的输入?
问题描述
我有:
model = Sequential()
model.add(LSTM(32, input_shape=(
SEQ_LENGTH, VECTOR_SIZE), return_sequences=True))
model.add(TimeDistributed(Dense(VECTOR_SIZE, activation='relu')))
adam_optimizer = optimizers.Adam(
learning_rate=0.001, beta_1=0.9, beta_2=0.999, amsgrad=False)
model.compile(loss='mean_squared_error',
optimizer=adam_optimizer)
我的模型的输入和输出都是(100, 129)
.
解决方案
model.add(BatchNormalization(center=True, scale=True, beta_regularizer=regularizers.l2(0.01),
gamma_regularizer=regularizers.l2(0.01),
beta_constraint='max_norm', gamma_constraint='max_norm',
input_shape=(x, y)))
它只是您添加到模型中的一层
推荐阅读
- multithreading - 将闭包(返回具有特征的结构)发送到线程会导致大小错误
- odbc - 通过 Windows ODBC PostgreSQL 驱动程序连接到 HSQLDB 2.5
- docker - docker 在 docker ps -a 中未运行
- python - 为什么 Kivy 应用在使用 paramiko 模块时会崩溃?
- c# - 无法访问临时表 .NET Core
- ios - 使用 Instagram Basic Display API 获取用户的元数据
- assembly - 为什么 XORing %eax 不会导致段错误?
- python - 在托盘中显示和隐藏我的 PyQt 应用程序不正常
- c# - AutoMapper:使用空图像(映射到 byte[] 中的 null 而不是其他集合)
- json - 使用 Spark 清理 JSON 对象