深度学习tensorflow变量op
生活随笔
收集整理的這篇文章主要介紹了
深度学习tensorflow变量op
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#-*-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:# 顯示初始化變量opss.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]))
?
總結
以上是生活随笔為你收集整理的深度学习tensorflow变量op的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深度学习tensorflow框架的张量
- 下一篇: 小样本点云深度学习库_小样本学习综述报告