线性回归一些基本术语

线性回归函数

形如 Y = X ∗ w e i g h t + b i a s Y=X*weight+bias Y=Xweight+bias式子的回归方程就叫线性回归,X一般用一个 n ∗ m n*m nm的矩阵来表示,n表示有n个样本,m表示有m个特征,每一个样本对应的y标签是一个一维的值。

所以我们整个线性回归的任务就是算出weight和bias,也即下面说的params。

线性传播过程

线性传播过程分为 前向传播构造计算图;根据计算图计算梯度;根据优化函数更新参数;循环。

线性回归一些基本术语_第1张图片

前向传播

前向传播包括两个过程,分别是

  1. y ^ = w e i g h t T ∗ x + b i a s \hat{y} = weight^T*x+bias y^=weightTx+bias计算 y ^ \hat{y} y^
  2. 根据损失函数计算损失。

损失函数

损失函数用于衡量线性回归参数估计的拟合程度,拟合的越好,损失函数值越低。我们由极大似然估计得到损失函数,近似于MSE,我们直接用MSE作为损失函数。

所以我们要算出weight和bias这个任务就等价于让损失函数最小。

优化函数

要解得损失函数的最小值可以使用解析解,但是对于深度的网络往往很难求得解析解,这个时候我们就需要用到优化函数。最常用的优化函数就是梯度下降算法(SGD - 随机梯度下降):

P a r a m s = P a r a m s − L e a r n i n g R a t e ∗ G r a d i e n t Params = Params - LearningRate*Gradient Params=ParamsLearningRateGradient

你会发现当Gradient等于0的时候,Params==Params,损失函数收敛,损失为最小值,且你求得了Params。

反向传播

你完全不需要了解链式法则和反向传播,你只需要知道反向传播已经被pytorch封装成了backward()方法,该方法实现了根据计算图自动计算梯度并存储,也就是上面优化函数中的公式里的Gradient。

线性回归一些基本术语_第2张图片

你可能感兴趣的:(yuque,线性回归,机器学习,深度学习)