对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中给List添加元素的4种方法分享
Nov 28 Python
python中循环语句while用法实例
May 16 Python
详解利用OpenCV提取图像中的矩形区域(PPT屏幕等)
Jul 01 Python
libreoffice python 操作word及excel文档的方法
Jul 04 Python
使用django的objects.filter()方法匹配多个关键字的方法
Jul 18 Python
tensorflow如何批量读取图片
Aug 29 Python
Python Celery多队列配置代码实例
Nov 22 Python
np.dot()函数的用法详解
Jan 17 Python
python 解压、复制、删除 文件的实例代码
Feb 26 Python
如何解决flask修改静态资源后缓存文件不能及时更改问题
Aug 02 Python
无需压缩软件,用python帮你操作压缩包
Aug 17 Python
浅谈Python协程asyncio
Jun 20 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
在Zeus Web Server中安装PHP语言支持
2006/10/09 PHP
延长phpmyadmin登录时间的方法
2011/02/06 PHP
Yii入门教程之目录结构、入口文件及路由设置
2014/11/25 PHP
深入理解PHP中的Streams工具
2015/07/03 PHP
php加密解密字符串示例
2016/10/13 PHP
身份证号码前六位所代表的省,市,区, 以及地区编码下载
2007/04/12 Javascript
一个js拖拽的效果类和dom-drag.js浅析
2010/07/17 Javascript
javascript中的继承实例代码
2011/04/27 Javascript
javascript 45种缓动效果 非常酷
2011/06/28 Javascript
基于LayUI分页和LayUI laypage分页的使用示例
2017/08/02 Javascript
Nodejs中crypto模块的安全知识讲解
2018/01/03 NodeJs
JS实现统计字符串中字符出现个数及最大个数功能示例
2018/06/04 Javascript
基于Vue el-autocomplete 实现类似百度搜索框功能
2019/10/25 Javascript
vue 中几种传值方法(3种)
2019/11/12 Javascript
TypeScript的安装、使用、自动编译的实现
2020/04/10 Javascript
React.js组件实现拖拽排序组件功能过程解析
2020/04/27 Javascript
vue 保留两位小数 不能直接用toFixed(2) 的解决
2020/08/07 Javascript
pycharm 使用心得(七)一些实用功能介绍
2014/06/06 Python
在Linux中通过Python脚本访问mdb数据库的方法
2015/05/06 Python
Djang中静态文件配置方法
2015/07/30 Python
在Python程序和Flask框架中使用SQLAlchemy的教程
2016/06/06 Python
使用pygame模块编写贪吃蛇的实例讲解
2018/02/05 Python
django 在原有表格添加或删除字段的实例
2018/05/27 Python
python 多线程串行和并行的实例
2019/02/22 Python
python实现雪花飘落效果实例讲解
2019/06/18 Python
Python中断多重循环的思路总结
2019/10/04 Python
凯特方迪化妆品官网:Kat Von D Beauty
2016/11/15 全球购物
《最后的姿势》教学反思
2014/02/27 职场文书
投标承诺书范本
2014/03/27 职场文书
故意伤害人身损害赔偿协议书
2014/11/19 职场文书
宣传部部长竞选稿
2015/11/21 职场文书
校园文化艺术节开幕词
2016/03/04 职场文书
工作计划范文之财务管理
2019/08/09 职场文书
创业计划书之淘宝网店
2019/10/08 职场文书
python 爬取豆瓣网页的示例
2021/04/13 Python
Spring Cloud 中@FeignClient注解中的contextId属性详解
2021/09/25 Java/Android