在pytorch中取矩阵行/列的规范

cer*_*rou 4 pytorch

向量的范数可以通过

torch.norm(vec)
Run Code Online (Sandbox Code Playgroud)

但是,如何将一组向量分组为矩阵(作为行或列)的范数?

例如,如果矩阵大小为 (5,8),则行范数应返回大小为 (5) 的范数向量。

jod*_*dag 8

torch.norm没有额外的参数执行所谓的 Frobenius 范数,它有效地将矩阵重塑为一个长向量并返回它的 2-范数。要沿特定维度取范数,请提供可选dim参数。

例如,torch.norm(mat, dim=1)将沿列计算 2-范数(即,这将计算每行的 2-范数),从而将 amat大小转换为大小范数[N,M]向量[N]

要计算列的范数,请使用dim=0.