取消
显示结果 
搜索替代 
您的意思是: 
Highlighted
Observer
Observer
1,115 次查看
注册日期: ‎03-14-2019

AI-Model-Zoo中的Tensorflow预训练模型能否进行重训练?

转到解答
AI-Model-Zoo中的Tensorflow预训练模型能否进行重训练?如何进行?

在AI-Model-Zoo中看到介绍,模型是可以根据自定义的数据集进行重新训练的

现在看到的Tensorflow模型的目录结构如下:

├── fix
│   ├── deploy_model.pb
│   └── quantize_eval_model.pb
├── float
│   └── frozen.pb
├── input_fn.py
└── readme.md

请问如果期望进行重训练,冻结模型frozen.pb能否进行重训练?

之前没有尝试过对freeze后的模型重训练,训练之前是否有其他特殊条件?

0 项奖励
1 个已接受解答

已接受的解答
Xilinx Employee
Xilinx Employee
670 次查看
注册日期: ‎03-27-2013

回复: AI-Model-Zoo中的Tensorflow预训练模型能否进行重训练?

转到解答

Hi @richsheep ,

 

我说的有完整信息的pb是training结果存储的pb,freeze操作会

Converts all variables in a graph and checkpoint into constants

这个中间失去多少信息,是否能还原我也没有深入研究。

另外我这边找相关的同事讨论了下,目前我们的model zoo暂时不公开training侧相关的细节。

另外,相关的研发同事也没有将frozen pb还原成tensorFlow的可training网络的经验。

如果你还是要继续研究的话,我能看到TensorFlow的freeze_graph.py的源码位置:

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/tools/freeze_graph.py

你可以参考研究下。

基于目前的情况我感觉自己training数据,或者可能的话使用来源可靠,信息充分的model(开源或者第三方的)展开后续工作成功率会更高些。

 

 

Best Regards,
Jason
-----------------------------------------------------------------------------------------------
Please mark the Answer as "Accept as solution" if the information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
-----------------------------------------------------------------------------------------------

在原帖中查看解决方案

6 条回复6
Highlighted
Xilinx Employee
Xilinx Employee
959 次查看
注册日期: ‎03-27-2013

回复: AI-Model-Zoo中的Tensorflow预训练模型能否进行重训练?

转到解答

Hi @richsheep ,

 

我看到stackoverflow有关这个的讨论,但是没有看到有人完成的。

https://stackoverflow.com/questions/53085007/re-train-a-frozen-pb-model-in-tensorflow

能否明确下你想重训练的是哪个模型?

今年因为防护疫情的关系,大家上班都比较晚,我争取这周问下研发的同事看看能否有希望拿到某个具体的freeze之前的pb文件。

Best Regards,
Jason
-----------------------------------------------------------------------------------------------
Please mark the Answer as "Accept as solution" if the information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
-----------------------------------------------------------------------------------------------
Highlighted
Observer
Observer
905 次查看
注册日期: ‎03-14-2019

回复: AI-Model-Zoo中的Tensorflow预训练模型能否进行重训练?

转到解答

Hello @jasonwu ,

感谢回复!

不知道你提到的freeze之前的pb是什么意思?freeze之前不是ckpt形式的训练checkpoint文件吗

stackoverflow这个帖子之前也有看到,现在正在尝试类似其中的方法,把每一个op取出来重新赋值重新构建网络,目前还没有调通,如果找到比较好的方法,希望能赐教> <

Vitis-Model-Zoo中的tensorflow模型目录结构:

├── float
│   ├── mobilenet_v1_1.0_224.ckpt.data-00000-of-00001
│   ├── mobilenet_v1_1.0_224.ckpt.index
│   ├── mobilenet_v1_1.0_224.ckpt.meta
│   └── mobilenet_v1_1.0_224.x.pb
├── quantized
│   └── quantize_results
│       ├── deploy_model.pb
│       └── quantize_eval_model.pb
├── readme.md
└── test_code
    ├── float
    │   ├── eval_tf_classification_models_alone.py
    │   ├── readme.md
    │   └── run_eval_pb.sh
    └── quantized
        ├── eval_quantize_pb.sh
        ├── eval_tf_classification_models_alone.py
        ├── readme.md
        └── vai_q_tensorflow.sh

这种应该时可以执行训练的.

0 项奖励
Highlighted
Xilinx Employee
Xilinx Employee
817 次查看
注册日期: ‎03-27-2013

回复: AI-Model-Zoo中的Tensorflow预训练模型能否进行重训练?

转到解答

Hi @richsheep ,

 

DNNDK user guide的一些经典例子,提供的模型源文件都是pb文件,通过freeze_graph命令为frozen pb。

推测是这些例子都是通过TensorFLow low level API 实现的,直接存储成pb文件,但是这个pb应该是有完整的信息的。

你说的check point还有另外一种比较常用的hd5文件我理解下来一般使用keras API产生的,存储的keras model,也能通过特定函数freeze成pb文件。

如果理解有误请指出下 :-)

另外你需要的具体是哪个模型,目前就我所知所有的model zoo的training model和相关的详细信息的公开还没有实现。

所以你能具体说一下你需要retrain哪个模型吗?

我看到你找到了mobilenet的check point了,那你现在阻塞的需要获得的信息是什么呢?

 

Best Regards,
Jason
-----------------------------------------------------------------------------------------------
Please mark the Answer as "Accept as solution" if the information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
-----------------------------------------------------------------------------------------------
0 项奖励
Highlighted
Observer
Observer
692 次查看
注册日期: ‎03-14-2019

回复: AI-Model-Zoo中的Tensorflow预训练模型能否进行重训练?

转到解答

感谢回复,

是的,freeze_graph命令生成frozen pb理论上应该是有完整的信息的,包括图结构和节点的权重,

也可以通过读取frozen或quantize pb的方式进行还原进行推断

但是如果想要重新训练,需要重新修改当前读取到的权重信息,目前是在如何重新更新权重这里卡住,没有找到从固化的推断模型恢复训练模型的方法

 

0 项奖励
Xilinx Employee
Xilinx Employee
671 次查看
注册日期: ‎03-27-2013

回复: AI-Model-Zoo中的Tensorflow预训练模型能否进行重训练?

转到解答

Hi @richsheep ,

 

我说的有完整信息的pb是training结果存储的pb,freeze操作会

Converts all variables in a graph and checkpoint into constants

这个中间失去多少信息,是否能还原我也没有深入研究。

另外我这边找相关的同事讨论了下,目前我们的model zoo暂时不公开training侧相关的细节。

另外,相关的研发同事也没有将frozen pb还原成tensorFlow的可training网络的经验。

如果你还是要继续研究的话,我能看到TensorFlow的freeze_graph.py的源码位置:

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/tools/freeze_graph.py

你可以参考研究下。

基于目前的情况我感觉自己training数据,或者可能的话使用来源可靠,信息充分的model(开源或者第三方的)展开后续工作成功率会更高些。

 

 

Best Regards,
Jason
-----------------------------------------------------------------------------------------------
Please mark the Answer as "Accept as solution" if the information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
-----------------------------------------------------------------------------------------------

在原帖中查看解决方案

Highlighted
Observer
Observer
653 次查看
注册日期: ‎03-14-2019

回复: AI-Model-Zoo中的Tensorflow预训练模型能否进行重训练?

转到解答

Hi @jasonwu ,

明白了,非常感谢!

0 项奖励