【发布时间】:2016-06-01 14:13:08
【问题描述】:
对于我的应用程序,我能够仅使用预定义的操作来创建一个新函数。在这种情况下是否需要定义一个新的操作?
我的函数的伪代码是:
z1 = myGauss(arg, arg2)
def myGauss(arg, arg2):
# Here I only used defined tensorflow operations
【问题讨论】:
对于我的应用程序,我能够仅使用预定义的操作来创建一个新函数。在这种情况下是否需要定义一个新的操作?
我的函数的伪代码是:
z1 = myGauss(arg, arg2)
def myGauss(arg, arg2):
# Here I only used defined tensorflow operations
【问题讨论】:
如果您可以利用现有操作的组合实现您的目标,那就太好了!您不需要创建新的操作。
在某些情况下,我们发现有必要创建一个新的操作,但是:
有时您可以通过将操作融合 合并到一个操作中来获得性能。例如,许多"training" ops 已经融合了实现,即使它们最初是使用简单的操作实现的。
另一个例子是当您想为操作组合定义梯度时(因为将表达式作为一个整体考虑会更有效或更稳定)。这就是 tf.nn.softmax_cross_entropy_with_logits() 这样的操作的基本原理。
【讨论】: