3-12中的我们的模型里的w和b会变化不,如何变化呢?

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

慕设计0293856

2020-08-19

写回答

1回答

正十七

2020-09-02

会发生变化,在apply_gradients的时候:

        with tf.GradientTape() as tape:
            y_pred = model(x_batch)
            y_pred = tf.squeeze(y_pred, 1)
            loss = keras.losses.mean_squared_error(y_batch, y_pred)
            metric(y_batch, y_pred)
        grads = tape.gradient(loss, model.variables)
        grads_and_vars = zip(grads, model.variables)
        optimizer.apply_gradients(grads_and_vars)

grads_and_vars存储的是每个变量variable和变量对应的梯度gradient,apply_gradients则会更新变量:

variable = variable - learning_rate * gradient.

w和b都是variable,所以都会被更新。

0
0

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

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

1849 学习 · 896 问题

查看课程