Linear Transformations for Neural Networks Linear Transformations for Neural Networks “Neural Network Design” (Martin T Hagan, Howard B Demuth, Mark Beale Thomson Learning, 1996) Chương 6 PHÉP BIẾN ĐỔI TUYẾN TÍNH CHO MẠNG NEURAL Mục đích Lý thuyết và các ví dụ Phép biến đổi tuyến tính Biểu diễn ma trận Sự thay đổi các cơ sở Giá trị đặc trưng và vecto đặc trưng Đường chéo Tóm tắt các kết quả Các vấn đề được giải quyết Kết luận Phần nghiên cứu sâu hơn Các bài tập Mục đích Chương này sẽ tiếp tục ch.
Trang 1“Neural Network Design”
(Martin T Hagan, Howard B Demuth, Mark Beale Thomson Learning, 1996)
Chương 6: PHÉP BIẾN ĐỔI TUYẾN TÍNH CHO MẠNG
o Sự thay đổi các cơ sở
o Giá trị đặc trưng và vecto đặc trưng
Chương này sẽ tiếp tục chương 5 trình bày những cơ sở toán học cho những phân tích của chúng
ta về mạng nơron Ở chương 5 chúng ta đã xem xét các không gian vecto; trong chương nàychúng ta sẽ nghiên cứu phép thay đổi tuyến tính áp dụng trong mạng nơron
Như đã thấy trong các chương trước, phép nhân của một vecto đầu vào với một ma trận trọng số
là một trong những phép toán quan trọng được thực hiện bởi mạng nơron Phép toán này là một
Trang 2ví dụ của một phép biến đổi tuyến tính Chúng ta muốn nghiên cứu sự biến đổi tuyến tính thôngthường và xác định những thuộc tính căn bản của chúng Những khái niệm bao trùm trongchương này , ví dụ như giá trị đặc trưng, vecto đặc trưng và phép biến đổi cơ sở , sẽ là tới hạncho sự hiểu biết của chúng ta về chủ đề mạng nơron như là một học thuật ( bao gồm quy tắcWidrow- Hoff và sự lan truyền ngược) và mạng Hopfield hội tụ
Hình 6.1: Mạng Hopfield
Trang 36.2.1 Phép biến đổi tuyến tính
Chúng ta bắt đầu với một vài định nghĩa cơ bản
* Phép biến đổi
Một phép biến đổi bao gồm ba phần:
1 Một tập hợp các phần tử X = {xi} , gọi là miền xác định
2 Một tập hợp các phần tử Y = {yi}, gọi là vùng, và
3 Một quy tắc liên kết mỗi xi X với mỗi phần tử y∊ i Y∊
* Phép biến đổi tuyến tính
Một phép biến đổi A là tuyến tính nếu:
1 Với tất cả x1, x2 X, A (x∊ 1 + x2) = A(x1) + A(x2),
2 Với tất cả x X, a ∊ R, A(ax) = aA(x)∊
Xem xét, ví dụ, phép biến đổi chứa những vector quay R2 bởi góc θ, như được chỉ ra trong hình
bên trên Hai hình tiếp theo chỉ ra rằng các đại lượng I thỏa mãn cho vòng quay Chúng chỉ rarằng nếu bạn muối quay một tổng hai vecto, bạn có thể quay từng vecto một trước rồi cộngchúng sau Hình thứ tư miêu tả đại lượng 2 Nếu bạn muốn quay một vecto có tỉ lệ thì bạn có thểquay nó trước và chia tỉ lệ nó sau Vì vậy phép quay là một phép tuyến tính
Trang 46.2.2 Biểu diễn ma trận
Như chúng ta đã đề cập đến ở phần đầu của chương này, phép nhân ma trận là một ví dụ củaphép biến đổi tuyến tính Chúng ra cũng có thể chỉ ra rằng bất kỳ biến đổi tuyến tính giữa haikhông gian vecto hữu hạn chiều nào đều có thể được biểu diễn bởi một ma trận( như trongchương trước chúng ta đã chỉ ra rằng bất kỳ vecto nào trong không gian vecto hữu hạn chiều đều
có thể được biểu diễn bởi một cột các số) Để chỉ ra điều đó chúng ta sẽ sử dụng hầu hết các kháiniệm ở chương trước
Hãy lấy tập hợp {v 1 , v 2 ,…, v n } làm cơ sở của không gian vecto X, và lấy {u 1 , u 2 ,…, u m } là cơ sở
của không gian vecto Y Điều đó có nghĩa rằng với hai vecto x X và y ∊ Y:∊
Lấy A là một phép biến đổi tuyến tính với miền X và vùng Y mà ( A:X Y )
thì:
Hay được viết là:
Vì A là một toán tử tuyến tính, công thức (6.4) có thể được viết là:
Trang 5Điều kiện cho phép cộng được thỏa mãn sẽ có:
Phương trình này có thể viết lại thành:
Do u i là tập hợp chuẩn nên chúng phải độc lập Điều đó có nghĩa là mỗi hệ số mà nhân với ui
trong phương trình 6.9 phải đồng nhất bằng không( xem công thức 5.4) Do vậy ta có:
Trang 6Vậy ta có ma trận nhân như sau:
Chúng ta có thể tóm tắt các kết quả trên như sau: Với bất kỳ một phép biến đổi tuyến tính giữahai không gian vecto hữu hạn chiều sẽ cho ta kết quả là một ma trận nhân Khi chúng ta nhânnhiều lần ma trận mở rộng vecto của vecto miền x, thì sẽ được mở rộng vecto cho vecto biến đổiy
Nhớ rằng ma trận đại diện không phải là duy nhất ( ví dụ như biểu diễn một vecto thông thườngbởi một cột các số không phải là duy nhất – xem lại chương 5) Nếu thay đổi bộ chuẩn cho miềnhoặc vùng thì biểu diễn ma trận cũng sẽ thay đổi Chúng ta có thể sử dụng điều này cho chươngsau
Là một ví dụ của ma trận đại diện, hãy xem xét biến đổi góc quay Lấy một ma trận đại diện chobiến đổi này Bước căn bản được biểu diễn trong phương trình 6.6 Chúng ta phải biến đổi mỗivecto chuẩn của vùng và sau đó nhân nó để tạo nên các vecto chuẩn ở miền Trong ví dụ nàymiền và vùng giống nhau( X=Y=R2), vì thế để đơn giản chúng ta sẽ tìm một chuẩn chung cho cảhai (ui=vi=si), như được biểu diễn ở hình bên
Bước đầu tiên là biến đổi vecto chuẩn đầu tiên và nhân các vecto là kết quả biến đổi để tạo nêncác vecto chuẩn Nếu chúng ta quay S1 ngược chiều kim đồng hồ một góc θ thì được:
Và có thể xem ở hình ở giữa bên trái 2 hệ số trong phần mở rộng tạo nên cột đầu tiên của matrận đại diện
Bước tiếp theo là biến đổi vecto cơ sở thứ 2 Nếu quay s2 ngược chiều kim đồng hồ một góc θ tađược
Có thể xem ở hình dưới bên trái Từ phần mở rộng này chúng ta có được cột thứ hai cho ma trận
đại diện Ma trận đại diện hoàn chỉnh sẽ là :
Trang 7XS1
Khi nhân một vecto bằng một ma trận ở công thức 6.14 thì vecto sẽ được quay một góc θ
Tóm lại, để có được ma trận đại điện của một phép biến đổi chúng ta sử dụng công thức 6.6.Chúng ta biến đổi mỗi vecto chuẩn của vùng và nhân nó để tạo nên các vecto chuẩn của miền.Các hệ số của mỗi phép nhân tạo ra một cột của ma trận
Nghiên cứu hình học quá trình tạo nên ma trận đại diện, sử dụng hình biểu diễn của hệ thốngnoron
Chú ý rằng ở phần trước ma trận đại diện của một phép biến đổi tuyến tính không phải là duynhất Mỗi ma trận đại diện phụ thuộc vào tập hợp cơ sở được sử dụng cho miền và vùng củaphép biến đổi
Trong phần này chúng ta sẽ miêu tả chính xác hơn làm thế nào một ma trận đại điện thay đổi khi
mà các tập hợp cơ sở bị thay đổi
Xem xét một phép biến đổi tuyến tính A: XY Lấy {v1,v2…, vn} là một cơ sở của không gianvecto X, và lấy { u1,u2…, un} làm cơ sở cho không gian vecto Y Vì thế mỗi vecto x Є X có thểviết thành:
Và mỗi vecto y Є Y có thể viết thành:
Vì thế nếu:
Trang 9Ta có ma trận mà các cột là t:
Sau đó chúng ta viết công thức 6.20 ở dạng ma trận:
Phương trình này miêu tả mối liên hệ giữa hai điện diện cho vecto X ( Chú ý rằng kết quả nàyrất giống với phương trình 5.43 Có thể xem lại về vecto cơ sở thuận nghịch ở chương 5)
Ta có ma trận mà các cột của nó là wi
Theo đó có thể viết 6.21 ở dạng ma trận mà biểu diễn mối quan hệ giữa hai ma trận đại diện chovecto y như sau:
Bây giờ thay (6.28) và (6.30) vào (6.19) ta có:
Nó nhân cả hai vế của phương trình với thì được:
So sánh (6.32) và (6.23) sẽ được toán tử sau cho một thay đổi cơ bản:
Kết quả quan trọng này thể hiện mối liên hệ giữa bất kỳ 2 ma trận đại diện nào của một phépbiến đổi tuyến tính và được gọi là phép biến đổi đồng dạng Nó sẽ được sử dụng rất hữu hiệntrong các chương sau Nó chỉ ra rằng với một lựa chọn chuẩn về vecto cơ sở chúng ta có thể có
Trang 10Bước đầu tiên là nhân t1 và t2 để tạo ra cơ sở chuẩn, như ở phương trình (6.24) và (6.25) Ở hìnhbên ta có thể thấy:
Khi đó ta có thể viết thành:
Bây giờ ta có ma trận như sau:
Và vì chúng ta đã sử dụng bộ cơ sở như nhau cho cả vùng và miền của phép biến đổi nền:
Chúng ta có thể có ma trận đại diện mới từ phương trình 6.33
(6.39)
Trang 11s1y=A(x)
Bây giờ ví dụ như lấy = 30ºthì:
từ một ma trận đại diện thành ma trận đại diện khác( xem 5.43) Sử dụng lý thuyết này ta có
Qua đó giúp ta xác nhận được các kết quả trước đó Các vecto được biểu diễn ở hình bên trái.Kiểm tra bằng đồ thị hai đại diện, y và y’ ở công thức 6.43 và 6.44 thấy rất hợp lý
Trang 12XS1
S2
θ
Trong phần cuối cùng này sẽ thảo luận hai đại lượng quan trọng của phép biến đổi tuyến tính làgiá trị đặc trưng và vecto đặc trưng Các kiến thức về hai đại lượng này sẽ cho phép trả lời mộtvài câu hỏi về biểu diễn mạng lưới nơron, ví dụ như câu hỏi ở đầu chương này, liên quan đến sự
ổn định của mạng kưới Hopfield
Xem xét khái niệm đầu tiên về giá trị đặc trưng và vecto đặc trưng Xem một phép biến đổi tuyếntính A: X X ( Vùng và miền như nhau) Các vecto z X không bằng 0 và lượng vô hướng λ thỏamãn:
Khi đó sẽ lần lượt có vecto đặc trưng (z) và giá trị đặc trưng ( λ)
Chú ý rằng vecto đặc trưng thì có khả năng bị sai lệch vì nó không hẳn là một vecto mà là mộtkhông gian vecto, vì nếu z thỏa mãn 6.46 thì az cũng thỏa mãn
Vì vậy một vecto đặc trưng của một phép biến đổi biểu diễn một hướng, như bất kỳ vecto nàotheo hướng đó, khi được biến đổi, sẽ tiếp tục chỉ theo hướng đó, nhưng sẽ bị chia ra bởi giá trịđặc trưng Như ví dụ trước đó, xem xét lại ví dụ về sự quay sử dụng ở phần trước Liệu có vectonào mà khi được quay 30º , tiếp tục chỉ theo cùng hướng không? Không, đây là một trường hợp
mà không có giá trị đặc trưng (Trong trường hợp các lượng vô hướng phức tạp và có hai giá trịđặc trưng tồn tại, chúng ta sẽ xem xét sau)
Vậy phương pháp tính toán giá trị riêng và vector riêng như thế nào? Giả sử một vector cơ sở
được chọn cho không gian vector X, n chiều Ma trận biểu diễn cho công thức 6.46 có thể được
viết thành:
Trang 13(6.47)Hoặc (6.48)
Nghĩa là các cột của ma trận là phụ thuộc và định thức của ma trận phải bằng không:
(6.49)
Định thức này là một đa thức bậc n Vì thế công thức (6.49) luôn có n nghiệm, chúng có thể là
nghiệm phức hoặc nghiệm kép
Xem xét lại ví dụ sau Nếu sử dụng nhóm vector cơ bản chuẩn, thì ma trận chuyển đổi là:
(6.50)
Có thể viết lại công thức (6.49) thành:
(6.51)Hoặc
(6.52)Nghiệm của phương trình này:
Trang 14Để tìm giá trị riêng cần giải phương trình sau:
=0; (6.55)Hoặc
(6.59)Hoặc z21≈0, không phụ thuộc vào z11 (6.60)
Như thế ta thu được vector riêng thứ nhất là:
hoặc bất kỳ tích vô hướng nào khác Với λ2 ta có:
; (6.62)Hoặc: z22 = -z12; (6.63)
Giá trị vector riêng thứ 2 thu được:
; (6.64)hoặc bất kỳ tích vô hướng nào khác Để kiểm tra lại kết quả, ta xem xét các phương trình sau:
; (6.65)
Trang 15; (6.66)
Với n giá trị riêng độc lập, đảm bảo chúng ta có thể tìm được n vector riêng độc lập [Brog91] Vì
thế các vector riêng này tạo thành một không gian vector cơ bản của phép biến đổi Để tìm ma trận tiền biến đổi (công thức 6.54) chúng ta sử dụng các vector riêng làm các vector cơ bản Từ công thức 6.33 ta có:
; (6.67)
Chú ý rằng đây là một ma trận chéo với các giá trị riêng nằm trên đường chéo Với các giá trị riêng độc lập, bất kỳ, ta đều có thể chuyển thành ma trận đơn vị bằng cách sử dụng các vector riêng Quá trình chuyển đổi này được tổng hợp lại như sau
Coi ; (6.68)
Với là các vector riêng của ma trận A Ta có:
; (6.69)Với là các giá riêng riêng của ma trận A
Kết quả này sẽ giúp ta phân tích hiệu suất của mạng neural
6.3 Tổng hợp kết quả
* Phép biến đổi (transformations)
Một phép chuyển đổi bao gồm 3 thành phần:
1 một nhóm các thành phần X={xi} gọi là miền (domain)
2 một nhóm các thành phần Y={yi} gọi là dải (range)
3 một quy luật ánh xạ vào thành phần
* Phép biến đổi tuyến tính
Trang 16Một phép biến đổi A là tuyến tính nếu:
1 Với tất cả
2 Với tất cả
* Ma trận biểu diễn (matrix Representation)
Không gian vector X là , không gian vector Y là A là phép biến đổi tuyến tính trong miền X và dải Y, ta có:
Hệ số của ma trận biểu diễn là nghiệm của phương trình:
* Các thông số cơ bản
* Các giá trị riêng và vector riêng
* Phép biến đổi ma trận đơn vị
Với là các vector riêng của ma trận vuông A
6.4 Các vấn đề cần giải quyết
P6.1 Xem xét mạng đơn lớp như trong hình 6.1, với một hàm biến đổi tuyến tính Vậy phép biến
đổi vector đầu vào thành vector đầu ra có phải là một phép biến đổi tuyến tính hay không ?
Trang 17p Rx1 SxR
a Sx1
A=purelin(Wp+b)
S2
X
S1A(X)
Hình 6.1 Mạng đơn Neuron
Phương trình mô tả mạng là:
Để cho phép biến đổi này là tuyến tính, cần thỏa mãn các điều kiện sau:
Với điều kiện thứ 1:
Đem so sánh với:
Rõ ràng 2 cách biểu diễn này là tương đương nhau nếu b=0 Vì thế mạng này thực hiện phép biến đổi phi tuyến, mặc dù có sử dụng hàm tuyến tính Kiểu mạng phi tuyến đặc biệt này được gọi là phép biến đổi mô phỏng (affine)
P6.2 Xem xét lại phép chiếu trong chương 5, xem đó có phải là một phép biến đổi tuyến tính
hay không ?
Trang 18Hình 6.2 Phép biến đổi phản xạ
Phép chiếu vector x vào một vector v được tính toán như sau:
Với (x,v) là tích số nội của x và v
Kiểm tra xem phép biến đổi này với 2 điều kiện tuyến tính, ta có với điều kiện thứ nhất:
(Ở đây sử dụng các đặc điểm tuyến tính của các tích số nội) Xét với điều kiện thứ 2:
Như vậy, phép chiếu trong ví dụ này là tuyến tính
P6.3 Xét phép biến đổi A được tạo bằng cách ánh xạ vector x trong miền R2 về đường thẳng x1+x2=0, như trong hình 6.2 Xác định ma trận biến đổi liên quan đến chuẩn cơ bản trong miền
R2
Phương pháp để tìm ma trận biến đổi được thực hiện như phương trình 6.6
Cần phải biến đổi mỗi vector cơ bản của miền, sau đó mở rộng kết quả trong nhóm các vector cơbản của dải Môi lần mở rộng, ta lấy một cột của ma trận biểu diễn Trong trường hợp này, nhóm
cơ bản của cả 2 miền và dải là {s1, s2} Vậy ta biến đổi s1 trước Nếu ánh xạ s1 về đường thẳng x1+x2=0, ta thu được kết quả:
Trang 19S2
A(s2)= -s1
S1A(x)
Từ đây cho ta cột đầu tiên của ma trận Tiếp theo ta biến đổi s2:
Ta thu được cột thứ 2 của ma trận Và kết quả cuối cùng là:
Kiểm tra lại kết quả với vector
Kết quả thực sự thể hiện sự ánh xạ của vector x về đường thẳng x1+x2=0 như hình 6.3
Trang 20Hình 6.3 Kiểm tra lại phép ánh xạ
P6.4 Xét không gian các số phức, và xem đây là không gian vector X, và lấy vector cơ bản của
X là {1+j, 1-j} Phép biến đổi A: X->X là liên hợp (ví dụ: A(x)=x*)
Các bước thực hiện
1 Trước tiên ta tìm ma trận của phép biến đổi A liên quan đến nhóm cơ bản đã chọn
2 Tìm các giá trị riêng và vector riêng của phép biến đổi
3 Tìm phép biểu diễn ma trận cho A liên quan đến các vector riêng như các vector cơ bản
Bước 1: để tìm ma trận cho phép biến đổi, ta biến đổi mỗi vector cơ bản bằng cách tìm liên hợp
phức của nó:
Ta thu được phép biểu diễn ma trận:
Bước 2: để tìm các giá trị riêng, cần phải sử dụng công thức 6.49
Vậy các giá trị riêng là:
Để tìm các vector riêng, dùng công thức 6.48:
Với cho ra:
Hoặc
Vậy vector riêng đầu tiên thu được sẽ là: hoặc bất kỳ tích vô hướng nào khác Với vector riêng thứ 2 ta sử dụng và thu được:
Trang 21Hoặc
Vậy vector riêng thứ 2 là: hoặc bất kỳ tích vô hướng nào khác
Chú ý rằng, các vector riêng này có thể được biểu diễn thành cột các chữ số thực, nhưng trong thực tế chúng là các số phức, ví dụ:
Kiểm tra lại kết quả:
Bước 3: thực hiện thay đổi vector cơ bản, chúng ta sử dụng công thức 6.33 (sử dụng cùng một
nhóm vector cơ bản cho cả miền và dải)
với
Thu được
Theo công thức 6.69 thì chúng ta đã biến đổi chéo ma trận biểu diễn
P6.5 Biến đổi chéo một ma trận.
Bước đầu tiên là tìm các giá trị riêng:
Vậy các giá trị riêng là:
Để tìm các vector riêng:
Với ta có:
Hoặc
Trang 22Vậy vector riêng đầu tiên là: hoặc bất kỳ tích vô hướng nào khác.
Hoặc bất kỳ một bội số vô hướng nào
Để chéo hóa ma trận ta dùng công thức (6.69):
Do đó đây là ma trận biến đổi ánh xạ tới tập hợp cơ bản T và W
P6.7 Giả sử có một biến đổi A: R2 R2 Một tập hợp cơ bản của R2 là V = {v1,v2}
i Tìm ma trận biến đổi A với tập hợp cơ bản V được cho như sau:
Trang 23Cách biểu diễn ma trận mới được nêu trong công thức (6.33):
A’ = [B ABw]
A’ = =
P6.8 Giả sử không gian vector P2 của tất cả các đa thức nhỏ hơn hoặc bằng 2 Tập hợp cơ bản cho không gian vector này là V = { 1,t,t2} Giả sử có vi phân biến đổi D.
i Tìm ma trận liên hệ đối với tập hợp cơ bản V của phép biến đổi này
ii Tìm giá trị đặc trưng và vector đặc trưng của phép biến đổi này
Do đó chỉ có đa thức được suy ra từ phiên bản mở rộng của bản thân nó là hằng số
P6.9 Giả sử có một biến đổi A: R2 R2 Hai ví dụ về các vector biến đổi như trong hình P6.4 Tìm ma trận liên hệ với tập hợp cơ bản chuẩn
Hình P6.4 Biến đổi của bài toán P6.9
Giải: