《误差与数据处理》PPT课件.ppt
《《误差与数据处理》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《误差与数据处理》PPT课件.ppt(91页珍藏版)》请在三一办公上搜索。
1、第1部分:数据、误差与统计计算,Outline,数据信息数据挖掘物理量的正确值是不可能得到的;误差:实验误差随机误差(偶然误差)、系统误差、过失误差计算误差截断误差、舍入误差先讲计算误差(计算机数值计算的基本问题)再讲实验误差样本与总体测量值、误差的统计规律性实验误差的矫正(离群点数据的剔除)参数估计、统计检验(总体的不同分布)引出下一章:常用分布函数,数据(Data),数据(Data):数值数据、非数值数据信息(Information)数据挖掘(Data Mining)模式识别人工智能数理统计(理论)统计计算(应用),数据与误差,实验误差数据来源:测量(实验)Kolthoff断言:物理量的正
2、确值是不可能得到的。加工误差(计算误差)计算过程带来误差,误差分类,实验误差随机误差(偶然误差)随机因素引起的不易控制的误差;统计研究的重点(正态分布)系统误差由于某种人为因素引起实验结果有明显的固定偏差只能进行统计检验,一般不能通过增加实验次数消除过失误差明显歪曲实验结果的误差离群值、异常值、Outlier,统计研究的重点!,误差分类(Cont.),计算误差(加工误差)截断误差近似算法(无穷级数逼近)计算机字长限制舍入误差截断舍入(四舍五入)乘、除运算误差,数值计算研究的重点!,举例:计算地球的表面积,数学模型:误差:地球被看成是一个球,简单理想模型 系统误差、人为误差测量仪器误差如何测得地
3、球的半径长度R计算误差 截断误差:公式中的 是无理数舍入误差:浮点数的计算,误差与“统计计算”,“统计计算”要研究两类误差!,计算误差,利用计算机进行计算带来的误差数在计算机中的表示舍入误差截断误差计算机算法的基本问题计算复杂性稳定性问题的病态性,数值计算的最基本概念!,数在计算机中的表示-浮点数,计算机中数的表示方式,说明:计算机中的数只有有限多个,同时只能是有限精度,且为实数集的一个子集。称之为浮点数,记为F.,数在计算机中的表示-浮点数,浮点数集合F由(t,L,U)唯一确定,数值实验-floatgui.m(t=3,L=-4,U=3)f=(0:2t-1)/2t;F=;for e=emin:
4、emax F=F(1+f)*2e;end,t=3,L=-4,U=3 eps=1/8=0.125,则12之间的数的表示:1 1.125 1.250 1.375 1.500 1.625 1.750 1.825 2现在给定实数1.0625,1.1249999.如何表达?误差多少?,数在计算机中的表示-浮点数,结论:浮点数集合F中的元素分布是不均匀的由于计算机字长有限,浮点数只能是有限的集合:字长增加,浮点数集合变大。不能直接表达的实数只能“舍”或“入”为与之接近的浮点数,课后练习:运行floatgui.m程序,调整(t,U,L)取值,观察可以表示的浮点数集合的变化。求给定(t,U,L)后可表达的浮点
5、数个数(修改floatgui.m程序),数在计算机中的表示-浮点数,结论:尾数多少决定了eps的大小,决定了计算机的精度L,U决定了可以表示的浮点数的大小范围,数在计算机中的表示-浮点数,IEEE双精度二进制数使用64位存储一个数,每位取值0或1位的分配为:尾数符号 1尾数52阶码11t=52,-1023=s=1023但-1023保留做它用,数在计算机中的表示-浮点数,IEEE双精度数系的标志Binary Decimaleps2(-52)2.2204e-16realmin2(-1022)2.2251e-308realmax(2-eps)*210231.7977e+308,数值实验:a=4/3;
6、b=a 1;c=3*b;d=1-c,得到的d即为机器精度,21024;(1+1-eps)*21023得到的是最大数,数在计算机中的表示-浮点数,原因:舍入误差在起作用,数值实验x=0.988:.0001:1.012;y=x.7-7*x.6+21*x.5-35*x.4+35*x.3-21*x.2+7*x-1;plot(x,y)或plot(x,(x-1).7),数在计算机中的表示-浮点数,避免舍入误差的过度影响(算法设计)注意计算次序避免相近的大数值相减或相差很大的两数值做加减运算;简化计算公式,减少计算次数;,计算机算法的基本问题,构造算法的基本手段:近似研究算法的核心问题:近似对计算结果的影响
7、算法的稳定性不能扩散舍入误差算法的复杂度算法的收敛性问题的病态性,算法的稳定性,Algorithm 1,Algorithm 2,问题:En=1-nEn-1,E1=1/e 递推算法,且E=0,Program of algorithm 1,clearep(1)=1/exp(1)N=15;for n=2:N ep(n)=1.0-n*ep(n-1);endplot(ep,b*);,Algorithm 1 with N=15,Algorithm 1 with N=100,Program of algorithm 2,clearep(100)=0N=100;for n=N:-1:2 ep(n-1)=(1.
8、0-ep(n)/n;endplot(ep,b*);,Algorithm 2 with N=100,Algorithm 2 with N=500,算法的稳定性,结论:可以使用的算法是 Algorithm 2!原因:设两个算法初值的舍入误差一样,均为e1,则算法1计算到第n步时,误差累计为n!e1,而算法2,误差衰减为e1/(n!/m!),m=n-1,n-2,1稳定的算法-算法中产生的任何误差,对后续计算的影响是衰减或可以控制的。,不稳定的算法=不能用的垃圾!,算法的复杂度,指数型算法算法计算量是问题规模的指数函数只能够处理规模很小的问题多项式型算法算法计算量是问题规模的多项式函数可以处理规模较大
9、的问题,Complexity,Descriptor Size in Bytes Storage Mode Tiny 102 Piece of Paper Small104 A Few Pieces of Paper Medium 106 A Floppy Disk Large 108 Hard Disk Huge 1010 Multiple Hard Disks Massive 1012 Robotic Magnetic Tape Storage Silos Super-massive1015 Distributed Data ArchivesThe Huber-Wegman Taxonomy
10、 of Data Set Sizes,O(n1/2)Plot a Scatter-plotO(n)Calculate Means,Variances,Kernel Density EstimatesO(n log(n)Calculate Fast Fourier TransformsO(n c)Calculate Singular Value Decomposition of an r x c Matrix;Solve a Multiple Linear RegressionO(n 2)Solve most Clustering AlgorithmsO(a n)Detect Multivari
11、ate Outliers,Algorithmic Complexity,Complexity,Complexity,Complexity,算法的收敛性,误差收敛性,问题的病态性,考虑如下的问题 f(x)=(x-1)(x-2).(x-20)显然方程 f(x)=0 的解是 1 2 3 4 19 20请问:如下方程的解是什么?,Matlab program,p=poly(1:20);%help polyep=zeros(1,21);ep(3)=1.0e-5;re=roots(p+ep)plot(re,b+);hold onplot(1:20,0,r*);hold off,=10e-5,=10e-6,
12、=10e-8,计算误差分析作业,1.Explain the output produced byt=0.1n=1:10e=n/10-n*t2.What does each of these programs do?How many lines of output does each program produce?What are the last two values of x printed?x=1;while 1+x 1,x=x/2,pause(.02),endx=1;while x+x x,x=2*x,pause(.02),endx=1;while x+x x,x=x/2,pause(
13、.02),end,计算误差分析作业,3.The classic quadratic formula says that the two roots of the quadratic equationUse this formula in Matlab to compute both roots for a=1;b=-100000000;c=1Compare your computed results with roots(a b c)What happens if you try to compute the roots by hand or with a hand calculator?Yo
14、u should find that the classic formula is good for computing one root,but not the other.So use it to compute one root accurately and then use the fact that x1x2=c/a to compute the other.,计算误差分析作业,4.The power series for sin x isThis Matlab function uses the series to compute sin x.function s=powersin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 误差与数据处理 误差 数据处理 PPT 课件
链接地址:https://www.31ppt.com/p-5606827.html