Tensor的三角函数
- torch.acos(input,out=None)#arccos反三角函数中的反余弦
- torch.asin(input,out=None)
- torch.atan(input,out=None)
- torch.atan2(input,input2,out=None)
- torch.cos(input,out=None)
- torch.cosh(input,out=None)
- torch.sin(input,out=None)
- torch.sinh(input,out=None)#双曲正弦函数
- torch.tan(input,out=None)
- torch.tanh(input,out=None)
Tensor中其他的数学函数
- torch.abs()
- torch.sigmoid()
- torch.sign() 符号函数
- torch.reciprocal() 每个元素的倒数
- torch.rsqrt() 对每个元素取平方根后再取倒数
- torch.neg() 元素取负
- torch.lerp(start, end, weight, out=None):对两个张量以start, end做线性插值,将结果返回到输出张量out = start + weight*(end - start)
- torch.addcdiv(tensor, value=1, tensor1, tensor2, out=None):用tensor2对tensor1逐元素相除,然后乘以标量值value并加到tensor上。
- torch.addcmul(tensor, value=1, tensor1, tensor2, out=None):用tensor2对tensor1逐元素相乘,并对结果乘以标量值value然后加到tensor,张量形状不需要匹配,但元素数量必须一致。
- torch.cumprod(input, dim, out=None) -> Tensor:返回输入沿指定维度的累积积,如输入是一个N元向量,则结果也是一个N元向量,第i个输出元素值为yi = x1 * x2 * x3 * ...* xi
- torch.cumsum(input, dim, out=None) -> Tensor:返回输入沿指定维度的累积和
Tensor中统计学相关的函数(维度,对于二维数据:dim=0 按列,dim=1 按行,默认 dim=1)
- torch().mean() #返回平均值
- torch().sum() #返回总和
- torch().prod() #计算所有元素的积
- torch().max() #返回最大值
- torch().min() #返回最小值
- torch().argmax() #返回最大值排序的索引值
- torch().argmin() #返回最小值排序的索引值
- torch().std() #返回标准差
- torch().var() #返回方差
- torch().median() #返回中间值
- torch().mode() #返回众数值
torch.histc(input, bins=100, min=0, max=0, out=None) -> Tensor
:计算输入张量的直方图。如果min
和max
都为0,则利用数据中的最大最小值作为边界。- torch().bincount() #返回每个值的频数,只支持一维的tensor
import torch a = torch.rand(2, 2)#大小2*2 #可以通过维度来完成降维 print(a) print(torch.sum(a)) print(torch.sum(a, dim=0)) print(torch.sum(a, dim=1))
Tensor的torch.distributions(分布函数)
- distributions包含可参数化的概率分布和采样函数
- 得分函数
- 强化学习中策略梯度方法的基础
- pathwise derivative估计器
- 变分自动编码器中的重新参数化技巧
- KL Divergence 相对熵
- Transforms
Tensor中的随机抽样
- 定义随机种子:在需要生成随机数据的实验中,每次实验都需要生成数据,为了确保每次运行.py文件时,生成的随机数都是固定的。
- torch.manual_seed(seed)
- 定义随机数满足的分布
torch.normal(means, std, out=None)
:返回一个张量,包含从给定means
,std
的离散正态分布中抽取随机数,均值和标准差的形状不须匹配,但每个张量的元素个数须相同
Tensor中的范数运算
- 范数
- 在泛函分析中,它定义在赋范线性空间中,并满足一定的条件,即1.非负性,2.齐次性,3.三角不等式。
- 常被用来度量某个向量空间(或矩阵)中的每个向量的长度或大小。
- 0范数/1范数/2范数/p范数/核函数:核范数是矩阵奇异值的和
- torch.dist(input,other,p=2)计算p范数
- torch.norm()计算2范数
import torch a = torch.rand(2, 1) b = torch.rand(2, 1) print(a, b) print(torch.dist(a, b, p = 1)) print(torch.dist(a, b, p = 2)) print(torch.dist(a, b, p = 3))
print(torch.norm(a)) print(torch.norm(a, p=3)) print(torch.norm(a, p='fro'))#核函数
Tensor中的矩阵分解
- 常见的矩阵分解
- LU分解:将矩阵A分解成L(下三角)矩阵和U(上三角)矩阵的乘积
- QR分解:将原矩阵分解成一个正交矩阵Q和一个上三角矩阵R的乘积
- EVD分解:特征值分解:PCA
- SVD分解:奇异值分解:LDA
- Pytorch中的奇异值分解
- torch.svd()