前言:官方有特定的新手教程(tf官方教程入口),但是在我的学习过程中,发现按照他的流程运行了,也实现了一些简单的功能,但是对其内在的理解,要实现更复杂的东西,就觉得捉襟见肘了。所以整理一下学习的内容,期许未来也许能够用得上。
1 从一个简单的完整训练过程开始
众所周知,使用tensroflow的一个完整的训练过程宏观上包含三个步骤:
数据的加载与预处理,模型的创建与训练数据的喂入,网络运行结果与统计数据(例如准确率,均方误差值等)的输出。
https://tensorflow.google.cn/tutorials/quickstart/advanced?hl=zh_cn
三个步骤存在的问题总结如下:
a).数据的加载与预处理
1). 此演示训练的数据是演示集的数据,只需一键加载便行。但是实际中我们需要加载的数据一般是以路径名的方式存储在一个'train.txt'文件中。
2). 此演示训练的数据集不是特别大,所以可以全部读入,但是类如人脸识别的webface,数据集大小为4G,如何处理读入,以及处理读入与计算之间关系?
b).模型的创建与训练数据的喂入
c).网络运行结果与统计数据
n 一些杂货
n.1 tensorflow整体框架
总的来说,Tensorflow的运行机制包括: 定义计算图和运行计算图两个部分,计算图即模型的构建。
知乎相关文章链接:https://zhuanlan.zhihu.com/p/111214142
n.2 模型的保存与加载
“.ckpt.meta”是一个protocol buffer,用于保存完整的Tensorflow图/完整的神经网络结构图; 即所有变量,操作,集合等。也就是你能在tensorboard/graph中看见的内容。但是不包含变量的值,也就是说TensorFlow是把图结构和变量值分开储存的。
知乎相关文章链接:https://www.zhihu.com/question/265634425
n.3 tflite
https://blog.csdn.net/yuanlulu/article/details/84063503