【ML】求解线性回归方程

参考资料:openclassroom

线性回归(Linear Regression)

为了拟合10岁以下儿童年龄(x1)与身高(y)之间的关系,我们假设一个关于x的函数h(x):

h(x) = Θ01*x1 = Θ0*x01*x1 = ΘT*x (其中x0=1, x=[x0, x1])

我们的目的是求出Θ,使得h(x)接近真实的y。

因此我们需要在m个训练样本(x,y)上使得h(x)与y的平方误差最小。

也就是最小化J(Θ) =1/(2*m) * ∑i(h(x(i))-y(i))2

分母上2的作用是抵消求导时平方项产生的2.

解法一:Gradient Descent(梯度下降)

Θ朝着J(Θ)的梯度方向(即J(Θ)关于Θ的偏导)前进,直到J(Θ)达到极小点(线性回归中J(Θ)为碗状,极小点即最小点)

α为步长,由于J(Θ)关于Θ的偏导会逐渐变小,因此α无需调整。

同时执行以下两个更新公式,直到收敛。

注意:同时执行。而不是求出一个代入另一个的迭代执行。

Θ0 = Θ0-α/m*∑i(h(x(i))-y(i))x0(i)

Θ= Θ1-α/m*∑i(h(x(i))-y(i))x1(i)

解法二:Normal Equations

J(Θ)关于Θ求导为0,联列方程组求解得:

Θ = (XTX)-1XTY (其中X的行向量为x(i),Y每个元素为y(i))

注意:(XTX)-1不一定有意义

case 1: 每个x(i)样本的维度为n。当m <= n时,XTX 非满秩,为奇异矩阵,无逆元。

case 2: x(i)特征线性相关,即X列向量线性相关时,XTX 非满秩,为奇异矩阵,无逆元。

时间: 2025-01-04 07:23:41

【ML】求解线性回归方程的相关文章

Support Vector Machine(2):求解线性可分SVM的最佳边界

在上篇文章<Support Vector Machine(1):线性可分集的决策边界>中,我们最后得到,求SVM最佳Margin的问题,转化为了如下形式: 到这一步后,我个人又花了很长的时间去查阅资料,因为数学较差的原因,理解起来相当慢,不过探索的乐趣也就在于不断的打破瓶颈向前,OK继续.上述的问题等价于: 而后我们引入广义拉格朗日函数,利用拉格朗日对偶性来求解此问题.首先明确一下,我们做这些工作的目的是,消去约束条件,为了好求解问题.广义拉格朗日函数为: 上式分为两部分,拉格朗日前辈的思路是

sklearn中LinearRegression关键源码解读

问题的引入 我们知道,线性回归方程的参数,可以用梯度下降法求解,或者用正规方程求解. 那sklearn.linear_model.LinearRegression中,是不是可以指定求解方式呢?能不能从中获取梯度相关信息呢? 下面是线性回归最简单的用法. from sklearn import linear_model # Create linear regression object regr = linear_model.LinearRegression() # Train the model

sklearn中LinearRegression使用及源码解读

sklearn中的LinearRegression 函数原型:class sklearn.linear_model.LinearRegression(fit_intercept=True,normalize=False,copy_X=True,n_jobs=1) fit_intercept:模型是否存在截距 normalize:模型是否对数据进行标准化(在回归之前,对X减去平均值再除以二范数),如果fit_intercept被设置为False时,该参数将忽略. 该函数有属性:coef_可供查看模

02-31 线性支持向量机

[TOC] 更新.更全的<机器学习>的更新网站,更有python.go.数据结构与算法.爬虫.人工智能教学等着你:https://www.cnblogs.com/nickchen121/ 线性支持向量机 在线性可分支持向量机中说到线性可分支持向量机有一个缺点是无法对异常点做处理,也正是因为这些异常点导致数据变得线性不可分或者会因为它的正好被判断为支持向量导致模型的泛化能力变差. # 异常点导致数据线性不可分图例 import matplotlib.pyplot as plt from matp

POJ1061(线性同余方程)

青蛙的约会 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 105587   Accepted: 20789 Description 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事情,既没有问清楚对方的特征,也没有约定见面的具体位置.不过青蛙们都是很乐观的,它们觉得只要一直朝着某个方向跳下去,总

支持向量机(二)线性可分支持向量机与硬间隔最大化

本文原创如需转载请注明出处 阅读目录一.什么是函数间隔? 二.什么是几何间隔? 三.函数间隔与几何间隔的关系? 四.硬间隔最大化 五.学习的对偶算法 一.函数间隔 在图A,B,C三点,A离超平面是最远的,所以A被分类错误的可能性是最小的,相反C离超平面的距离是最近的,所以C被分类错误的可能性是最大的,这很好理解.那么我们就可以用“一个点距离超平面的远近”来表示分类预测的确信程度 因此我们只需要寻找一个超平面离所有边缘点都最远. a.我们用的绝对值表示点x与超平面的距离 b.对于样本点x来说,y是

bzoj2115 [Wc2011] Xor——高斯消元 &amp; 异或线性基

题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2115 异或两次同一段路径的权值,就相当于没有走这段路径: 由此可以得到启发,对于不同的走法,也许只需要找出一些东西,就可以把所有的走法用它们来异或表示出来: 再关注图上的环路,因为从 1 到 n 的不同路径也可以看作是经由 1 和 n 连接的环路,路径上也可能有环路: 发现对于环路的不同走法,就是把路与环的权值异或求最优值,重叠的部分异或了两次相当于不走: 于是问题转化为找出图上的所有环(

从统计学看线性回归(2)——一元线性回归方程的显著性检验

一.σ2 的估计 因为假设检验以及构造与回归模型有关的区间估计都需要σ2的估计量,所以先对σ2作估计. 通过残差平方和(误差平方和)             (1) 又∵                                (2) ∴                                                        (3) 其中 为响应变量观测值的校正平方和.残差平方和有n-2 个自由度,因为两个自由度与得到的估计值与相关.                

CH5102 Mobile Service【线性dp】

5102 Mobile Service 0x50「动态规划」例题 描述 一个公司有三个移动服务员,最初分别在位置1,2,3处.如果某个位置(用一个整数表示)有一个请求,那么公司必须指派某名员工赶到那个地方去.某一时刻只有一个员工能移动,且不允许在同样的位置出现两个员工.从 p 到 q 移动一个员工,需要花费 c(p,q).这个函数不一定对称,但保证 c(p,p)=0.给出N个请求,请求发生的位置分别为 p_1~p_N.公司必须按顺序依次满足所有请求,目标是最小化公司花费,请你帮忙计算这个最小花费