对TensorFlow的assign赋值用法详解


Posted in Python onJuly 30, 2018

TensorFlow修改变量值后,需要重新赋值,assign用起来有点小技巧,就是需要需要弄个操作子,运行一下。

下面这么用是不行的

import tensorflow as tf
import numpy as np
 
x = tf.Variable(0)
init = tf.initialize_all_variables()
sess = tf.InteractiveSession()
sess.run(init)
 
print(x.eval())
 
x.assign(1)
print(x.eval())

正确用法

1.

import tensorflow as tf
x = tf.Variable(0)
y = tf.assign(x, 1)
with tf.Session() as sess:
 sess.run(tf.global_variables_initializer())
 print sess.run(x)
 print sess.run(y)
 print sess.run(x)

2.

In [212]: w = tf.Variable(12)
In [213]: w_new = w.assign(34)
 
In [214]: with tf.Session() as sess:
  ...:  sess.run(w_new)
  ...:  print(w_new.eval())
 
# output
34

3.

import tensorflow as tf
x = tf.Variable(0)
sess = tf.Session()
sess.run(tf.global_variables_initializer())
print(sess.run(x)) # Prints 0.
x.load(1, sess)
print(sess.run(x)) # Prints 1.

我的方法

import numpy as np #这是Python的一种开源的数值计算扩展,非常强大
import tensorflow as tf #导入tensorflow 

##构造数据##
x_data=np.random.rand(100).astype(np.float32) #随机生成100个类型为float32的值
y_data=x_data*0.1+0.3 #定义方程式y=x_data*A+B
##-------##

##建立TensorFlow神经计算结构##
weight=tf.Variable(tf.random_uniform([1],-1.0,1.0)) 
biases=tf.Variable(tf.zeros([1]))  
y=weight*x_data+biases

w1=weight*2

loss=tf.reduce_mean(tf.square(y-y_data)) #判断与正确值的差距
optimizer=tf.train.GradientDescentOptimizer(0.5) #根据差距进行反向传播修正参数
train=optimizer.minimize(loss) #建立训练器

init=tf.global_variables_initializer() #初始化TensorFlow训练结构
#sess=tf.Session() #建立TensorFlow训练会话
sess = tf.InteractiveSession() 
sess.run(init)  #将训练结构装载到会话中
print('weight',weight.eval())
for step in range(400): #循环训练400次
  sess.run(train) #使用训练器根据训练结构进行训练
  if step%20==0: #每20次打印一次训练结果
  print(step,sess.run(weight),sess.run(biases)) #训练次数,A值,B值
  
print(sess.run(loss))  
print('weight new',weight.eval())


#wop=weight.assign([3])
#wop.eval()
weight.load([1],sess)
print('w1',w1.eval())

以上这篇对TensorFlow的assign赋值用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python人人网登录应用实例
Sep 26 Python
Python的Flask框架中SQLAlchemy使用时的乱码问题解决
Nov 07 Python
Python 读写文件和file对象的方法(推荐)
Sep 12 Python
Python多线程经典问题之乘客做公交车算法实例
Mar 22 Python
Python机器学习之SVM支持向量机
Dec 27 Python
DRF跨域后端解决之django-cors-headers的使用
Jan 27 Python
Python嵌套式数据结构实例浅析
Mar 05 Python
python实现websocket的客户端压力测试
Jun 25 Python
python数据预处理之数据标准化的几种处理方式
Jul 17 Python
完美解决python针对hdfs上传和下载的问题
Jun 05 Python
Python虚拟环境virtualenv创建及使用过程图解
Dec 08 Python
python生成可执行exe控制Microsip自动填写号码并拨打功能
Jun 21 Python
Python双向循环链表实现方法分析
Jul 30 #Python
tensorflow更改变量的值实例
Jul 30 #Python
Python使用分布式锁的代码演示示例
Jul 30 #Python
利用Python如何批量修改数据库执行Sql文件
Jul 29 #Python
利用Python如何批量更新服务器文件
Jul 29 #Python
python高阶爬虫实战分析
Jul 29 #Python
python3.5基于TCP实现文件传输
Mar 20 #Python
You might like
PHP安全配置
2006/10/09 PHP
如何在WIN2K下安装PHP4.04
2006/10/09 PHP
PHP 动态生成静态HTML页面示例代码
2014/01/15 PHP
Fleaphp常见函数功能与用法示例
2016/11/15 PHP
jquery 输入框数字限制插件
2009/11/10 Javascript
JS 加入收藏夹的代码(主流浏览器通用)
2013/05/13 Javascript
jQuery实现可拖拽的许愿墙效果【附demo源码下载】
2016/09/14 Javascript
js仿iphone秒表功能 计算平均数
2017/01/11 Javascript
Vuejs实现带样式的单文件组件新方法
2017/05/02 Javascript
关于Vue.nextTick()的正确使用方法浅析
2017/08/25 Javascript
vue 的keep-alive缓存功能的实现
2018/03/22 Javascript
react native 获取地理位置的方法示例
2018/08/28 Javascript
js如何获取图片url的Blob值并预览示例代码
2019/03/07 Javascript
javascript删除数组元素的七个方法示例
2019/09/09 Javascript
vue实现将一个数组内的相同数据进行合并
2019/11/07 Javascript
JS中FileReader类实现文件上传及时预览功能
2020/03/27 Javascript
[20:46]Ti4循环赛第三日VG vs DK
2014/07/12 DOTA
基于python实现微信模板消息
2015/12/21 Python
Python实现 多进程导入CSV数据到 MySQL
2017/02/26 Python
解决python3.5 正常安装 却不能直接使用Tkinter包的问题
2019/02/22 Python
django框架forms组件用法实例详解
2019/12/10 Python
Django-xadmin+rule对象级权限的实现方式
2020/03/30 Python
pyecharts在数据可视化中的应用详解
2020/06/08 Python
Python 下载Bing壁纸的示例
2020/09/29 Python
英国的知名精品百货公司:House of Fraser(福来德)
2016/08/14 全球购物
英国领先的葡萄酒专家:Majestic Wine
2017/05/30 全球购物
选购国际女性时装设计师品牌:IFCHIC(支持中文)
2018/04/12 全球购物
英国领先的露营和露营车品牌之一:OLPRO
2019/08/06 全球购物
介绍一下Linux内核的排队自旋锁
2014/01/04 面试题
2014村党支部书记党建工作汇报材料
2014/11/02 职场文书
2015年社区综治宣传月活动总结
2015/03/25 职场文书
辞职信格式范文
2015/05/13 职场文书
撤诉书怎么写
2015/05/19 职场文书
Mysql基础之常见函数
2021/04/22 MySQL
Rust 连接 PostgreSQL 数据库的详细过程
2022/01/22 PostgreSQL
Java中的继承、多态以及封装
2022/04/11 Java/Android