使用 PyTorch 中的多线性回归进行多目标预测

在前几个教程中,我们处理的是单输出的多线性回归,在这里我们将探讨如何将多线性回归用于多目标预测。复杂的神经网络架构本质上是让每个神经元单元独立地执行线性回归,然后将其结果传递给另一个神经元。因此,了解这种回归的工作原理对于理解神经网络如何执行多目标预测很有用。

本文的目的是提供一个在PyTorch中实现多目标预测的分步指南。我们将通过线性回归模型框架来实现,该模型接受多个特征作为输入并产生多个结果。

我们将从导入模型所需的包开始。然后,我们将定义输入数据点以及我们希望通过模型实现的目标。特别是,我们将演示

  • 如何理解多维度的多线性回归。
  • 如何在PyTorch中使用多线性回归进行多目标预测。
  • 如何在PyTorch中使用“nn.Module”构建类线性。
  • 如何使用单个输入数据样本进行多目标预测。
  • 如何使用多个输入数据样本进行多目标预测。

请注意,在本教程中我们不会训练我们的MLR模型,我们只会看它是如何进行简单预测的。在我们PyTorch系列的后续教程中,我们将学习如何在一个数据集上训练这个模型。

通过我的《用PyTorch进行深度学习》一书来启动你的项目。它提供了包含可用代码自学教程


让我们开始吧。

PyTorch中的多目标多线性回归预测。
图片由 Dan Gold 提供。保留部分权利。

概述

本教程分为三个部分;它们是

  • 创建模块
  • 使用单个输入样本进行预测
  • 使用多个输入样本进行预测

创建模块

我们将为多线性回归模型构建一个自定义的线性类。我们将定义一个线性类,并使其成为PyTorch包nn.Module的子类。该类继承了该包的所有方法和属性,例如nn.Linear

现在,让我们创建模型对象并相应地定义参数。正如我们计划进行多目标预测一样,让我们首先看看我们的模型如何处理单个输入样本。稍后,我们将对多个输入样本进行预测。

使用单个输入样本进行预测

我们将创建我们的模型对象,该对象接受单个输入样本并进行五个预测。

现在,让我们定义模型的输入张量x并进行预测。

输出看起来是这样的。

正如你所见,我们的模型仅凭一个输入样本就做出了多个预测。以下是我们如何列出模型参数。

输出如下:

你可能会得到不同的结果,因为这些是随机权重,但权重张量的形状将与我们设计的一个输入和五个输出相匹配。

想开始使用PyTorch进行深度学习吗?

立即参加我的免费电子邮件速成课程(附示例代码)。

点击注册,同时获得该课程的免费PDF电子书版本。

使用多个输入样本进行预测

同样,让我们定义一个用于多个输入样本的张量X,其中每一行代表一个数据样本。

我们可以用多个输入样本进行多目标预测。

由于我们有三个输入样本,我们应该看到三个输出样本,如下所示:

把所有东西放在一起,下面是完整的代码。

总结

在本教程中,您学习了如何使用多线性回归模型进行多目标预测。特别是,您学到了:

  • 如何理解多维度的多线性回归。
  • 如何在PyTorch中使用多线性回归进行多目标预测。
  • 如何在PyTorch中使用“nn.Module”构建类线性。
  • 如何使用单个输入数据样本进行多目标预测。
  • 如何使用多个输入数据样本进行多目标预测。

开始使用PyTorch进行深度学习!

Deep Learning with PyTorch

学习如何构建深度学习模型

...使用新发布的PyTorch 2.0库

在我的新电子书中探索如何实现
使用 PyTorch进行深度学习

它提供了包含数百个可用代码自学教程,让你从新手变成专家。它将使你掌握:
张量操作训练评估超参数优化等等...

通过动手练习开启你的深度学习之旅


查看内容

暂无评论。

留下回复

Machine Learning Mastery 是 Guiding Tech Media 的一部分,Guiding Tech Media 是一家领先的数字媒体出版商,专注于帮助人们了解技术。访问我们的公司网站以了解更多关于我们的使命和团队的信息。