tensorflow stuck,tensorflow还没有session run就停下来不动了

最近在把pixellink(https://github.com/ZJULearning/pixel_link)主网换成,densenet,参考

https://github.com/pudae/tensorflow-densenet

结果 tensorflow stuck,tensorflow还没有session run就停下来不动了,

nvidia-smi发现gpu是空的,top一下,发现,那个程序,占用了很少的cpu,mem

找了各种办法,pdb,print,tf.logging.info

最后把tensorfow网络没有用到的部分,注释掉,就可以运行了。

 

多次遇到这个问题,总结主要是两个原因导致:

1.模型太大了,减小batch size试试

2 tf计算梯度的时候,发现梯度无法计算,打印出来就是none, 导致这个情况的原因,可能有些计算没有贡献给最终的 loss

  调试这种情况,就是打印出来梯度。

clone_gradients = optimizer.compute_gradients(total_clone_loss)
for grad_and_vars in zip(*clone_grads): 
    tf.logging.info("clone_grads"+str(grad_and_vars))

  最后一行会打印出来,梯度为None

INFO:tensorflow:after clone_grads((<tf.Tensor 'clone_0/gradients/clone_0/densenet_small/last_conv_block/last_conv1x1/BiasAdd_grad/tuple/control_dependency_1:0' shape=(8,) dtype=float32>, <tf.Variable 'densenet_small/last_conv_block/last_conv1x1/biases:0' shape=(8,) dtype=float32_ref>),)
INFO:tensorflow:after clone_grads((None, <tf.Variable 'pixel_cls/pixel_link_symbol_directed_local_connected_layer_8_16_16_8/need_judge_direction__8_16_16_8/Conv/weights:0' shape=(1, 16, 8, 1) dtype=float32_ref>),)

下面是stackoverflow 的回答

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值