在每个step打印的是训练集的metric,在验证集中打印的是loss

来源:3-12 tf.GradientTape与tf.keras结合使用

战战的坚果

2020-04-29

老师,这个小节中,实现自定义梯度后,在每个step打印的是训练集的metric,在验证集中打印的是loss。原来使用fit函数时,它每一次输出的是训练集的loss和验证集的是loss,它是怎么实现的呀。

写回答

1回答

正十七

2020-04-29

其实思想是类似的,也是batch遍历,最后结果混总。

具体参考源码:https://github.com/tensorflow/tensorflow/blob/v2.1.0/tensorflow/python/keras/engine/training.py#L596-L819

你可以看其中的training_arrays.ArrayLikeTrainingLoop()函数,然后再往底层走,就是model_iteration函数:https://github.com/tensorflow/tensorflow/blob/e5bf8de410005de06a7ff5393fafdf832ef1d4ad/tensorflow/python/keras/engine/training_arrays.py#L46

不过它实现的比较复杂,思想就是我上面说的。

0
1
战战的坚果
这个回答非常优秀,哈哈
2020-04-30
共1条回复

Google老师亲授 TensorFlow2.0 入门到进阶

Tensorflow2.0实战—以实战促理论的方式学习深度学习

1849 学习 · 896 问题

查看课程