#线性回归 多项式拟合和正规方程(最小二乘法)

news2024/9/24 7:24:10

多项式拟合和正规方程

特征点的创建和合并

对于一个特定的问题,可以产生不同的特征点,通过对问题参数的重新定义和对原有特征点的数学处理合并拆分,能够得到更加优秀的特征点。

多项式回归

对于更多更加常见的数学模型,其拟合往往是非线性关系的,这时候就需要考虑引用多项式来进行拟合,如: h ( x ) = θ 0 + θ 1 x + θ 2 x 2 + θ 3 x 3 h(x)=θ_0+θ_1 x+θ_2 x^2+θ_3 x^3 h(x)=θ0+θ1x+θ2x2+θ3x3

正规方程算法

(最小二乘法)

在微积分中,对于函数 f ( x , y ) f(x,y) f(x,y),其局部最值往往是在 f x = 0 f_x=0 fx=0 f y = 0 f_y=0 fy=0处取得。
因此,对于代价函数 J ( θ ) J(θ) J(θ),求 J ( θ ) J(θ) J(θ)对每一个 θ i θ_i θi的偏导数,令它们都为0,即:
∂ J ( θ ) ∂ θ i = 0   f o r   i = 0 , 1 , 2 , … , n \frac{∂J(θ)}{∂θ_i}=0~for~i=0,1,2,…,n θiJ(θ)=0 for i=0,1,2,,n
称为正规方程(Regular expression)。正规方程提供了一种直接求出最小值的方法,而不需要依赖迭代进行一步一步地运算。

正规方程的矩阵形式

对于数据集 { ( x ( 1 ) , y ( 1 ) ) , ( x ( 2 ) , y ( 2 ) ) , . . . , ( x ( m ) , y ( m ) ) } \{(x^{(1)},y^{(1)}),(x^{(2)},y^{(2)}),...,(x^{(m)},y^{(m)})\} {(x(1),y(1)),(x(2),y(2)),...,(x(m),y(m))}, 其中每一个 x ( i ) x^{(i)} x(i)都是一个向量: x ( i ) = [ x 0 ( i ) x 1 ( i ) . . . x n ( i ) ] x^{(i)}=\begin{bmatrix}x_0^{(i)}\\x_1^{(i)}\\...\\x_n^{(i)}\end{bmatrix} x(i)= x0(i)x1(i)...xn(i)
构建设计矩阵(Design matrix) X = [ ( x ( 1 ) ) T ( x ( 2 ) T . . . ( x ( m ) ) T ] X=\begin{bmatrix}(x^{(1)})^T\\(x^{(2})^T\\...\\(x^{(m)})^T\end{bmatrix} X= (x(1))T(x(2)T...(x(m))T 和值向量 y = [ y ( 1 ) y ( 2 ) . . . y ( m ) ] y=\begin{bmatrix} y^{(1)}\\y^{(2)}\\...\\y^{(m)} \end{bmatrix} y= y(1)y(2)...y(m)
将代价函数转化为矩阵方程的形式,再对其求导,令其等于0,得到代价函数取得最小值时的 θ θ θ
θ = ( X T X ) − 1 X T y θ=(X^TX)^{-1}X^Ty θ=(XTX)1XTy
对比梯度下降算法:
正规方程算法不需要学习率和迭代,但对大规模数量(万数量级以上)的特征点(n),工作效率十分低下。对于一些如分类算法等等更加复杂的算法,正规方程法并不适用于求它们在极值处的θ值。

正规方程的不可逆性

在使用正规方程时,要注意的问题是,如果设计矩阵X不可逆(为奇异矩阵),正规方程会无法使用。

设计矩阵为奇异矩阵的常见情况:

  1. x-I 不满足线性关系
  2. 正在运行的学习算法中,特征点的数量大于样本点的数量(使得 m ≤ n m≤n mn

当设计矩阵X不可逆时,应当尝试删除一些特征点,或者考虑正规化(Regularation)。
但是总体而言,矩阵X不可逆的情况是极少数的。

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

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

相关文章

OSEK OS任务调度的底层逻辑

先参考 FreeRTOS的任务触发底层逻辑 简述RTOS任务调度底层逻辑 AUTOSAR-OS的调度机制-调度表(没理解透,继续更新) OSEK与FreeRTOS在任务调度上最大的区别在于,FreeRTOS是基于全抢占任务调度和时间片轮转调度机制,具有…

Pyqt5实现多线程程序

主从架构 Pyqt常常使用**主从架构(Master-Workers 架构)**来避免界面卡死的情况。 Master-Workers 架构就像它的名字,一个master统领着几个workers一起干活。其中某个worker倒下了不会导致整体任务失败。matser不用干活,因此可以…

2021年9月15日 Go生态洞察:TLS加密套件的自动排序机制

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

4年功能测试裸辞找不到工作,一周我就后悔了····

我们可以从以下几个方面来具体分析下,想通了,理解透了,才能更好的利用资源提升自己。 一、我会什么? 先说第一个我会什么?第一反应:我只会功能测试,在之前的4年的中我只做了功能测试。内心存在…

autogen的理解和实践

什么是autogen? AutoGen 是一个框架,支持使用多个代理来开发 LLM 应用程序,这些代理可以相互对话来解决任务。AutoGen 代理是可定制的、可对话的,并且无缝地允许人类参与。他们可以采用法学硕士、人力投入和工具组合的各种模式运作。简单来说…

高级IO select 多路转接实现思路

文章目录 select 函数fd_set 类型timeval 结构体select 函数的基本使用流程文件描述符就绪条件以select函数为中心实现多路转接的思路select 缺陷 select 函数 int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); selec…

3款厉害的小工具,小黑子都在用!

大家好,我是 Javapub。 程序员与普通人最大的区别是什么,当然是会使用工具。基于一些同学经常问我的问题,接下来给大家分享几款我经常使用的工具,主打一个提升效率。 第一款 Everything 用 windwos 的同学都体会过,…

咨询+低代码,强强联合为制造业客户赋能

内容来自演讲:沈毅 | 遨睿智库 | 董事长 & 王劭禹 | 橙木智能 | 联合创始人 摘要 文章主要讲述了智库董事长沈毅创办广告公司的经历,以及他在管理公司过程中遇到的问题和挑战,最后通过与明道云以及橙木智能联合创始人王邵禹老师的合作&…

STM32/GD32_分散加载

Q:如何将一个变量、某个源文件的函数在编译阶段就存储在用户指定的区域? KEIL环境:.map后缀文件、.sct后缀文件 IAR环境:.map后缀文件、.icf后缀文件 【map文件】 对固件里面的变量、函数、常量等元素的存储空间进行分配的说明…

【计算机毕业设计】springboot+java高校实验室器材耗材料借用管理系统94l73

实验室耗材管理系统在Eclipse/idea环境中,使用Java语言进行编码,使用Mysql创建数据表保存本系统产生的数据。系统可以提供信息显示和相应服务,本系统教师和学生申请使用实验材料,管理员管理实验材料,审核实验材料的申请…

项目设计---MQ

文章目录 一. 项目描述二. 核心技术三. 需求分析概要设计四. 详细设计4.1 服务器模块4.1.1 内存管理4.1.2 硬盘管理4.1.2.1 数据库管理4.1.2.2 文件管理 4.1.3 消息转发 4.2 客户端模块4.2.1 连接管理4.2.2 信道管理 4.3 公共模块4.3.1 通信协议4.3.2 序列化/反序列化 一. 项目…

Linux 如何在文件中查找指定内容,grep的用法

Linux 如何在文件中查找指定内容 1、 如我们 查找 log_file_catalina.out 文件中,包含 ‘总数:900’ 的字符内容 2、 在日志中查看 83910_law_21CFBC7EB25B1FF60255FE7F4BE1BCCF1CE726F6_0.bdyhf 的相关内容 grep 83910_law_21CFBC7EB25B1FF60255FE7…

Redis String类型

String 类型是 Redis 最基本的数据类型,String 类型在 Redis 内部使用动态长度数组实现,Redis 在存储数据时会根据数据的大小动态地调整数组的长度。Redis 中字符串类型的值最大可以达到 512 MB。 关于字符串需要特别注意∶ 首先,Redis 中所…

[vue3] 使用 vite 创建vue3项目的详细流程

一、vite介绍 Vite(法语意为 “快速的”,发音 /vit/,发音同 “veet”) 是一种新型前端构建工具,能够显著提升前端开发体验(热更新、打包构建速度更快)。 二、使用vite构建项目 【学习指南】学习新技能最…

IDE1007:当前上下文中不存在名称“xxx“

这种在Halcon中直接导出的代码不能直接放程序中,应该在控件中比如一个按钮中,就不会出错了。

MacOS + Android Studio 通过 USB 数据线真机调试

环境:Apple M1 MacOS Sonoma 14.1.1 软件:Android Studio Giraffe | 2022.3.1 Patch 3 设备:小米10 Android 13 一、创建测试项目 安卓 HelloWorld 项目: 安卓 HelloWorld 项目 二、数据线连接手机 1. 手机开启开发者模式 参考&#xff1…

ruoyi+Hadoop+hbase实现大数据存储查询

前言 有个现实的需求,数据量可能在100亿条左右。现有的数据库是SQL Server,随着采集的数据不断的填充,查询的效率越来越慢(现有的SQL Server查询已经需要数十秒钟的时间),看看有没有优化的方案。 考虑过S…

解决webpack打包生成gz格式css/js文件没法在nginx使用的问题--全网唯一正确

本文绝对是全网解决这个问题唯一正确的文章,没有之一! 很多人都说开启nginx gzip压缩,这些人完全是胡说八道!你们到底懂不懂叫gzip压缩啊?! 不信你就试试,如果css/js只有gz文件,ng…

国外客户跟我要佣金,该给不该给?

“Jack,这次你要是不帮我,我就死定了!” 收到美国公司采购Antony的信息时,我有些哭笑不得,因为在我电脑屏幕上除了他的信息外,还有来自他公司监察部门的邮件: “jack先生,我们调查…

Java+SSM springboot+MySQL家政服务预约网站设计en24b

随着社区居民对生活品质的追求以及社会老龄化的加剧,社区居民对家政服务的需求越来越多,家政服务业逐渐成为政府推动、扶持和建设的重点行业。家政服务信息化有助于提高社区家政服务的工作效率和质量。 本次开发的家政服务网站是一个面向社区的家政服务网…