torch.nn.functional
是 PyTorch 中一个重要的子模块,它提供了一系列常用的函数,特别是在构建神经网络时使用的各种功能。这些函数不直接构建网络层,而是提供低层次的操作。与 torch.nn.Module
中定义的层不同,torch.nn.functional
里的函数通常是不保存参数的。因此,当你不需要状态(如权重)时,可以使用这些函数来实现自定义的网络结构。
以下是 torch.nn.functional
中一些常用的函数类别和示例:
1. 激活函数(Activation Functions)
这些函数用于在神经网络的每一层之后引入非线性变换。常见的激活函数包括:
torch.nn.functional.relu
:Rectified Linear Unit (ReLU) 激活函数torch.nn.functional.sigmoid
:Sigmoid 激活函数torch.nn.functional.tanh
:Tanh 激活函数torch.nn.functional.leaky_relu
:Leaky ReLU 激活函数
import torch.nn.functional as F
output = F.relu(input_tensor)
2. 损失函数(Loss Functions)
这些函数用于计算网络输出与目标值之间的误差。常见的损失函数有