bilinear¶
该层对两个输入执行双线性张量积。 详细的计算和返回值维度请参见 Bilinear
参数¶
x1 (int):第一个输入的 Tensor,数据类型为:float32、float64。
x2 (int):第二个输入的 Tensor,数据类型为:float32、float64。
weight (Parameter):本层的可学习参数。形状是 [out_features, in1_features, in2_features]。
bias (Parameter,可选):本层的可学习偏置。形状是 [1, out_features]。默认值为 None,如果被设置成 None,则不会有 bias 加到 output 结果上。
name (str,可选) - 具体用法请参见 Name,一般无需设置,默认值为 None。
返回¶
Tensor
,一个形为 [batch_size, out_features] 的 2-D 张量。
代码示例¶
import paddle
import paddle.nn.functional as F
x1 = paddle.randn((5, 5)).astype(paddle.float32)
x2 = paddle.randn((5, 4)).astype(paddle.float32)
w = paddle.randn((1000, 5, 4)).astype(paddle.float32)
b = paddle.randn((1, 1000)).astype(paddle.float32)
result = F.bilinear(x1, x2, w, b)
print(result.shape)
# [5, 1000]