首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用新模型Keras连接自定义预训练模型

用新模型Keras连接自定义预训练模型
EN

Stack Overflow用户
提问于 2020-07-19 15:21:10
回答 1查看 148关注 0票数 2

我将Sports_1M caffe模型转换为Keras,并将其作为预训练模型使用到新的Keras模型中,我还加载了预训练的权重。

我删除了预先训练过的模型的顶层,最后与New连接起来。我不想再次训练加载的预训练模型(只是想使用预训练模型的嵌入,并使用它来训练我的新的Keras模型)。

代码如下所示:

代码语言:javascript
运行
复制
from keras.models import model_from_json
from keras import backend as K
K.set_image_dim_ordering('th')

model = model_from_json(open('/content/sports_1M/sports1M_model_new.json', 'r').read())
model.load_weights('/content/sports_1M/sports1M_weights.h5')

我的问题是:

  1. 是否应该编译预先训练过的模型,然后将其连接起来?

optimizer='adam') model.compile(损失=‘均方误差’)

  1. ,我怎么知道预先训练过的模型不会再训练它(我不想)?

  1. 如何训练整个(级联)体系结构?

model2 =模型(model.get_input_at(0),model.get_layer(layer_name).output) input_shape = (3,16,112,112) encoded_l = model2(left_input)预测=致密(1,激活=‘sigmoid’)(Encoded_l)模型(left_input,right_input,预测)

当我们使用内置预训练模型(如VGG )时,我们通常使用VGG(include_top = False , weights = 'imagenet')

我这样想是为了我的案子

EN

回答 1

Stack Overflow用户

发布于 2020-07-19 16:03:52

我得到了答案,我们只需设置layers.trainable = False

代码语言:javascript
运行
复制
for layer in model.layers:
  layer.trainable = False
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62982174

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档