首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >微调预训练的InceptionResnetV2

微调预训练的InceptionResnetV2
EN

Stack Overflow用户
提问于 2018-04-27 19:53:28
回答 1查看 2.2K关注 0票数 2

微调网络的步骤如下:

  1. 将您的自定义网络添加到已经培训过的基本网络之上。
  2. 冻结基本网络。
  3. 训练你添加的部分。
  4. 解冻基本网络中的一些层。
  5. 共同训练这两层和你增加的部分。

现在,如果网络架构像VGG16一样简单,我们可以简单地将基本网络从block5_conv1 (Conv2D)中解冻并重新训练它。

VGG16体系结构

但是,当体系结构像InceptionResnetV2一样非常复杂时,从哪里开始呢?有谁有实际经验吗?在python中运行以下代码以查看模型:

代码语言:javascript
复制
from keras.applications import InceptionResNetV2

conv_base = InceptionResNetV2(weights='imagenet',
                  include_top=False,
                  input_shape=(299, 299, 3))
conv_base.summary()
from keras.utils import plot_model
plot_model(conv_base, to_file='model.png')`
EN

回答 1

Stack Overflow用户

发布于 2018-09-25 22:06:07

使用InceptionResNetV2对模型进行非常基本的微调如下所示:

代码语言:javascript
复制
from inception_resnet_v2 import InceptionResNetV2
# ImageNet classification

model = InceptionResNetV2()
model.predict(...)

# Finetuning on another 100-class dataset
base_model = InceptionResNetV2(include_top=False, pooling='avg')
# The first argument in the next line represents the number of classes
outputs = Dense(100, activation='softmax')(base_model.output)
model = Model(base_model.inputs, outputs)
model.compile(...)
model.fit(...)

这是一个启动github.com/yuyang-huang/keras-inception-resnet-v2的好地方

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50069431

复制
相关文章

相似问题

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