TensorFlow变量OP

Posted ZSYL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TensorFlow变量OP相关的知识,希望对你有一定的参考价值。

1. 变量OP

TensorFlow变量是表示程序处理的共享持久状态的最佳方法。变量通过 tf.Variable OP类进行操作。变量的特点:

  • 存储持久化
  • 可修改值
  • 可指定被训练

2. 创建变量

  • tf.Variable(initial_value=None,trainable=True,collections=None,name=None)

    • initial_value:初始化的值
    • trainable:是否被训练
    • collections:新变量将添加到列出的图的集合中collections,默认为[GraphKeys.GLOBAL_VARIABLES],如果trainable是True变量也被添加到图形集合 GraphKeys.TRAINABLE_VARIABLES
  • 变量需要显式初始化,才能运行值

def variable_demo():
    """
    变量的演示
    :return:
    """
    # 定义变量
    a = tf.Variable(initial_value=30)
    b = tf.Variable(initial_value=40)
    sum = tf.add(a, b)

    # 初始化变量
    init = tf.global_variables_initializer()

    # 开启会话
    with tf.Session() as sess:
        # 变量初始化
        sess.run(init)
        print("sum:\\n", sess.run(sum))

    return None

3. 使用tf.variable_scope()修改变量的命名空间

会在OP的名字前面增加命名空间的指定名字

with tf.variable_scope("name"):
    var = tf.Variable(name='var', initial_value=[4], dtype=tf.float32)
    var_double = tf.Variable(name='var', initial_value=[4], dtype=tf.float32)
    
<tf.Variable 'name/var:0' shape=() dtype=float32_ref>
<tf.Variable 'name/var_1:0' shape=() dtype=float32_ref>

加油!

感谢!

努力!

以上是关于TensorFlow变量OP的主要内容,如果未能解决你的问题,请参考以下文章

tensorflow:神经网络优化(ema,regularization)

如何用TensorFlow构建RNN

如何用TensorFlow构建RNN

TensorFlow案例:实现线性回归(超详细)

以horovd的HorovodAllreduceOp为例,学习如何在tensorflow上添加一个新的操作OP

TensorFlow 基本概念