Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何为tensorflow中处理复张量的自定义op定义梯度?_Python_Numpy_Tensorflow - Fatal编程技术网

Python 如何为tensorflow中处理复张量的自定义op定义梯度?

Python 如何为tensorflow中处理复张量的自定义op定义梯度?,python,numpy,tensorflow,Python,Numpy,Tensorflow,如果你有一个复数张量,tensorflow已经有了一个运算来获得这些复数的大小()。现在我想添加一个函数来计算每个数字的角度。这个函数很容易用numpy实现,并且梯度很小 在添加基于numpy的自定义tensorflow操作时,这似乎是一个不错的选择。然而,这里的输入是复数。所以我的问题是,是否可以使用相同的方法,但处理复数?直接复制TF.ABS中使用的方法是不可能的,因为它使用C++。 看起来像代码> tf。ARG< /Cord>将很快存在:如果你想在那之前做点什么,我推荐你 def arg(

如果你有一个复数张量,tensorflow已经有了一个运算来获得这些复数的大小()。现在我想添加一个函数来计算每个数字的角度。这个函数很容易用numpy实现,并且梯度很小


在添加基于numpy的自定义tensorflow操作时,这似乎是一个不错的选择。然而,这里的输入是复数。所以我的问题是,是否可以使用相同的方法,但处理复数?直接复制TF.ABS中使用的方法是不可能的,因为它使用C++。

看起来像<>代码> tf。ARG< /Cord>将很快存在:如果你想在那之前做点什么,我推荐你

def arg(z):
  return tf.atan2(tf.imag(z), tf.real(z))

太好了,他们正在把它添加到Tensorflow本身中!以下是关于tf.angle的Tensorflow文档链接: