TensorFlow函数:tf.RegisterGradient

2018-12-19 11:20 更新
tf.RegisterGradient 函数

RegisterGradient 类

定义在:tensorflow/python/framework/ops.py.

请参阅指南:构建图>定义新操作

用于注册 op 类型的渐变函数的修饰符.

这个修饰符只在定义一个新的 op 类型时使用.对于具有 m 个输入和 n 个输出的运算,梯度函数是一个采用原始的 Operation 和 n Tensor 对象(表示与 op 的每个输出相关的梯度),并返回 m Tensor 对象(表示相对于 op 的每个输入的部分梯度)的函数.

例如,假设该类型的"Sub"操作需要两个输入 x 和 y,并返回一个单一的输出 x - y,则以下梯度函数将被注册:

@tf.RegisterGradient("Sub")
def _sub_grad(unused_op, grad):
  return grad, tf.negative(grad)

修饰符参数 op_type 是操作的字符串类型.这对应于定义操作的原始 OpDef. name 字段.

方法

__init__

__init__(op_type)

该方法使用op_type作为Operation类型创建一个新的修饰符.

参数:

  • op_type:操作的字符串类型.这对应于定义操作的原始 OpDef. name 字段.

__call__

鬼斧神工

__call__(f)

该方法可以将函数 f 注册为 op_type 的梯度函数. 

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号