快捷方式

torch.linalg.vander

torch.linalg.vander(x, N=None) Tensor

生成范德蒙德矩阵。

返回范德蒙德矩阵 VV

V=(1x1x12x1N11x2x22x2N11x3x32x3N11xnxn2xnN1).V = \begin{pmatrix} 1 & x_1 & x_1^2 & \dots & x_1^{N-1}\\ 1 & x_2 & x_2^2 & \dots & x_2^{N-1}\\ 1 & x_3 & x_3^2 & \dots & x_3^{N-1}\\ \vdots & \vdots & \vdots & \ddots &\vdots \\ 1 & x_n & x_n^2 & \dots & x_n^{N-1} \end{pmatrix}.

对于 N > 1。如果 N= None,则 N = x.size(-1),使得输出为一个方阵。

支持 float, double, cfloat, cdouble 和整数 dtype 的输入。也支持向量的批次,如果 x 是一批向量,则输出具有相同的批次维度。

numpy.vander 的区别

  • numpy.vander 不同,此函数按升序返回 x 的幂。要按逆序获取它们,请调用 linalg.vander(x, N).flip(-1)

参数

x (Tensor) – 形状为 (*, n) 的张量,其中 * 为零或多个由向量组成的批次维度。

关键字参数

N (int, optional) – 输出中的列数。默认值: x.size(-1)

示例

>>> x = torch.tensor([1, 2, 3, 5])
>>> linalg.vander(x)
tensor([[  1,   1,   1,   1],
        [  1,   2,   4,   8],
        [  1,   3,   9,  27],
        [  1,   5,  25, 125]])
>>> linalg.vander(x, N=3)
tensor([[ 1,  1,  1],
        [ 1,  2,  4],
        [ 1,  3,  9],
        [ 1,  5, 25]])

文档

查阅 PyTorch 全面的开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并解答您的问题

查看资源