tensorflow学习(2)- 变量的使用

前言

tensorflow学习(1)
上一节了解了下tensorflow的一些代码,这一节学习下tensorflow的变量的使用。

代码一

import tensorflow as tf
#定义一个变量
x = tf.Variable([1,2])
#定义一个常量
a = tf.constant([3,3])
#定义一个减法的op
#shift + tab连续两次查看详情
sub = tf.subtract(x,a)
#增加一个加法的op
add = tf.add(x,sub)
#初始化全局变量
init = tf.global_variables_initializer()
#定义会话
with tf.Session() as sess:
    #执行初始化
    sess.run(init)
    print(sess.run(sub))
    print(sess.run(add))

注意事项

  • x = tf.Variable([1,2])定义变量时,Variable首字母大写。
  • 鼠标光标在某个函数上,shift + tab连续两次可以查看详情
  • 使用Variable定义变量需要tf.global_variables_initializer() 这个操作来初始化,否则将报错Attempting to use uninitialized value Variable_3
  • 如果将上述代码中的Variable改成constant则可以不用初始化

代码二

#创建一个变量初始化为0
state = tf.Variable(0,name = 'counter')
#创建一个op,是state加一
new_state = tf.add(state,1)
#赋值操作
update = tf.assign(state,new_state)

#初始化全局变量
init = tf.global_variables_initializer()

with tf.Session() as sess:
    #执行初始化
    sess.run(init)
    print(sess.run(state))
    for i in range(5):
        sess.run(update)
        print(sess.run(state))

注意事项

  • 用shift+tab可以查看函数的详情基本上都有一个隐藏的参数name = none,所以可以用tf.Variable(0,name = ‘counter’)这个方式给参数起名字,具体使用后续讲。
  • tensorflow的赋值方式update = tf.assign(state,new_state),不可以使用=来赋值。
  • tensorflow通过会话中的run来更新变量,执行变量赋值等操作,上述代码中for循环里的sess.run(update),先执行state = tf.Variable(0,name = ‘counter’),然后执行new_state = tf.add(state,1),然后执行update = tf.assign(state,new_state)最后执行sess.run(update)。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

只会git clone的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值