低门槛实战线性回归模型

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
简介: 本文是学习线性回归模型的总结,以图文相结合的方式,分享线性回归模型的技术原理,以及用代码实现验证,供大家参考。

本文是学习线性回归模型的总结,主要分享线性回归模型的技术原理,以及用代码实现验证,供大家参考。

一、任务描述

假设手上有一份数据集,每一行数据表示一个物品的价格影响因素(k个)和对应价格。

序号

影响因素1

影响因素2

影响因素k

价格(y)

1

1.23

3.23

1.56

7.23

2

0.23

1.60

2.56

8.33

...

...

...

...

...

1000

xx

xx

xx

xx

现在获得了该物品的k个影响因素,要求根据k个影响因素求取该物品的价格。

二、任务分析

1、目标

image.png

那么我们的任务就是寻找一组参数W和b,使得根据线性回归模型做出的价格预测尽可能接近数据里的真实价格。

2、评估

如何评估找到的一组参数W和b,就是使得根据线性回归模型做出的价格预测尽可能接近数据里的真实价格。

在深度学习中,损失函数(loss function)能够量化目标的实际值与预测值之间的差距。回归问题中最常用的损失函数是平方误差函数,那么第i个样本的损失为:

image.png

因此,在训练模型时,我们希望寻找一组参数(W,b),使得L(Wb在所有训练样本上的损失均值越小越好。

3、求解

在深度学习中,求解参数(W,b),一般用梯度下降法。梯度下降算法的步骤如下:

(1)初始化模型参数的值;(2)从数据集中随机抽取小批量样本且在负梯度的方向上更新参数,并不断迭代这一步骤,直到迭代次数达到设定阈值或损失小于某个阈值。

W和b的更新表达式如下:

image.png

批量大小和学习率的值通常是预先指定,而不是通过模型训练得到的这些可以调整但不在训练过程中更新的参数称为超参数(hyperparameter),所谓的调参就是选择超参数的过程。

三、代码验证

整个代码验证过程包括如下主要流程:

image.png

1、获取训练数据

为验证线性回归模型,我们定义一个线性函数,生成一个数据集。

image.png

为从n个样本数据中抽取小批量数据,定义个批量数据迭代器

image.png

2、定义模型

image.png

根据上述表达式定义线性回归模型。

image.png

3、定义损失函数

image.png

根据上述表达式定义损失函数。

image.png

4、定义优化算法

image.png

根据上述表达式定义优化算法。

image.png

5、初始化训练参数

首先初始化模型参数。

image.png

6、训练

image.png

训练结束后,可以查看W和b的参数,以及与真实值W和b的差异

image.png

运行结果

image.png

参考资料

1、《动手学深度学习》第二版,地址: zh.d2l.ai/index.html

目录
相关文章
|
8月前
|
机器学习/深度学习 算法 索引
深入探讨梯度下降:优化机器学习的关键步骤(三)
深入探讨梯度下降:优化机器学习的关键步骤(三)
|
1天前
|
机器学习/深度学习
机器学习基础入门(二)(线性回归与成本函数)
已知一系列房子的大小以及其对应的价格的数据,要求是已知房子大小预测其房子的价格
|
6月前
|
机器学习/深度学习 算法
【机器学习基础】一元线性回归(适合初学者的保姆级文章)
【机器学习基础】一元线性回归(适合初学者的保姆级文章)
61 0
|
6月前
|
机器学习/深度学习 算法 PyTorch
机器学习-逻辑回归:从技术原理到案例实战
机器学习-逻辑回归:从技术原理到案例实战
144 0
|
8月前
|
机器学习/深度学习 算法
深入探讨梯度下降:优化机器学习的关键步骤(二)
深入探讨梯度下降:优化机器学习的关键步骤(二)
|
8月前
|
机器学习/深度学习 算法 Python
深入探讨梯度下降:优化机器学习的关键步骤(一)
深入探讨梯度下降:优化机器学习的关键步骤(一)
|
12月前
|
PyTorch 算法框架/工具 计算机视觉
【项目实践】基于PyTorch实现C3D模型的视频行为识别实践(二)
【项目实践】基于PyTorch实现C3D模型的视频行为识别实践(二)
259 0
|
12月前
|
机器学习/深度学习 大数据 PyTorch
【项目实践】基于PyTorch实现C3D模型的视频行为识别实践(一)
【项目实践】基于PyTorch实现C3D模型的视频行为识别实践(一)
343 0
|
12月前
|
机器学习/深度学习 算法 数据挖掘
Lesson 3. 线性回归的手动实现(3.3 线性回归手动实现与模型局限 & 3.4 机器学习模型结果可信度理论与交叉验证基础)
Lesson 3. 线性回归的手动实现(3.3 线性回归手动实现与模型局限 & 3.4 机器学习模型结果可信度理论与交叉验证基础)
|
机器学习/深度学习 算法
入坑机器学习:六,逻辑回归
在分类问题中,你要预测的变量 𝑦 是离散的值,我们将学习一种叫做逻辑回归 (Logistic Regression ) 的算法,这是目前最流行使用最广泛的一种学习算法。
124 0
入坑机器学习:六,逻辑回归

热门文章

最新文章