本版本不提供TensorFlow模型numpy(.npy)数据生成功能,请自行安装TensorFlow环境并提前准备numpy数据。本文仅提供生成numpy格式TensorFlow原始数据“*.npy”文件的样例参考。
在进行TensorFlow模型生成npy数据前,您需要已经有一套完整的、可执行的标准的TensorFlow模型应用工程。然后利用TensorFlow官方提供的debug工具tfdbg调试程序,从而生成npy文件。主要操作示例如下,请根据自己的应用工程适配操作。
from tensorflow.python import debug as tf_debug training_hooks = [train_helper.PrefillStagingAreaHook(), tf_debug.LocalCLIDebugHook()]
from tensorflow.python import debug as tf_debug sess = tf_debug.LocalCLIDebugWrapperSession(sess, ui_type="readline")
进入调试命令行交互模式后,输入run命令。
执行run命令完成后,在命令行交互界面,可以通过lt查询已存储的张量,通过pt可以查看已存储的张量内容,可以保存数据为numpy格式文件。
因为tfdbg一次命令只能dump一个tensor,为了自动生成收集所有数据,可以按以下几个步骤操作:
timestamp=$[$(date +%s%N)/1000] ; cat tensor_name | awk '{print "pt",$4,$4}' | awk '{gsub("/", "_", $3);gsub(":", ".", $3);print($1,$2,"-n 0 -w "$3".""'$timestamp'"".npy")}' > tensor_name_cmd.txt
npy文件默认是以numpy.save()形式存储的,上述命令会将“/”用下划线_替换。
如果命令行界面无法粘贴文件内容,可以在tfdbg命令行中输入“mouse off”指令关闭鼠标模式后再进行粘贴。