Numerical Methods Using MATLAB(4版)-05-Spline

前言

这一章主要讲曲线拟合的一些数值计算方法。在第四章中我们讨论到了多项式的构造,在对于我们有高精确度的点集合中我们可以构造理想的多项式。但是,在大部分实验中,我们没有那么精确的数据,也会在数据中存在误差。因此在本章我们主要讨论理想曲线与实际数据之间的误差,通过减小该误差来实现曲线拟合。

学习过程

<1>误差定义

最大误差Maximum error:E_{\infty}(f)=\max_{1 \leq k \leq N}\{|f(x_k)-y_k|\},
平均误差Average error:E_1(f)=\frac{1}{N}\sum_{k=1}^N|f(x_k)-y_k|,
均方根误差Root-mean-square:E_2(f)=(\frac{1}{N}\sum_{k=1}^N|f(x_k)-y_k|^2)^{1/2}.
考虑误差的统计性质时,会通常用到均方根误差。

<2>最小二乘直线 Least-Squares Line

假设这里有N个点的集合\{(x_k,y_k)\}_{k=1}^N,其中横坐标\{x_k\}是不同的。
我们通过E_2来得到拟合直线y=Ax+B
我们通过以下等式来计算系数的值:
(\sum_{k=1}^Nx_k^2)A+(\sum_{k=1}^Nx_k)B=\sum_{k=1}^Nx_ky_k,

(\sum_{k=1}^Nx_k)A+NB=\sum_{k=1}^Ny_k.

Proof.
E(A,B)=\sum_{k=1}^N(Ax_k+B-y_k)^2,

\frac{\partial E(A,B)}{\partial A}=\sum_{k=1}^N2(Ax_k+B-y_k)(x_k)=0,

\frac{\partial E(A,B)}{\partial B}=\sum_{k=1}^N2(Ax_k+B-y_k)=0.

P259的程序计算A的原理是怎么来的?A=(y-ymean)(x-xmean)/(x-xmean)(x-xmean)?

证明

<3>幂函数拟合 Power Fit

假设这里有N个点的集合\{(x_k,y_k)\}_{k=1}^N,其中横坐标\{x_k\}是不同的。
我们通过E_2来得到拟合幂函数y=Ax^M
我们通过以下等式来计算系数的值:
A=(\sum_{k=1}^Nx_k^My_k)/(\sum_{k=1}^Nx_k^{2M}).

<4>最小二乘抛物线 Least-Squares Parabola

假设这里有N个点的集合\{(x_k,y_k)\}_{k=1}^N,其中横坐标\{x_k\}是不同的。
我们通过E_2来得到拟合抛物线y=Ax^2+Bx+C
(\sum_{k=1}^Nx_k^4)A+(\sum_{k=1}^Nx_k^3)B+(\sum_{k=1}^Nx_k^2)C=\sum_{k=1}^Ny_kx_k^2,

(\sum_{k=1}^Nx_k^3)A+(\sum_{k=1}^Nx_k^2)B+(\sum_{k=1}^Nx_k)C=\sum_{k=1}^Ny_kx_k,

(\sum_{k=1}^Nx_k^2)A+(\sum_{k=1}^Nx_k)B+NC=\sum_{k=1}^Ny_k.
多项式拟合也是同理的。

<5>数据线性化

有时候遇到一些函数我们不好直接求出它的系数,比如y=Ce^{Ax},这时候我们可以把它转为线性函数来计算。但也可以用Matlab直接计算。

一些线性化的例子

<6>多项式震荡 Polynomial Wiggle

在对曲线做多项式的线性拟合时,如果多项式比较高阶,可能会发生多项式震荡。就是在一些已知点之间的未知区间内曲线会大幅上升下降或大幅下降上升,这个就叫做震荡。相当于机器学习中的过拟合。

<6>样条:分段多项式插值

1、线性样条
线性样条就是分段区间内是直线拟合。matlab是用线性样条显示的。但线性样条在大部分,比如点不够多的情况是不太适用的。
2、三次样条
为了让区间线段更光滑,我们采用了三次样条。这样的话这个函数S(x)的一阶导和二阶导在其区间都是连续的。这分别说明了S(x)不会有锋锐的边缘,并且能够定义曲率的半径。
定义
假设N+1个点\{(x_k,y_k)\}_{k=0}^N,a=x_0<x_1<...<x_N=b。存在S_k(x)多项式(即三次样条),分别有系数S_{k,0},S_{k,1},S_{k,2},S_{k,3}。并且会满足以下属性:
S_k(x)=S_{k,0}+S_{k,1}(x-x_k)+S_{k,2}(x-x_k)^2,S_{k,3}(x-x_k)^3,x∈[x_k,x_{k+1}],k=0,1,...,N-1.
S(x_k)=y_k,k=0,1,...,N.
S_k(x_{k+1})=S_{k+1}(x_{k+1}),k=0,1,...,N-2.
S'_k(x_{k+1})=S'_{k+1}(x_{k+1}),k=0,1,...,N-2.
S''_k(x_{k+1})=S''_{k+1}(x_{k+1}),k=0,1,...,N-2.
对于N+1个点,那么我们就需要4N个系数变量计算。通过上面属性的条件,那么我们可以得到N+1+3*(N-1)=4N-2个条件,还缺两个,我们称作端点约束,这两个条件我们在后续会介绍该怎么处理。
3、端点约束
1)夹紧样条:S'(a)=d_0,S'(b)=d_N 。这种样条指端点处和柔软弹性杆被迫经过该点的样子。
2)自然样条:S''(a)=0,S''(b)=0。这种样条指端点处平稳的延伸出去。
3)三次逃逸:S''(a)=2S''(2)-S''(3),S''(b)=2S''(N-1)-S''(N-2),这里点之间距离假设为等距。
4)抛物逃逸:S''(a)=S''(2),S''(b)=S''(N-1)
随机数不一定是真正的随机数,比如matlab的随机数就是伪随机数,是有模型的。样条内插值效果好,外推不行。
P297-319没看,后续有空来看。具体的样条计算也没实践过,套公式。

词汇学习

orbital 轨道的
residuals 残差
planetary 行星的
formulation 公式
curvature 曲率
clamped 夹紧的
extrapolated 外推的

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,902评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,037评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,978评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,867评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,763评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,104评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,565评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,236评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,379评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,313评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,363评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,034评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,637评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,719评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,952评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,371评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,948评论 2 341