演示gradients基本用法

一 实例描述
通过定义两个矩阵相乘来演示使用gradients求梯度。
在反向传播过程中,神经网络需要对每一个loss对应的学习参数求偏导。算出的这个值叫梯度,用来乘以学习率然后更新学习参数使用的。它是通过tf.gradients函数来实现的。tf.gradients函数里的第一个参数为求导公式,第二个参数为指定公式中哪个变量来求偏导。

二 代码
import tensorflow as tf
w1 = tf.Variable([[1,2]])
y = tf.matmul(w1, [[9],[10]])
#grads = tf.gradients(y,[w1,w2])#w2不相干,会报错
grads = tf.gradients(y,[w1])
with tf.Session() as sess:
    sess.run(tf.global_variables_initializer())
    gradval = sess.run(grads)
    print(gradval)
三 运行结果
[array([[ 9, 10]])]
上面例子中,由于y是由w1与[[9],[20]]相乘而来,所以导数也就是[[ 9, 10]](斜率)。

四 参考
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值