首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TensorFlow API Slim:如何为VGG-NET16设置checkpoint_exclude_scopes和output_node_names?

TensorFlow API Slim:如何为VGG-NET16设置checkpoint_exclude_scopes和output_node_names?
EN

Stack Overflow用户
提问于 2019-03-12 15:20:57
回答 1查看 494关注 0票数 0

我目前正在尝试使用TensorFlow API (https://github.com/tensorflow/models)来训练分类网络。在为我的数据集(存储在research/slim/ data中)创建TFrecords之后,我使用以下命令对网络进行培训:

代码语言:javascript
复制
python research/slim/train_image_classifier.py \
--train_dir=research/slim/training/current_model \
--dataset_name=my_dataset \
--dataset_split_name=train \
--dataset_dir=research/slim/data \
--model_name=vgg_16 \
--checkpoint_path=research/slim/training/vgg_16_2016_08_28/vgg_16.ckpt \
--checkpoint_exclude_scopes=vgg_16/fc7,vgg_16/fc8 \
--trainable_scopes=vgg_16/fc7,vgg_16/fc8 \
--batch_size=5 \
--log_every_n_steps=10 \
--max_number_of_steps=1000 \

这对于几个分类网络(盗梦空间、ResNet、MobileNet)都很好,但对VGG却不是很好。我精调VGG-Net 16:28.tar.gz的跟随模型

一般来说,它可以训练这个模型,但是当我训练网络时,损失增加而不是减少。也许,这是因为我选择了‘检查点_排除_作用域’。

使用最后一个完全连接的层作为checkpoint_exclude_scopes是正确的吗?

对于参数“output_node_names”,冻结图形也会出现同样的问题。例如,对于'output_node_names=InceptionV3/Predictions/Reshape_1'.,它与InceptionV3一起工作但是如何为VGG设置这个参数。我尝试了以下几点:

代码语言:javascript
复制
python research/slim/freeze_graph.py
--input_graph=research/slim/training/current_model/graph.pb
--input_checkpoint=research/slim/training/current_model/model.ckpt
--input_binary=true 
--output_graph=research/slim/training/current_model/frozen_inference_graph.pb 
--output_node_names=vgg_16/fc8

我没有在VGG模型中找到任何包含“预测”或“逻辑”的图层,所以我不确定。

谢谢你的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-17 10:40:16

我试图按照脚本中的方式运行train_image_classifier.py,并做了一些更改,如下所述:

  1. 将train_dir、dataset_dir和checkpoint_path更改为我的本地路径
  2. 因为我在CPU上运行,所以在命令中添加了--clone_on_cpu=True参数。
  3. 删除参数dataset_name=my_dataset,因为它为我抛出了错误

一切都很顺利。损失开始高达448,然后慢慢减少,到第1000步结束时减少到3.5。它确实有很大的波动,但损失的趋势是下降的。不知道为什么在尝试运行时看不到相同的内容。

关于你在训练checkpoint_exclude_scopes和冻结图形时output_node_names的问题,我认为你对层的选择是绝对好的。然而,为了更快的收敛,我宁愿只训练最后一个完全连接的层(Fc8)。

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

https://stackoverflow.com/questions/55125039

复制
相关文章

相似问题

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