【问题标题】:Converting Caffe caffemodel weight files to TensorFlow weight files将 Caffe caffemodel 权重文件转换为 TensorFlow 权重文件
【发布时间】:2018-02-15 13:37:40
【问题描述】:

我的团队花了几个月的时间来训练一个 Caffe 模型,但现在我们正在考虑转换为 Tensorflow,我们不想花几个月的时间重新训练。

如何将我们的 caffemodel 权重文件转换为 TensorFlow 权重文件?

我已经尝试过caffe-tensorflow,但它不适用于具有多个顶部的层的 Caffe 模型。

【问题讨论】:

    标签: tensorflow caffe


    【解决方案1】:

    您从 caffe-tensorflow 得到的错误是什么?如果这只是一个验证检查,您可以禁用它。您也可以尝试通过load_using_pb 函数强制该工具加载权重。 (transformers.py/DataInjector/加载函数)

    【讨论】:

    • 嗨@rkellerm,如果你还在外面,请回复这个。我非常需要你的帮助!
    • @AdityaNikhil - 还在这里,希望我能提供帮助(但我的注意力已经改变,所以不确定我是否具备相关知识)
    • 很高兴您的回复。所以我使用 caffe-tensorflow 将姿势估计 caffe 模型转换为 tensorflow pb 模型。除最后一层(输出层)外,每一层都已成功转换。也就是说,** AssertionError: Mconv7_stage6 is not in graph.**
    • @AdityaNikhil 我不熟悉这个错误,但如果我理解正确,您尝试转换 CMU 的 OpenPose ——它已经有一个工作的 TF 版本:github.com/infocom-tpo/tf-openpose。没有深入研究代码,但他们成功转换了原始的 Caffe 权重。希望对您有所帮助。
    • 嘿@rkellerm,感谢您的链接,但我需要一个手部姿势模型来估计手部姿势。 Se 只有一个 caffe 模型可以做到这一点,kaggle.com/changethetuneman/openpose-model。如果你能找到这个的 tensorflow 版本,请告诉我...
    【解决方案2】:

    我不熟悉,但您可以使用this python code 将经过训练的caffe 权重“转储”到python 可读的numpy 数组中。我希望 TF 具有从 numpy 数组初始化其权重的功能 - 这种方法可能不是自动的或微不足道的,但您只需要执行一次。

    【讨论】:

      猜你喜欢
      • 2021-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-01
      • 2018-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多