1.Tensorflow中的tensor是不可变无状态对象.
机器学习模型需要可改变状态,比如模型训练和模型预测的代码是相同的,但变量值随着时间而不同(希望尽量小的loss),为了因对随着计算而改变的状态,可以利用Python的状态可变性。
2.Tensorflow,拥有内建可变状态操作,比使用底层Python状态表示更常见。
比如表示模型的权重,使用Tensorflow变量更方便高效。
变量是一个对象,这个对象存储着数值,当在Tensorflow计算中使用时,会隐式的读取这个存储的数值。
有一些操作(tf.assign_sub,tf.scatter_update等)会复制Tensorflow变量存储的数值。
3.计算梯度时,会自动跟踪使用变量的计算过程。
用变量来表示向量时TensorFlow会默认使用稀疏更新,这样可以带来计算和存储高效性。
使用变量也是一种更快的提醒方式,就是代码的这部分是状态可分的???
4.创建和训练一个简单的模型,一般需要下面这些步骤:
1.定义模型
2.定义损失函数
3.获取训练数据
4.通过训练数运行模型,使用“optimizer”来调整变量来满足数据

一定自己的模型
定义自己的损失函数
获取训练数据(自己的数据预处理过程)
定义训练循环def train函数
设置epochs 循环训练
以及变化过程图都在tensorflow中的教程—自定义–自定义训练中。【very important】
==默认情况下,Tens

本文介绍了在TensorFlow2中自定义训练循环的方法,包括利用变量进行状态管理、计算梯度、定义模型、损失函数和训练数据。通过一个简单的模型示例,展示了如何通过optimizer调整变量以最小化损失。同时,文章还讨论了过拟合、有监督和无监督学习的概念,并解释了训练循环的工作原理,以及模型评估和预测的流程。
最低0.47元/天 解锁文章
6826

被折叠的 条评论
为什么被折叠?



