首页 > 解决方案 > “tf.nn.relu(A)”和“tf.maximum(A, 0)”是一样的吗?

问题描述

这里有两个代码。

tf.nn.relu("output of previous layer")

tf.maximum("output of previous layer", 0)

这两个行为完全一样吗?

换句话说,是否可以用另一个替换一个?

标签: pythontensorflow

解决方案


一旦 relu 被定义为:

max(features, 0)

它们基本相同。两者都将张量作为输入并返回一个张量。唯一的区别是支持的类型。

支持以下tf.nn.relu类型:

  • float32, float64, int32, uint8, int16, int8, int64, bfloat16, uint16, half, uint32, uint64,qint8

while tf.maximum支持上述类型的子集:

  • half, float32, float64, int32,int64

推荐阅读