Colommar Blog
机器学习
归档
标签
关于
主页
机器学习知识库
线性回归
从最小二乘到正则化、优化算法与鲁棒学习的完整回归学习路径。
子专题
每个专题都按原笔记顺序排列
500
2 篇
优化算法
优化算法专题资料与学习笔记。
01. 牛顿法
02. 拟牛顿法
进入专题
→
本专题条目
23 篇文章与资料
01
01. 什么是线性回归
一元线性回归 假设有下面的数据,表示某地区房屋面积和售价的关系: 房屋面积(平米) 售价(万) 39.93 199 42.05 290 43.18 298 44.68 310 49.87 399 53.57 420 将房 …
Notebook
→
02
02. 一元线性回归的求解
求解一元线性回归,实际上就是找一条直线,使得它和散点图中的所有点距离最近。直线和散点的距离一般通过损失函数来度量, 损失函数 (Loss Function)有时也称为 代价函数 (Cost Function),常用的损失 …
Notebook
→
03
03. 二元线性回归的求解
接下来,我们从一元拓展到二元的场景。假设某个贷款产品根据客户的工资和房屋面积来决定可贷款额度,并存在下面几个样例数据: 工资(元) 房屋面积(平米) 可贷款金额(元) 6000 60 340000 6000 80 …
Notebook
→
04
04. 多元线性回归的求解
从一元线性回归和二元线性回归的解法中可以看到,线性回归的一般思路是这样的: 1. 定义损失函数: 2. 将线性回归函数 代入损失函数,并求解系数 , ,..., 使得损失函数最小 3. 损失函数的最小值可以通过对损失函数 …
Notebook
→
05
05. 线性回归的扩展
在现实生活中,纯粹的线性模型是很难遇到的,我们不妨再来看看下面的数据集: x y 40 216 50 399 60 496 70 507 80 432 90 271 如果我们按照线性回归的解法,也能得到解,如下所示: 得 …
Notebook
→
06
06. NFL定理和过拟合
对于一堆输入数据,我们可以用线性回归来拟合它,也可以用二次回归,三次回归,或者 N 次回归来拟合它。在函数逼近理论里,有一个定理叫做 Weierstrass定理 ,该定理阐述了在预先给定的精度下,可以用多项式逼近任意给定 …
Notebook
→
07
07. 使用 sklearn 解线性回归
前面在计算多项式回归时,随着维度的增多,程序写起来也越来越麻烦。这一节我们使用 scikit learn 来简化这个操作。 scikit learn 简称 sklearn,它是 Python 语言里的一个通用机器学习库, …
Notebook
→
08
08. 通过模型评估降低过拟合
在前一节的例子中,我们只有一个自变量,也就是只有一个特征 ,但是通过数学变换,我们可以扩展到多个特征 ,并得到多项式回归。模型的结果如下图所示: 从图中的拟合程度来看,似乎是特征越多,模型越复杂,拟合效果越好。很显然这是 …
Notebook
→
09
09. 回归模型的评估和选择
在上一节中我们学到,为了避免模型在数据集上过度训练导致过拟合,通常将数据集划分为训练集和测试集。 数据集划分方法 假设我们有一个包含 m 个样例的数据集 ,得想办法对数据集进行划分,分成训练和测试两类,训练集记为 ,测试 …
Notebook
→
10
10. 什么是梯度下降
我们前面在求解线性回归时,都是通过下面的这个被叫做 正规方程 的式子来计算线性回归的: 使用这种方法虽然简单,容易理解,但在现实生活中却有着很大的局限性。首先,并非所有的函数都可以通过求导来计算它的极值点,有些函数的导数 …
Notebook
→
11
11. 梯度下降的简单例子
根据前面介绍的梯度,我们来看几个使用梯度下降法求解极值的例子。对于函数 ,我们首先选取一个初始点 ,然后沿着梯度方向对初始值进行更新得到 : 然后再对 进行更新得到 ,以此类推,直到损失函数的值不再有显著变化,最终得到 …
Notebook
→
12
12. 利用梯度下降法解线性回归
一元线性回归的梯度下降 下面使用梯度下降算法来求解前面的线性回归问题,我们知道,对一元线性回归,损失函数为: 这是一个二元二次方程,我们对该方程求梯度,也就是分别对参数 a 和 b 求偏导,得到参数的更新公式: 将损失函 …
Notebook
→
13
13. sklearn 中的梯度下降法
sklearn 中的梯度下降法 上面的求解过程中,我们每次的迭代都用到了所有样本,这样做可以让收敛速度最快,但是如果样本数非常多,计算性能就会变低,上面的例子中一共也就3个样本,所以不明显。像这种每次迭代都使用全部样本的 …
Notebook
→
14
14. 最优化问题的其他算法
机器学习的本质是求解最优化问题,除了之前提到的线性问题的两种解法之外,还有很多相关的优化算法,这些算法不仅适用于线性模型,也适用于非线性模型。 正规方程的优化算法 在正规方程的计算过程中,我们既要对矩阵求逆,又要求矩阵乘 …
Notebook
→
15
15. 线性回归实例
经过前面的学习,我们来看一个使用线性回归解决真实问题的实例:使用线性回归检测水泥质量(案例来源)。 已知类似于下面这样的水泥成分样本数据,如何得到一个水泥质量预测模型,能预测出水泥的好坏? 其中,每一行代表一个样本,1 …
Notebook
→
16
16. 带约束条件的线性回归
在前面的学习中,我们从同一份样本数据中得到了三个模型,而且三个模型的拟合效果都很好,不过很显然,二次模型和三次模型都过于复杂了,属于过拟合。为了判断哪个模型的性能最优,泛化能力最强,我们将数据集划分为训练集和测试集,然后 …
Notebook
→
17
17. 求解岭回归和LASSO回归
岭回归的求解 岭回归就是 基于 约束的最小二乘法 ,它的损失函数为: 我们将损失函数表示成矩阵形式: 和最小二乘的正规方程解法一样,我们对 求偏导: 令其等于 0,求得损失函数最小时 的解析解: …
Notebook
→
18
18. 使用岭回归解决共线性问题
什么时候使用岭回归? 我们把岭回归的解和普通最小二乘的解析解作一个对比。 我们知道,使用最小二乘进行线性回归时,有正规方程和梯度下降两种解法,使用正规方程可以求得: 可以看到岭回归的解和普通最小二乘的解非常类似,只是在 …
Notebook
→
19
19. LASSO回归和稀疏学习
原知识库中的待补充条目。
Notebook
→
20
20. 鲁棒学习
前面我们学习了通过最小二乘法求解回归模型,既可以求解线性回归,也可以扩展到非线性回归。最小二乘法是机器学习中的最基础的算法,这种求解损失函数最小值的思路可以延伸到更多的机器学习算法中,包括分类和聚类问题。 介绍损失函数时 …
Notebook
→
·
TODO
带约束条件的最小二乘 岭回归 Lasso 回归 弹性网 优化求解算法 梯度下降法 拟牛顿法 牛顿法 鲁棒学习 L1 损失 Huber 损失 Tukey 损失 各种回归模型 线性回归(简单线性回归) 股票投资:根据股票背后 …
笔记
→
·
x. 线性回归的概率解释
线性回归实际上满足下面三个假设: 1. 因变量 y 和自变量 x 之间是线性关系; 2. 自变量 x 和干扰项 e 相互独立; 3. 没有被线性模型捕捉到的随即因素 e 服从正态分布;
Notebook
→
·
x. 最小二乘的数学解释
微积分角度来讲 ,最小二乘法是采用非迭代法,针对代价函数求导数而得出全局极值,进而对所给定参数进行估算。 计算数学角度来讲 ,最小二乘法的本质上是一个线性优化问题,试图找到一个最优解。 线性代数角度来讲 ,最小二乘法是求 …
Notebook
→