caffe*** Aborted at 1457505270 (unix time) try "date -d @1457505270" if you are using GNU date ***

本文讨论了在使用Caffe时遇到的一个难以解决的问题,即在尝试建立新层时出现与时间种子相关的错误。通过深入分析并加入日志记录,作者最终确定问题出在shuffle操作上。解决方案包括注释掉特定代码或直接采用标准的随机.shuffle函数,同时建议在编译时启用C++11特性。此外,文章还提到了混淆旧版和新版接口导致的错误,以及如何通过错误指向的代码(如softmax层的Forward_cpu)来定位问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在自己建立新的caffe层时,出现错误:

*** Aborted at 1457505270 (unix time) try "date -d @1457505270" if you are using GNU date ***

这个十分怪异的!在BLVC的论坛上也没找到解决办法。
有人说重新编译就好了,我试了也没什么效果。
仔细分析代码,并加了好多LOG(INFO)后,发现问题是出现在使用shuffle的地方。问题很清晰了,应该是shuffle使用了时间作为随机种子,但 unix 的时间格式可能没有正确解析。可以注释掉下面这句话

  caffe::rng_t* prefetch_rng =
      static_cast<caffe::rng_t*>(prefetch_rng_->generator());

也可以直接使用std::random_shuffle函数,不过需要在编译的时候使用c++11特性。

—————-华丽丽的分割线2016.06.15———————–

这段时间使用caffe,又多次出现了这个错误,发现这个错误是很诡异的,而且这个错误本身基本上也不能给出正确的错误信息,但是一般还是会给出一个调用堆栈。这次我出现这个错误是由于将老版本caffe接口和新版本接口混用导致的,源代码使用的是一个论文提供的版本,自己也没注意。混用之后caffe好像是直接按照旧版本进行解析,但是我又有很多新版本的,所以解析失败,然而,caffe抛出了这个错误。然后把错误指向了softmax 层的 Forward_cpu(). 显然这个没有正确给出信息。

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值