PyTorch如何训练感知器模型(实例图解————)

【PyTorch如何训练感知器模型(实例图解————)】感知器模型的训练类似于线性回归模型。我们初始化神经模型, 该神经模型在输入层中有两个输入节点, 并具有一个具有S型激活函数的输出节点。当我们将模型绘制到数据上时, 我们发现它与我们的数据不太吻合。我们需要训练该模型, 以便该模型具有最佳的权重和偏差参数并拟合该数据。
有以下步骤来训练模型:
步骤1
第一步, 计算模型误差的标准是回想交叉熵。我们的损失函数将基于二进制交叉熵损失(BCELoss)进行度量, 因为我们仅处理两个类别。它是从nn模块导入的。

criterion=nn.BCELoss()

第2步
现在, 我们的下一步是使用优化器更新参数。因此, 我们定义了使用梯度下降算法(随机梯度下降)的优化程序。
optimizer=torch.optim.SGD(model.parameters(), lr=0.01)

第三步
现在, 我们将像在线性模型中所做的那样, 针对指定的纪元训练模型。所以代码将类似于线性模型
epochs=1000losses=[]fori in range(epochs): ypred=model.forward(xdata) loss=criterion(ypred, ydata) print("epoch:", i, "loss:", loss.item()) losses.append(loss) optimizer.zero_grad()# Set the gradient to zero loss.backward() #To compute derivatives optimizer.step() # Update the parameters

现在, 最后我们通过简单地调用plotfit()方法来绘制新的线性模型。
plotfit('Trained Model')

PyTorch如何训练感知器模型(实例图解————)

文章图片
PyTorch如何训练感知器模型(实例图解————)

文章图片

    推荐阅读