关于TensorFlow-gpu出现nan原因

当我使用CPU跑程序的时候,结果的LOSS正常输出,但是当我改成使用GPU时,我的loss显示为nan。

 但是我的输出图片是可以输出的,程序也是可以运行的,说明问题出现在loss函数这一部分。查阅资料后发现,TensorFlow-gpu版不支持双星号(**)运算,所以在损失计算时,返回的数组就会变成nan。

于是我就去找我的loss的这一部分代码,发现确实有双星号的存在。

于是我就把双星号去掉,改成最原始的样子(src-dst)*(src-dst),结果loss就可以正常输出。

有可能GPU的大佬会有更好的修改代码的方式,但是对于我来说,这是最直接最有效的方法。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值