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脚本来获取Google搜索结果的示例
May 04 Python
Python之Web框架Django项目搭建全过程
May 02 Python
Python即时网络爬虫项目启动说明详解
Feb 23 Python
python如何让类支持比较运算
Mar 20 Python
python实现全盘扫描搜索功能的方法
Feb 14 Python
pymongo中聚合查询的使用方法
Mar 22 Python
Python3中urlencode和urldecode的用法详解
Jul 23 Python
python代码 FTP备份交换机配置脚本实例解析
Aug 01 Python
Python pyautogui模块实现鼠标键盘自动化方法详解
Feb 17 Python
一文轻松掌握python语言命名规范规则
Jun 18 Python
基于python实现简单C/S模式代码实例
Sep 14 Python
一小时学会TensorFlow2之基本操作2实例代码
Sep 04 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
三国漫画《火凤燎原》宣布动画化PV放出 预计2020年播出
2020/03/08 国漫
Extended CHM PHP 语法手册之 DIY
2006/10/09 PHP
php 的加密函数 md5,crypt,base64_encode 等使用介绍
2012/04/09 PHP
smarty模板中拼接字符串的方法
2014/02/14 PHP
PHP统计数值数组中出现频率最多的10个数字的方法
2015/04/20 PHP
WordPress特定文章对搜索引擎隐藏或只允许搜索引擎查看
2015/12/31 PHP
PHP 无限级分类
2017/05/04 PHP
解决laravel中日志权限莫名变成了root的问题
2019/10/17 PHP
Thinkphp 框架配置操作之配置加载与读取配置实例分析
2020/05/15 PHP
js更优雅的兼容
2010/08/12 Javascript
JS模块与命名空间的介绍
2013/03/22 Javascript
jQuery中offsetParent()方法用法实例
2015/01/19 Javascript
Lab.js初次使用笔记
2015/02/28 Javascript
jQuery实现的动态伸缩导航菜单实例
2015/05/07 Javascript
js实现表单Radio切换效果的方法
2015/08/17 Javascript
使用jQuery制作遮罩层弹出效果的极简实例分享
2016/05/12 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
jQuery插件FusionCharts实现的MSBar3D图效果示例【附demo源码】
2017/03/23 jQuery
JS实现的抛物线运动效果示例
2018/01/30 Javascript
Vue将页面导出为图片或者PDF
2020/08/17 Javascript
手把手带你入门微信小程序新框架Kbone的使用
2020/02/25 Javascript
解决vue的touchStart事件及click事件冲突问题
2020/07/21 Javascript
python中合并两个文本文件并按照姓名首字母排序的例子
2014/04/25 Python
Python语言描述最大连续子序列和
2017/12/05 Python
对TensorFlow的assign赋值用法详解
2018/07/30 Python
python视频按帧截取图片工具
2019/07/23 Python
Python OrderedDict的使用案例解析
2019/10/25 Python
python+selenium+chromedriver实现爬虫示例代码
2020/04/10 Python
浅谈opencv自动光学检测、目标分割和检测(连通区域和findContours)
2020/06/04 Python
python 实现图片修复(可用于去水印)
2020/11/19 Python
写一个函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度
2015/11/18 面试题
《晚上的太阳》教学反思
2014/04/23 职场文书
群众路线教师自我剖析材料
2014/09/29 职场文书
上市公司董事长岗位职责
2015/04/16 职场文书
HTML+css盒子模型案例(圆,半圆等)“border-radius” 简单易上手
2021/05/10 HTML / CSS
MySQL优化及索引解析
2022/03/17 MySQL