深度学习tensorflow变量op

本文深入探讨了TensorFlow中的变量操作,包括创建、初始化、赋值和更新等核心概念。通过实例解析,阐述了如何在深度学习模型中有效使用变量,提升训练效率。同时,还讨论了变量的保存与加载,以便在不同会话间持久化模型状态。
摘要由CSDN通过智能技术生成
#-*-coding:utf-8-*-
import tensorflow  as  tf
#创建变量op
#初始化的值
intit_value_1=tf.random_normal(
    dtype=tf.float64,
    shape=[2,2],
    stddev=1.0,
    mean=0.0)
intit_value_2=tf.random_normal(
    dtype=tf.float64,
    shape=[2,2],
    stddev=1.0,
    mean=0.0)
#不能通过指定name参数来让var_1与var_2相同--指定空间的名称,都是唯一的
var_1=tf.Variable(initial_value=intit_value_1,name='var')
var_2=tf.Variable(initial_value=intit_value_2,name='var')
print(var_1)
print(intit_value_1)
res=var_1.assign_add([[1.0,1.0],[1.0,1.0]])
print('res',res)
print(var_2)
print(intit_value_2)

#开启会话,执行op
#初始化变量op
intit_op=tf.global_variables_initializer()

with  tf.Session() as  ss:
    # 显示初始化变量op
    ss.run(intit_op)
    print(ss.run(res))#如果是重新赋值或者加一个值,之后的op先运行,那么会更改原来的变量值
    #如果是重新赋值或者加一个值,之后的op后运行,那么不会更改原来的变量值
#变量op需要显示的初始化
    print(ss.run(var_1))
    print(ss.run(var_2))
#变量op需要显式的初始化
#函数A-a
#函数B-a
#globle
#在tensorflow里面实现变量共享--需要用到一个叫命名空间的东西
#命名空间
#共享变量---需要使用命名空间,而且需要指定reuse=tf.AUTO_REUSE,
#还要将指定空间的名称设为一样的,这样才能共享
with  tf.variable_scope('variable',reuse=tf.AUTO_REUSE):
    # intit_value初始化的值
    intit_value_1 = tf.random_normal(
        dtype=tf.float64,
        shape=[2, 2],
        stddev=1.0,
        mean=0.0)
    intit_value_2 = tf.random_normal(
        dtype=tf.float64,
        shape=[2, 2],
        stddev=1.0,
        mean=0.0)
    # 不能通过指定name参数来让var_1与var_2相同--指定空间的名称,都是唯一的
    # var_1 = tf.Variable(initial_value=intit_value_1, name='var')
    # var_2 = tf.Variable(initial_value=intit_value_2, name='var')
    #如果要实现共享,initializer必须要显示指定
    var_1=tf.get_variable(initializer=intit_value_1,dtype=tf.float64,name='var')
    var_2 = tf.get_variable(initializer=intit_value_2,dtype=tf.float64, name='var')
with  tf.Session()as  ss:
    ss.run(tf.global_variables_initializer())
    print(ss.run([var_1,var_2]))

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值