Softplus¶
Softplus - 22¶
Version¶
name: Softplus (GitHub)
domain:
mainsince_version:
22function:
Truesupport_level:
SupportType.COMMONshape inference:
True
This version of the operator has been available since version 22.
Summary¶
Softplus takes one input data (Tensor<T>) and produces one output data (Tensor<T>) where the softplus function, y = ln(exp(x) + 1), is applied to the tensor elementwise.
Function Body¶
The function definition for this operator.
<
domain: "",
opset_import: ["" : 18]
>
Softplus (X) => (Y)
{
exp_x = Exp (X)
one = Constant <value: tensor = float {1}> ()
one_cast = CastLike (one, X)
exp_x_add_one = Add (exp_x, one_cast)
Y = Log (exp_x_add_one)
}
Inputs¶
X (heterogeneous) - T:
Input tensor
Outputs¶
Y (heterogeneous) - T:
Output tensor
Type Constraints¶
T in (
tensor(bfloat16),tensor(double),tensor(float),tensor(float16)):Constrain input and output types to float tensors.
Examples¶
default¶
import numpy as np
import onnx
node = onnx.helper.make_node(
"Softplus",
inputs=["x"],
outputs=["y"],
)
x = np.array([-1, 0, 1]).astype(np.float32)
y = np.log(
np.exp(x) + 1
) # expected output [0.31326166, 0.69314718, 1.31326163]
expect(node, inputs=[x], outputs=[y], name="test_softplus_example")
x = np.random.randn(3, 4, 5).astype(np.float32)
y = np.log(np.exp(x) + 1)
expect(node, inputs=[x], outputs=[y], name="test_softplus")
Softplus - 1¶
Version¶
name: Softplus (GitHub)
domain:
mainsince_version:
1function:
Truesupport_level:
SupportType.COMMONshape inference:
True
This version of the operator has been available since version 1.
Summary¶
Softplus takes one input data (Tensor<T>) and produces one output data (Tensor<T>) where the softplus function, y = ln(exp(x) + 1), is applied to the tensor elementwise.
Function Body¶
The function definition for this operator.
<
domain: "",
opset_import: ["" : 18]
>
Softplus (X) => (Y)
{
exp_x = Exp (X)
one = Constant <value: tensor = float {1}> ()
one_cast = CastLike (one, X)
exp_x_add_one = Add (exp_x, one_cast)
Y = Log (exp_x_add_one)
}
Inputs¶
X (heterogeneous) - T:
Input tensor
Outputs¶
Y (heterogeneous) - T:
Output tensor
Type Constraints¶
T in (
tensor(double),tensor(float),tensor(float16)):Constrain input and output types to float tensors.