1.tfdbg的作用
tfdbg是TensorFlow应用的调试工具,可以方便排查变量为nan、inf等问题,官方文档介绍 https://www.tensorflow.org/versions/master/how_tos/debugger/ 。
tfdbg无需单独安装,安装0.12.1以上版本TensorFlow即可使用。
2.使用方法
tfdbg提供了命令行界面和API,使用方法很简单,对原有的session对象封装一层wrapper,函数接口与session对象相同,同时可以设置特定的filer。
(1)from tensorflow.python import debug as tf_debug
(2)sess = tf_debug.LocalCLIDebugWrapperSession(sess)
(3)封装session对象后,每次调用run函数都会进入调试模型,可以查看内部变量的状态。
3.cmd执行
将需要调试的.py文件放在tensorflow的目录下(我没有加环境变量的原因),然后在文件夹中打开cmd
输入:python 123.py -debug
注:123.py是我自己的py文件,大家根据自己的实际情况进行修改。
这样就进入了调试状态。
4.常用命令
(1)一般进入调试界面,我们可以用上下方向键查看历史命令,用Page Up、Page Down键(Mac键盘是Fn + Up、Fn + Down)来查看显示的内容。
(2)然后直接运行run,可以看到代码运行了一步,并且打印了当前所有的Variable。这个run
命令使tfdbg执行到下一个Session.run()
调用,它使用测试数据集计算模型的准确性。tfdbg增强运行时图以转储所有中间张量。
(3)使用下面的命令查看更细节的内容。