`
wang_peng1
  • 浏览: 3942737 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

tf.identity 使用

 
阅读更多
https://stackoverflow.com/questions/34877523/in-tensorflow-what-is-tf-identity-used-for

After some stumbling I think I've noticed a single use case that fits all the examples I've seen. If there are other use cases, please elaborate with an example.

Use case:

Suppose you'd like to run an operator every time a particular Variable is evaluated. For example, say you'd like to add one to x every time the variable y is evaluated. It might seem like this will work:

x = tf.Variable(0.0)
x_plus_1 = tf.assign_add(x, 1)

with tf.control_dependencies([x_plus_1]):
    y = x
init = tf.initialize_all_variables()

with tf.Session() as session:
    init.run()
    for i in xrange(5):
        print(y.eval())
It doesn't: it'll print 0, 0, 0, 0, 0. Instead, it seems that we need to add a new node to the graph within the control_dependencies block. So we use this trick:

x = tf.Variable(0.0)
x_plus_1 = tf.assign_add(x, 1)

with tf.control_dependencies([x_plus_1]):
    y = tf.identity(x)
init = tf.initialize_all_variables()

with tf.Session() as session:
    init.run()
    for i in xrange(5):
        print(y.eval())
This works: it prints 1, 2, 3, 4, 5.

If in the CIFAR-10 tutorial we dropped tf.identity, then loss_averages_op would never run.

 

分享到:
评论

相关推荐

    tensorflow常用函数介绍.doc

    - `tf.identity(input, name=None)`:返回输入张量,用于控制流中的数据传递。 这些函数是TensorFlow库的基础,它们允许开发者构建复杂的计算图,以解决各种机器学习和深度学习问题。通过灵活地组合这些操作,可以...

    Python-优化TensorFlow代码的技巧

    避免在TensorFlow操作之间创建不必要的副本,如使用`tf.identity`。此外,尽量保持张量在GPU内存中,避免频繁的数据转移。 5. **利用GPU并行计算** 如果硬件支持,确保TensorFlow使用GPU进行计算。使用`tf.config...

    基于TensorFlow中自定义梯度的2种方式

    我们可以使用 `tf.RegisterGradient()` 注册一个新的梯度计算函数,并通过 `tf.get_default_graph().gradient_override_map()` 来覆盖原有操作的梯度计算。下面是一个具体的例子: ```python # 定义新的梯度计算...

    SD SIM TF封装库

    SIM(Subscriber Identity Module)卡,也称为用户身份模块,是移动通信设备中用于存储用户身份信息和联系人数据的小型卡片。SIM卡封装需要考虑其独特的接触点布局,以适应手机或其他移动设备中的SIM卡插槽。这些...

    PCB TF等 装载

    其中,TF卡是一种小型的闪存卡,可以通过适配器转换为SD卡使用;SD卡是更常见的存储卡格式,容量较大,应用更广泛;SIM卡(Subscriber Identity Module)则是用于移动通信设备的身份识别模块,存储用户信息和服务...

    resnet_v2_50_299.meta.rar

    恢复模型时,通常会使用`tf.train.import_meta_graph()`函数加载元数据,然后使用`tf.train.Saver()`的`restore()`方法来恢复权重。 ResNet V2 50的核心创新在于残差块(Residual Block),它引入了“shortcut ...

    各种SD卡 SIM卡 TF卡封装

    标题提到的"各种SD卡 SIM卡 TF卡封装"涵盖了三种最常见的移动存储和通信标准,即Secure Digital (SD)卡、Subscriber Identity Module (SIM)卡和TransFlash (TF)卡。这些卡广泛应用于手机、平板电脑、数码相机和其他...

    tensorflow2.0的函数签名与图结构(推荐)

    在示例中,`cube_func_int32.graph`返回了`cube`函数的计算图,包括张量占位符('x'),常量('Pow/y'),乘方操作('Pow')以及身份操作('Identity')。这些操作构成了函数执行的具体步骤。 了解和掌握TensorFlow...

    tensorflow实现残差网络方式(mnist数据集)

    在本文中,我们将深入探讨如何使用TensorFlow框架实现残差网络(ResNet)来处理MNIST数据集。残差网络是深度学习领域的一个重要突破,由何凯明等人提出,它解决了深度神经网络中梯度消失和训练难度增大的问题。尽管...

    DeepLearning-TensorFlow2_python_DNN_densenet_densenettf2

    1. **TensorFlow 2.x基础知识**:包括变量、操作、会话等概念的使用,以及Eager Execution和tf.function的差异。 2. **Keras API**:了解如何用Keras构建模型,添加层,以及损失函数、优化器和评估指标的选择。 3....

    Python-StarGAN的简单Tensorflow实现CVPR2018Oral

    在Tensorflow中,实现这些损失函数以及训练过程时,可以利用Tensorflow的优化器(如Adam)、张量操作(如tf.reduce_mean、tf.concat)和梯度计算(如tf.gradients)。同时,还需要构建数据预处理流程,将原始图像...

    iResNet-tf:iResnet tensorflow版本,仅用于模型

    5. **示例和教程**:可能会提供简单的示例,说明如何使用 iResNet-tf 来构建和训练模型。 使用这个框架时,开发者需要熟悉 TensorFlow API,理解如何配置模型参数,并且知道如何准备数据以适应 iResNet 模型。此外...

    ResNet-18-cifar10.zip

    4. `model`目录:可能包含模型的保存和加载功能,比如使用Python的pickle库或TensorFlow的`tf.train.Saver`来保存和恢复模型的权重和参数。 5. `__pycache__`:这是Python编译后的缓存文件,不直接参与运行,但有助...

    CycleGAN-Tensorflow:CycleGAN的简单Tensorflow实现

    1. **模型架构的定义**:使用Tensorflow的`tf.layers`或`tf.keras.layers`构建生成器和判别器的卷积神经网络结构,并确保满足CycleGAN的特定要求,如ResNet块的使用。 2. **损失函数的计算**:定义并计算上述的...

    SIM卡和TFPCB封装库(AD)

    本文将详细讲解SIM卡和TF卡的PCB封装,以及如何在Altium Designer中使用这些封装库。 SIM卡,全称为Subscriber Identity Module,即用户身份模块,主要用于储存手机用户的个人信息、联系人数据以及网络加密密钥等。...

    将keras的h5模型转换为tensorflow的pb模型操作

    - 使用`tf.identity`创建TensorFlow的输出节点,这些节点对应于Keras模型的输出。 - 获取当前TensorFlow会话的图定义`init_graph`。 - 使用`graph_util.convert_variables_to_constants`将变量转换为常量,这样...

    odp-tf-prisma-deps:用于Prisma依赖的Terraform模块,主要是IAM角色

    这里提到的"odp-tf-prisma-deps"是一个Terraform模块,专门设计来处理与Prisma相关的依赖,特别是涉及到Identity and Access Management (IAM) 角色。 Prisma通常指的是一个数据访问层框架,用于构建数据库应用程序...

Global site tag (gtag.js) - Google Analytics