tensorflow之变量初始化(tf.Variable)使用详解


Posted in Python onFebruary 06, 2020

默认本系列的的读者已经初步熟悉tensorflow。

我们通过tf.Variable构造一个variable添加进图中,Variable()构造函数需要变量的初始值(是一个任意类型、任意形状的tensor),这个初始值指定variable的类型和形状。通过Variable()构造函数后,此variable的类型和形状固定不能修改了,但值可以用assign方法修改。

如果想修改variable的shape,可以使用一个assign op,令validate_shape=False.

通过Variable()生成的variables就是一个tensor,可以作为graph中其他op的输入。另外,Tensor类重载的所有操作符都被转载到此variables中,所以可以通过对变量调用方法,将节点添加到图形中。

import tensorflow as tf

#创造variable.<initial-value>指定这个variable的type和shape
w = tf.Variable(<initial-value>, name=<optional-name>)

# 接着就可以把这个variable当做tensor运用在graph中.
y = tf.matmul(w, ...another variable or tensor...)

z = tf.sigmoid(w + y)

# 通过`assign()`和相关方法给这个w赋值
w.assign(w + 1.0)
w.assign_add(1.0)

一个graph启动之前所有的variables必须都要赋值,实际上,变量初始化操作op只是一个赋值op,是将variables的初始值赋给variables自身。

# 在session中启动graph.
with tf.Session() as sess:
 # variable初始化.
 sess.run(w.initializer)
 # ...现在可以运行使用'w'的op...

给variables初始化最简单的方法就是global_variables_initializer(),可以直接初始化所有variables:

# 初始化所有variables 的op
init_op = tf.global_variables_initializer()

# 在session中启动graph.
with tf.Session() as sess:
 # 启动这个op
 sess.run(init_op)
 # ...现在可以运行使用variables的op...

但有时一个变量的初始化依赖于其他变量的初始化,但是为了确保初始化顺序不能错,可以使用initialized_value()。

以上这篇tensorflow之变量初始化(tf.Variable)使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python unittest 简单实现参数化的方法
Nov 30 Python
python命令行参数用法实例分析
Jun 25 Python
python list多级排序知识点总结
Oct 23 Python
Python 脚本拉取 Docker 镜像问题
Nov 10 Python
解决python中import文件夹下面py文件报错问题
Jun 01 Python
Django修改app名称和数据表迁移方案实现
Sep 17 Python
python 下划线的不同用法
Oct 24 Python
详解Python中的文件操作
Jan 14 Python
python爬虫selenium模块详解
Mar 30 Python
pycharm无法导入lxml的解决办法
Mar 31 Python
pytorch 一行代码查看网络参数总量的实现
May 12 Python
Python图像处理库PIL详细使用说明
Apr 06 Python
使用TensorFlow搭建一个全连接神经网络教程
Feb 06 #Python
详解python 降级到3.6终极解决方案
Feb 06 #Python
PyCharm如何导入python项目的方法
Feb 06 #Python
tensorflow 环境变量设置方式
Feb 06 #Python
快速查找Python安装路径方法
Feb 06 #Python
运行tensorflow python程序,限制对GPU和CPU的占用操作
Feb 06 #Python
如何在django中添加日志功能
Feb 06 #Python
You might like
PHP新手上路(八)
2006/10/09 PHP
用PHP生成html分页列表的代码
2007/03/18 PHP
PHP Session机制简介及用法
2014/08/19 PHP
PHP实现加密文本文件并限制特定页面的存取的效果
2016/10/21 PHP
PHP pthreads v3在centos7平台下的安装与配置操作方法
2020/02/21 PHP
TP - 比RBAC更好的权限认证方式(Auth类认证)
2021/03/09 PHP
jquery取子节点及当前节点属性值的方法
2014/09/09 Javascript
jQuery入门介绍之基础知识
2015/01/13 Javascript
js计算任意值之间随机数的方法
2015/01/16 Javascript
JS随机洗牌算法之数组随机排序
2016/03/23 Javascript
BootStrap初学者对弹出框和进度条的使用感觉
2016/06/27 Javascript
AngularJS中关于ng-class指令的几种实现方式详解
2016/09/17 Javascript
详解获取jq ul第一个li定位的四种解决方案
2016/11/23 Javascript
详解nodeJS中读写文件方法的区别
2017/03/06 NodeJs
完美实现js选项卡切换效果(一)
2017/03/08 Javascript
AngularJS+bootstrap实现动态选择商品功能示例
2017/05/17 Javascript
Javascript中将变量转换为字符串的三种方法
2017/09/19 Javascript
vue的状态管理模式vuex
2017/11/30 Javascript
react 国际化的实现代码示例
2018/09/14 Javascript
JavaScript面试技巧之数组的一些不low操作
2019/03/22 Javascript
详解Vue-cli3.X使用px2rem遇到的问题
2019/08/09 Javascript
springboot+vue实现文件上传下载
2020/11/17 Vue.js
python批量添加zabbix Screens的两个脚本分享
2017/01/16 Python
python SVM 线性分类模型的实现
2019/07/19 Python
python requests模拟登陆github的实现方法
2019/12/26 Python
Python GUI编程学习笔记之tkinter控件的介绍及基本使用方法详解
2020/03/30 Python
解决windows下python3使用multiprocessing.Pool出现的问题
2020/04/08 Python
重构Python代码的六个实例
2020/11/25 Python
基于HTML5 Canvas的3D动态Chart图表的示例
2017/11/02 HTML / CSS
李宁官方网店:中国运动品牌
2017/11/02 全球购物
元旦联欢会策划方案
2014/06/11 职场文书
钱学森观后感
2015/06/04 职场文书
离职告别感言
2015/08/04 职场文书
创业计划书之个人工作室
2019/08/22 职场文书
mysql字符串截取函数小结
2021/04/05 MySQL
提高系统的吞吐量解决数据库重复写入问题
2022/04/23 MySQL