SlideShare una empresa de Scribd logo
1 de 58
Descargar para leer sin conexión
Chương 3: Đường Cong Khớp
Nguyễn Đức Nghĩa, Vũ Văn Thiệu, Trịnh Anh Phúc
1 Bộ

1

môn Khoa Học Máy Tính, Viện CNTT & TT,
Trường Đại Học Bách Khoa Hà Nội.

Ngày 13 tháng 12 năm 2012

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012
Tính TT, Trường
Ngày 13 tháng

1 / 58
Giới thiệu

1

Đặt vấn đề

2

Nội suy
Nội suy Lagrange
Nội suy spline

3

Hồi qui
Hồi qui tuyến tính
Đương cong khớp bậc cao
Đường cong khớp tổng quát

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012
Tính TT, Trường
Ngày 13 tháng

2 / 58
Đặt vấn đề

Vấn đề đặt ra là :
Giả sử cần tính xấp xỉ hàm f (x) không biết rõ công thức, tuy nhiên bằng
thực nghiệm ta xác định được giá trị f (x) tại n + 1 điểm rời rạc
fi = f (xi ) i = 0, 1, · · · , N
Cho bộ dữ liệu {(xi , fi ), i = 0, N}, cần tìm cách xấp xỉ hàm f (x) bởi một
hàm (có thể được tính theo công thức giải tích) p(x) sao cho ’khoảng
cách’ giữa chúng trên bộ dữ liệu nhỏ nhất có thể.

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012
Tính TT, Trường
Ngày 13 tháng

3 / 58
Đặt vấn đề (tiếp)

tiếp tục...

Để giải quyết vấn đề
Ta sẽ tìm hiểu hai phương pháp dùng để để xây dựng đường cong khớp
(curve fitting)
Nội suy (Interpolation) : hàm p(x) phải đi qua tất cả các điểm thuộc
bộ dữ liệu.
Hồi quy (Regression) dùng tiêu chí bình phương bé nhất (least
squares) : cho trước dạng f (x) có tham số, ta phải điều chỉnh các
tham số này bằng cách cực tiểu nó theo tiêu chí nào đó.

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012
Tính TT, Trường
Ngày 13 tháng

4 / 58
Nội suy

Mở đầu
Phép nội suy có thể thực hiện với các hàm p(x) là
Hàm đa thức
Hàm hữu tỷ
Hàm chuỗi Fourier

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012
Tính TT, Trường
Ngày 13 tháng

5 / 58
Nội suy
Nội suy
Định nghĩa : Ta nói hàm p(x) là hàm nội suy bộ dữ liệu
{(xi , fi ), i = 0, N} nếu thực hiện các điều kiện sau
pi = fi i = 0, 1, · · · , N
hệ N + 1 đẳng thức gọi là điều kiện nội suy. Sở dĩ hàm đa thức được
chọn vì việc tính giá trị, đạo hàm, vi phân dễ dàng (tính chất giải tích của
hàm rõ ràng).
Đa thức nội suy bộ dữ liệu được gọi là đa thức nội suy (interpolating
polynominal)
Định nghĩa : Ta gọi đa thức bậc không quá K là hàm
pK (x) = a0 + a1 x + · · · + aK x K
trong đó a0 , a1 , · · · , aK là các hằng số.
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012
Tính TT, Trường
Ngày 13 tháng

6 / 58
Nội suy

Nội suy tuyến tính
Ta có hai điểm dữ liệu (x0 , f0 ) và (x1 , f1 ) cần nội suy bởi đa thức
p1 (x) ≡ a0 + a1 x thỏa mãn hệ phương trình
p1 (x0 ) ≡ a0 + a1 x0 = f0
p1 (x1 ) ≡ a0 + a1 x1 = f1
Giải ra, ta có
Khi x0 = x1 xảy ra hai trường hợp
f
f1 −f
nếu f0 = f1 thì p1 (x) = x1x0 −x0 f1 + x1 −x00 x
1 −x0
nếu f0 = f1 thì lời giải là hằng số ⇒ đa thức bậc không.

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012
Tính TT, Trường
Ngày 13 tháng

7 / 58
Nội suy
Nội suy tuyến tính (tiếp)
f

(9,6)
p1 (x) = 0.6 + 0.6x

(4,3)
x
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012
Tính TT, Trường
Ngày 13 tháng

8 / 58
Nội suy
Công thức nội suy Lagrange
Cần xây dựng đường cong đi qua 3,4 hay nhiều điểm (xem hình).
f

(9,6)

(7,4)
(4,3)
x
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012
Tính TT, Trường
Ngày 13 tháng

9 / 58
Nội suy
Công thức nội suy Lagrange (tiếp)
Xét đa thức
pM (x) = a0 + a1 x + a2 x 2 + · · · + aM x M
Vậy đa thức pM (x) nội suy bộ dữ liệu {(xi , fi ), i = 0, N} nếu các điều kiện
nội suy :
2
M
pM (x0 ) ≡ a0 + a1 x0 + a2 x0 + · · · + aM x0 = f0
2
M
pM (x1 ) ≡ a0 + a1 x1 + a2 x1 + · · · + aM x1 = f1

···
2
M
pM (xN ) ≡ aN + a1 xN + a2 xN + · · · + aM xN = fN

Đây là một hệ phương trình tuyến tính nên ta có thể biểu diễn bằng công
thức dạng ma trận.
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

10 / 58
Nội suy
Công thức nội suy Lagrange (tiếp)
Như vậy dạng ma trận

1

1
.
.
.

của điều kiện nội suy
   
M
f0
x0 · · · x0
a0
 
M  a 
x1 · · · x1   1   f1 
. ..
.  .  =  . 
   
.
. .  .   . 
.
.
.
.

1 xN

M
· · · xN

aM

fN

Giả thiết là x0 , x1 , · · · , xN là phân biệt, vậy theo lý thuyết giải hệ phương
trình tuyến tính trong chương trước ta có
N=M : hệ phương trình có nghiệm duy nhất
M<N : có thể chọn bộ dữ liệu để nó vô nghiệm
M>N : nếu hệ có nghiệm thì nó có vô số nghiệm
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

11 / 58
Nội suy
Công thức nội suy Lagrange (tiếp)
Khi N = M ma trận hệ số của hệ phương trình trên là ma trận
Vandermonde (Không phải Voldemort)

1

1
VN =  .
.
.

x0
x1
.
.
.

1 xN


M
· · · x0
M
· · · x1 
. 
..

. . 
.
M
· · · xN

Có định thức của Vn là :
(xi − xj )

VN =
i>j

suy ra hệ có nghiệm khi x0 , x1 , · · · , xN là phân biệt từng đôi.
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

12 / 58
Nội suy

Công thức nội suy Lagrange (tiếp)
Định lý (Tính duy nhất của đa thức nội suy) : Nếu các nút dữ liệu
x0 , x1 , · · · , xN là khác nhau từng đôi thì tồn tại duy nhất đa thức nội suy
pN (x) bậc không quá N nội suy bộ dữ liệu {(xi , fi ), i = 0, N}.

Bậc của đa thức nội suy có thể nhỏ hơn N
Ví dụ, khi 3 điểm dữ liệu (x0 , f0 ), (x1 , f1 ), (x3 , f3 ) thằng hàng thì phương
trình nội suy trở thành bậc không quá hai do nó là đường thẳng.

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

13 / 58
Nội suy

Ví dụ 1 :
Xác định các hệ số của đa thức nội suy p2 (x) = a0 + a1 x + a2 x 2 nội suy
bộ dữ liệu {(-1,0),(0,1),(1,3)}, ta có điều kiện nội suy
a0 + (−1)a1 + (1)a2 = 0
a0
a0 +

=1
(1)a1 + (1)a2 = 3

Giải hệ phương trình ta có a0 = 1, a1 = 1.5 và a2 = 0.5 vậy đa thức nội
suy là
p2 (x) = 1 + 1.5x + 0.5x 2

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

14 / 58
Nội suy

Công thức nội suy Lagrange (tiếp)
Việc dùng giải trực tiếp hệ phương trình điều kiện nội suy dùng phép khử
Gauss chẳng hạn cần đòi hỏi nhiều tính toán O(N 3 ). Thêm nữa, vì lũy
thừa của hệ số x có thể rất cao nên độ sai số lại càng lớn do hiệu ứng việc
làm tròn số, thậm chí còn tràn số (nhớ lại là số dấu phẩy động IEEE
754/85 độ chính xác kép chỉ là ≈ ±1038 ).
⇒ ta có thể dùng công thức nội suy Lagrange để tính hằng số của đa
thức nội suy mà không cần giải hệ phương trình tuyến tính trên.

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

15 / 58
Nội suy
Công thức nội suy Lagrange (tiếp)
Xét bộ dữ liệu {(xi , fi ), i = 0, N} dạng Lagrange của đa thức nội suy đối
với bộ dữ liệu là như sau :
pN (x) = f0 V0 (x) + f1 V1 (x) + · · · + fN VN (x)
trong đó Vi (x) : i = 0, 1, · · · , N là các đa thức bậc N thỏa mãn điều kiện :
Vi (xj ) =

1, i = j
0, i = j

Họ các đa thức Vi (x) : i = 0, 1, · · · , N được gọi là họ các đa thức cơ sở.
Dễ dàng kiểm tra được rằng :
pN (xi ) = fi i = 0, 1, · · · , N
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

16 / 58
Nội suy
Công thức nội suy Lagrange (tiếp)
Một trong lớp đa thức cơ sở có thể xây dựng theo công thức như sau
Vi (x) =

(x − x0 )(x − x1 ) · · · (x − xi−1 )(x − xi+1 ) · · · (x − xn )
(xi − x0 )(xi − x1 ) · · · (xi − xi−1 )(xi − xi+1 ) · · · (xi − xn )

rõ ràng thỏa mãn
Vi (xj ) =

1, i = j
0, i = j

Vậy ta có thể tóm tắt lại công thức trên như sau
Vi (x) =

i=j (x

− xj )

i=j (xi

− xj )

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

17 / 58
Nội suy
Công thức nội suy Lagrange (tiếp)
Vậy công thức nội suy Lagrange
pN (x) =

(x − x1 )(x − x2 ) · · · (x − xN )
f0
(x0 − x1 ) · · · (x0 − xN )
···
(x − x0 )(x − x1 ) · · · (x − xi−1 )(x − xi+1 ) · · · (x − xn )
+
fi (1)
(xi − x0 )(xi − x1 ) · · · (xi − xi−1 )(xi − xi+1 ) · · · (xi − xn )
···
(x − x0 )(x − x1 ) · · · (x − xN−1 )
+
fN
(xN − x0 ) · · · (xN − xN−1 )

Công thức (1) tuy dài nhưng dễ nhớ và tính toán hơn.

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

18 / 58
Nội suy
Cài đặt Vi (x) bẳng Matlab
v = polyinterp(x,y,u) tính v(j) = P(u(j)) trong đó P là đa thức bậc d =
length(x) - 1 thỏa mãn P(x(i)) = y(i). Sử dụng công thức nội suy
Lagrange. Hai vectơ x,y chứa hoàng độ và tung độ của bộ dữ liệu.
function v = polyinterp(x,y,u)
n = length(x);
v = zeros(size(u));
for k = 1:n
w = ones(size(u));
for j = [1:k-1 k+1:n]
w = (u-x(j))./(x(k)-x(j)).*w;
end
v = v + w*y(k);
end
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

19 / 58
Nội suy
Cài đặt Vi (x) bẳng Matlab (tiếp)
function v = polyinterp(x,y,u)
n = length(x);
v = zeros(size(u));
for k = 1:n
w = ones(size(u));
for j = [1:k-1 k+1:n]
w = (u-x(j))./(x(k)-x(j)).*w;
end
v = v + w*y(k);
end
Hai vectơ x,y chứa hoàng độ và tung độ của bộ dữ liệu.
u là vec tơ chứa các hoàng độ của các điểm cần tính theo công thức
nội suy Lagrange.
v là vectơ chứa giá trị hàm nội suy tại các điểm cho trong u
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

20 / 58
Nội suy

Ví dụ 2 :
x = [0 1 2 3];
y = [-5 -6 -1 16];
u= [0.25:0.01:3.25];
v = polyinterp(x,y,u);
plot(x,y,’o’,u,v,’-’)

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

21 / 58
Nội suy

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

22 / 58
Nội suy
Sai số nội suy
Định nghĩa : Sai số của đa thức nội suy g (x) được xác định bởi công thức :
e(x) = f (x) − g (x)
Độ lớn của e(x) phụ thuộc vào
Hoàng độ của các điểm dữ liệu.
Kích thước của miền nội suy D = xn − x0 .
Bậc của đa thức nội suy
Đối với đa thức nội suy Lagrange, sai số được xác định bới công thức :
e(x) = f (x) − g (x) = L(x)f (N+1) (ξ)
trong đó f (N+1) là đạo hàm bậc N + 1 của hàm f (x) còn
L(x) = (x−x0 )(x−x1 )···(x−xn )
(N+1)!
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

23 / 58
Nội suy
Sai số nội suy (tiếp)
tiếp tục ... công thức :
e(x) = f (x) − g (x) = L(x)f (N+1) (ξ)
ξ phụ thuộc x nhưng thỏa mãn điều kiện x0 < ξ < xN . Cũng theo công
thức trên nếu f(x) là đa thức bậc không quá N thì đạo hàm f (N+1) sẽ triệt
tiêu, nghĩa là sai số bằng không. Do L(x) = (x−x0 )(x−x1 )···(x−xn ) nên ta có
(N+1)!
các kết luận sau
Với một lưới cách đều, biên độ dao động của L(x) nhỏ nhất tại tâm
và tăng dần về biên của miền nội suy.
Kích thước nội suy tăng lên, độ lớn của dao động tăng nhanh chóng.

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

24 / 58
Nội suy Lagrange

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

25 / 58
Nội suy spline

Đặt vấn đề
Trong trường hợp này ta xét phép nội suy bởi một tập các các đa thức
bậc thấp thay vì một đa thức bậc cao duy nhất
Nội suy bởi spline tuyến tính
Nội suy bởi spline bậc ba
Nhớ lại công thức đánh giá sai số nội suy Lagrange
f (x) − pN (x) = [wN+1 (x)/(N + 1)!]f (N+1) (ξx )
trong đó wN+1 (x) = (x − x0 )(x − x1 ) · · · (x − xN ) và ξx là một giá trị
trong khoảng (x0 , xN ).

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

26 / 58
Nội suy spline
Đặt vấn đề (tiếp)
tiếp tục ... Giả sử mọi điểm dữ liệu xi ∈ [a, b] thì ta có
max |f (x) − pN (x)| ≤ |b − a|N+1 ×

x∈[a,b]

maxx∈[a,b] |f (N+1) (x)|
N!

Đánh giá này cho biết nếu muốn giảm sai số mà vẫn giữ nguyên số lượng
điểm dữ liệu N thì cần tìm cách giảm kích thước của |b − a|. Hướng tiếp
cận của ta là xấp xỉ đa thức từng khúc (piecewise polynominal
approximation) : Như vậy đoạn [a, b] sẽ được chia thành nhiều đoạn nhỏ
không đè nhau và các đa thức khác nhau sẽ được xấp xỉ trên từng
đoạn con.

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

27 / 58
Nội suy spline

Spline tuyến tính từng khúc
Đối với bộ dữ liệu
{(xi , fi ) : i = 0, · · · , N}
trong đó
a = x0 < x1 < · · · < xN = b, h ≡ max |xi − xi−1 |,
i

spline tuyến tính S1,N (x) là hàm liên tục nội suy dữ liệu đã cho và được
xây dựng từ các hàm tuyến tính được xác định bởi các đa thức nội suy hai
điểm dữ liệu :

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

28 / 58
Nội suy spline

Spline tuyến tính từng khúc (tiếp)
tiếp tục...

 f1 −f0 (x − x1 ) + f1 , nếux ∈ [x0 , x1 ]

 x1 −x0
.
.

.


f −f
S1,N (x) = xii −xi−1 (x − xi ) + fi , nếux ∈ [xi−1 , xi ]
. i−1

.
.


 f −f
 N N−1

xN −xN−1 (x − xN ) + fN , nếux ∈ [xN−1 , xN ]

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

29 / 58
Nội suy spline

Spline tuyến tính từng khúc (tiếp)
Sử dụng công thức sai số cho đa thức nội suy với x ∈ [a, b] cho từng đoạn
[xi−1 , xi ] ta được
max
z∈[xi−1 ,xi ]

|f (z) − S1,N (z)| ≤
≤

|xi − xi−1 |2
× max |f (2) (x)|
8
x∈[xi−1 ,xi ]
h2
× max |f (2) (x)|
8
x∈[xi−1 ,xi ]

trong đó h ≡ maxi |xi − xi−1 |.

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

30 / 58
Nội suy spline

Ví dụ 3 :
Cho bộ dữ liệu {(-1,0),(0,1),(1,3)}, ta xây dựng spline tuyết tính như sau
S1,2 (x) =

f1 −f0
x1 −x0 (x
f2 −f1
x2 −x1 (x

− x1 ) + f1 , nếu x ∈ [x0 , x1 ]
− x2 ) + f2 , nếu x ∈ [x1 , x2 ]

suy ra với bộ dữ liệu tương ứng
S1,2 (x) =

1−0
0−(−1) (x − 0) +
3−1
1−0 (x − 1) + 3,

1, nếu x ∈ [−1, 0]
nếu x ∈ [0, 1]

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

31 / 58
Nội suy spline
Ví dụ 4 :
»
»
»
»
»
»
»
»
»
»
»
»

clear;
x=1:6;
y=[16 18 21 17 15 12];
plot(x,y,’o’)
hold on; grid on;
axis([-1 7 10 22])
xx = [1:0.01:6];
yy = piecelin(x,y,xx);
plot(xx,yy,’r’)
hold off
xlabel(’x-axis’);ylabel(’y-axis’);
title(’Linear Spline Interpolation’);

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

32 / 58
Nội suy spline

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

33 / 58
Nội suy spline

Spline bậc ba
Sự khác biệt là thay vì nội suy từng đoạn bậc nhất thì ta dùng một đa
thức bậc ba để ’uốn’ đường cong trơn hơn. Ta cũng có bộ dữ liệu
{(xi , fi ) : i = 0, · · · , N}
trong đó
a = x0 < x1 < · · · < xN = b, h ≡ max |xi − xi−1 |,
i

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

34 / 58
Nội suy Lagrange

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

35 / 58
Nội suy spline
Spline bậc ba (tiếp)
Định nghĩa : Spline bậc ba S3,N (x) nội suy bộ dữ liệu đã cho
S3,N (x) là hàm bậc ba giữa hai nút [xi−1 , xi ]


p1 (x) = a1,0 + a1,1 x + a1,2 x 2 + a1,3 x 3 , nếux ∈ [x0 , x1 ]

.

.
.


S3,N (x) = pi (x) = ai,0 + ai,1 x + ai,2 x 2 + ai,3 x 3 , nếux ∈ [xi−1 , xi ]
.

.
.




pN (x) = aN,0 + aN,1 x + aN,2 x 2 + aN,3 x 3 , nếux ∈ [xN−1 , xN ]
S3,N (x) là hàm liên tục có đạo hàm cấp một và hai liên tục trên đoạn
[x0 , xN ] (kể cả tại các nút)

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

36 / 58
Nội suy spline
Spline bậc ba (tiếp)
Với xi−1 < x < xi , S3,N (x) có giá trị
pi (x) = ai,0 + ai,1 x + ai,2 x 2 + ai,3 x 3
Giá trị của S3,N (x) khi x → xi−
pi (xi )
pi (xi )
pi ”(xi )
Nhận xét :

Với xi < x < xi+1 , S3,N (x) có giá trị
pi+1 (x) = ai+1,0 + · · · + ai+1,3 x 3
Giá trị của S3,N (x) khi x → xi+
pi+1 (xi )
pi+1 (xi )
pi+1 ”(xi )

Điều kiện về tính trơn tại điểm xi thì
pi (xi ) = pi+1 (xi );

pi ”(xi ) = pi+1 ”(xi ); i = 1, 2, · · · , N − 1

Điều kiện nội suy dữ liệu đảm bảo
pi (xi ) = pi+1 (xi ) = fi ; i = 0, 1, 2, · · · , N − 1
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

37 / 58
Nội suy spline

Spline bậc ba (tiếp)
Điều kiện biên tự nhiên (Natural Boundary Condition)
p1 ”(x) = 0; pN ”(x) = 0;
Điều kiện đạo hàm cấp hai (Second Derivative Condition)
p1 ”(x0 ) = f ”(x0 ); pN ”(xN ) = f ”(xN );
Điều kiện sát biên (Not-a-knot Condition)
p1 ”(x1 ) = p2 ”(x1 ); pN−1 ”(xN−1 ) = pN ”(xN−1 );

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

38 / 58
Nội suy spline

Ví dụ 4 :
»
»
»
»
»

x = 0:10; y = sin(10*x);
p = spline(x,y);
xx = linspace(0,10,200);
yy = ppval(p,xx);
plot(x,y,’o’,xx,yy)

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

39 / 58
Nội suy spline cấp 3

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

40 / 58
Nội suy spline

Ví dụ 5 :
» x = 0:10; y = sin(10*x);
» xx = linspace(0,10,200);
» coef = polyfit(x,y,10);
Warning: Polynomial is badly conditioned. Remove repeated data
points or try centering and scaling as described in HELP POLYFIT.
(Type "warning off MATLAB:polyfit:RepeatedPointsOrRescale" to
suppress this warning.)
» yy = polyval(coef,xx);
» plot(x,y,’o’,xx,yy,’r’)

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

41 / 58
Nội suy spline cấp 3

Như vậy khi ta nôi suy bằng spline bậc 3 thì tốt hơn nội suy đa thức với
hàm sin(10x)
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

42 / 58
Nội suy spline

Ví dụ 6 :
Công suất tiêu thụ điện của một thiết bị trong 12 giờ như sau
1
2
3
4
5
6
54.4

54.6

67.1

78.3

85.3

88.7

7

8

9

10

11

12

96.9

97.6

84.1

80.1

68.8

61.1

Dùng spline bậc ba để nội suy tập điểm dữ liệu trên, ta có được

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

43 / 58
Nội suy spline cấp 3

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

44 / 58
Nội suy spline cấp 3

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

45 / 58
Hồi qui

Đặt vấn đề
Cho bộ dữ liệu {(xi , fi ), i = 1, · · · , N}, cần tìm cách xấp xỉ hàm f (x) bởi
một hàm p(x). Ta cần quan tâm đo sai số tổng công trên toàn đoạn
Sai số cực đại E∞ (f ) = max1≤k≤n |f (xk ) − yk |
Sai số trung bình E1 (f ) =

n
k=1 |f

1
n

(xk ) − yk |

Căn bậc hai của tổng các bình phương sai số
E2 (f ) =

1
n

1/2

n

(f (xk ) − yk )

2

k=1

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

46 / 58
Hồi qui
Hồi qui tuyến tính
Hồi qui tuyến tính là việc tìm một đường thẳng khớp với các điểm dữ liệu
theo nghĩa bình phương tối thiểu.
Cho tập N cặp điểm dữ liệu {(xi , fi ) : i = 1, · · · , N}
Tìm hệ số m và hằng số tự do b của đường thẳng
y (x) = mx + b
sao cho đường thẳng này khớp với dữ liệu theo tiêu chí bình phương
tối thiểu.
N

(fi − (mxi + b))2

L(m, b) =
i=1

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

47 / 58
Hồi qui
Hồi qui tuyến tính (tiếp)
Nghĩa là ta cần tìm m và b để đạt cực tiểu hàm
N

(fi − (mxi + b))2

L(m, b) =
i=1

để tìm cực tiểu này, ta cần giải hệ phương trình tìm điểm dừng
∂L
=
∂m
∂L
=
∂b

N

2(fi − (mxi + b))(−xi ) = 0
i=1
N

2(fi − (mxi + b))(−1) = 0
i=1

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

48 / 58
Hồi qui
Hồi qui tuyến tính (tiếp)
N

N

xi2 m +
i=1
N

N

xi b =
i=1
N

xi m +
i=1

xi fi
i=1
N

1 b=
i=1

fi
i=1

hay dưới dạng ma trận,
N
2
i=1 xi
N
i=1 xi

N
i=1 xi

N

m
b

=

N
i=1 xi fi
N
i=1 fi

Giải hệ phương trình ta có được hệ số m và b.
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

49 / 58
Hồi qui
Ví dụ 6 :
Xây dựng đường cong khớp cho bộ dữ liệu sau
i

1

2

3

4

xi

1

3

4

5

fi

2

4

3

1

Vậy hệ phương trình cần giải là
13m + 4b = 10
51m + 13b = 31

từ đó tìm được b = 107/35 và m = −6/35, đường thẳng cần tìm là
y = (−6/35)x + 107/35
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

50 / 58
Hồi qui
Đường cong khớp bậc cao
Xây dựng đường cong khớp
pM (x) = a0 + a1 x + a2 x 2 + · · · + aM x M
khớp với bộ dữ liệu {(xi , fi )i = 1, · · · , N} theo tiêu chí bình phương tối
thiểu
σM ≡ (pM (x1 ) − f1 )2 + (pM (x2 ) − f2 )2 + · · · + (pM (xN ) − fN )2
Giải hệ phương trình tìm điểm dừng
∂
∂
∂
σM = 0;
σM = 0;
σM = 0; · · ·
∂a0
∂a1
∂aM

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

51 / 58
Hồi qui
Đường cong khớp bậc cao (tiếp)
Viết dưới dạng ma trận hệ
 N
N
i=1 1
i=1 xi
 N
N
2
 i=1 xi
i=1 xi

.
.

.
.
.
.

N
N
M+1
M
i=1 xi
i=1 xi

phương trình chuẩn
  
N
M
···
a0
i=1 xi
 
N
M+1  
···
  a1  
i=1 xi
 .  = 
.
..
 .  
.
.
.
 .  
···

N
2M
i=1 xi

aM

N
i=1 fi
N
i=1 fi xi

.
.
.

N
M
i=1 fi xi








Điểm đặc biệt của ma trận trên là bán xác định đương nên ta có thể dùng
phép khử Gauss mà không cần thay đổi dòng, để giải hệ phương trình
chuẩn.

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

52 / 58
Hồi qui

Ví dụ 7 :
Xác định các tham số a, b, c ccủa đường cong
y = ax 2 + bx + c
khớp với bộ dữ liệu sau
x

1

2

3

4

5

6

7

8

y

1

8

27

64

125

216

350

560

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

53 / 58
Hồi qui
Ví dụ 7 : (tiếp)
x = [1 2 3 4 5 6 7 8];
y = [1 8 27 64 125 216 350 560];
s0 = length(x); s1 = sum(x); s2 = sum(x.2);
s3 = sum(x.3); s4 = sum(x.4);
A = [s4 s3 s2; s3 s2 s1; s2 s1 s0];
b = [sum(x.2.*y); sum(x.*y);sum(y)];
c0 = A b;
c = polyfit(x,y,2);
c0
c
xx = 1:0.1:8;
yy = polyval(c0,xx);
plot(x,y,’o’,xx,yy)
Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

54 / 58
Hồi qui

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

55 / 58
Hồi qui
Đường cong khớp tổng quát
Giả sử ta muốn khớp N điểm đa cho {(xi , fi ) : i = 1, · · · , N} bởi họ gồm
m hàm độc lập tuyến tính ϕj (x), j = 1, 2, · · · , m tức là hàm f (x) cần tìm
có dạng
m

f (x) =

cj ϕj (x)
j=1

Chẳng hạn các họ hàm sau
ϕj (x) = x j , j = 1, 2, · · · , m
ϕj (x) = sin(jx), j = 1, 2, · · · , m
ϕj (x) = cos(jx), j = 1, 2, · · · , m

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

56 / 58
Hồi qui
Đường cong khớp tổng quát (tiếp)
Ta cần xác định các số c1 , c2 , · · · , cm để cực tiểu hóa sai số căn bậc hai
của tổng các bình phương sai số :
n

n

(f (xk ) − fk )2 =

E (c1 , c2 , · · · , cm ) =
k=1



2

cj ϕj (x) − fk 


k=1



m
j=1

Để tìm các hệ số c1 , c2 , · · · , cm , ta cần giải hệ phương trình
∂E
= 0, j = 1, 2, · · · , m
∂cj

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

57 / 58
Hồi qui

Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012
Tính TT, Trường
Khoa Hà Nội.

58 / 58

Más contenido relacionado

La actualidad más candente

Chuyên đề hệ phương trình bằng phương pháp hàm số
Chuyên đề hệ phương trình bằng phương pháp hàm sốChuyên đề hệ phương trình bằng phương pháp hàm số
Chuyên đề hệ phương trình bằng phương pháp hàm sốVui Lên Bạn Nhé
 
Gt khong gian_metric Nguyen Hoang
Gt khong gian_metric Nguyen HoangGt khong gian_metric Nguyen Hoang
Gt khong gian_metric Nguyen HoangBui Loi
 
Bài toán số học liên quan tới lũy thữa
Bài toán số học liên quan tới lũy thữaBài toán số học liên quan tới lũy thữa
Bài toán số học liên quan tới lũy thữaThế Giới Tinh Hoa
 
Giải số bằng mathlab
Giải số bằng mathlabGiải số bằng mathlab
Giải số bằng mathlabdvt1996
 
Giải một số phương trình nghiệm nguyên trong đề thi toán 9
Giải một số phương trình nghiệm nguyên trong đề thi toán 9Giải một số phương trình nghiệm nguyên trong đề thi toán 9
Giải một số phương trình nghiệm nguyên trong đề thi toán 9Nhập Vân Long
 
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...Chien Dang
 
Kỹ thuật nhân liên hợp
Kỹ thuật nhân liên hợpKỹ thuật nhân liên hợp
Kỹ thuật nhân liên hợptuituhoc
 
30 bài toán phương pháp tính
30 bài toán phương pháp tính30 bài toán phương pháp tính
30 bài toán phương pháp tínhPham Huy
 
kỹ thuật giải phương trình hàm
kỹ thuật giải phương trình hàmkỹ thuật giải phương trình hàm
kỹ thuật giải phương trình hàmljmonking
 
phương pháp hình thang,Công thức Simpson
phương pháp hình thang,Công thức Simpson phương pháp hình thang,Công thức Simpson
phương pháp hình thang,Công thức Simpson caovanquy
 
9 phương pháp giải phương trình nghiệm nguyên
9 phương pháp giải phương trình nghiệm nguyên9 phương pháp giải phương trình nghiệm nguyên
9 phương pháp giải phương trình nghiệm nguyênThấy Tên Tao Không
 
Bài Giảng Đại Số Tuyến Tính - ĐH Thăng Long
Bài Giảng Đại Số Tuyến Tính - ĐH Thăng LongBài Giảng Đại Số Tuyến Tính - ĐH Thăng Long
Bài Giảng Đại Số Tuyến Tính - ĐH Thăng LongHoàng Như Mộc Miên
 
Tính toán khoa học - Chương 4: Giải phương trình phi tuyến
Tính toán khoa học - Chương 4: Giải phương trình phi tuyếnTính toán khoa học - Chương 4: Giải phương trình phi tuyến
Tính toán khoa học - Chương 4: Giải phương trình phi tuyếnChien Dang
 
Giải bài tập Phương pháp tính
Giải bài tập Phương pháp tínhGiải bài tập Phương pháp tính
Giải bài tập Phương pháp tínhdinhtrongtran39
 
74774655 chuỗi-ham
74774655 chuỗi-ham74774655 chuỗi-ham
74774655 chuỗi-hamVinh Phan
 
Chuyen de toan logic roi rac li thuyet to hop
Chuyen de toan logic  roi rac li thuyet to hopChuyen de toan logic  roi rac li thuyet to hop
Chuyen de toan logic roi rac li thuyet to hoplephucduc06011999
 

La actualidad más candente (20)

Chuyên đề hệ phương trình bằng phương pháp hàm số
Chuyên đề hệ phương trình bằng phương pháp hàm sốChuyên đề hệ phương trình bằng phương pháp hàm số
Chuyên đề hệ phương trình bằng phương pháp hàm số
 
Chuong02
Chuong02Chuong02
Chuong02
 
Gt khong gian_metric Nguyen Hoang
Gt khong gian_metric Nguyen HoangGt khong gian_metric Nguyen Hoang
Gt khong gian_metric Nguyen Hoang
 
Bài toán số học liên quan tới lũy thữa
Bài toán số học liên quan tới lũy thữaBài toán số học liên quan tới lũy thữa
Bài toán số học liên quan tới lũy thữa
 
Giải số bằng mathlab
Giải số bằng mathlabGiải số bằng mathlab
Giải số bằng mathlab
 
Giải một số phương trình nghiệm nguyên trong đề thi toán 9
Giải một số phương trình nghiệm nguyên trong đề thi toán 9Giải một số phương trình nghiệm nguyên trong đề thi toán 9
Giải một số phương trình nghiệm nguyên trong đề thi toán 9
 
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
 
Kỹ thuật nhân liên hợp
Kỹ thuật nhân liên hợpKỹ thuật nhân liên hợp
Kỹ thuật nhân liên hợp
 
30 bài toán phương pháp tính
30 bài toán phương pháp tính30 bài toán phương pháp tính
30 bài toán phương pháp tính
 
Luận văn: Giải hình thức các phương trình tích phân Volterra, HAY
Luận văn: Giải hình thức các phương trình tích phân Volterra, HAYLuận văn: Giải hình thức các phương trình tích phân Volterra, HAY
Luận văn: Giải hình thức các phương trình tích phân Volterra, HAY
 
kỹ thuật giải phương trình hàm
kỹ thuật giải phương trình hàmkỹ thuật giải phương trình hàm
kỹ thuật giải phương trình hàm
 
phương pháp hình thang,Công thức Simpson
phương pháp hình thang,Công thức Simpson phương pháp hình thang,Công thức Simpson
phương pháp hình thang,Công thức Simpson
 
9 phương pháp giải phương trình nghiệm nguyên
9 phương pháp giải phương trình nghiệm nguyên9 phương pháp giải phương trình nghiệm nguyên
9 phương pháp giải phương trình nghiệm nguyên
 
Bài Giảng Đại Số Tuyến Tính - ĐH Thăng Long
Bài Giảng Đại Số Tuyến Tính - ĐH Thăng LongBài Giảng Đại Số Tuyến Tính - ĐH Thăng Long
Bài Giảng Đại Số Tuyến Tính - ĐH Thăng Long
 
Dãy số và giới hạn
Dãy số và giới hạnDãy số và giới hạn
Dãy số và giới hạn
 
Chuong01
Chuong01Chuong01
Chuong01
 
Tính toán khoa học - Chương 4: Giải phương trình phi tuyến
Tính toán khoa học - Chương 4: Giải phương trình phi tuyếnTính toán khoa học - Chương 4: Giải phương trình phi tuyến
Tính toán khoa học - Chương 4: Giải phương trình phi tuyến
 
Giải bài tập Phương pháp tính
Giải bài tập Phương pháp tínhGiải bài tập Phương pháp tính
Giải bài tập Phương pháp tính
 
74774655 chuỗi-ham
74774655 chuỗi-ham74774655 chuỗi-ham
74774655 chuỗi-ham
 
Chuyen de toan logic roi rac li thuyet to hop
Chuyen de toan logic  roi rac li thuyet to hopChuyen de toan logic  roi rac li thuyet to hop
Chuyen de toan logic roi rac li thuyet to hop
 

Destacado

Tính toán khoa học - Chương 0: Introduction
Tính toán khoa học - Chương 0: IntroductionTính toán khoa học - Chương 0: Introduction
Tính toán khoa học - Chương 0: IntroductionChien Dang
 
Phương pháp số và lập trình - Giải phương trình phi tuyến
Phương pháp số và lập trình - Giải phương trình phi tuyếnPhương pháp số và lập trình - Giải phương trình phi tuyến
Phương pháp số và lập trình - Giải phương trình phi tuyếnHajunior9x
 
Phương pháp số và lập trình - Nội suy, Đạo hàm, Tích phân
Phương pháp số và lập trình - Nội suy, Đạo hàm, Tích phânPhương pháp số và lập trình - Nội suy, Đạo hàm, Tích phân
Phương pháp số và lập trình - Nội suy, Đạo hàm, Tích phânHajunior9x
 
Lập trình Python GUI vs PySide
Lập trình Python GUI vs PySideLập trình Python GUI vs PySide
Lập trình Python GUI vs PySideChien Dang
 
toán kinh tế hungary
toán kinh tế  hungary toán kinh tế  hungary
toán kinh tế hungary langtukju_1088
 
[Toán kinh tế ứng dụng] Bài 1: Hàm tuyến tính
[Toán kinh tế ứng dụng] Bài 1: Hàm tuyến tính[Toán kinh tế ứng dụng] Bài 1: Hàm tuyến tính
[Toán kinh tế ứng dụng] Bài 1: Hàm tuyến tínhNguyen Ngoc Binh Phuong
 
Bài tập thực hành số 1
Bài tập thực hành số 1Bài tập thực hành số 1
Bài tập thực hành số 1Tran Trung Dung
 
Tính toán khoa học - Chương 8: Quy hoạch tuyến tính
Tính toán khoa học - Chương 8: Quy hoạch tuyến tínhTính toán khoa học - Chương 8: Quy hoạch tuyến tính
Tính toán khoa học - Chương 8: Quy hoạch tuyến tínhChien Dang
 
Giáo trình xử lý ảnh
Giáo trình xử lý ảnhGiáo trình xử lý ảnh
Giáo trình xử lý ảnhTùng Trần
 
Tính toán khoa học - Chương 1: Nhập môn Matlab
Tính toán khoa học - Chương 1: Nhập môn MatlabTính toán khoa học - Chương 1: Nhập môn Matlab
Tính toán khoa học - Chương 1: Nhập môn MatlabChien Dang
 
Pp vận tải thế vị
Pp vận tải thế vịPp vận tải thế vị
Pp vận tải thế vịnhóc Ngố
 

Destacado (13)

Tính toán khoa học - Chương 0: Introduction
Tính toán khoa học - Chương 0: IntroductionTính toán khoa học - Chương 0: Introduction
Tính toán khoa học - Chương 0: Introduction
 
Phương pháp số và lập trình - Giải phương trình phi tuyến
Phương pháp số và lập trình - Giải phương trình phi tuyếnPhương pháp số và lập trình - Giải phương trình phi tuyến
Phương pháp số và lập trình - Giải phương trình phi tuyến
 
Phương pháp số và lập trình - Nội suy, Đạo hàm, Tích phân
Phương pháp số và lập trình - Nội suy, Đạo hàm, Tích phânPhương pháp số và lập trình - Nội suy, Đạo hàm, Tích phân
Phương pháp số và lập trình - Nội suy, Đạo hàm, Tích phân
 
Lập trình Python GUI vs PySide
Lập trình Python GUI vs PySideLập trình Python GUI vs PySide
Lập trình Python GUI vs PySide
 
toán kinh tế hungary
toán kinh tế  hungary toán kinh tế  hungary
toán kinh tế hungary
 
[Toán kinh tế ứng dụng] Bài 1: Hàm tuyến tính
[Toán kinh tế ứng dụng] Bài 1: Hàm tuyến tính[Toán kinh tế ứng dụng] Bài 1: Hàm tuyến tính
[Toán kinh tế ứng dụng] Bài 1: Hàm tuyến tính
 
Bài tập thực hành số 1
Bài tập thực hành số 1Bài tập thực hành số 1
Bài tập thực hành số 1
 
Tính toán khoa học - Chương 8: Quy hoạch tuyến tính
Tính toán khoa học - Chương 8: Quy hoạch tuyến tínhTính toán khoa học - Chương 8: Quy hoạch tuyến tính
Tính toán khoa học - Chương 8: Quy hoạch tuyến tính
 
Giáo trình xử lý ảnh
Giáo trình xử lý ảnhGiáo trình xử lý ảnh
Giáo trình xử lý ảnh
 
Descriptive Analytics: Data Reduction
 Descriptive Analytics: Data Reduction Descriptive Analytics: Data Reduction
Descriptive Analytics: Data Reduction
 
Bai tapqtsx
Bai tapqtsxBai tapqtsx
Bai tapqtsx
 
Tính toán khoa học - Chương 1: Nhập môn Matlab
Tính toán khoa học - Chương 1: Nhập môn MatlabTính toán khoa học - Chương 1: Nhập môn Matlab
Tính toán khoa học - Chương 1: Nhập môn Matlab
 
Pp vận tải thế vị
Pp vận tải thế vịPp vận tải thế vị
Pp vận tải thế vị
 

Similar a Tính toán khoa học: Chương 3: Đường cong khớp

cac-thuat-toan-sap-xep
cac-thuat-toan-sap-xepcac-thuat-toan-sap-xep
cac-thuat-toan-sap-xepVinh Ton Long
 
Bai giang-toan-kinh-te-tin-hoc
Bai giang-toan-kinh-te-tin-hocBai giang-toan-kinh-te-tin-hoc
Bai giang-toan-kinh-te-tin-hocLê Ngọc Huyền
 
Www.mathvn.com 33 dang toan khao sat ham so ltdh
Www.mathvn.com   33 dang toan khao sat ham so ltdhWww.mathvn.com   33 dang toan khao sat ham so ltdh
Www.mathvn.com 33 dang toan khao sat ham so ltdhHuynh ICT
 
Giaitichcoso(PGS.TS.NguyenBichHuy).pdf
Giaitichcoso(PGS.TS.NguyenBichHuy).pdfGiaitichcoso(PGS.TS.NguyenBichHuy).pdf
Giaitichcoso(PGS.TS.NguyenBichHuy).pdfBui Loi
 
ThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáNThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáNguest717ec2
 
Phương pháp nửa nhóm n −lần tích hợp trên không gian Banach X - Gửi miễn phí ...
Phương pháp nửa nhóm n −lần tích hợp trên không gian Banach X - Gửi miễn phí ...Phương pháp nửa nhóm n −lần tích hợp trên không gian Banach X - Gửi miễn phí ...
Phương pháp nửa nhóm n −lần tích hợp trên không gian Banach X - Gửi miễn phí ...Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Toan kinh te
Toan kinh teToan kinh te
Toan kinh teHeo Gòm
 

Similar a Tính toán khoa học: Chương 3: Đường cong khớp (20)

Luận văn: Phương trình phi tuyến không chỉnh loại J - đơn điệu, 9đ
Luận văn: Phương trình phi tuyến không chỉnh loại J - đơn điệu, 9đLuận văn: Phương trình phi tuyến không chỉnh loại J - đơn điệu, 9đ
Luận văn: Phương trình phi tuyến không chỉnh loại J - đơn điệu, 9đ
 
Luận văn: Phương trình sóng phi tuyến chứa số hạng KIRCHHOFF có nguồn phi tuyến
Luận văn: Phương trình sóng phi tuyến chứa số hạng KIRCHHOFF có nguồn phi tuyếnLuận văn: Phương trình sóng phi tuyến chứa số hạng KIRCHHOFF có nguồn phi tuyến
Luận văn: Phương trình sóng phi tuyến chứa số hạng KIRCHHOFF có nguồn phi tuyến
 
cac-thuat-toan-sap-xep
cac-thuat-toan-sap-xepcac-thuat-toan-sap-xep
cac-thuat-toan-sap-xep
 
Bai giang-toan-kinh-te-tin-hoc
Bai giang-toan-kinh-te-tin-hocBai giang-toan-kinh-te-tin-hoc
Bai giang-toan-kinh-te-tin-hoc
 
Www.mathvn.com 33 dang toan khao sat ham so ltdh
Www.mathvn.com   33 dang toan khao sat ham so ltdhWww.mathvn.com   33 dang toan khao sat ham so ltdh
Www.mathvn.com 33 dang toan khao sat ham so ltdh
 
MATMAT- Chuong1
MATMAT- Chuong1MATMAT- Chuong1
MATMAT- Chuong1
 
Baitapmaygiat
BaitapmaygiatBaitapmaygiat
Baitapmaygiat
 
Luận văn: Bài toán biên cho hệ phương trình vi phân hàm tuyến tính
Luận văn: Bài toán biên cho hệ phương trình vi phân hàm tuyến tínhLuận văn: Bài toán biên cho hệ phương trình vi phân hàm tuyến tính
Luận văn: Bài toán biên cho hệ phương trình vi phân hàm tuyến tính
 
Giaitichcoso(PGS.TS.NguyenBichHuy).pdf
Giaitichcoso(PGS.TS.NguyenBichHuy).pdfGiaitichcoso(PGS.TS.NguyenBichHuy).pdf
Giaitichcoso(PGS.TS.NguyenBichHuy).pdf
 
ThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáNThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáN
 
Doc
DocDoc
Doc
 
Cau hoi phu
Cau hoi phuCau hoi phu
Cau hoi phu
 
Ứng Dụng Công Thức Viète Trong Giải Toán Bậc Phổ Thông.doc
Ứng Dụng Công Thức Viète Trong Giải Toán Bậc Phổ Thông.docỨng Dụng Công Thức Viète Trong Giải Toán Bậc Phổ Thông.doc
Ứng Dụng Công Thức Viète Trong Giải Toán Bậc Phổ Thông.doc
 
Phương pháp nửa nhóm n −lần tích hợp trên không gian Banach X - Gửi miễn phí ...
Phương pháp nửa nhóm n −lần tích hợp trên không gian Banach X - Gửi miễn phí ...Phương pháp nửa nhóm n −lần tích hợp trên không gian Banach X - Gửi miễn phí ...
Phương pháp nửa nhóm n −lần tích hợp trên không gian Banach X - Gửi miễn phí ...
 
Đề tài: Phương pháp tiếp cận nửa nhóm tuyến tính của phương trình
Đề tài: Phương pháp tiếp cận nửa nhóm tuyến tính của phương trìnhĐề tài: Phương pháp tiếp cận nửa nhóm tuyến tính của phương trình
Đề tài: Phương pháp tiếp cận nửa nhóm tuyến tính của phương trình
 
4-Optimization.pdf
4-Optimization.pdf4-Optimization.pdf
4-Optimization.pdf
 
De thi
De thiDe thi
De thi
 
Luận văn: Phương trình tích phân ngẫu nhiên, HOT, 9đ
Luận văn: Phương trình tích phân ngẫu nhiên, HOT, 9đLuận văn: Phương trình tích phân ngẫu nhiên, HOT, 9đ
Luận văn: Phương trình tích phân ngẫu nhiên, HOT, 9đ
 
Luận văn: Phương trình tích phân ngẫu nhiên, HAY
Luận văn: Phương trình tích phân ngẫu nhiên, HAYLuận văn: Phương trình tích phân ngẫu nhiên, HAY
Luận văn: Phương trình tích phân ngẫu nhiên, HAY
 
Toan kinh te
Toan kinh teToan kinh te
Toan kinh te
 

Tính toán khoa học: Chương 3: Đường cong khớp

  • 1. Chương 3: Đường Cong Khớp Nguyễn Đức Nghĩa, Vũ Văn Thiệu, Trịnh Anh Phúc 1 Bộ 1 môn Khoa Học Máy Tính, Viện CNTT & TT, Trường Đại Học Bách Khoa Hà Nội. Ngày 13 tháng 12 năm 2012 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012 Tính TT, Trường Ngày 13 tháng 1 / 58
  • 2. Giới thiệu 1 Đặt vấn đề 2 Nội suy Nội suy Lagrange Nội suy spline 3 Hồi qui Hồi qui tuyến tính Đương cong khớp bậc cao Đường cong khớp tổng quát Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012 Tính TT, Trường Ngày 13 tháng 2 / 58
  • 3. Đặt vấn đề Vấn đề đặt ra là : Giả sử cần tính xấp xỉ hàm f (x) không biết rõ công thức, tuy nhiên bằng thực nghiệm ta xác định được giá trị f (x) tại n + 1 điểm rời rạc fi = f (xi ) i = 0, 1, · · · , N Cho bộ dữ liệu {(xi , fi ), i = 0, N}, cần tìm cách xấp xỉ hàm f (x) bởi một hàm (có thể được tính theo công thức giải tích) p(x) sao cho ’khoảng cách’ giữa chúng trên bộ dữ liệu nhỏ nhất có thể. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012 Tính TT, Trường Ngày 13 tháng 3 / 58
  • 4. Đặt vấn đề (tiếp) tiếp tục... Để giải quyết vấn đề Ta sẽ tìm hiểu hai phương pháp dùng để để xây dựng đường cong khớp (curve fitting) Nội suy (Interpolation) : hàm p(x) phải đi qua tất cả các điểm thuộc bộ dữ liệu. Hồi quy (Regression) dùng tiêu chí bình phương bé nhất (least squares) : cho trước dạng f (x) có tham số, ta phải điều chỉnh các tham số này bằng cách cực tiểu nó theo tiêu chí nào đó. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012 Tính TT, Trường Ngày 13 tháng 4 / 58
  • 5. Nội suy Mở đầu Phép nội suy có thể thực hiện với các hàm p(x) là Hàm đa thức Hàm hữu tỷ Hàm chuỗi Fourier Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012 Tính TT, Trường Ngày 13 tháng 5 / 58
  • 6. Nội suy Nội suy Định nghĩa : Ta nói hàm p(x) là hàm nội suy bộ dữ liệu {(xi , fi ), i = 0, N} nếu thực hiện các điều kiện sau pi = fi i = 0, 1, · · · , N hệ N + 1 đẳng thức gọi là điều kiện nội suy. Sở dĩ hàm đa thức được chọn vì việc tính giá trị, đạo hàm, vi phân dễ dàng (tính chất giải tích của hàm rõ ràng). Đa thức nội suy bộ dữ liệu được gọi là đa thức nội suy (interpolating polynominal) Định nghĩa : Ta gọi đa thức bậc không quá K là hàm pK (x) = a0 + a1 x + · · · + aK x K trong đó a0 , a1 , · · · , aK là các hằng số. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012 Tính TT, Trường Ngày 13 tháng 6 / 58
  • 7. Nội suy Nội suy tuyến tính Ta có hai điểm dữ liệu (x0 , f0 ) và (x1 , f1 ) cần nội suy bởi đa thức p1 (x) ≡ a0 + a1 x thỏa mãn hệ phương trình p1 (x0 ) ≡ a0 + a1 x0 = f0 p1 (x1 ) ≡ a0 + a1 x1 = f1 Giải ra, ta có Khi x0 = x1 xảy ra hai trường hợp f f1 −f nếu f0 = f1 thì p1 (x) = x1x0 −x0 f1 + x1 −x00 x 1 −x0 nếu f0 = f1 thì lời giải là hằng số ⇒ đa thức bậc không. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012 Tính TT, Trường Ngày 13 tháng 7 / 58
  • 8. Nội suy Nội suy tuyến tính (tiếp) f (9,6) p1 (x) = 0.6 + 0.6x (4,3) x Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012 Tính TT, Trường Ngày 13 tháng 8 / 58
  • 9. Nội suy Công thức nội suy Lagrange Cần xây dựng đường cong đi qua 3,4 hay nhiều điểm (xem hình). f (9,6) (7,4) (4,3) x Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Khoa Hà Nội. ) 12 năm 2012 Tính TT, Trường Ngày 13 tháng 9 / 58
  • 10. Nội suy Công thức nội suy Lagrange (tiếp) Xét đa thức pM (x) = a0 + a1 x + a2 x 2 + · · · + aM x M Vậy đa thức pM (x) nội suy bộ dữ liệu {(xi , fi ), i = 0, N} nếu các điều kiện nội suy : 2 M pM (x0 ) ≡ a0 + a1 x0 + a2 x0 + · · · + aM x0 = f0 2 M pM (x1 ) ≡ a0 + a1 x1 + a2 x1 + · · · + aM x1 = f1 ··· 2 M pM (xN ) ≡ aN + a1 xN + a2 xN + · · · + aM xN = fN Đây là một hệ phương trình tuyến tính nên ta có thể biểu diễn bằng công thức dạng ma trận. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 10 / 58
  • 11. Nội suy Công thức nội suy Lagrange (tiếp) Như vậy dạng ma trận  1  1 . . . của điều kiện nội suy     M f0 x0 · · · x0 a0   M  a  x1 · · · x1   1   f1  . .. .  .  =  .      . . .  .   .  . . . . 1 xN M · · · xN aM fN Giả thiết là x0 , x1 , · · · , xN là phân biệt, vậy theo lý thuyết giải hệ phương trình tuyến tính trong chương trước ta có N=M : hệ phương trình có nghiệm duy nhất M<N : có thể chọn bộ dữ liệu để nó vô nghiệm M>N : nếu hệ có nghiệm thì nó có vô số nghiệm Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 11 / 58
  • 12. Nội suy Công thức nội suy Lagrange (tiếp) Khi N = M ma trận hệ số của hệ phương trình trên là ma trận Vandermonde (Không phải Voldemort)  1  1 VN =  . . . x0 x1 . . . 1 xN  M · · · x0 M · · · x1  .  ..  . .  . M · · · xN Có định thức của Vn là : (xi − xj ) VN = i>j suy ra hệ có nghiệm khi x0 , x1 , · · · , xN là phân biệt từng đôi. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 12 / 58
  • 13. Nội suy Công thức nội suy Lagrange (tiếp) Định lý (Tính duy nhất của đa thức nội suy) : Nếu các nút dữ liệu x0 , x1 , · · · , xN là khác nhau từng đôi thì tồn tại duy nhất đa thức nội suy pN (x) bậc không quá N nội suy bộ dữ liệu {(xi , fi ), i = 0, N}. Bậc của đa thức nội suy có thể nhỏ hơn N Ví dụ, khi 3 điểm dữ liệu (x0 , f0 ), (x1 , f1 ), (x3 , f3 ) thằng hàng thì phương trình nội suy trở thành bậc không quá hai do nó là đường thẳng. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 13 / 58
  • 14. Nội suy Ví dụ 1 : Xác định các hệ số của đa thức nội suy p2 (x) = a0 + a1 x + a2 x 2 nội suy bộ dữ liệu {(-1,0),(0,1),(1,3)}, ta có điều kiện nội suy a0 + (−1)a1 + (1)a2 = 0 a0 a0 + =1 (1)a1 + (1)a2 = 3 Giải hệ phương trình ta có a0 = 1, a1 = 1.5 và a2 = 0.5 vậy đa thức nội suy là p2 (x) = 1 + 1.5x + 0.5x 2 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 14 / 58
  • 15. Nội suy Công thức nội suy Lagrange (tiếp) Việc dùng giải trực tiếp hệ phương trình điều kiện nội suy dùng phép khử Gauss chẳng hạn cần đòi hỏi nhiều tính toán O(N 3 ). Thêm nữa, vì lũy thừa của hệ số x có thể rất cao nên độ sai số lại càng lớn do hiệu ứng việc làm tròn số, thậm chí còn tràn số (nhớ lại là số dấu phẩy động IEEE 754/85 độ chính xác kép chỉ là ≈ ±1038 ). ⇒ ta có thể dùng công thức nội suy Lagrange để tính hằng số của đa thức nội suy mà không cần giải hệ phương trình tuyến tính trên. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 15 / 58
  • 16. Nội suy Công thức nội suy Lagrange (tiếp) Xét bộ dữ liệu {(xi , fi ), i = 0, N} dạng Lagrange của đa thức nội suy đối với bộ dữ liệu là như sau : pN (x) = f0 V0 (x) + f1 V1 (x) + · · · + fN VN (x) trong đó Vi (x) : i = 0, 1, · · · , N là các đa thức bậc N thỏa mãn điều kiện : Vi (xj ) = 1, i = j 0, i = j Họ các đa thức Vi (x) : i = 0, 1, · · · , N được gọi là họ các đa thức cơ sở. Dễ dàng kiểm tra được rằng : pN (xi ) = fi i = 0, 1, · · · , N Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 16 / 58
  • 17. Nội suy Công thức nội suy Lagrange (tiếp) Một trong lớp đa thức cơ sở có thể xây dựng theo công thức như sau Vi (x) = (x − x0 )(x − x1 ) · · · (x − xi−1 )(x − xi+1 ) · · · (x − xn ) (xi − x0 )(xi − x1 ) · · · (xi − xi−1 )(xi − xi+1 ) · · · (xi − xn ) rõ ràng thỏa mãn Vi (xj ) = 1, i = j 0, i = j Vậy ta có thể tóm tắt lại công thức trên như sau Vi (x) = i=j (x − xj ) i=j (xi − xj ) Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 17 / 58
  • 18. Nội suy Công thức nội suy Lagrange (tiếp) Vậy công thức nội suy Lagrange pN (x) = (x − x1 )(x − x2 ) · · · (x − xN ) f0 (x0 − x1 ) · · · (x0 − xN ) ··· (x − x0 )(x − x1 ) · · · (x − xi−1 )(x − xi+1 ) · · · (x − xn ) + fi (1) (xi − x0 )(xi − x1 ) · · · (xi − xi−1 )(xi − xi+1 ) · · · (xi − xn ) ··· (x − x0 )(x − x1 ) · · · (x − xN−1 ) + fN (xN − x0 ) · · · (xN − xN−1 ) Công thức (1) tuy dài nhưng dễ nhớ và tính toán hơn. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 18 / 58
  • 19. Nội suy Cài đặt Vi (x) bẳng Matlab v = polyinterp(x,y,u) tính v(j) = P(u(j)) trong đó P là đa thức bậc d = length(x) - 1 thỏa mãn P(x(i)) = y(i). Sử dụng công thức nội suy Lagrange. Hai vectơ x,y chứa hoàng độ và tung độ của bộ dữ liệu. function v = polyinterp(x,y,u) n = length(x); v = zeros(size(u)); for k = 1:n w = ones(size(u)); for j = [1:k-1 k+1:n] w = (u-x(j))./(x(k)-x(j)).*w; end v = v + w*y(k); end Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 19 / 58
  • 20. Nội suy Cài đặt Vi (x) bẳng Matlab (tiếp) function v = polyinterp(x,y,u) n = length(x); v = zeros(size(u)); for k = 1:n w = ones(size(u)); for j = [1:k-1 k+1:n] w = (u-x(j))./(x(k)-x(j)).*w; end v = v + w*y(k); end Hai vectơ x,y chứa hoàng độ và tung độ của bộ dữ liệu. u là vec tơ chứa các hoàng độ của các điểm cần tính theo công thức nội suy Lagrange. v là vectơ chứa giá trị hàm nội suy tại các điểm cho trong u Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 20 / 58
  • 21. Nội suy Ví dụ 2 : x = [0 1 2 3]; y = [-5 -6 -1 16]; u= [0.25:0.01:3.25]; v = polyinterp(x,y,u); plot(x,y,’o’,u,v,’-’) Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 21 / 58
  • 22. Nội suy Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 22 / 58
  • 23. Nội suy Sai số nội suy Định nghĩa : Sai số của đa thức nội suy g (x) được xác định bởi công thức : e(x) = f (x) − g (x) Độ lớn của e(x) phụ thuộc vào Hoàng độ của các điểm dữ liệu. Kích thước của miền nội suy D = xn − x0 . Bậc của đa thức nội suy Đối với đa thức nội suy Lagrange, sai số được xác định bới công thức : e(x) = f (x) − g (x) = L(x)f (N+1) (ξ) trong đó f (N+1) là đạo hàm bậc N + 1 của hàm f (x) còn L(x) = (x−x0 )(x−x1 )···(x−xn ) (N+1)! Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 23 / 58
  • 24. Nội suy Sai số nội suy (tiếp) tiếp tục ... công thức : e(x) = f (x) − g (x) = L(x)f (N+1) (ξ) ξ phụ thuộc x nhưng thỏa mãn điều kiện x0 < ξ < xN . Cũng theo công thức trên nếu f(x) là đa thức bậc không quá N thì đạo hàm f (N+1) sẽ triệt tiêu, nghĩa là sai số bằng không. Do L(x) = (x−x0 )(x−x1 )···(x−xn ) nên ta có (N+1)! các kết luận sau Với một lưới cách đều, biên độ dao động của L(x) nhỏ nhất tại tâm và tăng dần về biên của miền nội suy. Kích thước nội suy tăng lên, độ lớn của dao động tăng nhanh chóng. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 24 / 58
  • 25. Nội suy Lagrange Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 25 / 58
  • 26. Nội suy spline Đặt vấn đề Trong trường hợp này ta xét phép nội suy bởi một tập các các đa thức bậc thấp thay vì một đa thức bậc cao duy nhất Nội suy bởi spline tuyến tính Nội suy bởi spline bậc ba Nhớ lại công thức đánh giá sai số nội suy Lagrange f (x) − pN (x) = [wN+1 (x)/(N + 1)!]f (N+1) (ξx ) trong đó wN+1 (x) = (x − x0 )(x − x1 ) · · · (x − xN ) và ξx là một giá trị trong khoảng (x0 , xN ). Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 26 / 58
  • 27. Nội suy spline Đặt vấn đề (tiếp) tiếp tục ... Giả sử mọi điểm dữ liệu xi ∈ [a, b] thì ta có max |f (x) − pN (x)| ≤ |b − a|N+1 × x∈[a,b] maxx∈[a,b] |f (N+1) (x)| N! Đánh giá này cho biết nếu muốn giảm sai số mà vẫn giữ nguyên số lượng điểm dữ liệu N thì cần tìm cách giảm kích thước của |b − a|. Hướng tiếp cận của ta là xấp xỉ đa thức từng khúc (piecewise polynominal approximation) : Như vậy đoạn [a, b] sẽ được chia thành nhiều đoạn nhỏ không đè nhau và các đa thức khác nhau sẽ được xấp xỉ trên từng đoạn con. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 27 / 58
  • 28. Nội suy spline Spline tuyến tính từng khúc Đối với bộ dữ liệu {(xi , fi ) : i = 0, · · · , N} trong đó a = x0 < x1 < · · · < xN = b, h ≡ max |xi − xi−1 |, i spline tuyến tính S1,N (x) là hàm liên tục nội suy dữ liệu đã cho và được xây dựng từ các hàm tuyến tính được xác định bởi các đa thức nội suy hai điểm dữ liệu : Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 28 / 58
  • 29. Nội suy spline Spline tuyến tính từng khúc (tiếp) tiếp tục...   f1 −f0 (x − x1 ) + f1 , nếux ∈ [x0 , x1 ]   x1 −x0 . .  .   f −f S1,N (x) = xii −xi−1 (x − xi ) + fi , nếux ∈ [xi−1 , xi ] . i−1  . .    f −f  N N−1  xN −xN−1 (x − xN ) + fN , nếux ∈ [xN−1 , xN ] Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 29 / 58
  • 30. Nội suy spline Spline tuyến tính từng khúc (tiếp) Sử dụng công thức sai số cho đa thức nội suy với x ∈ [a, b] cho từng đoạn [xi−1 , xi ] ta được max z∈[xi−1 ,xi ] |f (z) − S1,N (z)| ≤ ≤ |xi − xi−1 |2 × max |f (2) (x)| 8 x∈[xi−1 ,xi ] h2 × max |f (2) (x)| 8 x∈[xi−1 ,xi ] trong đó h ≡ maxi |xi − xi−1 |. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 30 / 58
  • 31. Nội suy spline Ví dụ 3 : Cho bộ dữ liệu {(-1,0),(0,1),(1,3)}, ta xây dựng spline tuyết tính như sau S1,2 (x) = f1 −f0 x1 −x0 (x f2 −f1 x2 −x1 (x − x1 ) + f1 , nếu x ∈ [x0 , x1 ] − x2 ) + f2 , nếu x ∈ [x1 , x2 ] suy ra với bộ dữ liệu tương ứng S1,2 (x) = 1−0 0−(−1) (x − 0) + 3−1 1−0 (x − 1) + 3, 1, nếu x ∈ [−1, 0] nếu x ∈ [0, 1] Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 31 / 58
  • 32. Nội suy spline Ví dụ 4 : » » » » » » » » » » » » clear; x=1:6; y=[16 18 21 17 15 12]; plot(x,y,’o’) hold on; grid on; axis([-1 7 10 22]) xx = [1:0.01:6]; yy = piecelin(x,y,xx); plot(xx,yy,’r’) hold off xlabel(’x-axis’);ylabel(’y-axis’); title(’Linear Spline Interpolation’); Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 32 / 58
  • 33. Nội suy spline Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 33 / 58
  • 34. Nội suy spline Spline bậc ba Sự khác biệt là thay vì nội suy từng đoạn bậc nhất thì ta dùng một đa thức bậc ba để ’uốn’ đường cong trơn hơn. Ta cũng có bộ dữ liệu {(xi , fi ) : i = 0, · · · , N} trong đó a = x0 < x1 < · · · < xN = b, h ≡ max |xi − xi−1 |, i Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 34 / 58
  • 35. Nội suy Lagrange Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 35 / 58
  • 36. Nội suy spline Spline bậc ba (tiếp) Định nghĩa : Spline bậc ba S3,N (x) nội suy bộ dữ liệu đã cho S3,N (x) là hàm bậc ba giữa hai nút [xi−1 , xi ]  p1 (x) = a1,0 + a1,1 x + a1,2 x 2 + a1,3 x 3 , nếux ∈ [x0 , x1 ]  .  . .   S3,N (x) = pi (x) = ai,0 + ai,1 x + ai,2 x 2 + ai,3 x 3 , nếux ∈ [xi−1 , xi ] .  . .     pN (x) = aN,0 + aN,1 x + aN,2 x 2 + aN,3 x 3 , nếux ∈ [xN−1 , xN ] S3,N (x) là hàm liên tục có đạo hàm cấp một và hai liên tục trên đoạn [x0 , xN ] (kể cả tại các nút) Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 36 / 58
  • 37. Nội suy spline Spline bậc ba (tiếp) Với xi−1 < x < xi , S3,N (x) có giá trị pi (x) = ai,0 + ai,1 x + ai,2 x 2 + ai,3 x 3 Giá trị của S3,N (x) khi x → xi− pi (xi ) pi (xi ) pi ”(xi ) Nhận xét : Với xi < x < xi+1 , S3,N (x) có giá trị pi+1 (x) = ai+1,0 + · · · + ai+1,3 x 3 Giá trị của S3,N (x) khi x → xi+ pi+1 (xi ) pi+1 (xi ) pi+1 ”(xi ) Điều kiện về tính trơn tại điểm xi thì pi (xi ) = pi+1 (xi ); pi ”(xi ) = pi+1 ”(xi ); i = 1, 2, · · · , N − 1 Điều kiện nội suy dữ liệu đảm bảo pi (xi ) = pi+1 (xi ) = fi ; i = 0, 1, 2, · · · , N − 1 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 37 / 58
  • 38. Nội suy spline Spline bậc ba (tiếp) Điều kiện biên tự nhiên (Natural Boundary Condition) p1 ”(x) = 0; pN ”(x) = 0; Điều kiện đạo hàm cấp hai (Second Derivative Condition) p1 ”(x0 ) = f ”(x0 ); pN ”(xN ) = f ”(xN ); Điều kiện sát biên (Not-a-knot Condition) p1 ”(x1 ) = p2 ”(x1 ); pN−1 ”(xN−1 ) = pN ”(xN−1 ); Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 38 / 58
  • 39. Nội suy spline Ví dụ 4 : » » » » » x = 0:10; y = sin(10*x); p = spline(x,y); xx = linspace(0,10,200); yy = ppval(p,xx); plot(x,y,’o’,xx,yy) Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 39 / 58
  • 40. Nội suy spline cấp 3 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 40 / 58
  • 41. Nội suy spline Ví dụ 5 : » x = 0:10; y = sin(10*x); » xx = linspace(0,10,200); » coef = polyfit(x,y,10); Warning: Polynomial is badly conditioned. Remove repeated data points or try centering and scaling as described in HELP POLYFIT. (Type "warning off MATLAB:polyfit:RepeatedPointsOrRescale" to suppress this warning.) » yy = polyval(coef,xx); » plot(x,y,’o’,xx,yy,’r’) Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 41 / 58
  • 42. Nội suy spline cấp 3 Như vậy khi ta nôi suy bằng spline bậc 3 thì tốt hơn nội suy đa thức với hàm sin(10x) Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 42 / 58
  • 43. Nội suy spline Ví dụ 6 : Công suất tiêu thụ điện của một thiết bị trong 12 giờ như sau 1 2 3 4 5 6 54.4 54.6 67.1 78.3 85.3 88.7 7 8 9 10 11 12 96.9 97.6 84.1 80.1 68.8 61.1 Dùng spline bậc ba để nội suy tập điểm dữ liệu trên, ta có được Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 43 / 58
  • 44. Nội suy spline cấp 3 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 44 / 58
  • 45. Nội suy spline cấp 3 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 45 / 58
  • 46. Hồi qui Đặt vấn đề Cho bộ dữ liệu {(xi , fi ), i = 1, · · · , N}, cần tìm cách xấp xỉ hàm f (x) bởi một hàm p(x). Ta cần quan tâm đo sai số tổng công trên toàn đoạn Sai số cực đại E∞ (f ) = max1≤k≤n |f (xk ) − yk | Sai số trung bình E1 (f ) = n k=1 |f 1 n (xk ) − yk | Căn bậc hai của tổng các bình phương sai số E2 (f ) = 1 n 1/2 n (f (xk ) − yk ) 2 k=1 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 46 / 58
  • 47. Hồi qui Hồi qui tuyến tính Hồi qui tuyến tính là việc tìm một đường thẳng khớp với các điểm dữ liệu theo nghĩa bình phương tối thiểu. Cho tập N cặp điểm dữ liệu {(xi , fi ) : i = 1, · · · , N} Tìm hệ số m và hằng số tự do b của đường thẳng y (x) = mx + b sao cho đường thẳng này khớp với dữ liệu theo tiêu chí bình phương tối thiểu. N (fi − (mxi + b))2 L(m, b) = i=1 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 47 / 58
  • 48. Hồi qui Hồi qui tuyến tính (tiếp) Nghĩa là ta cần tìm m và b để đạt cực tiểu hàm N (fi − (mxi + b))2 L(m, b) = i=1 để tìm cực tiểu này, ta cần giải hệ phương trình tìm điểm dừng ∂L = ∂m ∂L = ∂b N 2(fi − (mxi + b))(−xi ) = 0 i=1 N 2(fi − (mxi + b))(−1) = 0 i=1 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 48 / 58
  • 49. Hồi qui Hồi qui tuyến tính (tiếp) N N xi2 m + i=1 N N xi b = i=1 N xi m + i=1 xi fi i=1 N 1 b= i=1 fi i=1 hay dưới dạng ma trận, N 2 i=1 xi N i=1 xi N i=1 xi N m b = N i=1 xi fi N i=1 fi Giải hệ phương trình ta có được hệ số m và b. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 49 / 58
  • 50. Hồi qui Ví dụ 6 : Xây dựng đường cong khớp cho bộ dữ liệu sau i 1 2 3 4 xi 1 3 4 5 fi 2 4 3 1 Vậy hệ phương trình cần giải là 13m + 4b = 10 51m + 13b = 31 từ đó tìm được b = 107/35 và m = −6/35, đường thẳng cần tìm là y = (−6/35)x + 107/35 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 50 / 58
  • 51. Hồi qui Đường cong khớp bậc cao Xây dựng đường cong khớp pM (x) = a0 + a1 x + a2 x 2 + · · · + aM x M khớp với bộ dữ liệu {(xi , fi )i = 1, · · · , N} theo tiêu chí bình phương tối thiểu σM ≡ (pM (x1 ) − f1 )2 + (pM (x2 ) − f2 )2 + · · · + (pM (xN ) − fN )2 Giải hệ phương trình tìm điểm dừng ∂ ∂ ∂ σM = 0; σM = 0; σM = 0; · · · ∂a0 ∂a1 ∂aM Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 51 / 58
  • 52. Hồi qui Đường cong khớp bậc cao (tiếp) Viết dưới dạng ma trận hệ  N N i=1 1 i=1 xi  N N 2  i=1 xi i=1 xi  . .  . . . .  N N M+1 M i=1 xi i=1 xi phương trình chuẩn    N M ··· a0 i=1 xi   N M+1   ···   a1   i=1 xi  .  =  . ..  .   . . .  .   ··· N 2M i=1 xi aM N i=1 fi N i=1 fi xi . . . N M i=1 fi xi       Điểm đặc biệt của ma trận trên là bán xác định đương nên ta có thể dùng phép khử Gauss mà không cần thay đổi dòng, để giải hệ phương trình chuẩn. Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 52 / 58
  • 53. Hồi qui Ví dụ 7 : Xác định các tham số a, b, c ccủa đường cong y = ax 2 + bx + c khớp với bộ dữ liệu sau x 1 2 3 4 5 6 7 8 y 1 8 27 64 125 216 350 560 Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 53 / 58
  • 54. Hồi qui Ví dụ 7 : (tiếp) x = [1 2 3 4 5 6 7 8]; y = [1 8 27 64 125 216 350 560]; s0 = length(x); s1 = sum(x); s2 = sum(x.2); s3 = sum(x.3); s4 = sum(x.4); A = [s4 s3 s2; s3 s2 s1; s2 s1 s0]; b = [sum(x.2.*y); sum(x.*y);sum(y)]; c0 = A b; c = polyfit(x,y,2); c0 c xx = 1:0.1:8; yy = polyval(c0,xx); plot(x,y,’o’,xx,yy) Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 54 / 58
  • 55. Hồi qui Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 55 / 58
  • 56. Hồi qui Đường cong khớp tổng quát Giả sử ta muốn khớp N điểm đa cho {(xi , fi ) : i = 1, · · · , N} bởi họ gồm m hàm độc lập tuyến tính ϕj (x), j = 1, 2, · · · , m tức là hàm f (x) cần tìm có dạng m f (x) = cj ϕj (x) j=1 Chẳng hạn các họ hàm sau ϕj (x) = x j , j = 1, 2, · · · , m ϕj (x) = sin(jx), j = 1, 2, · · · , m ϕj (x) = cos(jx), j = 1, 2, · · · , m Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 56 / 58
  • 57. Hồi qui Đường cong khớp tổng quát (tiếp) Ta cần xác định các số c1 , c2 , · · · , cm để cực tiểu hóa sai số căn bậc hai của tổng các bình phương sai số : n n (f (xk ) − fk )2 = E (c1 , c2 , · · · , cm ) = k=1  2 cj ϕj (x) − fk   k=1  m j=1 Để tìm các hệ số c1 , c2 , · · · , cm , ta cần giải hệ phương trình ∂E = 0, j = 1, 2, · · · , m ∂cj Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 57 / 58
  • 58. Hồi qui Trịnh Anh Phúc ( Bộ môn Khoa Học Máy Tính, Viện CNTT &toán khoa họcĐại Học Bách Ngày 13 tháng )12 năm 2012 Tính TT, Trường Khoa Hà Nội. 58 / 58