파트4 곡선접합 - pusan national...
Post on 11-Jul-2020
4 Views
Preview:
TRANSCRIPT
파트 4 곡선 접합
4.1 소개
4.2 파트의 구성
Applied Numerical Methods 장 곡선접합 직선의 접합
4.1 소개 (1/4)
곡선접합이란?
데이터는 연속체를 따라 이산적인 값으로 주어지는 경우가 많다.
이산적인 값 사이에 있는 점에서의 값을 어떻게 추정할 수 있나?
복잡한 함수를 단순한 형태로 만들 수는 있는가?
곡선접합에는 일반적으로 두 가지 방법이 있으며, 이들은 데이터와
관련된 오차의 크기를 기준으로 구분된다
상당한 크기의 오차를 포함하거나 "산재한" 경우 (⇒ 최소제곱 회귀분석 )
- 데이터의 일반적인 경향을 나타내는 단일 곡선을 유도
- 유도된 곡선은 점들로 이루어진 집단의 경향을 따르도록 설계
데이터가 매우 정확하게 알려져 있는 경우 (⇒ 보간법)
- 각 점을 직접 통과하는 곡선이나 일련의 곡선을 구함
- 잘 알려져 있는 이산 점들의 사이의 값을 추정
14 :
Applied Numerical Methods 장 곡선접합 직선의 접합
4.1 소개 (2/4)
다섯 개의 데이터 점을 “최적”의 곡선으로 접합하는 세 가지 방법:(a) 최소제곱 회귀분석, (b) 선형보간법, (c) 곡선보간법
14 :
Applied Numerical Methods 장 곡선접합 직선의 접합
4.1 소개 (3/4)
곡선접합과 실제 공학과 과학 문제
실험 데이터를 접합시킬 때 두 가지 형태의 응용문제를 만남
경향분석 : 예측을 위하여 데이터의 경향을 이용하는 과정
- 높은 정확도를 가진 데이터 → 보간다항식 사용
- 정확성이 떨어지는 데이터 → 최소제곱 회귀분석 사용
- 종속변수의 값을 예측하기 위해 사용
관측된 데이터 범위를 벗어나는 경우에는 외삽법을 사용
관측된 데이터 범위 내에서는 보간법을 사용
14 :
Applied Numerical Methods 장 곡선접합 직선의 접합
4.1 소개 (4/4)
가상실험
- 관측된 데이터를 기존의 수학적 모델과 비교
모델 계수를 모르는 경우에 데이터를 가장 잘 접합할 수 있는
모델 계수를 결정
알려진 모델 계수의 타당성을 실험하기 위해 예측한 값과
관측된 값을 비교
곡선접합은 다른 수치해법에서도 중요
- 적분 값
- 미분방정식의 근사 해
곡선접합은 복잡한 함수를 간단한 함수로 근사할 때도 사용
14 :
Applied Numerical Methods 장 곡선접합 직선의 접합
4.2 구성
14장 : 최소제곱 회귀분석
15장 : 일반적인 선형최소제곱과 비선형회귀분석
17장 : 다항식 보간법
18장 : 스플라인과 소구간별 보간법
14 :
14장 최소제곱 회귀분석
14.1 통계학 복습
14.2 선형 최소제곱 회귀분석
14.3 컴퓨터 응용
Applied Numerical Methods
14장 최소제곱 회귀분석(1/2)
번지 점프하는 사람이 자유 낙하할 때 받는 공기저항
유체역학 이론으로 유도
또는 실험식
2vcF dU =
공기저항 힘과 속도의 관계를 측정하는 풍동실험
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14장 곡선접합: 직선의 접합 (2/2)
v (m/s) 10 20 30 40 50 60 70 80
F (N) 25 70 380 550 610 1220 830 1450
풍동 실험으로부터의 힘 (N)과 속도 (m/sec)에 관한 실험 데이터
풍동 내에 떠있는물체에 대한 힘과 바람속도의 관계에 대한 그림
이러한 자료를 반영하는 "최적”의 선이나 곡선을어떻게 구할 수 있나?
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.1 통계학 복습 (1/3)
기초 통계학
통계학의 기초 개념
데이터 분포의 중심 위치
- 산술평균
6.4956.6656.7556.565
6.5956.5056.6256.515
6.6156.4356.7156.555
6.6356.6256.5756.395
6.4856.7156.6556.775
6.5556.6556.6056.685
ny
y i∑=
구조용 강의 열팽창계수 측정값 [× 10-6 in/(in⋅°F)]
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.1 통계학 복습 (2/3)
데이터 집합의 분산 정도
- 표준편차
여기서
n – 1 = 자유도
한 점에 대해 분포라는 것은 없다
- 분산 또는
- 분산계수 (coefficient of variance: c.v.)
분포에 대해 정규화된 척도
1−=
nSs t
y
∑ −= 2)( yyS it
1)( 2
2
−
−= ∑
nyy
s iy
( )1
/222
−−
= ∑∑n
nyys ii
y
%100c.v. ×=ysy
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.1 통계학 복습 (3/3)
정규 분포데이터 분포: 데이터가 평균값 주위에 분포된 형태를 파악- 히스토그램은 시각적으로 간단하게 표시한 것
측정값들을 구간 별로 분류해서 그림
- 정규분포 신뢰도 68%: 의 구간에 측정값이 분포하는 비율
95%: 의 구간에 측정값이 분포하는 비율
데이터 점의 수가 증가하면히스토그램은 정규분포라고불리는 완만하고 종 모양인
곡선에 접근함
ysy 2±ysy ±
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.2 선형 최소제곱 회귀분석 (1/4)
최소제곱 회귀분석
- 데이터에 상당한 오차가 포함되어 있는 경우
- 일반적인 형태나 경향을 맞추는 근사함수를 유도
- 각 데이터 점과 곡선 사이의 차이를 제곱한 것의 합을 최소화시키는 곡선
- 관측 값을 직선으로 접합시키는 경우: (x1 ,y1), (x2 ,y2), …,(xn ,yn)
여기서 a0 = 절편
a1 = 기울기
e = 모델과 관측 값 사이의 오차 또는 잔차
xaaye 10 −−=
exaay ++= 10
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.2 선형 최소제곱 회귀분석 (2/4)
회귀분석에 부적절한 “최적 접합” 기준의 예:
(a) 잔차의 합을 최소화, (b) 잔차의 절대값의 값을 최소화, (c) 각 점의 최대오차를 최소화
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.2 선형 최소제곱 회귀분석 (3/4)
"최적" 접합을 위한 기준(a) 주어진 모든 데이터에 대한 잔차의 합을 최소화시키는 것
(b) 잔차의 절대값의 합을 최소화시키는 것
(c) 데이터 점이 직선으로부터 떨어진 최대거리를 최소화시키는 것 (최소-최대 기준)
잔차의 제곱 합을 최소화하는 방법
어떻게 계수 a0와 a1을 구할 수 있는가?
∑∑==
−−=n
iii
n
ii xaaye
110
1)(
∑∑==
−−=n
iii
n
ii xaaye
110
1
∑∑==
−−==n
iii
n
iir xaayeS
1
210
1
2 )(
→ 최소제곱
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.2 선형 최소제곱 회귀분석 (4/4)
직선의 최소제곱 접합각각의 미지의 계수에 대하여 미분한다.
미분식들이 0인 경우에 합이 최소가 된다.
정리하면
위의 정규방정식을 풀면 두 계수 값을 결정할 수 있다.
∑ −−−=∂∂ )(2 10
0ii
r xaayaS ∑ −−−=
∂∂ ])[(2 10
1iii
r xxaayaS
∑∑∑ −−= ii xaay 100 ∑∑∑ −−= 2100 iiii xaxayx
( ) ∑∑ =+ ii yaxna 10 ( ) ( ) ∑∑∑ =+ iiii yxaxax 12
0
( )221∑∑∑∑∑
−
−=
ii
iiii
xxn
yxyxna xaya 10 −=
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
예제 14.2 (선형회귀분석) (1/3)
Q. 주어진 데이터를 직선으로 접합하라.
i12345678
1020304050607080
2570
380550610
1,220830
1,450
100400900
1,6002,5003,6004,9006,400
2501,400
11,40022,00030,50073,20058,100
116,000Σ 360 5,135 20,400 312,850
ix iy 2ix ii yx
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
예제 14.2 (선형회귀분석) (2/3)
풀이)
875.6418135,5 45
8360
==== yx
47024.19)360()400,20(8
)135,5(360)850,312(821 =
−−
=a
2857.234)45(47024.19875.6410 −=−=a
vF 47024.192857.234 +−=
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
예제 14.2 (선형회귀분석) (3/3)
음의 절편 값은 저속에서 이 방정식이 물리적으로 비현실적인힘을 예측한다는 것을 의미한다.
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.2 선형 최소제곱 회귀분석 (1/5)
선형회귀분석 오차의 정량화잔차의 제곱 합의 유사성
⇔
선형회귀분석의 잔차는 데이터 점과 직선 사이의 수직거리를 나타냄
∑=
−−=n
iiir xaayS
1
210 )(∑ −= 2)( yyS it
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.2 선형 최소제곱 회귀분석 (2/5)
두 가지 조건:
직선과 점들 사이의 거리가 전체 구간에서 비슷한 경우
직선 주위의 점들의 분포가 정규분포인 경우
⇒ 최적의 a0와 a1의 값을 도출 : 최대근접원리
⇒ 추정 값의 표준오차 ( = 회귀분석 직선에 대한 표준편차)
y /x = 특정한 값 x 에 대응하는 예측 값 y 의 오차
n – 2 = Sr을 구하기 위해 두 점에서 유도된 a0와 a1이 이미 사용되었음
또는 "두 점을 연결하는 직선 주위에는 데이터의 분포라는 것이 없다."
- 회귀분석 직선 주위의 분포 정도를 정량화
- 접합법의 "적정성"을 정량화
/ 2r
y xSs
n=
−
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.2 선형 최소제곱 회귀분석 (3/5)
회귀분석 데이터의 비교: (a) 평균값 주위의 데이터 분포 (b) 직선 주위의 데이터 분포[ (a)에서 (b)로 갈수록 분포의 폭이 감소됨]
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.2 선형 최소제곱 회귀분석 (4/5)
선형회귀분석의 비교: (a) 작은 잔차, (b) 큰 잔차
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.2 선형 최소제곱 회귀분석 (5/5)
결정계수
또는
여기서 r = 상관계수 =
- Sr = 0 이면 r2 = 1 → 완전 접합
- Sr = St 이면 r2 = 0 → 접합이 데이터를 나타내는데 이점이 없음
t
rt
SSSr −
=2 ( ) ( )( )( ) ( )2222 ∑∑∑∑
∑∑∑−−
−=
iiii
iiii
yynxxn
yxyxnr
2r
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.3 비선형 관계의 선형화 (1/3)
종속변수(y)와 독립변수(x) 사이의 비선형 관계는 어떻게 처리
하나?
→ 다항식 회귀분석, 비선형 모델, 비선형 모델을 선형으로 변환
비선형 모델
- 지수 모델
예> 인구 성장, 방사능 감소
- 멱방정식
- 포화성장률 방정식
예> 제한된 조건에서의 인구 성장률
xey 11
βα=
22
βα= xy
xxy+β
α=3
3
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.3 비선형 관계의 선형화 (2/3)
(a)지수 방정식, (b) 멱방정식, (c) 포화성장률 방정식, (d), (e), 그리고 (f)는 간단한 변환을 통해 (a), (b), (c) 를 선형화시킨 방정식
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.3 비선형 관계의 선형화 (3/3)
비선형 모델을 선형 모델로의 변환
- 지수 방정식
→
- 멱방정식
→
- 포화성장률 방정식
→
xey 11
βα= xy 11lnln β+α=
22
βα= xy xy logloglog 22 β+α=
xxy+β
α=3
3 xy111
3
3
3 αβ
+α
=
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
예제 14.4 (멱방정식을 이용한 데이터의 접합 ) (1/2)
Q. 표 14.1의 데이터에 log 변환을 시켜 직선으로 접합하라.
i )2
12345678
1020304050607080
2570
380550610
1,220830
1,450
1.0001.3011.4771.6021.6991.7781.8451.903
1.3981.8452.5802.7402.7853.0862.9193.161
1.0001.6932.1822.5672.8863.1623.4043.622
1.3982.4013.8114.3904.7325.4885.3866.016
Σ 12.606 20.515 20.516 33.622
ix iy ix iyix ixiy loglog log (log log
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
예제 14.4 (멱방정식을 이용한 데이터의 접합 ) (2/2)
풀이)
최소제곱접합은 다음과 같다.
→→
( )221log)(log
loglogloglog
∑∑∑∑∑
−
−=
ii
iiii
xxn
yxyxna xaya 10 −=
5644.28515.20 5757.1
8606.12
==== yx
9842.1)606.12()516.20(8
)515.20(606.12)622.33(821 =
−−
=a
5620.0)5757.1(9842.15644.20 −=−=a
xy log9842.15620.0log +−= 9842.12741.0 vF =
xy logloglog 22 β+α= 22
βα= xy
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.4 컴퓨터 응용 (1/6)
[선형회귀분석을 실행하는 M-파일]
function [a, r2] = linregr(x,y)
% linregr(x,y):
% Least squares fit of a straight line to data
% by solving the normal equations
% input:
% x = independent variable
% y = dependent variable
% output:
% a = vector of slope, a(1), and intercept, a(2)
% r2 = coefficient of determination
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.4 컴퓨터 응용 (1/6)
[선형회귀분석을 실행하는 M-파일]
n = length(x);
if length(y)~=n, error('x and y must be same length');
end
x = x(:); y=y(:); % convert to column vectors
sx = sum(x); sy = sum(y);
sx2 = sum(x.*x); sxy = sum(x.*y); sy2 = sum(y.*y);
a(1) = (n*sxy - sx*sy)/(n*sx2-sx^2);
a(2) = sy/n - a(1)*sx/n;
r2 = ((n*sxy - sx*sy)/sqrt(n*sx2-sx^2)/sqrt(n*sy2-sy^2))^2
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.4 컴퓨터 응용 (1/6)
[선형회귀분석을 실행하는 M-파일]
%create plot of data and best fit line
xp= linspace(min(x),max(x),2);
yp = a(1)*xp + a(2);
plot(x,y,'o',xp,yp)
grid on
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.4 컴퓨터 응용 (2/6)
MATLAB M-파일: linregr
>> x=[10 20 30 40 50 60 70 80]; %예제 12.2
>> y=[25 70 380 550 610 1220 830 1450];
>> linregr(x,y)
r2 =
0.8805
ans =
19.4702 -234.2857
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.4 컴퓨터 응용 (3/6)
MATLAB M-파일: linregr
>> linregr(log10(x),log10(y)) %예제 12.4
r2 =
0.9481
ans =
1.9842 -0.5620
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.4 컴퓨터 응용 (4/6)
MATLAB M-파일: polyfit and polyval
>> p = polyfit(x, y, n) % n차 다항식 접합
>> y = polyval(p, x) % 함수값 계산
11
21)( +− ++++= nn
nn pxpxpxpxf
직선은 일차식이므로 polyfit(x, y, 1)을 이용한다.
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.4 컴퓨터 응용 (5/6)
>> x=[10 20 30 40 50 60 70 80];
>> y=[25 70 380 550 610 1220 830 1450];
>> P=polyfit(x,y,1); %최소제곱접합(1차)
>> Curve_f=P(1).*x+P(2);
>> a=P(1); b=P(2); [a b]
ans =
19.4702 -234.2857
>> plot(x, y, 'ro', x, Curve_f, 'b');
>> xlabel('X'); ylabel('Y'); title('Least Square Curve Fitting')
장 곡선접합 직선의 접합14 :
Applied Numerical Methods
14.4 컴퓨터 응용 (5/6)
>> x=[10 20 30 40 50 60 70 80];
>> y=[25 70 380 550 610 1220 830 1450];
>> P=polyfit(x,y,1); %최소제곱접합(1차)
>> Curve_f=P(1).*x+P(2);
>> a=P(1); b=P(2); [a b]
ans =
19.4702 -234.2857
>> plot(x, y, 'ro', x, Curve_f, 'b');
>> xlabel('X'); ylabel('Y'); title('Least Square Curve Fitting')
장 곡선접합 직선의 접합14 :
Applied Numerical Methods 장 곡선접합 직선의 접합
14.4 컴퓨터 응용 (6/6)
>> P=polyfit(x,y,1);
>> yy = polyval(P,45)
yy =
641.8750
>> Q=polyfit(x,y,2)
Q =
0.0372 16.1220 -178.4821
>> z=polyval(Q,45)
z =
622.3437
14 :
top related