이페이지의최신내용은아직번역되지않았습니다。최신내용은영문으로볼수있습니다。

평활화스플라인

평활화스플라인소개

데이터에잡음이있으면평활화스플라인을사용하여피팅하는것이유용할수있습니다。또는데이터필터링및평활화하기에서설명하는평활화방법중하나를사용할수있습니다。

평활화스플라인小号는지정된평활화파라미터p와지정된가중치w ^一世에대해생성됩니다。평활화스플라인은다음을최소화합니다。

p Σ 一世 w ^ 一世 ÿ 一世 - 小号 X 一世 2 + 1 - p d 2 小号 d X 2 2 d X

가중치는지정되지않은경우모든데이터점에대해1인것으로간주됩니다。

p는0과1사이의값으로정의됩니다。p = 0时은데이터에대한최소제곱직선피팅을생성하고,p = 1时은3차스플라인보간을생성합니다。평활화파라미터를지정하지않을경우“관심범위”에서평활화파라미터가자동으로선택됩니다。p의관심범위는1 /(1 + H3/ 6)인경우가많습니다。여기서ħ는데이터점들의평균간격이며,일반적으로파라미터의허용되는범위보다훨씬작습니다。평활화스플라인에는그와연관된평활화파라미터가있기때문에이러한맥락에서이피팅을모수적이라고생각할수도있습니다。그러나평활화스플라인은3차스플라인또는형태보존보간과같은조각별다항식이기도하므로본안내서에서는비모수적피팅유형으로간주합니다。

참고

평활화스플라인알고리즘은csaps함수를기반으로합니다。

아래에는carbon12alpha.mat파일의핵반응데이터에세가지평활화스플라인피팅이적용된결과가표시되어있습니다。디폴트평활화파라미터(p值= 0.99)가가장매끄러운곡선을생성합니다。3차스플라인곡선(P = 1)은모든데이터점을통과하지만매끄러움은부족합니다。세번째곡선(p值= 0.95)은데이터를큰폭으로놓치고있으며p의“관심범위”가얼마나작을수있는지를보여줍니다。

대화형방식으로평활화스플라인피팅선택하기

곡선피팅앱의모델유형목록에서평활화스플라인(样条函数)을선택합니다。

다음옵션을지정할수있습니다。

  • 데이터에서더멀리떨어진보다매끄러운피팅을만들려면플롯이원하는만큼매끄러워질때까지<매끄럽게버튼을반복적으로클릭하십시오。

  • 데이터에더가까이있는보다거친피팅을만들려면만족스러운플롯이될때까지거칠게>버튼을클릭하십시오。

  • 또는평활화파라미터에0과1사이의값을지정할수있습니다。0은1차다항식피팅(데이터에대한최소제곱직선피팅)을생성하고,1은모든데이터점을통과하는조각별3차다항식피팅(3차스플라인보간)을생성합니다。

  • 초기값으로되돌리려면디폴트값(默认)을클릭하십시오。툴박스가데이터에적합한디폴트값을선택하려고시도합니다。평활화스플라인소개항목을참조하십시오。

예를들어,다음과같이입력합니다。

  1. 다음을입력하여평활화스플라인소개의데이터를불러옵니다。

    负载carbon12alpha

  2. 곡선피팅앱에서X데이터(X数据)에대해角度을선택하고Ý데이터(Y数据)에대해计数를선택합니다。

  3. 평활화스플라인(样条函数)피팅유형을선택합니다。

  4. 평활화파라미터값10.95및디폴트값(0.99)을시도해봅니다。

适合함수를사용하여평활화스플라인모델피팅하기

이예제에서는适合함수를사용하여평활화스플라인모델을데이터에피팅하는방법을보여줍니다。

평활화스플라인모델피팅하기

데이터를불러온후适合함수를호출할때'smoothingspline'을지정하여평활화스플라인모델을피팅합니다。

加载恩索F =拟合(月,压力,'smoothingspline');地块(F,一个月,压力)

계산된평활화파라미터보기

모델을다시만들고,계산된평활화파라미터를세번째출력인수를사용하여확인합니다。평활화파라미터는구조체의p값입니다。디폴트값은데이터세트에따라달라집니다。

并[f,GOF,出] =拟合(月,压力,'smoothingspline');out.p
ANS = 0.9000

'SmoothingParam'을사용하여평활화파라미터지정하기

'SmoothingParam'옵션을사용하여새피팅에대한평활화파라미터를지정합니다。값은0과1사이여야합니다。

F =拟合(月,压力,'smoothingspline''SmoothingParam',0.07);地块(F,一个月,压力)

fitoptions를사용하여평활화파라미터지정하기

또다른방법으로서,fitoptions를사용하여피팅전에평활화파라미터를지정합니다。

选项= fitoptions('方法''光滑''SmoothingParam',0.07);并[f,GOF,出] =拟合(月,压力,'光滑',选项);out.p
ANS = 0.0700

'smoothingspline'에대한대안으로,csaps3차평활화스플라인함수를사용하거나더나은제어가가능한다른스플라인함수를직접만들어사용할수있습니다。关于在曲线拟合工具箱样条항목을참조하십시오。

예:3차스플라인과평활화스플라인을사용한비모수적피팅

이예제에서는3차스플라인보간과여러평활화스플라인을사용하여데이터를피팅합니다。

  1. 작업공간에서변수를만듭니다。

    X =(4 * PI)* [0 1兰特(1,25)];Y =的sin(x)+ 0.2 *(兰特(大小(X)) -  5);

  2. 다음을입력하여곡선피팅앱을엽니다。

    cftool

  3. X데이터(X数据)Ý데이터(Y数据)목록에서Xÿ를선택합니다。

    곡선피팅앱이데이터를피팅하고플로팅합니다。

  4. 보간(插值)피팅유형과방법(方法)3차(立方)를선택하여3차스플라인보간으로데이터를피팅합니다。

    곡선피팅앱이3차스플라인보간을피팅하고플로팅합니다。

  5. 피팅이름(FIT名称)cubicsp를입력합니다。

  6. 결과(结果)창을봅니다。RMSE와같은적합도통계량은보간에대해정의되지않습니다(为NaN으로표시됨)。

    3차스플라인보간은계수로구성된구조체(p)를생성하는조각별다항식으로정의됩니다。구조체에있는“조각”의개수는피팅된데이터점보다하나적으며,다항식차수가3이므로각조각에대한계수의개수는4입니다。피팅을작업공간으로내보내면계수구조체p를검토할수있습니다(예:fitname.P를입력합니다)。계수로구성된구조체에대한자세한내용은构建和工作与ppform样条항목을참조하십시오。

  7. 비교를위해또하나의피팅을만듭니다。피팅테이블(FIT的表)에서피팅을마우스오른쪽버튼으로클릭하고“cubicsp”복제(“cubicsp”复制)를선택합니다。

  8. 평활화스플라인(样条函数)을선택하여평활화스플라인으로데이터를피팅합니다。

    매끄러움의정도는평활화파라미터로지정됩니다。디폴트평활화파라미터값은데이터세트에따라달라지며,툴박스가자동으로계산합니다。

    이데이터세트의경우,디폴트평활화파라미터는1에가까운데이는평활화스플라인이거의3차이며거의모든데이터점을통과함을나타냅니다。

  9. 디폴트평활화파라미터피팅의이름을Smooth1로지정합니다。디폴트평활화파라미터로생성된매끄러움의정도가마음에들지않는다면0부터1사이의값을지정할수있습니다。0은1차다항식피팅을생성하고,1은모든데이터점을통과하는조각별3차다항식피팅을생성합니다。

    평활화스플라인피팅의수치결과는다음과같습니다。

  10. 비교를위해평활화스플라인피팅을또하나만듭니다。피팅테이블(FIT的表)에서피팅을마우스오른쪽버튼으로클릭하고“smooth1”복제(“smooth1”复制)를선택합니다。평활화파라미터를0.5로변경하고피팅의이름을Smooth2로지정합니다。

  11. 세가지피팅에대한플롯을비교합니다。디폴트가로좌표값척도를늘려서데이터제한밖의피팅동작을검토합니다。좌표축제한은툴(工具)>좌표축제한제어(轴限制控制)메뉴항목을사용하여변경할수있습니다。

참고

결과는임의시작점에따라달라지며설명된결과와다를수있습니다。

디폴트평활화파라미터는보간보다매끄러운곡선을생성하지만,데이터에대한좋은피팅입니다。여기서는평활화파라미터를디폴트값보다낮추면한층더매끄러운곡선이생성되지만이는데이터에대한좋은피팅이아닙니다。평활화파라미터가디폴트값보다높아지면해당곡선이3차스플라인보간에접근합니다。3차스플라인과디폴트평활화스플라인은내점에대해서는비슷하지만끝점에서는발산합니다。

참고항목

관련항목