模型參數的初始化


1.  tf.global_variables_initializer() 可以初始化所有變量。

import tensorflow as tf
a=tf.Variable(tf.ones((2,3)),name='a')
b=tf.Variable(tf.random_normal(shape=(2,3),stddev=0.35),name='b')
sess=tf.Session()
sess.run(tf.global_variables_initializer())
print(sess.run(a))
print(sess.run(b))

 

 

2.  tf.variables_initializer([var_list]) 僅初始化列表var_list種的值。

import tensorflow as tf
a=tf.Variable(tf.ones((2,3)),name='a')
b=tf.Variable(tf.random_normal(shape=(2,3),stddev=0.35),name='b')
sess=tf.Session()
# sess.run(tf.variables_initializer([a])) # 只初始化變量a,而變量b未作初始化,因此執行會報錯。
sess.run(tf.variables_initializer([a,b])) # 對變量a與b做了初始化,執行將不會報錯
print(sess.run(a))
print(sess.run(b))

報錯結果:

 

 正確結果:

 

 

3.  變量重復賦值並未報錯,其結果如下:

此點證實模型參數可以用assign分配,可用checkpoint模型文件保存值賦值到變量種。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM