使用tensorflow 实现反向传播求导


Posted in Python onMay 26, 2021

看代码吧~

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篇】--反向传播

一、前述

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

二、具体

1、举例

使用tensorflow 实现反向传播求导

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

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

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

2.具体过程:

因为n7是输出节点,所以f=n7,所以?f/??7= 1

让我们继续往下走到n5节点,?f/??5=?f/??7∗??7/??5 . 我们已知?f/??7=1,所以我们需要知道??7/??5 ,因为n7=n5+n6,所以我们求得??7/??5=1,所以?f/??5=1*1=1

现在我们继续走到节点n4,?f/??4=?f/??5∗??5/??4,因为n5=n4*n2,我们求得�?5/??4=n2,?f/??4=1*4

沿着图一路向下,我们可以计算出所有节点,就能计算出 ??/?x= 24,??/?y= 10

那我们就可以利用和上面类似的方式方法去计算??/??

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python函数返回值实例分析
Jun 08 Python
Ubuntu16.04/树莓派Python3+opencv配置教程(分享)
Apr 02 Python
python2 与 python3 实现共存的方法
Jul 12 Python
Tensorflow 同时载入多个模型的实例讲解
Jul 27 Python
python批量从es取数据的方法(文档数超过10000)
Dec 27 Python
详解Python logging调用Logger.info方法的处理过程
Feb 12 Python
如何用OpenCV -python3实现视频物体追踪
Dec 04 Python
Python计算信息熵实例
Jun 18 Python
Python logging模块异步线程写日志实现过程解析
Jun 30 Python
python下载的库包存放路径
Jul 27 Python
聊聊python中的异常嵌套
Sep 01 Python
Python urllib库如何添加headers过程解析
Oct 05 Python
python基础学习之递归函数知识总结
TensorFlow的自动求导原理分析
Django分页器的用法你都了解吗
May 26 #Python
tensorflow中的梯度求解及梯度裁剪操作
May 26 #Python
python numpy中multiply与*及matul 的区别说明
May 26 #Python
python文本处理的方案(结巴分词并去除符号)
Django操作cookie的实现
May 26 #Python
You might like
我的论坛源代码(二)
2006/10/09 PHP
php读取html并截取字符串的简单代码
2009/11/30 PHP
php检测文本的编码
2015/07/26 PHP
laravel创建类似ThinPHP中functions.php的全局函数
2016/11/26 PHP
javascript入门之string对象【新手必看】
2016/11/22 Javascript
JS实现密码框的显示密码和隐藏密码功能示例
2016/12/26 Javascript
vue使用vue-cli快速创建工程
2017/07/28 Javascript
深入理解Vue官方文档梳理之全局API
2017/11/22 Javascript
jquery实现楼层滚动效果
2018/01/01 jQuery
vue form 表单提交后刷新页面的方法
2018/09/04 Javascript
[40:16]TFT vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
python改变日志(logging)存放位置的示例
2014/03/27 Python
python optparse模块使用实例
2015/04/09 Python
python统计日志ip访问数的方法
2015/07/06 Python
Python数据类型详解(四)字典:dict
2016/05/12 Python
Python返回数组/List长度的实例
2018/06/23 Python
python中字符串内置函数的用法总结
2018/09/13 Python
python 利用文件锁单例执行脚本的方法
2019/02/19 Python
解决pytorch GPU 计算过程中出现内存耗尽的问题
2019/08/19 Python
python系列 文件操作的代码
2019/10/06 Python
用python写PDF转换器的实现
2020/10/29 Python
h5移动端调用支付宝、微信支付的实现
2020/06/08 HTML / CSS
巴西在线鞋店:Shoestock
2017/10/28 全球购物
朗仕(Lab series)英国官网:雅诗兰黛集团男士专属护肤品牌
2017/11/28 全球购物
购买美国制造的相框和画框架:Picture Frames
2018/08/14 全球购物
日本航空官方网站:JAL
2019/06/19 全球购物
什么造成了Java里面的异常
2016/04/24 面试题
学生实习自我鉴定
2013/10/11 职场文书
初中生个人学习的自我评价
2013/12/04 职场文书
会计自我鉴定
2014/02/04 职场文书
干部鉴定材料
2014/05/18 职场文书
假面舞会策划方案
2014/05/29 职场文书
2014年第四季度入党积极分子思想汇报(十八届四中全会)
2014/11/03 职场文书
政风行风整改报告
2014/11/06 职场文书
秀!学妹看见都惊呆的Python小招数!【详细语言特性使用技巧】
2021/04/27 Python
Window server 2012 R2 AD域的组策略相关设置
2022/04/28 Servers