Tra*_*tal 31 python machine-learning tensorflow
有什么区别
tf.add(x, y)
Run Code Online (Sandbox Code Playgroud)
和
x + y
Run Code Online (Sandbox Code Playgroud)
在TensorFlow中?当您使用+而不是tf.add()?构建图形时,计算图形会有什么不同?
更一般地说,是否 +为张量超载或其他操作?
mrr*_*rry 62
如果至少一个x或y是一个tf.Tensor对象,则表达式tf.add(x, y)和x + y是相等的.您可能使用的主要原因tf.add()是name为创建的op 指定显式关键字参数,这对于重载的运算符版本是不可能的.
需要注意的是,如果没有x,也不y是tf.Tensor如果他们是NumPy的-例如阵列,那么x + y将不会创建TensorFlow运算.tf.add()总是创建一个TensorFlow操作并将其参数转换为tf.Tensor对象.因此,如果您正在编写可能同时接受张量和NumPy数组的库函数,您可能更愿意使用tf.add().
以下运算符在TensorFlow Python API中重载:
__neg__(一元-)__abs__(abs())__invert__(一元~)__add__(二进制+)__sub__(二进制-)__mul__(二元元素*)__div__(/Python 2中的二进制文件)__floordiv__(//Python 3中的二进制文件)__truediv__(/Python 3中的二进制文件)__mod__(二进制%)__pow__(二进制**)__and__(二进制&)__or__(二进制|)__xor__(二进制^)__lt__(二进制<)__le__(二进制<=)__gt__(二进制>)__ge__(二进制>=)请注意,__eq__(二进制==)不会超载.x == y将简单地返回一个Python布尔值,x并且y引用相同的张量.您需要tf.equal()显式使用以检查元素明确的相等性.同样不等于__ne__(二进制!=).
| 归档时间: |
|
| 查看次数: |
7571 次 |
| 最近记录: |