TensorFlow梯度求解tf.gradients实例


Posted in Python onFebruary 04, 2020

我就废话不多说了,直接上代码吧!

import tensorflow as tf 

w1 = tf.Variable([[1,2]]) 
w2 = tf.Variable([[3,4]]) 

res = tf.matmul(w1, [[2],[1]]) 

grads = tf.gradients(res,[w1]) 

with tf.Session() as sess: 
 tf.global_variables_initializer().run()
 print sess.run(res)
 print sess.run(grads)

输出结果为:

[[4]]
[array([[2, 1]], dtype=int32)]

可以这样看res与w1有关,w1的参数设为[a1,a2],则:

2*a1 + a2 = res

所以res对a1,a2求导可得 [[2,1]]为w1对应的梯度信息。

import tensorflow as tf 
def gradient_clip(gradients, max_gradient_norm):
 """Clipping gradients of a model."""
 clipped_gradients, gradient_norm = tf.clip_by_global_norm(
   gradients, max_gradient_norm)
 gradient_norm_summary = [tf.summary.scalar("grad_norm", gradient_norm)]
 gradient_norm_summary.append(
  tf.summary.scalar("clipped_gradient", tf.global_norm(clipped_gradients)))

 return clipped_gradients
w1 = tf.Variable([[3.0,2.0]]) 
# w2 = tf.Variable([[3,4]]) 
params = tf.trainable_variables()
res = tf.matmul(w1, [[3.0],[1.]]) 
opt = tf.train.GradientDescentOptimizer(1.0)
grads = tf.gradients(res,[w1]) 
clipped_gradients = gradient_clip(grads,2.0)
global_step = tf.Variable(0, name='global_step', trainable=False)
#update = opt.apply_gradients(zip(clipped_gradients,params), global_step=global_step)
with tf.Session() as sess: 
 tf.global_variables_initializer().run()
 print sess.run(res)
 print sess.run(grads) 
 print sess.run(clipped_gradients)

以上这篇TensorFlow梯度求解tf.gradients实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python常见数据结构详解
Jul 24 Python
朴素贝叶斯算法的python实现方法
Nov 18 Python
Python设计模式之解释器模式原理与用法实例分析
Jan 10 Python
详解Python给照片换底色(蓝底换红底)
Mar 22 Python
python跳出双层for循环的解决方法
Jun 24 Python
python批量修改图片尺寸,并保存指定路径的实现方法
Jul 04 Python
python使用Qt界面以及逻辑实现方法
Jul 10 Python
利用python list完成最简单的DB连接池方法
Aug 09 Python
tensorflow获取预训练模型某层参数并赋值到当前网络指定层方式
Jan 24 Python
Python Tornado实现WEB服务器Socket服务器共存并实现交互的方法
May 26 Python
Python实现自动签到脚本功能
Aug 20 Python
Python 使用SFTP和FTP实现对服务器的文件下载功能
Dec 17 Python
基于TensorFlow中自定义梯度的2种方式
Feb 04 #Python
tensorflow 查看梯度方式
Feb 04 #Python
opencv python图像梯度实例详解
Feb 04 #Python
TensorFlow设置日志级别的几种方式小结
Feb 04 #Python
Python 实现加密过的PDF文件转WORD格式
Feb 04 #Python
解决tensorflow打印tensor有省略号的问题
Feb 04 #Python
对Tensorflow中tensorboard日志的生成与显示详解
Feb 04 #Python
You might like
PHP生成不重复标识符的方法
2014/11/21 PHP
Laravel中服务提供者和门面模式的入门介绍
2017/11/06 PHP
php curl批处理实现可控并发异步操作示例
2018/05/09 PHP
js脚本实现数据去重
2014/11/27 Javascript
js实现类似jquery里animate动画效果的方法
2015/04/10 Javascript
jQuery复制表单元素附源码分享效果演示
2015/09/30 Javascript
JS组件Bootstrap dropdown组件扩展hover事件
2016/04/17 Javascript
Vue组件BootPage实现简单的分页功能
2016/09/12 Javascript
微信小程序 密码输入(源码下载)
2017/06/27 Javascript
jQuery 实现图片的依次加载图片功能
2017/07/06 jQuery
详谈js原型继承的一些问题
2017/09/06 Javascript
vue 中引用gojs绘制E-R图的方法示例
2018/08/24 Javascript
基于vue.js组件实现分页效果
2018/12/29 Javascript
解决VUE-Router 同一页面第二次进入不刷新的问题
2020/07/22 Javascript
js实现日历
2020/11/07 Javascript
python网络编程之文件下载实例分析
2015/05/20 Python
python删除列表内容
2015/08/04 Python
python enumerate函数的使用方法总结
2017/11/15 Python
python topN 取最大的N个数或最小的N个数方法
2018/06/04 Python
Python3.5文件修改操作实例分析
2019/05/01 Python
获取Pytorch中间某一层权重或者特征的例子
2019/08/17 Python
python将unicode和str互相转化的实现
2020/05/11 Python
python3.7.3版本和django2.2.3版本是否可以兼容
2020/09/01 Python
用gpu训练好的神经网络,用tensorflow-cpu跑出错的原因及解决方案
2021/03/03 Python
python 中 .py文件 转 .pyd文件的操作
2021/03/04 Python
基于HTML5的WebSocket的实例代码
2018/08/15 HTML / CSS
北卡罗来纳州豪华家具和家居装饰店:Carolina Rustica
2018/10/30 全球购物
Furla官网:意大利著名的皮革品牌
2019/08/06 全球购物
香港艺人陈冠希创办的潮流品牌:JUICESTORE
2021/03/04 全球购物
师说教学反思
2014/02/07 职场文书
员工三分钟演讲稿
2014/08/19 职场文书
员工试用期自我鉴定范文
2014/09/15 职场文书
党员自我剖析材料范文
2014/10/06 职场文书
css3实现的加载动画效果
2021/04/07 HTML / CSS
HTML基础详解(下)
2021/10/16 HTML / CSS
MySQL实现用逗号进行拼接、以逗号进行分割
2022/12/24 MySQL