【ML-2】最小二乘法(least squares)介绍

目录

  1. 最小二乘法的原理与要解决的问题
  2. 最小二乘法的代数法解法
  3. 最小二乘法的矩阵法解法
  4. 最小二乘法的局限性和适用场景
  5. 常见问题

?
?

最小二乘法是用来做函数拟合或者求函数极值的方法。在机器学习,尤其是回归模型中,经常可以看到最小二乘法的身影,这里就对我对最小二乘法的认知做一个小结。

一、最小二乘法的原理与要解决的问题

最小二乘法是由勒让德在19世纪发现的(也有争议为高斯发明),形式如下式:

观测值就是我们的多组样本,理论值就是我们的假设拟合函数。目标函数也就是在机器学习中常说的损失函数,我们的目标是得到使目标函数最小化时候的拟合函数的模型。举一个最简单的线性回归的简单例子,比如我们有m个只有一个特征的样本:

二、最小二乘法的代数法解法

上面提到要使J(θ0,θ1)最小,方法就是对θ0和θ1分别来求偏导数,令偏导数为0,得到一个关于θ0和θ1的二元方程组。求解这个二元方程组即可。

这个方法很容易推广到多个样本特征的线性拟合。

这样我们得到一个N+1元一次方程组,这个方程组有N+1个方程,求解这个方程,就可以得到所有的N+1个未知的θ。

这个方法很容易推广到多个样本特征的非线性拟合。原理和上面的一样,都是用损失函数对各个参数求导取0,然后求解方程组得到参数值。这里就不累述了。

三、最小二乘法的矩阵法解法

矩阵法比代数法要简洁,且矩阵运算可以取代循环,所以现在很多书和机器学习库都是用的矩阵法来做最小二乘法。这里用上面的多元线性回归例子来描述矩阵法解法。在我的博客【1】中已经使用到:

四、最小二乘法的局限性和适用场景

从上面可以看出,最小二乘法适用简洁高效,比梯度下降这样的迭代法似乎方便很多。但是这里我们就聊聊最小二乘法的局限性。

  1. 如果拟合函数不是线性的,这时无法使用最小二乘法,需要通过一些技巧转化为线性才能使用,此时梯度下降仍然可以用。
  2. 当样本量m很少,小于特征数n的时候,这时拟合方程是欠定的,常用的优化方法都无法去拟合数据。当样本量m等于特征数n的时候,用方程组求解就可以了。当m大于n时,拟合方程是超定的,也就是我们常用与最小二乘法的场景了。

?
?

五、常见问题

1) 对于多元函数求其极值,即使求偏导并令偏导数为0,也不能代表所求的值为极值点,也可能是拐点吧?

回答: 是的,不一定是全局极值点。只有数据集是凸的情况下,是全局的极值点。

2)假设函数非凸,求偏导之后,应该会求出多个值。此时这些值,应该是局部最优、或者拐点及全局最优解。如何判定这些值属于什么情况? 需要代入计算么?

回答:一般不用,这是理论上的情况,实际应用中局部最优也可以满足要求。

3)对于一元函数,可导必连续,连续未必可导。而对于多元函数而言,两者没有必然联系。如果存在不可导的情况,又该如何解决呢? 比如用梯度下降法求极值时,如何确保函数是连续的?如何确保函数在某点可导?

回答:对于无法连续可导的情况,比如L1正则化,一般可以用坐标轴下降法和最小角回归法来迭代求解极值。

4)是否可能存在损失函数为单调函数,那这样的话,不是没有极值了?

回答:这也有可能,但是我们总可以迭代找到局部最优的极小值。

5)如果存在调参时,正好选择的区间处于拐点区间。梯度下降法又是以梯度值接近0为判定条件,这样的话,应该会造成错误的参数选择吧。这个感觉还和局部最优解不一样。

回答:是的,所以一般需要多选择几个初始值分别梯度下降,找里面最优的局部最优解。

6)对于单调函数而言,其梯度是很难找到接近0的情况(除非是拐点)。。如何能通过迭代找到局部最优解呢?--比如X^3这样的函数,是单调递增的,X=0时是拐点,那是将X=0作为最优解了?

回答: 一般机器学习都是定义损失函数,损失最小为0,所以肯定会有拐点。拐点附近的局部最优解容易被找到。

?
?

附件一:手写推导过程练习

?
?

?
?

?
?

?
?

?
?

原文地址:https://www.cnblogs.com/yifanrensheng/p/12354377.html

时间: 2024-10-10 04:48:22

【ML-2】最小二乘法(least squares)介绍的相关文章

【ML-1】线性回归基础--用于预测

线性回归可以说是机器学习中最基本的问题类型了,这里就对线性回归的原理和算法做一个小结 目录 背景 简述 内容详解 密度聚类 层次聚类 模型效果判断 附件:手写推导过程练习 一.线性回归函数定义 二.线性回归的模型函数和损失函数由来 原因:中心极限定理 实际问题中,很多随机现象可以看做众多因素的独立影响的综合反应,往往服从正态分布 从最大似然函数角度出发,是使得最大似然越大越好,假设有m个样本,每个样本对应于n维特征和一个结果输出,如下: 从上面式子的后半部分,要使得上式MAX,即使求解后半部分的

(转)最小二乘法拟合圆公式推导及vc实现[r]

(下文内容为转载,不过已经不清楚原创的是哪里了,特此说明) 转自: http://www.cnblogs.com/dotLive/archive/2006/10/09/524633.html 该网址下面有更多的讨论. 最小二乘法(least squares analysis)是一种 数学 优化 技术,它通过 最小化 误差 的平方和找到一组数据的最佳 函数 匹配. 最小二乘法是用最简的方法求得一些绝对不可知的真值,而令误差平方之和为最小. 最小二乘法通常用于 曲线拟合 (least squares

最小二乘法+列主元高斯消元法

声明: 现在发现每写一篇随笔,就要在前面添加些牢骚话,各位看客如果嫌烦,直接绕道吧. 近期重新拾起C语言,因为工作的需要. 图像这个行当,matlab可以作为测试,但是真正应用的话还得转成C,所以这就是我这段时间苦逼的开始. 因为需要用到多项式变换,其中的系数求解又牵涉到线性方程组和最小二乘法的求解,所以在此,单开小灶来讲解最小二乘法和列主元高斯消元法. 一.最小二乘法 有关最小二乘法的详细介绍可以参考维基百科: 最小二乘法 相信有点数学功底的人都能看懂,这里不加详解. 在此贴上C函数代码 1

说说 ML.NET and AutoML

经常参加培训讲座.发现最受欢迎的讲座之一是"ML.NET和AutoML的介绍".ML.NET是一个代码库,可用于创建经典(非神经网络)机器学习预测模型.AutoML 是命令行工具中的非正式术语,可自动为您生成ML.NET代码. 以下是我使用的两个数据文件,演示ML.NET程序的源代码,以及 AutoML 的 shell 命令.目标是从年龄.工作类型.年收入和工作满意度中预测一个人的性别. 文件: employees_norm_train.tsv isMale age job incom

多序列比对&建树

目录 目标物种和序列 相关Seq列表 多序列比对的原理和方法 相关的工具 建树的几种方法 实际操作 Muscle&ClustalW 可视化结果 newick文本 MEGAX本地 构建流程 距离矩阵和自带建树 手动建树结果 关于NEWICK格式 相关链接 http://journals.sagepub.com/doi/10.3181/0903-MR-94 (冠状病毒的Minireview) http://www.biotrainee.com/thread-2253-1-1.html (系统发育树相

集成方法:渐进梯度回归树GBRT(迭代决策树)

http://blog.csdn.net/pipisorry/article/details/60776803 单决策树C4.5由于功能太简单,并且非常容易出现过拟合的现象,于是引申出了许多变种决策树,就是将单决策树进行模型组合,形成多决策树,比较典型的就是迭代决策树GBRT和随机森林RF.在最近几年的paper上,如iccv这种重量级会议,iccv 09年的里面有不少文章都是与Boosting和随机森林相关的.模型组合+决策树相关算法有两种比较基本的形式:随机森林RF与GBDT,其他比较新的模

机器学习笔记之基础概念

本文基本按照<统计学习方法>中第一章的顺序来写,目录如下: 1. 监督学习与非监督学习 2. 统计学习三要素 3. 过拟合与正则化(L1.L2) 4. 交叉验证 5. 泛化能力 6. 生成模型与判别模型 7. 机器学习主要问题 8. 提问 正文: 1. 监督学习与非监督学习 从标注数据中学习知识的规律以及训练模型的方法叫做监督学习,但由于标注数据获取成本较高,训练数据的数量往往不够,所以就有了从非标注数据,也就是非监督数据中学习的方法. 由于非监督数据更容易获取,所以非监督学习方法更适合于互联

[家里蹲大学数学杂志]第057期图像复原中的改进 TV 模型

$\bf 摘要$: 本文给出了王大凯等编的<图像处理中的偏微分方程方法>第 6.2 节的详细论述. $\bf 关键词$: 图像复原; TV 模型; matlab 编程 1. 前言 图像在形成.传输和存储过程中中, 图像质量可能退化 (degradation). 而退化的图像可用数学模型: $$\bee\label{1:d} u_0=h_d*f+n \eee$$来描述, 其中 (1)$f(x,y)$ 是理想的图像; (2)$h_d(x,y)$ 是成像系统的点弥散函数 (point-spread

统计学习方法 李航---第1章 统计学习方法概论

第一章 统计学习方法概论 统计学习的主要特点是: (1)统计学习以计算机及网络为平台,是建立在计算机及网络之上的; (2)统计学习以数据为研究对象,是数据驱动的学科: (3)统计学习的目的是对数据进行预测与分析: (4)统计学习以方法为中心,统计学习方法构建模型并应用模型进行预测与分析; (5)统计学习是概率论.统计学.信息论.计算理论.最优化理论及计算机科学等多个领域的交叉学科,并且在发展中逐步形成独自的理论体系与方法论. 统计学习的对象是数据Cdata) 统计学习的目的是对数据进行预铡与分析