tensorflow API:tf.Variable
原文:官网
一个Variable变量通过run()保存流程图中的状态;创建一个变量,即创建一个Variable类的实例加入graph中
Variable()构造器要求变量有初始化值,初始化值给出了Tensor的类型和形状。变量创建以后,变量的type和shape都被固定,变量的值可以通过assign方法改变。
如果想改变变量的shape,通过使用assign方法,并且设置validate_shape = False
可以通过其他变量初始化现有的变量,并且变量之间的算术运算也能再现有的graph中加入新节点。
流程如下:
import tensorflow as tf
#创建变量
w = tf.Variable(, name=)
# 用变量构建graph
y = tf.matmul(w, …another variable or tensor…)
#操作符被重载
z = tf.sigmoid(w + y)
# 通过assign()
或者related method给变量赋新值。
w.assign(w + 1.0)
w.assign_add(1.0)
当我们启动graph的时候,运行各个操作(ops)用到了图里的变量值,那变量必须在这之前被明确的初始化。可以运行variable的initializer ,从文件恢复(restoring)变量,或者赋值(assigne)操作给变量赋值。
例子:
在一个会话里启动图。
with tf.Session() as sess:# Run the variable initializer.sess.run(w.initializer)
..现在可以用使用操作w的运算符了(ops)…**
The most common initialization pattern is to use the convenience function global_variables_initializer() to add an Op to the graph that initializes all the variables. You then run that Op after launching the graph.
最常使用的初始化模式是用global_variables_initializer()添加一个op到已有的图中,这个操作会初始化图中所有的变量,
添加一个op作为全局变量初始化操作符。
init_op = tf.global_variables_initializer()
在会话(session)里启动图。
with tf.Session() as sess:# 运行可以初始化全局变量的这个操作符。sess.run(init_op)...现在可以运行任意的变量了...
当需要用其他变量初始化现有变量时,用其他变量的initialized_value()方法,这保证变量正确的被初始化。
全部的变量都自动被收集到创建得图上。默认的构造器添加新变量到collection GraphKeys.GLOBAL_VARIABLES中。可以用global_variables()函数得到collection全局的上下文
在构建一个机器学习模型的时候,经常需要区别哪些变量是该模型控制的可训练的参数,哪些变量是全局变量用来计数训练步骤等,因此所有的变量构造器支持一个trainable=的参数。如果设为True,这个新变量添加到collection GraphKeys.TRAINABLE_VARIABLES中,表示是模型控制的可训练参数。可以用trainable_variables()函数得到collection可训练的上下文。
各种优化器类使用此collection优化变量的默认列表
tensorflow API:tf.Variable相关推荐
- Tensorflow教程: tf.Variable() 和tf.get_variable()
七月 上海 | 高性能计算之GPU CUDA培训 7月27-29日三天密集式学习 快速带你入门阅读全文> 正文共364个字,预计阅读时间8分钟. 一.简介 tf.Variable() 1tf. ...
- 啥是符号式API,命令式API:TF 2.0两种搭建都支持,该怎么选?
原作 Josh Gordon 栗子 编译 量子位 出品 | 公众号 QbitAI TensorFlow 2.0有一个很友好的地方,就是提供了多种不同的抽象方式,可以根据自己的需求来选择.这些API ...
- 记录 之 tensorflow函数:tf.data.Dataset.from_tensor_slices
tf.data.Dataset.from_tensor_slices(),是常见的数据处理函数,它的作用是将给定的元组(turple).列表(list).张量(tensor)等特征进行特征切片.切片的 ...
- TensorFlow函数:tf.ones
tf.ones 函数 ones(shape,dtype=tf.float32,name=None ) 定义于:tensorflow/python/ops/array_ops.py. 请参阅指南:生成常 ...
- Tensorlow 中文API:tf.zeros() tf.ones()tf.fill()tf.constant()
在程序中有一处不理解的地方 import basic.util.prints这个basic包找不到也搜不到,有知道的帮忙留言,谢谢 可以在下面使用print(data.eval())来输出结果 Ten ...
- 图解TensorFlow op:tf.strided_slice
田海立@CSDN 2020-11-14 本文用图文的方式来解释TensorFlow中strided_slice算子运算的方式. 一.strided_slice原型 strided_slice在各个维度 ...
- c语言gather函数,TensorFlow函数:tf.gather_nd
函数:tf.gather_ndgather_nd( params, indices, name=None ) 将参数中的切片收集到由索引指定的形状的张量中. 索引(indices)是一个 k 维整数张 ...
- tensorflow基础:tf.data.Dataset.from_tensor_slices() 与 tf.data.Dataset.from_generator()的异同
tf.data.Dataset.from_tensor_slices(tensor): -->将tensor沿其第一个维度切片,返回一个含有N个样本的数据集(假设tensor的第一个维度为N). ...
- tensorflow基础:tf.data.Dataset.from_tensor_slices()
tf.data.Dataset.from_tensor_slices() 语义解释:from_tensor_slices,从张量的切片读取数据. 工作原理:将输入的张量的第一个维度看做样本的个数,沿其 ...
最新文章
- 2021-08-08概率论与数理统计-第二章
- 编程之美2.10 寻找数组中的最大值和最小值
- PPP、MP 和 SLIP 配置(上)
- Luffy之Xadmin以及首页搭建(轮播图,导航)
- mysql新增阵列df_DF学Mysql(二)——数据表的基本操作
- matlab yalmip安装教程,如何在matlab路径中安装yalmip Matlab R2014a添加yalmip图文教程
- 禁止访问Apache目录
- Linux CentOS7/RHEL7关闭ctrl+alt+delete功能键
- C++ ORM ODB入门
- ts的小demo--贪吃蛇(尚硅谷教程笔记)
- Kafka权威指南-学习笔记---第四章
- ARP网关欺骗程序的实现(vs2008 winpacp)
- 计算机网络在电力系统继电保护的应用毕业论文,毕业论文 110kV电力系统继电保护的配置...
- 解决安装C4D打不开的问题 Cinema 4D R25 Mac中英文 支持M1intel处理器(附经验分享——lib4d文件如何导入)
- js-05--对象是什么、创建对象、对象使用、操作对象、遍历对象、内置对象、Math、任意范围随机数、日期对象、字符串对象
- 2021年新版阿里云服务器价格表(收费标准报价)
- 教你轻松获取windows10锁屏壁纸
- 华为颇无奈,徕卡或离它而去而与小米合作
- 我,27岁,程序员,9月无情被辞:想给做开发的提个醒…
- Hibernate中的一对多关系映射