从caffe二进制库调用python时获取caffe中间结果

2024-05-19 02:13:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是caffe的python接口。在层实现文件softmax_loss_layer.cu中,小批量中每一个样本的损失将被求和并除以批大小。所以"softmaxlosslayer"的输出是小批量的平均损失。在

我想要的是得到存储在*loss_data中的每个样本的损失,但是当我尝试使用std::coutfstream时,什么都没有发生。所以我认为问题是从python调用c++时,如何从c++二进制库获取输出。在

非常感谢你!在


Tags: 文件layerdata二进制caffestd样本损失
1条回答
网友
1楼 · 发布于 2024-05-19 02:13:51

caffe正在使用库进行日志记录。如果要输出某些内容,则需要使用glog的宏。例如:

GLOG(INFO) << "something to be printed";

运行代码时,需要确保环境变量GLOG_minloglevel设置为包含所需的日志级别。也就是说,如果您编写了一个级别为INFO的日志,那么您需要设置GLOG_minloglevel=1(或0,但不能超过这个值)。在

有关日志记录的更多信息,请参见this "how to" page。在


注意:您正在尝试从softmax_loss_layer.cu代码中获取输出:此代码在GPU上运行,因此您可能会在从中获取输出时遇到一些困难。如果只是调试,可以考虑调整softmax_loss_layer.cpp代码,并在CPU模式下运行:即设置caffe.set_mode_cpu()

相关问题 更多 >

    热门问题