插值、拟合和回归分析的相关知识
目录
0 序言
1 分段线性插值
2 多项式插值
3 样条插值
4 最小二乘拟合
5 多元线性回归
0 序言
在生产实践和科学研究中,常常有这些问题:
- 插值问题:由实验或测量得到变量间的一批离散样点,要求得到变量之间的函数关系或得到样点之外的数据值。即给定一组离散的数据点
,其中
,目标是找到一个函数
,使得该函数在给定的数据点处的函数值,并且可以用这个函数来估计在数据点之间的x值对应的y值。
- 拟合问题:指找到一条曲线(通常是某种函数形式)
来近似地表示一组数据点的分布规律。与插值不同的是,拟合并不要求曲线一定通过所有的数据点,而是要在整体上能够最好地描述数据的趋势。且
最小。
- 回归分析:要关注一个因变量(通常用
表示)和一个或多个自变量(通常用
表示)之间的关系,并且建立一个数学模型来描述这种关系,同时还可以对模型的参数进行估计和检验。
拟合和回归分析都关注数据的整体趋势和模型构建,拟合更侧重于曲线的近似,回归分析更强调变量之间关系的统计推断。插值主要关注数据点之间的函数值估计,在一定程度上也可以看作是一种特殊的数据拟合方式(要求通过所有已知数据点)。
1 分段线性插值
这是最通俗的一种插值方法,直观上就是将各数据点用折线连接起来。如果
那么,分段线性插值公式为
(由整理而来,其中
为斜率)
可以证明,当分点足够多,分段线性插值是收敛的。其缺点是不能形成一条光滑曲线。
例1:求解标准正态分布
解:由标准正态分布函数值表可以得到采用分段线性插值计算
,取区间
,插值函数
,则
利用分段线性插值式可得
2 多项式插值
多项式插值是指用一个多项式函数来通过给定的一组数据点。给定个不同的数据点
要找一个次数不超过n的多项式
使得
。
若要求得函数表达式,可直接解方程组。若只要求得函数在插值点处数值,可利用Lagrange插值公式
多项式插值光滑但不具有收敛性,一般不宜采用高次多项式插值。
3 样条插值
样条本来是绘图员用于数据放样的工具。在画曲线时要求经过一些设定值且使整曲线都很光滑。以后逐渐发展成为一个应用极为广泛的数学分支。现在数学上所说的样条,实质上指分段多项式的光滑连接。
设有区间[a,b]的一个划分,称分段函数S(x)为k次样条函数,若它满足:
- S(x)在每个小区间上是次数不超过k次的多项式;
- S(x)在[a,b]上具有k-1阶连续导数。
用样条函数作出的插值称为样条插值。工程上广泛采用三次样条插值。
n段三次多项式共有4n个参数,光滑性条件含3(n-1)个约束,插值条件含(n+1)个约束,从而三次样条插值结果不唯一。另外需要2个定解条件。通常有下列4类条件。
非扭结:第一、二端多项式三次项系数相同,最后一段和倒数第二段三次项系数相同。
一阶导数:。
二阶导数:,特别地,当
时,称为自然样条。
周期样条:(前提条件
)当被插值函数为周期函数或封闭曲线,宜适用周期样条。
4 最小二乘拟合
假设已知经验公式y=f(c,x)(这里c和x均可为向量),要求根据一批有误差的数据,确定参数c。这样的问题称为曲线拟合,其基本原理是最小二乘法,即求c使得均方误差
达到最小。当f关于c是线性函数(例如,f(c,x)是x的多项式函数,c为系数),问题转化为一个线性方程组求解,且其解存在唯一。如果f关于c是非线性函数,问题等价于个非线性函数极值问题。
5 多元线性回归
设有多元线性回归模型
其中。令
,表示为
现获得y和的n组观测值(当回归模型中考虑常数项,等价于
取常数1),要求
的估计值。设Y和X分别为相应n组观测值的
和
矩阵,即
则的估计值为
对于任意的y 和的n组观测值,由
均可得到回归系数β的估计值,要判断这一模型的有效性,还要通过对于残差
的分析以检验
例2:测得平板表面3*5网格点处的温度如表1所列,试作出平板表面的温度分布曲面的图形。
82 | 81 | 80 | 82 | 84 |
79 | 63 | 61 | 65 | 81 |
84 | 84 | 82 | 85 | 86 |
解:(1)先在三维坐标系画出原始数据
%先在三维坐标系画出原始数据
x=1:5;
y=1:3;
temps=[82 81 80 82 84;79 63 61 65 81;84 84 82 85 86];
mesh(x,y,temps)
画出粗糙的平板温度分布曲面图
(2)在x、y方向上每隔0.2个单位的地方进行插值以平滑数据
%先在三维坐标系画出原始数据
x=1:5;
y=1:3;
temps=[82 81 80 82 84;79 63 61 65 81;84 84 82 85 86];
cx=1:0.2:5;
cy=1:0.2:3;
cz=interp2(x,y,temps,cx',cy,'cubic');
mesh(cx,cy,cz)
画出插值后的平板温度分布曲面
注:本篇内容均为对《MATLAB建模与仿真》(周品 赵新芬 编著,国防工业出版社)摘录与个人归纳总结,如需要更加详细了解,可阅读原书“第9章 数据建模”部分。
相关文章:

插值、拟合和回归分析的相关知识
目录 0 序言 1 分段线性插值 2 多项式插值 3 样条插值 4 最小二乘拟合 5 多元线性回归 0 序言 在生产实践和科学研究中,常常有这些问题: 插值问题:由实验或测量得到变量间的一批离散样点,要求得到变量之间的函数关系或得到样点之外的…...

【小白学机器学习42】进行多次抽样,样本的分布参数和总体的分布参数的关系
目录 1 进行多次抽样,样本的分布参数和总体的分布参数的关系 2 样本容量越大,多次抽样的样本的分布参数和总体的分布参数的关系 3 随着样本容量增大,多次抽样均值的 平均值,方差的变化 4 随着样本容量增大,多次抽…...
链动星海 质引未来|中信银行加码科技金融 “接力式”服务助力“新质生产力”释放
11月26日,第二届中国国际供应链促进博览会(以下简称链博会)在北京中国国际展览中心开幕。中信集团以“链动星海 质引未来”为主题,亮相先进制造链展区。此次布展由中信金控主办、中信银行承办,携手中信证券、中信建投证…...
黑马2024AI+JavaWeb开发入门Day02-JS-VUE飞书作业
视频地址:哔哩哔哩 讲义作业飞书地址:飞书 一、作业1 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge">&l…...

云计算基础-期末复习
第一章:云计算概论 一、云计算的定义与特征 1. 定义: 云计算是一种通过网络以按需、可扩展的方式获取计算资源和服务的模式。它将计算资源视为一种公用事业,用户可以根据需求动态获取和释放资源,而无需了解底层基础设施的细节。…...

Java GET请求 请求参数在Body中使用Json格式传参
业务需要调个三方接口 使用GET请求方式 但是!请求参数不在Query中,竟然在Body中,使用Json格式传参 在API调试工具里面可以调通 在java代码里,死活调不通 网上搜了搜,找到一个靠谱的,记录一下 import o…...

AI数据分析工具(一)
Looker Studio(谷歌)-免费 优点 免费使用:对于中小型企业和个人用户来说,没有任何费用压力,可以免费享受到数据可视化和报表创建的功能。与Google服务集成:特别适合使用Google产品生态的企业,…...

go结构体匿名“继承“方法冲突时继承优先顺序
在 Go 语言中,匿名字段(也称为嵌入字段)可以用来实现继承的效果。当你在一个结构体中匿名嵌入另一个结构体时,嵌入结构体的方法会被提升到外部结构体中。这意味着你可以直接通过外部结构体调用嵌入结构体的方法。 如果多个嵌入结…...
【049】基于51单片机语音录放【Proteus仿真+Keil程序+报告+原理图】
☆、设计硬件组成:51单片机最小系统ISD4004语音芯片LM386音频放大器喇叭LCD1602液晶显示按键控制LED灯。 1、本设计采用STC89C51/52、AT89C51/52、AT89S51/52作为主控芯片,LCD1602液晶显示屏实时显示; 2、系统具有两种模式:录音…...

《软件项目管理》期末-复习题及参考答案
(1)赶工一个任务时,你应该关注( C ) A. 尽可能多的任务 B. 非关键任务 C. 加速执行关键路径上的任务 D. 通过成本最低化加速执行任务 (2)下列哪个不是项目管理计划的一部分?&#x…...
milvus 通俗易懂原理
向量值如何生成的 Milvus 是一个开源的向量数据库,专门用于处理高维向量的存储、搜索和分析。向量值本身通常来自于某些机器学习或深度学习模型的输出,尤其是在自然语言处理(NLP)、计算机视觉(CV)、推荐系…...
什么是撞库、拖库和洗库?
“撞库”是黑客通过收集互联网已泄露的用户和密码信息,生成对应的字典表,尝试批量登陆其他网站后,得到一系列可以登录的用户。 很多用户在不同网站使用的是相同的帐号密码,因此黑客可以通过获取用户在A网站的账户从而尝试登录B网…...

安卓-碎片的使用入门
1.碎片(Fragment)是什么 Fragment是依赖于Activity的,不能独立存在的,是Activity界面中的一部分,可理解为模块化的Activity,它能让程序更加合理和充分地利用大屏幕的空间,因而在平板上应用得非常广泛. Fragment不能独立存在,必须…...

华为IPD流程学习之——深入解读123页华为IPD流程体系设计方法论PPT
该方案全面介绍了华为IPD流程体系设计方法论,包括流程体系建设的背景、理念、架构、核心特征、构建模型、与组织和战略的关系、运营机制、数字化转型以及流程管理组织等内容,旨在为企业提供一套系统的流程体系建设指导,以提升运营效率、质量和…...

DriveMLLM:一个专为自动驾驶空间理解任务设计的大规模基准数据集
2024-11-20, 由武汉大学、中国科学院自动化研究所、悉尼科技大学、牛津大学等合创建了DriveMLLM数据集,该数据集是自动驾驶领域首个专为评估多模态大型语言模型(MLLMs)空间理解能力而设计的基准,对于推动自动驾驶技术的…...

高效处理 iOS 应用中的大规模礼物数据:以直播项目为例(1-礼物池)
引言 在现代iOS应用开发中,处理大规模数据是一个常见的挑战。尤其实在直播项目中,礼物面板作为展示用户互动的重要部分,通常需要实时显示海量的礼物数据。这些数据不仅涉及到不同的区域、主播的动态差异,还需要保证高效的加载与渲…...
python的函数与递归
需求: 编写一个函数,计算斐波那契数列的第 N 项,并使用递归实现。 为了计算斐波那契数列的第 N 项,可以使用递归方法。斐波那契数列的定义是: F(0) 0 F(1) 1 对于 n > 2,F(n) F(n-1) F(n-2)…...

RabbitMQ学习-Seven
再SpringBoot中使用MQ 1.创建SpringBoot项目 除了我们平常使用的一些工具依赖,还需要选择这个Spring for RabbitMQ依赖 2.需要在application.yml文件中进行配置 server:port :9090 spring:application:name:producerrabbitmq:host: 你的主机名port: 5672virtual-…...

中科亿海微SoM模组——波控处理软硬一体解决方案
本文介绍的波控处理软硬一体解决方案主要是面向相控阵天线控制领域,波控处理通过控制不同天线组件的幅相来调整天线波束的方向和增益,实现高精度角度控制和高增益。本方案由波控处理板、波控处理控制软件算法和上位机软件共同构成。波控处理SoM模组原型样…...
开源法律、政策和实践
#一切皆可开源# 木兰社区对《Open Source Law,Policy and Practice 》这本书的第二版进行了翻译,并发布在了gitee上。这本书是对开源文化、开源政策、法律的全面介绍。目录如下: 1 Open Source as Philosophy,Methodology,and CommerceUsing Law with …...

手游刚开服就被攻击怎么办?如何防御DDoS?
开服初期是手游最脆弱的阶段,极易成为DDoS攻击的目标。一旦遭遇攻击,可能导致服务器瘫痪、玩家流失,甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案,帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...

dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存
文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...