【线性回归】机器学习专项课程学习记录1——线性回归解决回归问题

说明

本系列笔记是笔者在学习2022年6月吴恩达机器学习专项课程时创作的,用以巩固知识点和日后复习。

学习目标

掌握线性回归的原理和实现。

笔记

1 线性回归

线性回归的表达式为: f w , b ( x ) = w 0 x 0 + w 1 x 1 + . . . + w n − 1 x n − 1 + b f_{\mathbf{w},b}(\mathbf{x}) = w_0x_0 + w_1x_1 +... + w_{n-1}x_{n-1} + b fw,b(x)=w0x0+w1x1+...+wn1xn1+b
矩阵形式是: f w , b ( x ) = w ⋅ x + b f_{\mathbf{w},b}(\mathbf{x}) = \mathbf{w} \cdot \mathbf{x} + b fw,b(x)=wx+b
其中,
X = ( x 0 ( 0 ) x 1 ( 0 ) ⋯ x n − 1 ( 0 ) x 0 ( 1 ) x 1 ( 1 ) ⋯ x n − 1 ( 1 ) ⋯ x 0 ( m − 1 ) x 1 ( m − 1 ) ⋯ x n − 1 ( m − 1 ) ) \mathbf{X} = \begin{pmatrix} x^{(0)}_0 & x^{(0)}_1 & \cdots & x^{(0)}_{n-1} \\ x^{(1)}_0 & x^{(1)}_1 & \cdots & x^{(1)}_{n-1} \\ \cdots \\ x^{(m-1)}_0 & x^{(m-1)}_1 & \cdots & x^{(m-1)}_{n-1} \end{pmatrix} X=x0(0)x0(1)x0(m1)x1(0)x1(1)x1(m1)xn1(0)xn1(1)xn1(m1)
w = ( w 0 w 1 ⋯ w n − 1 ) \mathbf{w} = \begin{pmatrix} w_0 \\ w_1 \\ \cdots\\ w_{n-1} \end{pmatrix} w=w0w1wn1

2 线性回归的损失函数

线性回归的损失函数是均方误差损失: J ( w , b ) = 1 2 m ∑ i = 0 m − 1 ( f w , b ( x ( i ) ) − y ( i ) ) 2 J(\mathbf{w},b) = \frac{1}{2m} \sum\limits_{i = 0}^{m-1} (f_{\mathbf{w},b}(\mathbf{x}^{(i)}) - y^{(i)})^2 J(w,b)=2m1i=0m1(fw,b(x(i))y(i))2

3 线性回归的梯度下降

w j = w j − α ∂ J ( w , b ) ∂ w j (1) w_j = w_j - \alpha \frac{\partial J(\mathbf{w},b)}{\partial w_j} \tag{1} wj=wjαwjJ(w,b)(1)
b = b − α ∂ J ( w , b ) ∂ b (2) b = b - \alpha \frac{\partial J(\mathbf{w},b)}{\partial b} \tag{2} b=bαbJ(w,b)(2)

其中,
∂ J ( w , b ) ∂ w j = 1 m ∑ i = 0 m − 1 ( f w , b ( x ( i ) ) − y ( i ) ) x j ( i ) (3) \frac{\partial J(\mathbf{w},b)}{\partial w_j} = \frac{1}{m} \sum\limits_{i = 0}^{m-1} (f_{\mathbf{w},b}(\mathbf{x}^{(i)}) - y^{(i)})x_{j}^{(i)} \tag{3} wjJ(w,b)=m1i=0m1(fw,b(x(i))y(i))xj(i)(3)
∂ J ( w , b ) ∂ b = 1 m ∑ i = 0 m − 1 ( f w , b ( x ( i ) ) − y ( i ) ) (4) \frac{\partial J(\mathbf{w},b)}{\partial b} = \frac{1}{m} \sum\limits_{i = 0}^{m-1} (f_{\mathbf{w},b}(\mathbf{x}^{(i)}) - y^{(i)})\tag{4} bJ(w,b)=m1i=0m1(fw,b(x(i))y(i))(4)

4 多项式回归(Polynomial Regression)

利用特征工程,线性回归可以拟合复杂的非线性方程。

4.1 特征工程(Feature Engineering)

什么是特征工程?
根据学科知识,将现有的特征变量x进行某种变换形成新的特征的过程就是特征工程。

怎么选择特征变量?
识别重要的特征看其权重,如果权重的绝对值越大,该特征的重要性越大。

注意:
特征工程后要对新构建的特征进行缩放以加快梯度下降。

4.2 多项式回归

泰勒展开式

5 正则化的线性回归

在线性回归模型中使用正则化技术可以减小过拟合,通过向损失函数添加正则化项来实现。(损失函数变了,梯度下降中求偏导数的公式也要发生相应的变化)

5.1 计算损失

向线性回归的损失函数 J ( w , b ) J(\mathbf{w},b) J(w,b)中添加L2正则化项 λ 2 m ∑ j = 0 n − 1 w j 2 \frac{\lambda}{2m} \sum_{j=0}^{n-1} w_j^2 2mλj=0n1wj2
J ( w , b ) = 1 2 m ∑ i = 0 m − 1 ( f w , b ( x ( i ) ) − y ( i ) ) 2 + λ 2 m ∑ j = 0 n − 1 w j 2 J(\mathbf{w},b) = \frac{1}{2m} \sum\limits_{i = 0}^{m-1} (f_{\mathbf{w},b}(\mathbf{x}^{(i)}) - y^{(i)})^2 + \frac{\lambda}{2m} \sum_{j=0}^{n-1} w_j^2 J(w,b)=2m1i=0m1(fw,b(x(i))y(i))2+2mλj=0n1wj2

5.2 梯度下降

正则化也影响了线性回归的梯度下降中L对w的偏导数的计算:
w j = w j − α ∂ J ( w , b ) ∂ w j w_j = w_j - \alpha \frac{\partial J(\mathbf{w},b)}{\partial w_j} wj=wjαwjJ(w,b)

∂ J ( w , b ) ∂ w j = 1 m ∑ i = 0 m − 1 ( f w , b ( x ( i ) ) − y ( i ) ) x j ( i ) + λ m w j \frac{\partial J(\mathbf{w},b)}{\partial w_j} = \frac{1}{m} \sum\limits_{i = 0}^{m-1} (f_{\mathbf{w},b}(\mathbf{x}^{(i)}) - y^{(i)})x_{j}^{(i)} + \frac{\lambda}{m} w_j wjJ(w,b)=m1i=0m1(fw,b(x(i))y(i))xj(i)+mλwj

其中, λ \lambda λ控制正则化的强度, λ \lambda λ越大,模型越平滑,减小过拟合; λ = 0 \lambda=0 λ=0时,正则项为0,模型不受正则化影响。

需要注意的地方

  1. 线性回归不适合用于解决分类问题;
  2. 特征工程部分之后需要补充。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值