Trang 1 ĐẠI HỌC THÁI NGUYÊNTRƯỜNG ĐẠI HỌC KHOA HỌC ------ NGUYỄN VIỆT HÀ BÀI TOÁN XẤP XỈ HÀM NHIỀU BIẾN VÀ MẠNG RBFChuyên ngành: Toán ứng dụng Mã số: 8 46 01 12 LUẬN VĂN THẠC SĨ TOÁN
Một số kiến thức cơ bản
Không gian vectơ tuyến tính
Định nghĩa 1.1.1 Không gian vector tuyến tínhE là một tập hợp các phần tử, gọi là vector, định nghĩa trên một trường vô hướng K thoả mãn các điều kiện sau: i) Tồn tại phép cộng (+): Với mọi X, Y ∈ E ⇒ X +Y ∈ E thỏa mãn các tính chất:
– Tồn tại phần tử θ∈E thỏa mãn: X+θ=θ+X =X
– Tồn tại phần tử đối(−X)thỏa mãn: X+ (−X) = (−X) +X =θ ii) Tồn tại phép nhân (×): Mọi số vô hướng a ∈ K, X ∈ E ⇒ a×X ∈ E, đồng thời thỏa mãn:
– Tồn tại phần tử đơn vị1 của trườngK thỏa mãn: 1×X =X
– Phép nhân thỏa mãn các tính chất: a×(b×X) = (a×b)×X;
∀a, b∈K;X, Y ∈E. Định nghĩa 1.1.2 (Hệ độc lập tuyến tính)
Hệ vectơ X 1 , X 2 , , X n được gọi là hệ độc lập tuyến tính nếu: α 1 X 1 +α 2 X 2 + +α n X n =θ⇔α 1 =α 2 = =α n = 0
Hệ vectơ không độc lập tuyến tính gọi là hệ phụ thuộc tuyến tính. Định nghĩa 1.1.3 Cơ sở, số chiều của không gian vectơ
Số chiều của không gian vectơ E chính là số vectơ độc lập tuyến tính cực đại trong E Ta thường kí hiệu E n là không gian vectơ có số chiều n Khi đó, hệ vectơ độc lập tuyến tính cực đại lập nên một hệ cơ sở của không gian E. Định nghĩa 1.1.4 Tọa độ của vectơ
Xét vectơ X ∈E, giả sử {e 1 , e 2 , , e n } là một hệ cơ sở của E Khi đó ta có khai triển X =x 1 e 1 +x 2 e 2 + +x n e n với x 1 , x 2 , , x n ∈ K Khi đó bộ số (x 1 , x 2 , , x n ) được gọi là tọa độ của vectơ X trong hệ cơ sở {e 1 , e 2 , , e n }.
Từ đây, ta chỉ xét không gian tuyến tính E = R n gồm các phần tử là các vectơ có tọa độ là các số thực Trường K chỉ xét trường số thực R.
Không gian tích vô hướng
Định nghĩa 1.2.1 Xét không gian tuyến tính E = R n , ta đưa vào ánh xạ h., i :
E×F →K thỏa mãn các tính chất: i) Xác định dương: hX, Xi ≥0,∀X ∈E.hθ, θi= 0. ii) Tính tuyến tính: hX, αY +βZi=αhX, Yi+βhX, Zi,∀X, Y, Z ∈E, α, β ∈K. iii) Tính đối xứng: hX, Yi=hY, Xi.
Khi đó hX, Yi được gọi là tích vô hướng của hai vectơ X và Y. Định nghĩa 1.2.2 Hai vectơ X, Y được gọi là trực giao nếuhX, Yi= 0. Định nghĩa 1.2.3 Hệ vectơ cơ sở{e 1 , e 2 , , e n }được gọi là hệ trực giao nếuhe i , e j i0,∀i6=j. Định nghĩa 1.2.4 Kí hiệu kxk=hX, Xi 1 2 được gọi là chuẩn của vectơ X. Định nghĩa 1.2.5 Hệ vectơ cơ sở {e1, e2, , en} được gọi là hệ trực chuẩn nếu he i , e j i= 0,∀i6=j và ke i k= 1,∀i= 1,2, , n
• Trong không gianE =R n , chúng ta thường xét hệ trực chuẩn dạng:{e 1 , e 2 , , e n } với e 1 = (1,0,0, ,0), e 2 = (0,1,0,0, ,0), , e n = (0,0, ,0,1).
• Giả sửX = (x 1 , x 2 , , x n ), Y = (y 1 , y 2 , , y n )xác định trên hệ cơ sở trực chuẩn. Khi đó chúng ta dễ dàng xác định được: hX, Yi n
Xét hệ vecto độc lập tuyến tính {X 1 , X 2 , , X n } , giả sử rằng hệ chưa là hệ trực chuẩn, ta cần biến đổi hệ trên về hệ trực chuẩn {V 1 , V 2 , , V n } Khi đó ta có thể sử dụng phương pháp biến đổi theo ý tưởng sau đây:
Xuất phát V 1 = X 1 Để nhận được vector trực giao thứ 2 ta sử dụng X 2 nhưng trừ bớt đi một phần của Y 2 theo hướng của V 1 :V 2 =X 2 −aV 1 , với a được chọn sao cho V 2 trực giao vớiV 1 Điều này đòi hỏi : hV1, V2i=hV1, X2−aV1i=hV1, X2i −ahV1, V1i= 0 hay a = hV1, X2i hV 1 , V 1 i Tương tự như vậy, để nhận được vectơ trực giao thứ k, ta sử dụng X k nhưng trừ với đi một phần của X k theo hướng của Vk−1, tức là:
X i=1 hV i , V k i hV i , V i iV i Để chuẩn hóa độ dài các vectơ về 1, ta cần biến đổi:
Tổng quát, ta thu được thuật toán chuẩn hóa như sau:
Input: {X 1 , X 2 , , X n } là hệ độc lập tuyến tính.
Output: {V 1 , V 2 , , V n } là hệ trực chuẩn.
V 1 =X 1 Bước 2:Với mọi k= 2,3, , n, xác định:
Các phép toán cơ bản về ma trận
Trong phần này, luận văn đề cập đến một số các phép toán về ma trận để sử dụng được với học máy cơ bản.
1.3.1 Một số kí hiệu cơ bản i) Kí hiệuA = (aij)N ×M là ma trận cóN hàng và M cột, phần tử aij là phần tử nằm tại hàng tứ ivà cột thứ j. ii) Kí hiệu A T = (a ji ) N ×M là ma trận chuyển vị của ma trận A, các phần tử của ma trận chuyển vị chính là phần tử đối xứng qua đường chéo chính trong ma trận A. iii) Ma trận A với số hàng bằng số cột được gọi là ma trận vuông. iv) Kí hiệu E = (0)N×M là ma trận không là ma trận tất cả các phần tử đều bằng 0. v) Kí hiệu I là ma trận đợn vị gồm các phần tử trên đường chéo chính bằng 1, các phần tử còn lại bằng 0. Định nghĩa 1.3.1 Cho ma trận vuông Acấp N, định nghĩa định thức của ma trận
A là số được xác định bằng công thức: det(A) = X
(−1) N σ a 1i 1 a 2i 2 a N i N trong đó (i 1 , i 2 , , i N ) là một hoán vị của tập(1,2, , N), số N σ chính bằng số cách chuyển từ hoán vị (i1, i2, , iN) về trạng thái(1,2,3, , N), tổng lấy với mọi hoán vị của (1,2, , N).
Khi đó, nếu A là ma trận có det(A)6= 0 thì A được gọi là ma trận không suy biến.
1.3.2 Các phép toán cơ bản
1 Phép nhân ma trận A với một số k vô hướng, kí hiệu kA= (ka ij ) N ×M
2 Phép cộng ma trận cùng cấp
3 Phép nhân hai ma trận trong đó số hàng của ma trận A bằng số cột của ma trận B
X k=1 a ik b kj ) N ×M với A= (a ij ) N ×K, B = (b ij )K×M
1.3.3 Một số ma trận đặc biệt
Cho ma trận A là ma trận vuông cấp N, giả sử ma trận A là ma trận không suy biến Khi đó tồn tại ma trận B thỏa mãn tính chất:
A×B =B×A =I với I là ma trận đơn vị.
Khi đó ma trậnB được gọi là ma trận nghịch đảo của ma trân A và kí hiệu là
Cho ma trận A là ma trận vuông, kí hiệu B ij là ma trận thu được khi bỏ đi hàng j và cột thứ j của ma trận A Khi đó giá trị b ij = (−1) i+j det(B ij ) được gọi là phần bù đại số của phần tử a ij Ma trận A ∗ = (b ij )được gọi là ma trận liên hợp của ma trận A.
3 Ma trận giả nghịch đảo
Cho ma trậnA là ma trận bất kì, ta định nghĩa ma trận giả nghịch đảo A + là ma trận thỏa mãn các tính chất:
+ (AA + ) ∗ + (AA + là một ma trận Hermite)
+ (A + A) ∗ =A + A (A + A là một ma trận Hermite)
+ Nếu A khả nghịch, ma trận giả nghịch đảo và ma trận nghịch đảo là một:
+ Giả nghịch đảo của giả nghịch đảo chính là ma trận ban đầu:(A + ) + =A.+ Phép lấy giả nghịch đảo giao hoán với phép chuyển vị: (A T ) + = (A + ) T + Phép lấy giả nghịch đảo giao hoán với phép liên hợp: (A ∗ ) + = (A + ) ∗ + Giả nghịch đảo của tích của một đại lượng vô hướng với A là tích của nghịch đảo của đại lượng vô hướng đó với A + :(αA) + =α −1 A + ,∀α 6= 0
Khi đó dễ dàng xác định với A là một ma trận bất kì thì ma trậnA + được xác định bởi công thức A + = (A T ×A) −1 ×A T
1.3.4 Chuẩn của vectơ và ma trận
Xét vector X = (x 1 , x 2 , , x N ), ma trận A = (a ij )N×M Khi đó trong tính toán, chúng ta thường sử dụng các công thức tính chuẩn của vectơ và ma trận như sau: kXk 1 = max|x i |; kXk 2 =|x 1 |+|x 2 |+ +|x N |; kXk 3 N
1 2 kAk 1 = max|a ij |; kAk 2 = max i=1, N
Cần chú ý rằng các chuẩn trên đã được chứng minh là tương đương theo nghĩa nếu một phương pháp lặp nào đã hội tụ với một chuẩn thì sẽ hội tụ với mọi chuẩn tương đương Do đó trong tính toán ta có thể tùy chọn chuẩn.
Lý thuyết về bài toán tối ưu
Tối ưu hóa là một trong những lĩnh vực quan trọng của toán học có ảnh hưởng đến hầu hết các lĩnh vực khoa học, công nghệ và kinh tế và xã hội Việc tìm giải pháp tối ưu cho một bài toán thực tế nào đó chiếm một vai trò hết sức quan trọng như việc tiến hành lập kế hoạch sản xuất hay thiết kế hệ thống điều khiển các quá trình. Sau đây luận văn sẽ trình bày tóm tắt mô hình cơ bản của bài toán tối ưu.
Bài toán tối ưu tổng quát được phát biểu như sau:
Cực đại hóa (cực tiểu hóa) hàm: f(X)→max(min)
Với các điều kiện: g i (X) = b i , i∈J 1 ; g j (X)≤b j , j ∈J 2 ; g k (X)≥b k , k∈J 3 (∗) trong đó f(X)được gọi là hàm mục tiêu, Các điều kiện (*) được gọi là các điều kiện ràng buộc,X = (x 1 , x 2 , , x n )là véc tơ thuộc không gianR n Tập các véc tơX thỏa mãn hệ ràng buộc lập nên một miền D được gọi là miền phương án (hay miền chấp nhận được), mỗi điểmX ∈Dgọi là một phương án Một phương ánX ∗ làm cho hàm mục tiêu f(X) đạt max(min)được gọi là phương án tối ưu.
1.4.2 Phân loại bài toán tối ưu
Dựa trên mô hình tổng quát, người ta thường phân loại lớp các bài toán tối ưu như sau:
• Qui hoạch tuyến tính: là những bài toán mà hàm mục tiêu f(X) và tất cả các hàm ràng buộc g i (X), g j (X), g k (X) là tuyến tính.
• Qui hoạch phi tuyến: là những bài toán một trong các hàm mục tiêu f(X) hoặc các hàm ràng buộc g i (X), g j (X), g k (X) là phi tuyến.
• Qui hoạch rời rạc: Bài toán tối ưu được gọi là qui hoạch rời rạc nếu miền ràng buộc là tập hợp rời rạc Trong trường hợp riêng khi các biến chỉ nhận giá trị nguyên thì ta có qui hoạch nguyên.
• Qui hoạch đa mục tiêu:Nếu trên cùng một miền ràng buộc ta xét đồng thời các hàm mục tiêu khác nhau.
Trong các lĩnh vực kinh tế kỹ thuật thì qui hoạch phi tuyến là những bài toán thường gặp.
1.4.3 Khái niệm về gradient và đạo hàm hướng
1 Gradient của f(x) là một vectơ có các thành phần là các đạo hàm riêng :
2 Đạo hàm theo hướngz của hàmf(x)tại điểmx 0 là hình chiếu của vectơ∇f(x 0 ) lên hướng z : f z 0 (x 0 ) =h∇f(x 0 ), zi=|∇f(x 0 )|.|z|.cos (∇f(x 0 ), z)
3 Ma trận Hessian H(x) là ma trận gradient cấp hai của f(x)
Vectơ∇f(x 0 )vuông góc với đường mức củaf(x) tạix 0 , do đó tốc độ hàmf(x)tăng nhanh nhất theo hướng của∇f(x0), từ đó nếu đi theo hướng−∇f(x0)thìf(x)giảm nhanh nhất Khi đó hướng −∇f(x 0 ) được gọi là hướng đường dốc nhất.
1.4.4 Thuật toán Gradient (đường dốc)
Phương pháp đường dốc nhất (the steepest descent method) là một trong các phương pháp cổ điển thông dụng nhất giải tối ưu không ràng buộc nhiều biến Xét bài toán tối ưu không ràng buộc tổng quát: minf(x), x= (x 1 , x 2 , , x n )∈R n
Ta gọi vector d là hướng giảm của hàm f : R n → R tại x nếu ∃δ > 0 sao cho f(x+λd)< f(x),∀λ∈(0, δ) Giả sử hàm f khả vi tại x,∇f(x)6= 0 Khi đó, có thể chứng minh được d =− ∇f(x) k∇f(x)k là hướng giảm nhanh nhất, tức là d là lời giải của bài toán minf 0 (x, d), trong đó f 0 (x, d) là đạo hàm theo hướng d tại x, với điều kiện kdk ≤1
Thuật toán đường dốc nhất có thể được tóm tắt qua các bước như sau:
Cho ε làm sai số kết thúc Lấy một điểm xuất phát x (1) , đặt k := 1và chuyển sang các bước lặp.
Bước 3: Đặt x (k+1) =x (k) +λ k d (k) , k:=k+ 1 chuyển về bước 2
Bước 4: Kết thúc Nếuk∇f(x (k) )k ≤ε thì dừng.
Tốc độ hội tụ của phương pháp phụ thuộc vào việc chọn tham số bước nhảy λk Thông thường trong tính toán ta cần chọn bước nhảy trong khoảng (0,1).
Trong phương pháp đường dốc nhất, quy tắc dịch chuyển cho bởi x (k+1) =x (k) + λ k d (k) với d (k) = −∇f(x (k) ) Trong phương pháp Newton, ta cũng có quy tắc dịch chuyển tương tự với d (k) được thay thế bởi H −1 (x (k) ) , trong đó H(x (k) ) là ma trận Hessian được tính tại điểm x (k) với điều kiện ma trận này khả nghịch.
Thuật toán này được mô tả theo các bước sau:
+ Tốc độ hội tụ của phương pháp phụ thuộc vào việc chọn tham số bước nhảy λ k , thông thường trong tính toán ta cần chọn bước nhảy trong khoảng (0,1).
+ Thuật toán Newton được chứng minh là hội tụ nhanh hơn thuật toán Gradient tuy nhiên cần đòi hỏi các đạo hàm riêng cấp hai là tồn tại.
+ Ngoài hai phương pháp cơ bản trên, tùy thuộc vào từng dạng bài toán, trong lý thuyết tối ưu đã đề xuất nhiều phương pháp hữu hiệu giải bài toán tối ưu không buộc hoặc có ràng buộc, đặc biệt là các mô hình bài toán phi tuyến.
Mô hình mạng Neural
Mạng neural nhân tạo (Artificial Neural Netwworks) được xây dựng dựa trên cấu trúc của bộ não con người, giúp ta đưa ra một phương pháp mới trong lĩnh vực tiếp cận hệ thống thông tin Mạng neural nhân tạo có thể thực hiện các bài toán nhận mẫu (Recognition), tối ưu, nhận dạng (Identiffication) và tính toán xấp xỉ Nguyên nhân thúc đẩy nghiên cứu mạng neural xuất phát từ việc mô phỏng sinh học, đặc biệt là mô phỏng neural thần kinh Với khoảng 10 12 neural ở não người, mỗi neural có thể nhận hàng vạn tín hiệu từ các khớp thần kinh và được coi là một cơ chế sinh học phức tạp nhất có khả năng giải quyết những vấn đề như: nghe, nhìn, nói, hồi ức thông tin, phân biệt các mẫu mặc dù dữ liệu bị méo mó, thiếu hụt Não thực hiện những nhiệm vụ như vậy bởi có những phần tử tính gọi là neural Não phân bổ việc xử lý thông tin cho hàng tỷ neural có liên quan, điều khiển liên lạc giữa các neural. Neural không ngừng nhận và truyền thông tin lẫn nhau Cơ chế hoạt động của neural bao gồm: Tự liên kết, tổng quát hoá và tự tổ chức Các neural liên kết với nhau thành mạng, mỗi mạng gồm hàng vạn các phần tử neural khác nhau, mỗi phần tử neural có khả năng liên kết với hàng ngàn các neural khác Vì vậy các nhà khoa học tìm cách xây dựng các mô hình tính toán mới dựa trên mô hình tương tự như neural trong não người Sau đây chúng ta nghiên chi tiết các mô hình.
1.5.1 Mô hình neural sinh học
Các thành phần cơ bản của neural sinh học:
• Mỗi neural có phần thân và nhân bên trong (gọi là soma)
• Một đầu thần kinh ra (gọi là sợi trục axon) và một hệ thống dạng cây các dây thần kinh vào (gọi là dendrite).
• Các dây thần kinh vào tạo thành một lưới dày đặc xung quanh thân tế bào
• Các khớp nối (gọi là synapse).
Quá trình học:Khi có xung kích thích từ bên ngoài tới, các khớp cản lại khác nhau,cho đi qua hoặc không và sẽ kích thích hay ức chế các neural tiếp theo Do đó hình thành một con đường dẫn truyền xung nhất định Hoặc là làm cho con đường này được lặp lại nhiều lần, nên sức cản các khớp nhỏ dần, tạo điều kiện cho các lần sau lặp lại dễ dàng hơn Các trọng sốw ij - biểu diễn mối liên kết giữa các neural - tức là đại lượng có ý nghĩa ngược lại với sức cản của khớp.
Hình 1.1: Mô hình Neural sinh học
1.5.2 Mô hình neural nhân tạo
Một neural nhân tạo phản ánh các tính chất cơ bản của neural sinh học và được mô phỏng dưới dạng sau:
Hình 1.2: Mô hình neural nhân tạo
• Đầu vào gồmR tín hiệu pi,(i= 1,2, , R)
• Đầu ra là tín hiệu a.
• Trạng thái bên trong của neural được xác định qua bộ tổng các đầu vào có trọng sốw i ,(i= 1,2, , R)đặc trưng cho tính liên kết của các neural.
• Đầu ra a của neural được xác định qua hàmf nào đó: a(t) =f(P w i p i (t)−θ) Thường kí hiệunet=P w i p i (t) =I(t) là tín hiệu tổng hợp đầu vào.
Là tập hợp các Neural liên kết với nhau theo một hệ thống nào Thông qua kiểu liên kết, chúng ta có thể phân loại mạng Neural như sau:
1 Mạng neural có một đầu vào
Hình 1.3: Mạng neural có một đầu vào Đầu vàopđược nhân với một trọng sốwđượcwprồi gửi đến bộ tổng, qua ngưỡng b và sau đó được đưa đến bộ tổng Tổng các đầu vào n được truyền qua một hàm f nào đó, như vậy đầu ra được xác định như sau: a=f(wp+b)
2 Mạng Neural có nhiều đầu vào
Hình 1.4: Mô hình mạng neural nhiều đầu vào
Các đầu vàop 1 , p 2 , , p R tương ứng với các trọng sốw 1.1 , w 1.2 , , w 1.R của ma trận trọng sốW Tổng tín hiệu đầu vào n được tính như sau: n =w 1.1 p 1 +w 1.2 p 2 + +w 1.R p R +b Công thức trên có thể viết dưới dạng ma trận như sau: n =W p+b
Cuối cùng đầu ra của mạng sẽ là: a=f(wp+b).
• Một neural của lớp này chỉ được nối với các neural của lớp tiếp theo
• Không cho phép các liên kết giữa các neural trong cùng một lớp, hoặc từ neural lớp dưới lên neural lớp trên.
• Không cho phép các liên kết neural nhảy qua một lớp.
Do vậy về nguyên tắc, chúng ta có thể xử lí song song.
Hình 1.5: Mô hình mạng neural một lớp
Lớp này bao gồm ma trận trọng số, bộ tổng, vectơ b, hàm biến đổi f và vectơ đầu ra a Mỗi vectơ đầu vàopđược kết nối với một vectơ của ma trận trọng số
W Mỗi neural có một ngưỡng b i , một bộ tổng, một hàm f và một đầu ra a i Thường thì số đầu vào của một lớp khác số neural của mạng R 6=S.
Vectơ đầu vào được tạo bất kỳ qua ma trận trọng số sau:
Mô hình mạng nhiều lớp được mô tả thông qua mô hình mạng 3 lớp dưới đây:
Hình 1.6: Mô hình mạng neural ba lớp Nếu mạng có t lớp thì đầu ra của mạng được biểu diễn như sau: a t =f t (W t f t−1 (W t−1 f 1 (W 1 p+b 1 ) +b 2 + ) +b t )
Như được mô tả ở trên mạng có R đầu vào, lớp thứ nhất có s 1 neural, lớp thứ hai cós 2 neural Các lớp khác nhau có thể có số neural khác nhau Đầu ra của lớp đầu tiên và lớp thứ hai là đầu vào của lớp thứ hai và ba Lớp thứ hai lai có thể được coi là lớp thứ nhất với R =S 1 đầu vào, S 1 = S 2 nơron, ma trận trọng số làW 2 có kích thước là S 1 ×S 2 Đầu vào của lớp thứ hai là a 1 , đầu ra là a 2 Ở mạng trên lớp thứ ba gọi là lớp ra, những lớp khác gọi là lớp ẩn ( lớp
4 Mạng neural hồi quy ( Recurent Neural Network).
Mạng hồi quy là một mạng mà một vài đầu ra liên kết với một số đầu vào của nó Tức là một đầu ra lại quay trở lại thành đầu vào trong bước tập huấn tiếp theo.
Hình 1.7: Mô hình mạng neural hồi quy
1.5.4 Nguyên tắc học có giám sát
Bài toán học có giám sát đối với mạng Neural đặt ra như sau:
Cho trước R cặp tập mẫu tín hiệu vào: (p (1) , t (1) ), ,(p (k) , t (k) ), ,(p (R) , t (R) ), với
P là vector tín hiệu đầu vào và T là vector tín hiệu mấu (đầu ra mong muốn) Khi đưa một mẫu tín hiệu vào làp (k) vào đầu vào của mạng neural, ở đầu ra có tín hiệu raa (k) tương ứng Khi đó tổng hợp ta thu được tín hiệu đầu ra là ma trận A. Đặt hàm năng lượng E = kT −Ak Khi đó quá trình học là hãy hiệu chỉnh ma trận trọng sốW và ngưỡng b để sau cho hàm năng lượng E đạt giá trị nhỏ nhất tức là sai lệch giữa đầu ra A và mẫu T đạt giá trị nhỏ nhất Bởi vì A=f(W P +b) nên chúng ta thu được bài toán cực trị hàm nhiều biến số:
Hãy xác định W và b đểE =kT −Ak →min.
Tùy thuộc vào cấu trúc mạng Neural, chúng ta có một số quy tắc học như sau:
A Các quy tắc học với mạng truyền thẳng một lớp
• Luật học trực chuẩn HEBB
Giả sử tập các vecto đầu vào thỏa mãn tính chất là hệ vecto trực chuẩn tức là các vecto đôi một vuông góc nhau và chuẩn bằng 1 khi đó có thể chứng minh rằng với mọi đầu vào T thì đầu ra A sẽ trùng với đầu vào tức làE = 0nếu ta chọnW =T P T
• Thuật toán giả nghịch đảo
Với mọi vecto đầu vàoP, ta xác định ma trận giả nghịch đảoP + = (P T P) −1 P T ChọnW =T P + Khi đó có thể chứng minh rằng sai sốE của mạng đạt giá trị bé nhất.
• Thuật toán HEBB Gram Schmidt
Chúng ta xét trường hợp khi hệ vecto P đầu vào không phải là hệ trực chuẩn. Khi đó chúng ta có thể sử dụng quy tắc Gram Schmidt trong Đại số tuyến tính để chuyển hệ P về hệ trực chuẩn từ đó áp dụng thuật toán HEBB trực chuẩn. Thuật toán:
Bước 1: Sử dụng Quy tắc Gram Schmidt chuyển ma trận P về ma trận trực chuẩn.
Bước 2:Áp dụng thuật toán HEBB trực chuẩn.
• Thuật toán LMS Thuật toán LMS là một thuật toán sử dụng để huấn luyện mạng dựa trên thuật toán Gradient để xác địnhW vàb sao cho hàm năng lượng
E đạt giá trị cực tiểu Đặt:
Sử dụng thuật toán gradient, khi đó giá trị gia tăng của w ij và b i sẽ được tính toán theo các công thức sau đây:
Sử dụng các công thức tính đạo hàm riêng, ta thu được:
∂b i =−2e(k) Như vậy vectơ trọng sốW và ngưỡng b sẽ được cập nhật sau mỗi bước lặp là: w ij (k+ 1) =w ij (k) + 2αe(k)p j (k) b i (k+ 1) =b i (k) + 2αe(k)
Ta có thể viết dưới dạng ma trận như sau:
Xuất phát từ các tính toán trên, ta có thuật toán LMS được thực hiện theo các bước sau đây:
– Ma trận trọng số W với các giá trị Wij ngẫu nhiên
– Vectơb với các giá trị b ij ngẫu nhiên
– Chọn hệ số tập huấnα
– Cập nhật w, b theo quy tắc:
W(k+ 1) =W(k) + 2αe(k)p T (k) b(k+ 1) =b(k) + 2αe(k) Bước 3: Kiểm tra điều kiện hội tụ:E(k)< ε
B Mạng neural truyền thẳng nhiều lớp và thuật toán MLP
1 Mạng nơron truyền thẳng nhiều lớp
Trong trường hợp có rất nhiều mẫu học p(k), t(k), k = 1,2, mà mạng một lớp không thể có được tri thức thông qua việc học các mẫu đó, tức là thuật toán xác định vectơ tham số không hội tụ Người ta phải nghĩ tới mạng nhiều lớp (MLP) và đặc biệt mạng MLP này phải có quan hệ phi tuyến không chỉ nằm riêng ở lớp nơron đầu ra.
2 Thuật toán lan truyền ngược MLP
Tư tưởng:Từ một mẫu học cụ thể p(k), t(k) và các trọng số đã có của mạng, chẳng hạn nhưW(k), người ta xác định đầu ra thực a(k) So sánh với mẫu học t(k), các trọng số của lớp nơron đầu ra, hiệu chỉnhW(k)thànhW(k+ 1) Tiếp tục từ trọng số mới W(k+ 1) người ta lại hiệu chỉnh trọng số của các nơron thuộc lớp phía trước (Lan truyền ngược) Đối với mạng nhiều lớp thì đầu ra của một lớp là đầu vào của lớp tiếp theo, tức là ta có: a m+1 =f m+1 (w m+1 a m +b m+1 )với m = 1,2, , M −1 trong đó, M là số lớp của mạng.
Số neural của lớp thứ nhất chính bằng đầu vào:a 0 =p Đầu ra của các neural trong lớp cuối cùng chính là đầu ra của mạng: a=a M Thuật toán lan truyền ngược sai số gần giống như thuật toán LMS ở phần trước Khi đó trọng số wij, ngưỡng b được cập nhật theo thuật toán Gradient w ij m (k+ 1) =w ij m (k)−α ∂E
∂b m i trong đó α là hệ số tập huấn. Đặt n m i s m −1
∂n m i , từ các kết quả trên, ta có: ∂E
∂b m i =s m i Như vậy chúng ta có thể cập nhật trọng số và ngưỡng b như sau: w ij m (k+ 1) =w m ij (k)−αs m i a m−1 j b m i (k+ 1) =b m i (k)−αs m i Nếu viết dưới dạng ma trận thì ta có:
là một ma trận chéo.
Khi đó có thể chứng minh:s m =F m (n m )(W m+1 ) T ∂E
Mô hình bài toán nội suy
Mô hình bài toán nội suy hàm một biến
2.1.1 Bài toán nội suy Đặt bài toán:
Cho trước n+ 1 mốc nội suy Cần xác định một hàm số f(x) để sao cho: f(x i ) =y i , i= 0,1,2, , n (2.1)
Nếu hàm f(x) tồn tại thì hàm số đó được gọi là hàm nội suy và bài toán xác định f(x) được gọi là bài toán nội suy Bài toán này rất có ý nghĩa trong thực tế và nếu biết được hàm f(x) thì ta có thể xác định được mọi giá trị y i ứng với mọi giá trị xi, i= 0,1, , n Các giá trị đó được gọi là các giá trị nội suy.
Phương pháp giải quyết: Chọn trước một hàm phụ thuộc n+ 1 tham số độc lập {cj} n j=0 ,Φ(c0, c1, , cn, x), thỏa mãn các điều kiện nhất định Người ta xác định các c j cho biểu thức nội suy nhờ hệ phương trình: Φ(c0, c1, , cn, x) = yk,∀k = 0,1, , n (2.2)
NếuΦ(c 0 , c 1 , , c n , x)là hàm phi tuyến thì hệ phương trình không đảm bảo tính duy nhất nghiệm nên người ta thường chọn Φcó dạng tuyến tính: Φ(c 0 , c 1 , , c n , x) n
Trong đó c j (j = 0,1, , n) là các tham số cần tìm và {φ k (x)} n k=0 là họ hàm độc lập tuyến tính cho trước thoả mãn điều kiện định thức ma trận: det [φ i (x k )]6= 0
Khi đó các hệ sốc j của biểu thức (2.3) luôn tìm được duy nhất (Do hệ (2.3) luôn duy nhất nghiệm Các hàm sốφ k (x)thường được chọn theo kinh nghiệm hoặc đơn giản là hàm lũy thừa để dễ tính toán Với các {c j } n j=0 đã xác định nhờ điều kiện (2.3) Hàm g(x) = Φ(c 0 , c 1 , , c n , x) được gọi là hàm nội suy và dùng làm công thức để tính gần đúng giá trị của hàm f(x)
2.1.2 Một số phương pháp nội suy hàm một biến
2.1.2.1 Đa thức nội suy Lagrange
Xét trường hợp hàm là hàm một biến với n+ 1mốc nội suy và hàm nội suy dạng đa thức thì nó phải là đa thức bậc n để hệ phương trình (2.3) có duy nhất nghiệm.Khi đó hàm nội suy g(x) là đa thức nội suy Lagrange P n (x)và được xây dựng như sau:
Ký hiệu P n (x)là đa thức nội suy bậc ncần tìm Ta xây dựng đa thức này dưới dạng:
Trong đó, L k (x) cón nghiệmx=x j và L k (x j ) =δ k j ;∀j ≤n, Dễ dàng kiểm tra được đa thức P n (x) đi qua đúngn+ 1mốc nội suy tức là P n (x k ) =y k , k = 0,1,2, , nvà là đa thức nội suy cần tìm Dễ thấy rằng các đa thứcL k (x)được xác định bằng công thức:
Các đa thức L k (x) được gọi là các nhân tử Lagrange, sai số nội suy tại điểm xđược ước lượng bằng công thức:
Với c là điểm thích hợp thuộc đoạn[a, b].
2.1.2.2 Công thức nội suy Newton cho trường hợp mốc cách đều
Trường hợp các mốc nội suy thỏa mãn điều kiện: x i+1 −x i = ∆x i =h.b−a h ,∀i= 0,1, , n−1 ta nói các mốc này cách đều Khi đó với phép biến đổi x−x 0 h =t, các nhân tử L k (x) là đa thức bậc n theo t Đa thức này chỉ phụ thuộc vào số mốc n và giá trị hàm tại các mốc nên có nhiều cách biểu diễn đơn giản, dễ sử dụng Trước hết ta xây dựng công thức tổng quát. Đặt: x−x 0 =th, khi đó ta có:
x−xk= (t−k)h,∀k ≤n x−x k = (t−k)h Thay vào (2.5) ta được:
L k (t) = (−1) n−k C n k n!t(t−1) (t−k+ 1)(t−k−1) (t−n) (2.8) Biểu thức này của L k (x) là hàm không phụ thuộc vào các mốc nội suy nên hàm nội suyP n (t)cũng vậy Các biểu diễn công thức này qua các sai phân hữu hạn cho ta các dạng công thức nội suy Newton Ở đây sẽ trình bày công thức nội suy Newton tiến.
Các sai phân hữu hạn của hàm y=f(x) được xác định như sau:
Với các sai phân được xác định như trên ta có công thức nội suy Newton như sau:
(n+ 1)! f (n+1) (c) (2.10) Khi có nhiều mốc nội suy, hàm nội suy sẽ là đa thức bậc cao có tính chất không ổn định (sai số đối số bé nhưng sai số hàm số lớn), tức là giá trị nội suy có sai số lớn tại các điểm khác mốc nội suy Để khắc phục hiện tượng này, phương pháp thông dụng là dùng hàm nội suy Spline.
2.1.2.3 Nội suy Spline Để khắc phục hiện tượng bất ổn định khi có nhiều mốc nội suy, người ta thường dùng các đa thức bậc thấp trên mỗi đoạn con của đoạn [a,b] và ghép trơn đến mức cần thiết trên toàn đoạn thành hàm nội suy, các hàm này có tên gọi là hàm Spline. Định nghĩa 2.1.1 Hàm Spline bậc(m, k)trên đoạn[a, b]là hàm số có các tính chất sau :
+ Tồn tại phân hoạcha=x 0 < x 1 < < x n ủa [a, b]sao cho trên mỗi đoạn[x j , x j+1 ]với mọij = 0, , n−1, nó là đa thức bậc m.
+ Trên [a,b] nó có đạo hàm cấp k liên tục.
Từ định nghĩa ta thấy để hàm thoả mãn điều kiện 2thì chỉ cần đạo hàm các cấp không vượt quá k ở hai phía của mỗi điểm chia xi(i= 1, , n−1) bằng nhau là đủ.
Vì vậy nó còn được gọi là hàm ghép trơn.
Tập các hàm Spline bậc(m, k)trên đoạn[a, b]được ký hiệu làSP m k [a, b]nếuk =m−1 ta gọi Spline bậc m và ký hiệu SP m [a, b].
Xây dựng hàm nội suy Spline bậc m
Giả sử y = f(x) đo được tại n+ 1 mốc nội suy a = x 0 < x 1 < < x n = b là yi =f(xi)vàSm ∈SPm[a, b]là hàm Spline được xác định bởi phân hoạch này Ta ký hiệu P k là thu hẹp củaS m trên đoạn ∆ k = (x k , x k+1 ), k = 0,1, , n−1.
Bởi vì Pk là đa thức bậc m nên cần xác định m + 1 hệ số của đa thức trên mỗi đoạn Vì có n đoạn nên hệ số cần tìm là n(m + 1) ẩn số Tại mỗi điểm ghép xi, i= 1,2, , n−1, ta có m phương trình:
P i−1 k (x i ) =P i k (x i ),∀k = 0,1,2, , m−1 (2.11) Kết hợp với các phương trình từ dữ liệu ban đầu:
Các hệ phương trình (2.11)−(2.12) kết hợp với các điều kiện liên tục tại các điểm ghép và điều kiện tại hai đầu mút cho phép xác định các hệ số của các hàm ghép trơn Spline Từ đó xác định được đa thức nội suy Pn(x).
Ta xét trường hợp khi sử dụng các đa thức bậc ba S 3 (x) để xây dựng hàm ghép trơn bậc ba Xét đoạn ∆i = [xi−1−xi], ta có dạng đa thức bậc ba:
S i (x) = a i +b i (x−xi−1) +c i (x−xi−1) 2 +d i (x−xi−1) 3 (2.13) Các hệ số a i , b i , c i , d i còn phải thỏa mãn các điều kiện:
S i (x i ) = f i (i= 0, , n) (2.15) Xuất phát từ công thức điều kiện đầu, ta sẽ thu được: a i =fi−1, i= 1,2, , n a n +b n h n +c n h 2 n +d n h 3 n =f n (2.16) Trong đó kí hiệu h i =x i −xi−1
Từ điều kiện liên tục, ta có: a i +b i h i +c i h 2 i +d i h 3 i =a i+1 , i= 1,2, , n−1 (2.17) Xuất phát từ điều kiện trên, ta thu được các hệ thức sau: b i + 2c i h i + 3d i h 2 i =b i+1 , i= 1,2, , n−1 c i h i +3d i h i =c i+1 , i= 1,2, , n−1 (2.18)
Như vậy các hệ thức (2.14)−(2.18) lập thành hệ4n−2 phương trình với 4n ẩn số. Để thêm vào hai phương trình nữa, người ta đặt thêm điều kiện đạo hàm của S(x) tại hai mút biên x 0 , x n Chẳng hạn xét điều kiện S 00 (x 1 ) = S 00 (x n ) = 0 được gọi là điều kiện biên tự nhiên, khi đó ta có: x1 = 0, cn+ 3dnhn = 0 (2.19)
Bài toán nội suy hàm nhiều biến
2.2.1 Mô hình bài toán hàm nội suy
Xét miền giới nội D trong R n vàf :D⊂R n →R m là một hàm liên tục xác định trên D Giả sử ta mới chỉ xác định được tại N điểmX 1 , X 2 , , X N trong miền D và f(X k ) =Y k với mọi k = 1,2 , N Yêu cầu cần xác định giá trị của hàm f(X) tại các điểm X khác trong D.
Mô hình trên có thể mô tả tương tự như mô hình nội suy hàm 1 biến:
Cho trước N mốc nội suy(Xk, Yk)cần xây dựng hàm nội suy thỏa mãn tính chất đi qua N mốc đã cho Bài toán dẫn tới cần tìm một hàm φ(X)xác định trên D sao cho: φ(X k ) =Y k ,∀k = 1,2, , N (2.20)
Khi đó hàm φ(X) sẽ được gọi là hàm nội suy xấp xỉ f(X) Cần chú ý rằng X là vectơn chiều và Y là vectơ mchiều Khi m >1, bài toán nội suy tương đương vớim bài toán nội suy m hàm nhiều biến giá trị thực, nên để đơn giản ta chỉ cần xét với m= 1.
2.2.2 Các hướng tiếp cận chính để giải quyết bài toán nội suy hàm nhiều biến
Các hàm nội suy φ(X) cần được chọn dưới dạng thuận tiện cho sử dụng và tính toán đặc biệt là các dạng nội suy đa thức tương tự như nội suy hàm một biến số Tuy nhiên mặc dù các chuyên gia giải tích số đã có những nỗ lực để phát triển lý thuyết nội suy đa thức, nhưng tính toán thường phức tạp và dễ có hiện tượng mất ổn định dẫn tới sai số rất lớn trong nội suy Mặt khác, do đòi hỏi hàm nội suy cần tìm phải thoả mãn chặt điều kiện (2.20) do đó đã gây nên ra các khó khăn trong tính toán và việc chọn các lớp hàm nội suy mà vẫn có thể cho kết quả xấp xỉ không tốt.
Một hướng đang được ứng dụng rộng rãi là tìm hàm xấp xỉ tốt nhất (hoặc đủ tốt) và dùng nó để nội suy giá trị hàm số tại các điểm khác mốc nội suy Trong trường hợp này ta xem nó là nghĩa suy rộng của bài toán nội suy.
Các phương pháp được ứng dụng rộng rãi để giải quyết bài toán nội suy hàm nhiều biến gồm:
+ Học dựa trên mẫu:Thuật ngữ này được tác giả T.Mitchell dùng để chỉ các phương pháp k-lân cận gần nhất, phương pháp hồi quy trọng số địa phương.+ Sử dụng Mạng Neural MLP (Multi-Layer Perceptrons)
+ Sử dụng Mạng Neural RBF (Radial Basis Function)
Trong đó phương pháp k-lân cận gần nhất với trọng số nghịch đảo khoảng cách cho kết quả là hàm nội suy, còn phương pháp hồi quy trọng số địa phương và mạng neural MLP chỉ cho kết quả là hàm xấp xỉ Các phương pháp học dựa trên mẫu không thể huấn luyện trước được mà chỉ xác định được khi biết điểm cần nội suy Chất lượng của các mạng neural tuỳ thuộc vào phương pháp huấn luyện Mạng RBF huấn luyện đầy đủ với số hàm cơ sở ít hơn số mốc nội suy chỉ cho kết quả là hàm xấp xỉ Sau đây chúng ta tìm hiểu về tư tưởng các phương pháp nội suy
Phương pháp k lân cận gần nhất
Trong phương pháp này, người ta chọn trước số tự nhiên k Với mỗi X ∈ D , ta xác định giá trị φ(X) qua giá trị của f tại k mốc nội suy gần nó nhất Ký hiệu
Z 1 , Z 2 , , Z k là k mốc nội suy gần X nhất và kí hiệu d(U, V) là khoảng cách của hai điểm U, V bất kỳ trongD, khi đó hàm φ(X) xác định như sau: φ(X) k
Trong đó ρi được xác định bởi công thức: ρ i = [d(X, Zi)] −1 k
Dễ thấy rằng khi X dần tới các mốc nội suy thì xác định như trên hội tụ đến giá trị của f tại mốc nội suy tương ứng khi đối số hội tụ tới mốc này.
+ Phương pháp này có ưu điểm là cách tính toán đơn giản và dễ thực hiện, tuy nhiên trên thực tế việc xác định giá trị k phù hợp là một vấn đề khó (phụ thuộc rất nhiều vào kinh nghiệm đánh giá bài toán thực tế).
+ Mỗi khi cần xác định giá trị của một điểm, phương pháp này lại tìm trong tất cả các giá trị đã biết để tìm được các mốc gần nhất mới xác định được hàm nội suy, chứ không tính trước hàm để dùng được như mạng Neural Điều này tăng khối lượng tính toán.
Tuy vậy, phương pháp không đánh giá chặt chẽ được nhưng nó vẫn được ưa dùng trong thực nghiệm.
Phương pháp xấp xỉ bình phương tối thiểu hàm nhiều biến
Bài toán nội suy thực chất là một trường hợp đặc biệt của bài toán xấp xỉ mà xấp xỉ hàm nhiều biến được xem là bài toán tổng quát nhất Do đó khi bài toán nội suy gặp khó khăn, chúng ta sẽ nghiên cứu bài toán xấp xỉ để thay thế.
Chúng ta xét bài toán xấp xỉ hàm nhiều biến Để giải quyết bài toán này, một trong những phương pháp hiệu quả nhất là phương pháp xấp xỉ bình phương tối thiểu.
Tư tưởng của phương pháp như sau:
Giả sử hàmY =f(X), X ∈D⊂R n là một hàm xác định tạiN điểmX 1 , X 2 , , X N với Y k =f(X k ), k = 1,2, , N
Ta cần tìm một hàm φ(X) có dạng cho trước sao cho sai số tại các điểm đã biết là tốt nhất có thể được và dùng nó để xấp xỉ hàm f(X). Để làm điều đó, người ta sử dụng phương pháp bình phương cực tiểu để xác định hàm φ(X)
Từ đó xác định các hệ số để tổng sai số:
Ta nhận được bài toán cực trị hàm nhiều biến số, các phương pháp thường được sử dụng là phương pháp Gradient, phương pháp đường dốc nhất, phương pháp Newton hoặc phương pháp nhân tử Lagrange Trong trường hợp nếu hàm φ(x) là hàm tuyến tính thì dẫn tới bài toán là dễ giải.
Hàm cơ sở xuyên tâm và mạng RBF
3.1.1 Khái niệm về hàm cơ sở xuyên tâm
Xét trong không gian R n , kí hiệu t i = (t i1 , t i2 , , t in ) là các tâm, x là một điểm trong không gian Đặt r = kx−t i k là khoảng cách từ x đến tâm Khi đó các hàm φ(r) :R→R được gọi là hàm cơ sở bán kính.
−r 2 2σ 2 i là hàm cơ sở bán kính Gauss.
Hình 3.1: Hàm cơ sở bán kính Gauss
Các hàm cơ sở bán kính luôn luôn đối xứng qua tâm Như vậy nếu chúng ta có m tâm t 1 , t 2 , , t m thì ta luôn xây dựng được m hàm cơ sở bán kính tương ứng Các hàm đó thường được gọi là hàm cơ sở xuyên tâm Mỗi hàm φ i (r)sẽ ứng với một hình cầu tâmt i bán kínhr Thông thường, người ta sử dụng một số dạng hàm cơ sở xuyên tâm như sau:
−r 2 2σ 2 i Hàm Gauss + φ(r, σ) = (r 2 +σ 2 ) 1 2 Hàm đa bậc hai
+ φ(r, σ) = (r 2 +σ 2 ) − 1 2 Hàm đa bậc hai nghịch đảo
3.1.2 Khái niệm về hàm RBF
Xét trong không gian R n , x= (x 1 , x 2 , , x n ) là một điểm thuộc không gian, t i (t i1 , t i2 , , t in ),(i= 1 m)là các tâm bất kì thuộc không gian Hàm RBF là hàm được xác định bởi công thức: Φ :x7−→Φ(x) m
+ Hàm RBF chính là khai triển của hàm Φ(x) qua hệ hàm cơ sở xuyên tâm {φ i (x)} m 1 trong đó các hệ sốw i chính là các hệ số khai triển.
+ Các hàm cơ sở đều là các hàm thực một biến số (chỉ phụ thuộc r) nên đây là cách khai triển đơn giản nhất, các hàm luôn đối xứng qua tâm.
+ Hàm RBF chính là một ánh xạ từ R n →R
3.1.3 Khái niệm về Mạng neural RBF
Chúng ta xét cấu trúc một mạng Neural bao gồm 3 tầng (2 tầng Neural) :
Hình 3.2: Mô hình mạng RBF
+ Tầng vào gồm n neural với vecto tín hiệu đầu vào x∈R n
+ Tầng ẩn được gọi là là tầng cơ sở bán kính bao gồm M neural trong đó neural thứ k có tâm làt k và xác định tín hiệu net đầu ra là hàm cơ sở bán kínhφ k (x)+ Tầng ra có hàm kích hoạt tuyến tính gồm m neural xác định m giá trị đầu ra(z 1 , z 2 , , z m )thông qua biến đổi của ma trận trọng số W
+ Theo cấu trúc trên, đầu vào của mạng là một vecto x ∈ R n , đầu ra là một vectơ z ∈R n , tức là mạng RBF biểu diễn một hàm số nhiều biến số ánh xạ từ
+ Nếu chúng ta có N đầu vào (mỗi đầu vào là một vecto n chiều) thì hiển nhiên chúng ta cũng thu được N đầu ra (mỗi đầu ra là một vectom chiều).
+ Nếu số tâm t k ≡x k thì người ta gọi là mạng nội suy RBF.
3.1.4 Sử dụng Mạng RBF nội suy hàm nhiều biến
Xét bài toán nội suy hàm nhiều biến: Giả sử cho hàm Y = f(X), X ∈ R n là một hàm nhiều biến nào đó xác định tại N điểm X 1 , X 2 , , X N với Y k =f(X k ), k1,2, , N
Ta cần tìm một hàm F(X)có dạng cho trước sao cho sai số tại các điểm đã biết là tốt nhất có thể được và dùng nó để xấp xỉ hàm f(X) Sử dụng các hàm cơ sở xuyên tâm, ta sẽ tìm hàm xấp xỉ dưới dạng:
Trong đó φk(X, tk, σk) là các hàm cơ sở bán kính với tâm tk Khi đó nếu kí hiệu t 1 , t 2 , , t M là các tâm, φ 1 , φ 2 , , φ M là các hàm cơ sở xuyên tâm ứng với các tâm, ta sẽ thu được một mạng RBF với đầu vào là các vectơ X1, X2, , XN Ứng với mỗi vecto đầu vào, ta thu được các vecto đầu ra Z 1 , Z 2 , , Z N Trong đó X k ∈R n , Z k ∈
Là ma trận trọng số và vectơ các giá trị hàm RBF ứng với các đầu vào thì các đầu ra, khi đó các giá trị đầu ra Z 1 , Z 2 , , Z N sẽ được xác định bởi công thức:
Như vậy cấu trúc mạng RBF như trên cho phép biến đổiNvecto đầu vàoX 1 , X 2 , , X N thành N vecto đầu raZ 1 , Z 2 , , Z N tương tự như hàm nhiều biếnf(X)trong bài toán nội suy.
3.1.5 Bài toán huấn luyện mạng RBF
Kí hiệu mẫu học là Yk =f(Xk)∈R m , k= 1,2, , N Đặt hàm năng lượng:
Khi đó, ta cần huấn luyện mạng để sao cho hàmE →min
Hiển nhiên bài toán huấn luyên mạng sẽ phụ thuộc vào hai vấn đề sau đây:
• Xác định các tâm t 1 , t 2 , , t M sao cho tối ưu nhất.
• Xác định ma trận trọng số W = (w ij ) M×m để hàm năng lượng E đạt cực tiểu. Chú ý 3.1.4.
+ Mạng RBF là hệ thống tính toán tuyến tính nên độ phức tạp thấp, tính toán đơn giản.
+ Bài toán xác định tâm tối ưu sẽ liên quan đến các thuật toán phân cụm tối ưu.
+ Do chúng ta xét bài toán nội suy nên chúng ta sẽ coi các tâm trùng với các mốc nội suy (t k ≡ x k , k = 1,2, , N) tức là chúng ta sẽ không xét bài toán phân cụm.
Một số thuật toán huấn luyện mạng nội suy RBF
3.2.1 Thuật toán nội suy Gram-Schmid Để xây dựng mạng RBF nội hàm số nhiều biến số, chúng ta sẽ xây dựng thuật toán theo tư tưởng sau đây:
+) Xây dựng các hàm cơ sở xuyên tâm, từ đó xác định ma trậnG(i, j) =φ(x i , t j ).+) Xây dựng mạng RBF với ma trận đầu vào chính là giá trị của hàm số tại mốc nội suy.
+) Sử dụng thuật toán Gram-Schmid chuyển hệ vecto{G(k, j)} N k=1 về hệ trực chuẩn {V(k, j)} N k=1
+) Sử dụng thuật toán HEBB để xác định ma trận trọng sốW từ đó xác định đầu raZ =W V
Thuật toán được mô tả chi tiết như sau:
Input:Các mốc nội suy:
Output: Ma trận trọng số W để sao cho E =kY −Zk → min với Z là đầu ra của mạng RBF.
Bước 1:Đặt T=X (Các tâm trùng với các mốc nội suy)
Bước 2: Tính dmax là khoảng cách tối đa giữa các tâm, từ đó xác định bán kính σ = dmax
√2M Xác định ma trậnG(i, j) =φ(X i , t j ) = exp(−kX i −t j k 2 σ )
Bước 3:Sử dụng thuật toán Gram-Schmid chuyển hệ Gvề hệ trực chuẩn V
Bước 4:Xác định ma trận trọng số W =Y V T
Bước 5:Xác định đầu ra Z =W V
Thuật toán được mô tả bằng thủ tục algorithm-noi-suy-Gram-Schmid.m (Xem phần phụ lục).
3.2.2 Thuật toán nội suy giả nghịch đảo
Khác với thuật toán Gram-Schmid, để xây dựng mạng RBF nội hàm số nhiều biến số, chúng ta sẽ sử dụng ma trận giả nghịch đảo để huấn luyện mạng RBF Các bước tiến hành như sau:
+ Xây dựng các hàm cơ sở xuyên tâm, từ đó xác định ma trận G(i, j) =φ(x i , t j )
+ Xây dựng mạng RBF với ma trận đầu vào chính là giá trị của hàm số tại mốc nội suy.
+ Sử dụng thuật toán giả nghịch đảo xác định ma trận giả nghịch đảo, từ đó xác định ma trận trọng số W và xác định đẩu ra Z.
Thuật toán được mô tả chi tiết như sau:
Input:Các mốc nội suy:
Y = (Y1, Y2, , YN), Yk = (yk1, yk2, , ykm) Output: Ma trận trọng số W để sao cho E =kY −Zk → min với Z là đầu ra của mạng RBF.
Bước 1:Đặt T=X (Các tâm trùng với các mốc nội suy)
Bước 2: Tính dmax là khoảng cách tối đa giữa các tâm, từ đó xác định bán kính σ = dmax
√2M Xác định ma trậnG(i, j) =φ(Xi, tj) = exp(−kX i −t j k 2 σ )
Bước 3:Xác định ma trận giả nghịch đảo:
Bước 4:Xác định ma trận trọng số W =G + Y
Bước 5:Xác định đầu ra Z =GW
Thuật toán được mô tả bằng thủ tục algorithm-noi-suy-Gia-nghich-dao (Xem phần phụ lục). Để kiểm tra độ chính xác của các thuật toán đã trình bày, chúng tôi tiến hành thực nghiệm theo phương pháp: Cho trước hàm f(X) từ đó xác định trước các mốc nội suyX cùng các mẫu họcY =F(X) Xây dựng mạng nội suy RBF và sử dụng các thuật toán để xác định ma trận trọng số W và từ đó xác định đầu ra Z của mạng. Đánh giá độ chính xác của mạng bằng giá trị hàm năng lượngE =||Z−Y||.
Kết quả của các thuật toán huấn luyện mạng Gram-Schmid và thuật toán Giả nghịch đảo được đưa ra trong ví dụ sau:
Bài toán 1: Xét hàm f :R 4 →R 3 cho bởi biểu thức: f(x 1 , x 2 , x 3 , x 4 )
e x 1 sinx 2 −cosx 2 3 +x 4 log 2 x 1 +x 2 2 −sinx 3 +e x 4 e x 1 x 2 +x 3 −sinx 4
Trong đó:x 1 ∈[a 1 , a 2 ];x 2 ∈[b 1 , b 2 ];x 3 ∈[c 1 , c 2 ];x 4 ∈[d 1 , d 2 ] Để xây dựng các mốc nội suy, ta chia các đoạn[a1, a2]; [b1, b2]; [c1, c2]; [d1, d2]mỗi đoạn thành K điểm chia đều nhau, ta sẽ thu được lưới chia X = {X 1 , X 2 , , X N }, N K 4 , Xk∈R 4 Xác định giá trị của hàm Y =f(X) tương ứng tại các mốc Xk, ta thu được Y = {Y 1 , Y 2 , , Y N }, N = K 4 , Y k ∈ R 3 Như vậy ta sẽ thu được tập mốc nội suy (XkYk);k = 1,2, N.
Xây dựng Mạng RBF với các lớp đầu vào, lớp ẩn và lớp ra ma trận đầu vào là ma trận X, tập mẫu là ma trận Y Sử dụng các thuật toán huấn luyện mạng nội suy đã trình bày Đánh giá độ chính xác của các thuật toán bằng hàm năng lượng
E =kZ−Yk với Z là đầu ra của mạng Kết quả được đưa ra trong bảng 3.1.
Bảng 3.1: Kết quả huấn luyện mạng RBF
Số mốc nội suy N =K 4 Thuật toán Gram- Schmid Thuật toán Giả nghịch đảo
+ Thuật toán Gram-Schmid có độ chính xác cao hơn thuật toán Giả nghịch đảo, tuy nhiên thời gian tính toán lại tốn kém hơn.
+ Cả hai thuật toán đều có khối lượng tính toán là rất lớn tức là thời gian thực hiện thuật toán các thuật toán là rất lớn trong trường hợp số mốc nội suy là lớn.
3.2.3 Thuật toán Huấn luyện nhanh Quick-Training
Các phương pháp huấn luyện trên qua thực nghiệm đều cho kết quả với độ chính xác không cao cũng như khối lượng tính toán là rất lớn do phải thông qua việc thực hiện thuật toán Gram-Schmid hoặc tính toán ma trận giả nghịch đảo đặc biệt là khi số mốc nội suy là rất lớn Để khắc phục các nhược điểm trên, người ta thường sử dụng các phương pháp huấn luyện mạng bằng các phương pháp lặp dựa trên nền tảng của thuật toán Gradient Sau đây Luận văn sẽ nghiên cứu chi tiết thuật toán huấn luyện nhanh với độ chính xác rất cao Thuật toán được tham khảo trong tài liệu [3].
Tư tưởng chính của thuật toán này là sử dụng chính các vecto đầu vào là các cụm tức là tâm các cụm trùng với các điểm đầu vào Trong qua trình huấn luyện mạng để hiệu chỉnh ma trận trọng số W, ta sẽ sử dụng thuật toán Gradient kết hợp với việc thay đổi tham số lặp tối ưu trong mỗi bước lặp nên tốc độ hội tụ là rất nhanh. Thuật toán được tiến hành theo các bước sau đây:
Bước 1:Khởi độngX là ma trận vectơ đầu vàoX = (Xij)N×n Kí hiệuE =M axint là giá trị khởi tạo hàm năng lượng, sai số ε Tốc độ học η , Tham số hiệu chỉnh β1 >1;β2