使用pytorch搭建模型的步骤及教程
1.__ init __(self)
该函数调用超类的构造函数。这是强制性的。
此处使用 torch.nn 库定义了该模型的不同层。层的类型和数量特定于手头的问题。它可以是单层线性模型,也可以是基于复杂数学模型的多层。
还声明了每一层的输入和输出大小以及其他必需的参数。每层的大小和其他值可以作为构造函数中的参数进行检索,从而允许模型实例具有可变架构或硬编码。
2.forward(self, x)
此函数定义数据如何通过一次前向传递。可以从 torch.nn.functional 库定义不同层的激活函数。
3.training_step(self,batch)
在这个函数中,我们定义了模型的一个训练步骤,该步骤接收一批数据并返回损失。
对于给定的批次,我们将输入和目标分开,这里是图像及其标签。输入通过使用“ self ”关键字调用的 forward 函数传递,以获得输出。
将适当的损失函数应用于输出和目标以计算损失。
4.validation_step(self,batch)
在这个函数中,我们定义了一个验证步骤,即我们评估当前状态的模型。
给定批次的损失是按照上面的 training_step() 函数中的描述计算的。除此之外,还可以评估其他几个指标,例如准确度、auc、精确度、召回率等等。
这些指标的结果用于评估模型的性能,而不是用于训练过程。因此,我们将.detach()应用于结果以将它们从梯度计算中排除。
加载数据集
类库:datasets
from datasets import load_dataset
# 加载数据
dataset = load_dataset(path = ' ',split = 'train')
参数总结:
- split
参考资料