一、基础四则运算
1.1 add 加法
1.2 sub 减法
1.3 mul 乘法
1.4 div 除法
1.5 fmod 函数
torch.fmod(input, div, out=None) :对输入张量
i
n
p
u
t
input
input 逐元素除以标量值/张量
d
i
v
div
div,取余数,并返回一个新的张量
t
e
n
s
o
r
tensor
tensor。
二、矩阵相乘
2.1 mm 函数(二维矩阵乘法)
torch.mm(mat1, mat2, out=None) :对矩阵
m
a
t
1
mat1
mat1 和
m
a
t
2
mat2
mat2 进行相乘,仅针对二维矩阵,矩阵要满足相乘条件。其中
m
a
t
1
∈
R
m
×
n
mat1\in R^{m\times n}
mat1∈Rm×n,
m
a
t
2
∈
R
n
×
d
mat2\in R^{n\times d}
mat2∈Rn×d,输出
R
m
×
d
R^{m\times d}
Rm×d。
2.2 bmm 函数(三维带batch的矩阵乘法)
torch.bmm(bmat1, bmat2, out=None) :由于神经网络训练一般采用
m
i
n
i
?
b
a
t
c
h
mini-batch
mini?batch,经常输入的是三维带
b
a
t
c
h
batch
batch 的矩阵。其中
b
m
a
t
1
∈
R
b
×
m
×
n
bmat1\in R^{b\times m\times n}
bmat1∈Rb×m×n,
b
m
a
t
2
∈
R
b
×
n
×
d
bmat2\in R^{b\times n\times d}
bmat2∈Rb×n×d,输出
R
b
×
m
×
d
R^{b\times m\times d}
Rb×m×d。该函数的两个输入必须是三维矩阵并且第一维相同(表示
b
a
t
c
h
batch
batch 维度)
2.3 matmul 函数
torch.matmul(mat1, mat2, out=None) :对矩阵
m
a
t
1
mat1
mat1 和
m
a
t
2
mat2
mat2 进行相乘,可以对高阶矩阵相乘。注:@ 符号与
m
a
t
m
u
l
matmul
matmul 效果相同。
三、平方与开平方
3.1 pow 函数
torch.pow(input,size,out=None) :对输入
i
n
p
u
t
input
input 的每分量进行求幂次
s
i
z
e
size
size 运算。
3.2 sqrt 函数
torch.sqrt(input, out=None) :返回一个新张量
t
e
n
s
o
r
tensor
tensor,包含输入
i
n
p
u
t
input
input 张量每个元素的平方根。 - 如果要开更高次根号,可以使用
p
o
w
pow
pow 函数,输入的参数为分数,示例:
3.3 rsqrt 函数
torch.rsqrt(input, out=None) :返回一个新张量,包含输入
i
n
p
u
t
input
input 张量每个元素的平方根倒数。
四、对数函数
4.1 exp 函数
torch.exp(input, out=None) :对
i
n
p
u
t
input
input 张量每个元素求自然指数。
4.2 log 函数
torch.log(input, out=None) :求
l
o
g
log
log,是以自然数
e
e
e 为底的对数函数。 torch.log2(input, out=None) :求
l
o
g
log
log,是以
2
2
2 为底的对数函数。 torch.log10(input, out=None) :求
l
o
g
log
log,是以
10
10
10 为底的对数函数。 torch.log1p(input, out=None) :计算
i
n
p
u
t
+
1
input+1
input+1 的以e为底的自然对数
y
=
l
o
g
e
(
x
+
1
)
y = log_e(x + 1)
y=loge?(x+1)。
五、绝对值 & 负值
torch.abs(input, out=None) :计算输入的
i
n
p
u
t
input
input 张量的每个元素的绝对值。 torch.neg(input, out=None) :对
i
n
p
u
t
input
input 张量按元素取负。
六、近似函数
6.1 floor 函数
torch.floor(input, out=None) :向下取整,返回一个新张量,包含输入
i
n
p
u
t
input
input 张量每个元素的
f
l
o
o
r
floor
floor,即取不大于元素的最大整数。
6.2 ceil 函数
torch.ceil(input, out=None) :向上取整,对输入
i
n
p
u
t
input
input 张量每个元素向上取整,即取不小于每个元素的最小整数,并返回结果到输出。
6.3 trunc 函数
torch.trunc(input, out=None) :取整数部分,将
i
n
p
u
t
input
input 张量中每个元素的小数部分截断。
6.4 frac 函数
torch.frac(tensor, out=None) :返回
i
n
p
u
t
input
input 张量每个元素的分数部分。
6.5 round 函数
torch.round(input, out=None) :将输入
i
n
p
u
t
input
input 张量的每个元素四舍五入到最近的整数。
七、限制函数
torch.clamp(input, min, max, out=None) :将输入
i
n
p
u
t
input
input 张量每个元素值约束到区间
[
m
i
n
,
m
a
x
]
[min, max]
[min,max],并返回结果到一个新张量
t
e
n
s
o
r
tensor
tensor,也可以只设定
m
i
n
min
min 或只设定
m
a
x
max
max。
|