python - 如何添加 keras dropout 层?

标签 python tensorflow machine-learning keras neural-network

如何添加 Keras 丢弃层?不幸的是,我不知道我必须在哪里添加这一层。我查看了 2 个链接:

比如我见过这个

model.add(Dense(60, input_dim=60, activation='relu', kernel_constraint=maxnorm(3)))
model.add(Dropout(0.2))
model.add(Dense(30, activation='relu', kernel_constraint=maxnorm(3)))
model.add(Dropout(0.2))
model.add(Dense(1, activation='sigmoid'))

据我所知,密集层是用循环创建的,所以我不确定如何添加它。

def get_Model(...):
   
    # build dense layer for model
    for i in range(1, len(dense_layers)):
       
        layer = Dense(dense_layers[i],
                      activity_regularizer=l2(reg_layers[i]),
                      activation='relu',
                      name='layer%d' % i)
        mlp_vector = layer(mlp_vector)

    predict_layer = Concatenate()([mf_cat_latent, mlp_vector])
    result = Dense(1, activation='sigmoid',
                   kernel_initializer='lecun_uniform', name='result')

    model = Model(inputs=[input_user, input_item], outputs=result(predict_layer))

    return model

最佳答案

试试这个:

for i in range(1, len(dense_layers)):
   
    layer = Dense(dense_layers[i],
                  activity_regularizer=l2(reg_layers[i]),
                  activation='relu',
                  name='layer%d' % i)
    mlp_vector = layer(mlp_vector)
    mlp_vector = Dropout(0.2)(mlp_vector)

在这里查看函数式 API https://keras.io/guides/functional_api/

关于python - 如何添加 keras dropout 层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65327655/

相关文章:

tensorflow - 让tensorboard发挥作用的关键在哪里?

python - Tensorflow bazel 构建不生成 .whl 文件

machine-learning - 如何使用动态大小的输入集合来处理机器学习问题?

python - TQDM 和多处理 - python

python - 如何在另一个程序中使用控制台的运行输出

python - 如何根据python中的另一个变量计算非零出现次数?

python - 线性模型不支持将字符串转换为 float

python - CNTK - 权重更新占缓慢训练时间的 90%

python - 如何为具有自定义管道的自定义估计器运行网格搜索?

python - 类型安全的 Python 3.2 字典