模型参数的初始化

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))

模型参数的初始化_第1张图片

 

 

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))

报错结果:

模型参数的初始化_第2张图片

 

 正确结果:

模型参数的初始化_第3张图片

 

 

3.  变量重复赋值并未报错,其结果如下:

此点证实模型参数可以用assign分配,可用checkpoint模型文件保存值赋值到变量种。

模型参数的初始化_第4张图片

 

你可能感兴趣的:(模型参数的初始化)