【机器学习】正规方程法求解线性回归问题

news2025/1/21 2:48:39

前情提要:https://blog.csdn.net/weixin_45434953/article/details/130604086

正规方程

正规方程能以更好的方式求得假设函数中 θ \theta θ的最优值。它提供了一种用于求 θ \theta θ的解析方法,而不是梯度下降那样的迭代方法。也就是只需要一次运算就可以得出结果。设有一个代价函数 J ( θ 0 , θ 1 . . . , θ n ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 J(\theta_0,\theta_1...,\theta_n) = \frac{1}{2m}\sum_{i=1}^{m} (h_\theta(x^{(i)})-y^{(i)})^2 J(θ0,θ1...,θn)=2m1i=1m(hθ(x(i))y(i))2那么我们对于每一个 j ∈ ( 0 , m ) j\in(0,m) j(0,m) ∂ ∂ θ j J ( θ ) = 0 \frac{\partial}{\partial \theta_j}J(\theta)=0 θjJ(θ)=0,然后求出 θ j \theta_j θj的值。根据微积分,我们知道函数 f ( x ) f(x) f(x)若在 x = x 0 x=x_0 x=x0取得最小值 f ( x 0 ) = f m i n ( x ) f(x_0)=f_{min}(x) f(x0)=fmin(x),那么在 x 0 x_0 x0 f ( x ) f(x) f(x)的导数 f ′ ( x 0 ) f'(x_0) f(x0)一定为0。反过来,导数为0的位置不一定是最值。

假设现在的数据样本如下:
在这里插入图片描述
前面说过, x 0 x_0 x0是恒等于1的。那么实际上我们可以根据上述的数据构建如下的矩阵:
X = [ 1 2104 5 1 45 1 1416 3 2 40 1 1534 3 2 30 1 852 2 1 36 ] , y = [ 460 232 315 178 ] X=\begin{bmatrix} 1& 2104& 5 & 1 & 45\\ 1& 1416& 3 & 2 & 40\\ 1& 1534& 3 & 2 & 30\\ 1& 852& 2 & 1 & 36\end{bmatrix}, y=\begin{bmatrix} 460\\ 232\\ 315\\ 178 \end{bmatrix} X= 11112104141615348525332122145403036 ,y= 460232315178
那么,计算 θ \theta θ的方法是:
θ = ( X T X ) − 1 X T y \theta=(X^TX)^{-1}X^Ty θ=(XTX)1XTy

需要注意的是,正规方程不需要使用特征缩放。

正规方程和梯度下降的对比:
梯度下降需要选择学习速率,并且需要迭代,而正规方程不需要。但是对于特征量n较大的情况, ( X T X ) − 1 (X^TX)^{-1} (XTX)1会消耗大量的时间,通常认为正规方程的时间复杂度为O(n3),因此梯度下降更适合应对n较大的情况,一般以n=10000为分界线。而且梯度下降在很多算法中都会广泛的应用,但是正规方程一般只用于线性回归。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/527502.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Microsoft Power BI连接本地mysql 数据库 !power bi提示此连接器需要安装一个或多个其他组件才能使用怎么办!

一、步骤 (一)从菜单栏点击进入mysql数据库 点击主页>获取数据>更多 选择mysql数据库,点击连接 (二)已经安装了mysql connector/net还是提示此连接器需要安装一个或多个其他组件才能使用-解决 重装了几次都…

vue-cli 关闭 Uncaught error 的全屏提示

在使用vue-cli开发项目的时候,如果代码抛出异常了,那么就会出现一个全屏的提示框,长下面这样: 经过一段时间的排查发现是webpack的问题,排查方式就是打开控制台,看这个框的一些属性,通常会有一些…

【DNDC模型】在土地利用变化、未来气候变化下的建模方法及温室气体时空动态模拟实践技术

DNDC(Denitrification-Decomposition,反硝化-分解模型)是目前国际上最为成功的模拟生物地球化学循环的模型之一,自开发以来,经过不断完善和改进,从模拟简单的农田生态系统发展成为可以模拟几乎所有陆地生态…

界面开发框架Qt新手入门教程 - 可编辑树模型的示例(一)

Qt 是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今,Qt已被运用于超过70个行业、数千家企业,支持数百万设备及应用。 The Qt Company是Di…

考研日语-详解ている、てある、ていく、てくる用法

目录 一、ている用法 1. 表示现在状态 2. 表示持续动作 3. 表示经验或习惯 4. 表示结果或效果 二、てある用法 1. 表示已经完成的动作 2. 表示现在状态 3. 表示被动 三、ていく用法 1. 表示未来的动作 2. 表示逐渐变化的过程 四、てくる用法 1. 表示过去到现在的…

Python实现哈里斯鹰优化算法(HHO)优化XGBoost分类模型(XGBClassifier算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 2019年Heidari等人提出哈里斯鹰优化算法(Harris Hawk Optimization, HHO),该算法有较强的全…

滴滴一面:BigKey问题很致命,如何排查和处理?

说在前面 在40岁老架构师 尼恩的读者社区(50)中,最近有小伙伴拿到了一线互联网企业如极兔、有赞、希音、百度、网易、滴滴的面试资格,遇到一几个很重要的面试题: 致命的的Redis BigKey 如何排查,你处理过吗? 与之类似…

Yield Guild Games: RON 质押来啦!

Yield Guild Games (YGG) 自 2022 年 7 月以来一直是 Ronin 区块链的验证者,在保障和维护网络方面发挥着至关重要的作用。随着 2023 年 4 月委托权益证明 (DPoS) 的推出,质押生态系统进一步民主化,允许更多的参与者在赚取奖励的同时为网络的安…

LabVIEWCompactRIO 开发指南19 原始以太网(TCP/UDP)

LabVIEWCompactRIO 开发指南19 原始以太网(TCP/UDP) TCP和UDP是所有以太网标准的低级构建块。原始TCP和UDP工具在几乎所有编程环境中都得到原生支持,包括LabVIEW。它们提供较低级别的通信功能,这些功能更灵活,但用户…

3.34 haas506 2.0开发教程-example -TFT显示自动生成的二维码

TFT显示自动生成的二维码 应用场景案例说明1.硬件2.连线图 代码源码链接[TFT显示二维码](https://www.yuque.com/haas506/wiki/pubazmzgrf30zws0) 应用场景 二维码在各个领域中的应用越来越广泛,其中一些主要应用场景包括: 电子商务:通过二维…

RHCSA之查看命令帮助手册

目录 RHCSA之查看命令帮助手册 查看命令类型 --- type Linux中对应的命令类型 帮助命令 help 命令 用法1 help 内部命令 用法2 命令 --help 命令的部分语法符号解析 man 命令 man命令用法 man的帮助级 man 命令帮助信息界面中的常用操作 man命令中帮助信息的结构以及意义…

CGAN(条件GAN)

相比于GAN,CGAN给生成器和辨别器都添加了一个辅助信息,假设为y,y可以是标签类别或者其他模态的信息。 目标函数相比于GAN在输入端的x和z变为在y条件下生成的x和z。 模型框架可以表示为: 代码: import argparse import os os.en…

如何在linux中配置JDK环境变量

在linux系统部署皕杰报表,因皕杰报表是一款纯java报表工具,运行时需要jre环境,所以要在服务器上配置三个jdk环境变量path、classpath、JAVA_HOME。 那么为什么要配置jdk环境变量呢?因为java软件运行时要用到一些java命令&#xff…

人体样本? 一站式医学微生态研究解决方案来啦!

细菌?真菌?古菌?病毒? 还在为人体微生态研究选择哪个切入点而苦苦纠结吗? 数据?算法?作图?分析? 还在苦于已有的分析内容脱离医学临床实际而不知所措吗? …

vue 3.0 静态路由配置

今天研究了一下vue3.0的静态路由配置,分享一下。 首先我们现在项目中建立router文件夹,如下图所示: 404文件夹存放404页面,components文件夹存放首页界面,config为设置文件夹,diz存放具体的业务逻辑和界面…

SpringMVC 执行流程

视图阶段(老旧JSP等) DispatcherServlet:接收请求、响应结果,所有的请求都要经过它,它是被Tomcat容器初始化的当这个类加载时会加载一些组件类HandlerMapping、HandlerAdapter、ViewResolver等等。 HandlerMapping:根…

考古:Transformer

论文1: 《Attention is all you need》 模型体系结构 Encoder 将符号表示的输入序列 ( x 1 , . . . , x n ) (x_1,...,x_n) (x1​,...,xn​)映射到连续表示的序列 z ( z 1 , . . . , z n ) z(z_1,...,z_n) z(z1​,...,zn​)。 给定 z z z,Encoder 然后一次产生一…

网络安全合规-个人信息安全影响评估

信息安全技术个人信息安全影响评估指南》 一、个人信息安全影响评估定义 个人信息安全影响评估Personal Information Security Impact Assessment,针对个人信息处理活动,检验其合法合规程度,判断其对个人信息主体合法权益造成损害的各种风险…

操作系统原理 —— 什么是进程互斥? 以及进程互斥的实现方式(十四)

什么是进程互斥? 在操作系统中,有两种资源共享方式,一种是互斥共享方式,一种是同时共享方式。 互斥共享方式就是指在系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资…

看懂身份证识别OCR:从算法到 API 使用

引言 身份证识别OCR API是一种基于 OCR 技术的身份证识别服务,可以将身份证上的各种信息自动识别并提取出来,包括姓名、身份证号码、性别、民族、出生年月日、地址、签发机关和有效期等。 这项技术可以大大提高身份验证和信息采集的准确性和效率&#…