一.加减乘除
(1)在pytorch中,既可以使用基本的:+,-,*,/,运算符号进行计算,也可以使用pytorch的内置计算函数:add,sub,mul,div。需要注意的是,pytorch中的tensor再进行计算时,会自动进行维度的转换。例如:
这里在进行加运算前,将b已经进行维度转换为[3,4]。
(2)我们这里来看一下内置函数的使用:
这里我们需要注意,这里的运算结果,和直接使用符号进行运算是一样的,我们可以用 eq()来进行一下验证:
二.矩阵相乘
(1)使用 torch.mm(),但是该方法仅仅适用于,tensor 的 dim为2的矩阵,例如:
当维度不符合时,就会报错。
(2)torch.matmul(),该方法则不仅仅局限于 dim=2,的tensor(进行多维度运算时,仅对后面的两个维度进行计算,这一般也符合我们的需求),例如:
(3)使用 @ 运算符,这里是torch.matmul()的重写,与其作用域是一致的,例如:
三.其它运算
(1)平方运算,使用运算符 ** 或函数 pow()
(2)平方根运算,函数 sqrt(),开三次方根用 rsqrt()
(3)去对数运算 log()默认以 e为底。
四.取整运算
(1)floor(),向下取整;
(2)ceil(),向上取整;
(3)trunc()取整数部分,frac()取小数部分;
(4)round()四舍五入运算。
五.clamp函数,限制最大最小值
当向clamp()传入一个参数时,是作为最小限制;当传入两个参数,则为(min,max),例如一下: