我喜欢加载训练有素的二进制文件并打印到文本文件中。
我们可以在C++ from caffemodel normally in binary protobuf format
中阅读训练过的参数。
我是怎么做的,
net_.reset(new Net<float>(model_file, TEST));
NetParameter param;
ReadNetParamsFromBinaryFileOrDie(trained_file_protobuf, ¶m);
WriteProtoToTextFile(param, "model_protobuf.txt");
但是一些经过训练的模型以h5格式出现,以及如何加载文件并使用C ++或Python打印到文本文件。
在net.cpp
中,我无法找到h5格式为ReadNetParamsFromBinaryFileOrDie
。
ReadNetParamsFromBinaryFileOrDie
适用于binary protobuf format
。
如何从训练有素的H5模型中读取NetParameter并打印到文本文件?
答案 0 :(得分:0)
您是否看过CopyTrainedLayersFromHDF5
(Net
的方法)?
应该是这样的:
net_.reset(new Net<float>(model_file, TEST));
net_.CopyTrainedLayersFromHDF5(trained_file_h5);