gpt4 book ai didi

使用tensorflow 实现反向传播求导

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 26 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章使用tensorflow 实现反向传播求导由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

看代码吧~

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
x = tf.constant([ - 1 , - 2 ],dtype = tf.float32)
w = tf.variable([ 2. , 3. ])
truth = [ 3. , 3. ]
y = w * x
# cost=tf.reduce_sum(tf.reduce_sum(y*truth)/(tf.sqrt(tf.reduce_sum(tf.square(y)))*tf.sqrt(tf.reduce_sum(tf.square(truth)))))
cost = y[ 1 ] * y
optimizer = tf.train.gradientdescentoptimizer( 1 ).minimize(cost)
with tf.session() as sess:
     sess.run(tf.global_variables_initializer())
     print (sess.run(y))
     print (sess.run(w))
     print (sess.run(cost))
 
     print (sess.run(y))
     sess.run(optimizer)
 
     print (sess.run(w))

结果如下 。

使用tensorflow 实现反向传播求导

w由[2,3]变成[-4,-25] 。

过程:

f=y0*y=w0*x0*w*x=[w1*x1*w0*x0,w1*x1*w1*x1,] 。

f对w0求导,得w1*x0*x1+0=6 ,所以新的w0=w0-6=-4 。

f对w1求导,得 w0*x0*x1+2*w1*x1*x1=28,所以新的w1=w1-28=-25 。

补充:【tensorflow篇】--反向传播 。

1、前述

反向自动求导是 tensorflow 实现的方案,首先,它执行图的前向阶段,从输入到输出,去计算节点 值,然后是反向阶段,从输出到输入去计算所有的偏导.

2、具体

1、举例

使用tensorflow 实现反向传播求导

图是第二个阶段,在第一个阶段中,从 x =3和 y =4开始去计算所有的节点值 。

f ( x / y )=x 2 * y + y + 2 。

求解的想法是逐渐的从图上往下,计算 f ( x , y )的偏导,使用每一个连续的节点,直到我们到达变量节 点,严重依赖链式求导法则! 。

2.具体过程:

因为n7是输出节点,所以f=n7,所以 。

最后此篇关于使用tensorflow 实现反向传播求导的文章就讲到这里了,如果你想了解更多关于使用tensorflow 实现反向传播求导的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com