文章目录
- 4 运算函数
- 基本数学运算
- 线性代数运算
- 随机数生成
- 统计运算
- 张量操作
4 运算函数
PyTorch 提供了丰富的运算函数,用于进行各种数学和矩阵操作。这些函数可以分为几个主要类别,包括基本数学运算、线性代数运算、随机数生成、统计运算、张量操作等。以下是一些 PyTorch 中常用的运算函数示例:
基本数学运算
- torch.add(tensor1, tensor2, *, alpha=1): 对两个张量进行逐元素相加。
- torch.sub(tensor1, tensor2, *, alpha=1): 对两个张量进行逐元素相减。
- torch.mul(tensor1, tensor2): 对两个张量进行逐元素相乘。
- torch.div(tensor1, tensor2): 对两个张量进行逐元素相除。
- torch.pow(tensor, exponent): 对张量中的每个元素进行幂运算。
- torch.sqrt(tensor): 计算张量中每个元素的平方根。
- torch.exp(tensor): 计算张量中每个元素的自然指数。
线性代数运算
- torch.mm(tensor1, tensor2): 对两个二维张量进行矩阵乘法。
- torch.bmm(batch1, batch2): 对两个批量的二维张量进行批处理矩阵乘法。
- torch.matmul(tensor1, tensor2): 对两个张量进行矩阵乘法,支持广播。
- torch.eig(tensor, eigenvectors=False): 计算张量的特征值和特征向量。
- torch.inverse(tensor): 计算张量的逆(如果张量是方阵)。
- torch.cholesky(tensor): 计算张量的 Cholesky 分解。
随机数生成
- torch.rand(*size, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False): 生成均匀分布的随机数张量。
- torch.randn(*size, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False): 生成标准正态分布的随机数张量。
- torch.randint(low, high, size, *, dtype=None, layout=torch.strided, device=None, requires_grad=False): 生成在给定范围内的随机整数张量。
- torch.normal(mean, std, size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False): 生成满足正态分布的随机数张量。
统计运算
- torch.mean(input, dim=None, keepdim=False): 计算张量的均值。
- torch.median(input, dim=None, keepdim=False): 计算张量的中位数。
- torch.sum(input, dim=None, keepdim=False): 计算张量的和。
- torch.prod(input, dim=None, keepdim=False): 计算张量的积。
- torch.std(input, dim=None, keepdim=False): 计算张量的标准差。
- torch.var(input, dim=None, keepdim=False): 计算张量的方差。
张量操作
- torch.reshape(tensor, shape): 返回具有新形状的张量,其数据与原张量共享。
- torch.transpose(tensor, dim0, dim1): 返回张量的转置。
- torch.permute(tensor, dims): 返回张量的重排维度。
- torch.unsqueeze(input, dim): 在指定维度上增加一个新的维度。
- torch.squeeze(input, dim=None): 移除张量中所有大小为 1 的维度。
- torch.cat(tensors, dim=0): 沿指定维度连接张量序列。
- torch.stack(tensors, dim=0): 沿新的维度对张量序列进行连接。
针对以上常用函数后续章节详细讲解
这些函数只是 PyTorch 中可用函数的一小部分。PyTorch 的文档提供了详尽的函数列表和详细的使用说明,是学习和使用这些函数的最佳资源。你可以通过 PyTorch 的官方文档或其他相关教程来了解更多关于这些函数的信息。