自定义Tensorflow模型的训练

标签:#deeplearning##python##tensorflow# 时间:2019/05/08 23:13:30 作者:小木

一般来说,深度学习模型的训练需要经过以下几个步骤:

  1. 定义模型
  2. 定义损失函数
  3. 准备数据
  4. 初始化模型参数
  5. 开始循环EPOCH:
    5.1、开始循环batch:
    5.1.1、基于当前batch的数据,计算模型的前向反馈结果
    5.1.2、计算损失函数
    5.1.3、求解梯度
    5.1.4、更新梯度

这里的步骤1、2、3都是可以同步进行的,不需要先后顺序。循环的话一般是两层,外层循环的是EPOCH,一次EPOCH相当于全量数据的一次迭代。但是每一次迭代过程,一般既不是全量数据一起更新,也不是单个数据一个一个更新,而是将数据按照一定大小切分之后,进行批处理,一个批次的数据同时更新迭代。

关于数据的准备和循环,可以参考之前的论文:Tensorflow中数据集的使用方法(tf.data.Dataset)

这里举一个例子。

首先,我们定义一个模型:

欢迎大家关注DataLearner官方微信,接受最新的AI技术推送