torch.ormqr¶
- torch.ormqr(input, tau, other, left=True, transpose=False, *, out=None) Tensor ¶
计算 Householder 矩阵乘积与一般矩阵的矩阵乘法。
将由
other
给定的矩阵 C( 矩阵)与矩阵 Q 相乘,其中 Q 使用豪斯霍尔德反射器(输入,tau)表示。有关正交或酉矩阵的表示的详细信息,请参阅正交或酉矩阵表示。如果
left
为 True,则计算 op(Q) 乘以 C,否则结果为 C 乘以 op(Q)。当left
为 True 时,隐式矩阵 Q 的大小为 。否则大小为 。如果transpose
为 True,则 op 是共轭转置操作,否则为无操作。支持浮点、双精度、复浮点和复双精度数据类型输入。还支持批处理输入,如果输入是批处理的,则输出也将以相同的维度进行批处理。
参见
torch.geqrf()
可用于从 QR 分解中形成矩阵 Q 的豪斯霍尔德表示(输入,tau)。注意
此函数支持反向传播,但只有在
(input, tau)
不需要梯度且/或tau.size(-1)
非常小的时候才快速。- 参数:
输入(张量)- 形状为(*, mn, k)的张量,其中*表示零个或多个批处理维度,mn 等于 m 或 n,具体取决于
left
。tau(张量)- 形状为(*, min(mn, k))的张量,其中*表示零个或多个批处理维度。
其他(张量)- 形状为(*, m, n)的张量,其中*表示零个或多个批处理维度。
左(布尔值)- 控制乘法的顺序。
转置(布尔值)- 控制矩阵 Q 是否进行共轭转置。
- 关键字参数:
out(张量,可选)- 输出张量。如果为 None,则忽略。默认:None。