【机器学习】正规方程

简介: 【1月更文挑战第23天】【机器学习】正规方程

最小二乘法矩阵表示

最小二乘法可以将误差方程转化为有确定解的代数方程组(其方程式数目正好等于未知数的个数),从而可求解出这些未知参数。这个有确定解的代数方程组称为最小二乘法估计的正规方程。公式如下:

$\theta = (X^TX)^{-1}X^Ty$ 或者 $W = (X^TX)^{-1}X^Ty$ ,其中的$W、\theta$ 即使方程的解!

image.png

最小二乘法公式如下:
公式是如何推导的?

最小二乘法公式如下:

$J(\theta) = \frac{1}{2}\sum\limits{i = 0}^n(h{\theta}(x_i) - y_i)^2$

使用矩阵表示:

$J(\theta) = \frac{1}{2}\sum\limits{i = 0}^n(h{\theta(xi)} - y)(h{\theta(x_i)} - y)$ $J(\theta) = \frac{1}{2}(X\theta - y)^T(X\theta - y)$

image.png

image.png

使用Python代码标识:

# 上面八元一次方程对应的X数据
X = np.array([[  0 ,14 , 8 ,  0 ,  5,  -2,   9,  -3],
 [ -4 , 10 ,  6 ,  4 ,-14 , -2 ,-14  , 8],
 [ -1 , -6  , 5 ,-12 ,  3 , -3 ,  2 , -2],
 [  5 , -2  , 3 , 10  , 5 , 11 ,  4  ,-8],
 [-15 ,-15  ,-8 ,-15 ,  7 , -4, -12 ,  2],
 [ 11 ,-10 , -2 ,  4  , 3 , -9 , -6 ,  7],
 [-14 ,  0 ,  4 , -3  , 5 , 10 , 13 ,  7],
 [ -3 , -7 , -2 , -8  , 0 , -6 , -5 , -9]])
# 对应的y
y = np.array([ 339 ,-114  , 30 , 126, -395 , -87 , 422, -309])
display(X,y)

矩阵转置公式与求导公式:

image.png

推导正规方程 $\theta$ 的解:

  1. 矩阵乘法公式展开
  • $J(\theta) = \frac{1}{2}(X\theta - y)^T(X\theta - y)$
  • $J(\theta) = \frac{1}{2}(\theta^TX^T - y^T)(X\theta - y)$
  • $J(\theta) = \frac{1}{2}(\theta^TX^TX\theta - \theta^TX^Ty -y^TX\theta + y^Ty)$
  1. 进行求导(注意X、y是已知量,$\theta$ 是未知数):
  • $J'(\theta) = \frac{1}{2}(\theta^TX^TX\theta - \theta^TX^Ty -y^TX\theta + y^Ty)'$
  1. 根据上面求导公式进行运算:
  • $J'(\theta) = \frac{1}{2}(X^TX\theta + (\theta^TX^TX)^T-X^Ty - (y^TX)^T)$
  • $J'(\theta) = \frac{1}{2}(X^TX\theta + X^TX\theta -X^Ty - X^Ty)$
  • $J'(\theta) = \frac{1}{2}(2X^TX\theta -2X^Ty)$
  • $J'(\theta) =X^TX\theta -X^Ty$
  • $J'(\theta) =X^T(X\theta -y)$ 矩阵运算分配律
  1. 令导数$J'(\theta) = 0:$
  • $0 =X^TX\theta -X^Ty$
  • $X^TX\theta = X^Ty$
  1. 矩阵没有除法,使用逆矩阵进行转化:
  • $(X^TX)^{-1}X^TX\theta = (X^TX)^{-1}X^Ty$
  • $I\theta = (X^TX)^{-1}X^Ty$
  • $\theta = (X^TX)^{-1}X^Ty$

到此为止,公式推导出来了~

相关文章
|
机器学习/深度学习 算法 TensorFlow
【Python机器学习】梯度下降法的讲解和求解方程、线性回归实战(Tensorflow、MindSpore平台 附源码)
【Python机器学习】梯度下降法的讲解和求解方程、线性回归实战(Tensorflow、MindSpore平台 附源码)
378 0
|
机器学习/深度学习 API
机器学习入门(七):线性回归原理,损失函数和正规方程
机器学习入门(七):线性回归原理,损失函数和正规方程
|
机器学习/深度学习 算法 Python
学习笔记: 机器学习经典算法-多元线性回归的正规方程解
机器学习经典算法-个人笔记和学习心得分享
271 0
|
机器学习/深度学习 算法
【机器学习】浅谈正规方程法&梯度下降
【机器学习】浅谈正规方程法&梯度下降
【机器学习】浅谈正规方程法&梯度下降
|
机器学习/深度学习 算法
【机器学习】浅谈正规方程法&梯度下降
正规方程法(最小二乘)与梯度下降法都是为了求解线性回归的最优参数,但是不同的是正规方程法只需要一步就可以得到代价函数最优点,而梯度下降则是迭代下降,看起来似乎正规方程法要好得多,但实际梯度下降使用场景更多,下面我们介绍这两种算法以及优缺点
【机器学习】浅谈正规方程法&梯度下降
|
23天前
|
机器学习/深度学习 数据采集 人工智能
【机器学习算法篇】K-近邻算法
K近邻(KNN)是一种基于“物以类聚”思想的监督学习算法,通过计算样本间距离,选取最近K个邻居投票决定类别。支持多种距离度量,如欧式、曼哈顿、余弦相似度等,适用于分类与回归任务。结合Scikit-learn可高效实现,需合理选择K值并进行数据预处理,常用于鸢尾花分类等经典案例。(238字)
|
12月前
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
1124 6
|
6月前
|
机器学习/深度学习 数据采集 人工智能
20分钟掌握机器学习算法指南
在短短20分钟内,从零开始理解主流机器学习算法的工作原理,掌握算法选择策略,并建立对神经网络的直观认识。本文用通俗易懂的语言和生动的比喻,帮助你告别算法选择的困惑,轻松踏入AI的大门。
|
7月前
|
机器学习/深度学习 存储 Kubernetes
【重磅发布】AllData数据中台核心功能:机器学习算法平台
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
276 6

热门文章

最新文章