【问题标题】:Caffe - How to change the dtype of caffe weights using pycaffe?Caffe - 如何使用 pycaffe 更改 caffe 权重的 dtype?
【发布时间】:2017-03-18 00:40:00
【问题描述】:

我有一个预训练的 fast-rcnn caffemodel。我可以使用net.params[pr][0].data 获得模型的权重。截至目前,权重为 numpy float32 类型。我想将它减小到 float 16 只是为了减小模型的大小。

【问题讨论】:

  • 你成功了吗?
  • 我在 2016 年 11 月尝试时 Caffe 不支持,不知道现在是否支持。我最终在 C 中完成了它。但是 tensorflow 支持训练后的浮点精度转换。

标签: deep-learning caffe conv-neural-network pycaffe


【解决方案1】:

要更改权重的类型以节省内存用于存储,可以使用 NumPy 的astype(float16),例如

net.params[pr][0].data = net.params[pr][0].data.astype(numpy.float16)

但是 Caffe 在推理/训练时不支持它,因此您需要将其重新转换为 float32。 但是有一些支持 float16 的 caffe 存储库,例如 Ristretto 或用于 NVidia 的 NVCaffe / Intel 的用于 Intel GPU 上的 OpenCL 的 clCaffe

【讨论】:

    猜你喜欢
    • 2016-05-27
    • 2015-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-17
    • 1970-01-01
    • 2017-07-13
    • 1970-01-01
    相关资源
    最近更新 更多