……

变量存储可变化的值,例如可用于存储可训练参数:权重和偏置。

要创建一个变量,可以使用tf.get_variable()方法。

tf.get_variable(name = "", values, dtype, initializer)

参数

  • name = "": 变量名称
  • values: 指定变量形状
  • dtype: 数据类型,可选
  • initializer: 如何初始化张量,可选。如果指定了初始化器,则不需要包含“values”,因为使用的是“初始化器”的形状。

例如,下面的代码创建了一个形状是1×2的变量,变量中元素的默认值是随机值,变量命名为var。

import tensorflow.compat.v1 as tf
# 创建一个变量
var = tf.get_variable("var", [1, 2])
print(var.shape)

输出

(1, 2)      
import tensorflow.compat.v1 as tf
var_init_1 = tf.get_variable("var_init_1", [1, 2], dtype=tf.int32,  initializer=tf.zeros_initializer)
print(var_init_1.shape)     

输出

(1, 2)      

可以使用张量常量初始化变量。

# 创建一个2x2矩阵常量
tensor_const = tf.constant([[10, 20],[30, 40]])
# 使用矩阵常量初始化变量
var_init_2 = tf.get_variable("var_init_2", dtype=tf.int32,  initializer=tensor_const)
print(var_init_2.shape)         

输出

(2, 2)      

 

 posted on 2020-06-19 17:23  大码王  阅读(282)  评论(0编辑  收藏  举报
复制代码