动手深度学习-3.1 线性回归

机器学习模型中的关键要素是训练数据、模型、损失函数、优化算法。

3.1.1 线性回归的基本元素

线性回归基于几个两个简单的假设:①假设自变量 x \mathbf{x} x和因变量 y y y之间的关系是线性的,②假设噪声遵循正态分布。

3.1.1.1 线性模型

线性假设是指目标可以表示为特征的加权和,当我们的输入包含d个特征时,我们将预测结果 y ^ \widehat{y} y 表示为: y ^ = w 1 x 1 + . . . + w d x d + b \widehat{y}=w_{1}x_{1}+...+w_{d}x_{d}+b y =w1x1+...+wdxd+b
使用向量形式简化模型:
y ^ = w T x + b \widehat{y}=\mathbf{w}^{T}\mathbf{x}+b y =wTx+b
使用矩阵 X ∈ R n × d X \in R^{n\times d} XRn×d表示整个数据集n个样本的特征向量,预测值表示为:
y ^ = X w + b \mathbf{\widehat{y}} =\mathbf{Xw} +b y =Xw+b
给定训练数据特征 X \mathbf{X} X和对应的已知标签 y \mathbf{y} y,线性回归的目标是找到一组权重向量 w \mathbf{w} w和偏置 b b b,当给定从 X \mathbf{X} X的同分布中取样的新样本特征时,这组权重和偏置使得新样本预测标签的误差尽可能小。

3.1.1.2 损失函数

损失函数能够量化预测值和实际值之间的差距,单个样本最常用的损失函数是平方误差函数:
l ( i ) ( w , b ) = 1 2 ( y ^ ( i ) − y ( i ) ) 2 l^{(i)} (\mathbf{w} ,b)=\frac{1}{2}(\widehat{y}^{(i)}-y^{(i)})^{2} l(i)(w,b)=21(y (i)y(i))2
整个训练集n个样本的损失函数:
L ( w , b ) = 1 n ∑ i = 1 n l ( i ) ( w , b ) L (\mathbf{w} ,b)=\frac{1}{n}\sum_{i=1}^{n} l^{(i)} (\mathbf{w} ,b) L(w,b)=n1i=1nl(i)(w,b)
在训练模型时,我们希望寻找一组参数 w ∗ , b ∗ \mathbf{w}^{*},b^{*} w,b,这组参数能最小化在训练样本上的总损失:
w ∗ , b ∗ = a r g m i n w , b L ( w , b ) \mathbf{w}^{*},b^{*}=\underset{\mathbf{w},b}{argmin}L(\mathbf{w},b) w,b=w,bargminL(w,b)

3.1.1.3 解析解

将偏置 b b b合并到 w \mathbf{w} w参数中,损失函数等价于 ∥ y − X w ∥ 2 \left \| \mathbf{y-Xw} \right \| ^{2} yXw2,将损失函数关于 w \mathbf{w} w的导数设为0,得到解析解:
w ∗ = ( X T X ) − 1 X T y \mathbf{w^{*}=(X^{T} X)^{-1}X^{T}y} w=(XTX)1XTy

3.1.1.4 随机梯度下降

小批量随机梯度下降的用法:

  1. 随机抽样一个小批量 B \mathcal{B} B
  2. 计算平均损失关于模型参数的梯度;
  3. 将梯度乘以一个预先确定的正数 η \eta η,并从当前参数值中剪掉。
  4. 迭代若干次,满足停止条件后,记录下模型参数的估计值 w ^ , b ^ \widehat{\mathbf{w} },\widehat{b} w ,b
    ( w , b ) ← ( w , b ) − η B ∑ i ∈ B ∂ ( w , b ) l ( i ) ( w , b ) (\mathbf{w} ,b)\gets (\mathbf{w} ,b)-\frac{\eta}{\mathcal{B}}\sum_{i\in \mathcal{B}}^{} \partial _{(\mathbf{w} ,b)}l^{(i)} (\mathbf{w} ,b) (w,b)(w,b)BηiB(w,b)l(i)(w,b)

3.1.1.5 用模型进行预测

根据给定特征和已学习的模型参数,估计目标的过程称为预测。
y ^ = w ^ T x + b ^ \widehat{\mathbf{y} } =\widehat{\mathbf{w}}^{ {T}} \mathbf{x} +\widehat{b} y =w Tx+b

3.1.2 正态分布与平方误差

若随机变量 x x x具有均值 η \eta η和方差 σ 2 \sigma ^{2} σ2,其正态分布概率密度函数如下:
p ( x ) = 1 2 π σ 2 e x p ( − 1 2 σ 2 ( x − μ ) 2 ) p(x)=\frac{1}{\sqrt{2\pi \sigma ^{2}}}exp(-\frac{1}{2\sigma ^{2}}(x-\mu)^{2}) p(x)=2πσ2 1exp(2σ21(xμ)2)

#导入库
import numpy as np
from numpy import math
from d2l import torch as d2l
#定义一个python函数来计算正态分布
def normal(x, mu, sigma):
    p = 1 / math.sqrt(2 * math.pi * sigma ** 2)
    return p * np.exp(-0.5 / sigma ** 2 * (x - mu) ** 2
#可视化正态分布
x = np.arange(-7, 7, 0.01)
params = [(0, 1), (0, 2), (3, 1)]
d2l.plot(x, [normal(x, mu, sigma) for mu, sigma in params], xlabel = 'x', ylabel = 'p(x)', figsize = (4.5, 2.5), legend = [f'mean{mu}, std{sigma}' for mu, sigma in params])

均方误差损失函数可以用于线性回归的一个原因时:我们假设了观测中包含噪声,其中噪声服从正态分布。
y = w x + b + ϵ y=\mathbf{wx} +b+\epsilon y=wx+b+ϵ
其中, ϵ ∼ N ( 0 , σ 2 ) \epsilon \sim \mathcal{N(0,\sigma ^{2} )} ϵN(0,σ2)

  • 通过给定的 x \mathbf{x} x观测到特定 y y y的似然:
    P ( y ∣ x ) = 1 2 π σ 2 e x p ( − 1 2 σ 2 ( y − w T x − b ) 2 ) P(y|\mathbf{x})=\frac{1}{\sqrt{2\pi\sigma^{2}}}exp(-\frac{1}{2\sigma^2}(y-\mathbf{w}^{T}\mathbf{x}-b)^2) P(yx)=2πσ2 1exp(2σ21(ywTxb)2)
  • 根据极大似然估计法,参数 w \mathbf{w} w和b的最优值是使整个数据集的似然最大的值:
    P ( y ∣ X ) = ∏ i = 1 n p ( y ( i ) ∣ x ( i ) ) P(\mathbf{y} | \mathbf{X}) = \prod_{i=1}^{n}p(y^{(i)} | \mathbf{x} ^{(i)}) P(yX)=i=1np(y(i)x(i))
  • 改为最小化负对数似然 − l o g P ( y ∣ X ) -logP(\mathbf{y} | \mathbf{X}) logP(yX)
    − l o g ( P ( y ∣ X ) ) = ∑ i = 1 n 1 2 l o g ( 2 π σ 2 ) + 1 2 σ 2 ( y ( i ) − w T x ( i ) − b ) 2 -log(P(\mathbf{y} | \mathbf{X})) = \sum_{i=1}^{n}\frac{1}{2}log(2\pi\sigma^2)+\frac{1}{2\sigma^2}(y^{(i)}- \mathbf{w} ^{T}\mathbf{x} ^{(i)} - b)^2 log(P(yX))=i=1n21log(2πσ2)+2σ21(y(i)wTx(i)b)2
    因此,在高斯噪声的假设下,最小化均方误差等价于对线性模型的极大似然估计。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值