Các phép biến đổi tuyến tính dùng trong mạng Neural- Biến đổi cơ sở - Vector riêng và giá trị riêng - DiagonalizationTóm tắt các kết quả Các vấn đề đã được giải quyết Như chúng ta đã thấ
Trang 16 Các phép biến đổi tuyến tính dùng trong mạng Neural
- Biến đổi cơ sở
- Vector riêng và giá trị riêng
- DiagonalizationTóm tắt các kết quả
Các vấn đề đã được giải quyết
Như chúng ta đã thấy trong các chương trước, việc nhân một véc tơ với một matrận trọng số là một trong những phép toán cơ bản được thực hiện bởi các mạngnơron Phép toán này là một phép biến đổi tuyến tính Chúng ta sẽ tìm hiểu cácphép biến đổi tuyến tính nói chung và xác định các đặc điểm cơ bản của chúng.Các khái niệm trong chương này, như giá trị riêng, vector riêng và biến đổi cơ bản,
sẽ rất quan trọng cho việc hiểu các chủ đề mạng neural như thế khi học thực thi(bao gồm cả luật Widrow-Hoff và lan truyền ngược lại) và sự hội tụ mạngHopfield
Lý thuyết và các ví dụ:
Nhớ lại mạng Hopfield được thảo luận trong chương 3 (xem hình 6.1) đầu ra củamạng được cập nhập một cách đồng bộ theo phương trình
a(t +l) = satlin(Wa(t) + b) (6.1)
Chú ý rằng tại mỗi lặp lại đầu ra của mạng được nhân lại với một ma trận trọng số
W Hiệu quả của phép phép toán lặp lại này là gì? Chúng ta có thể xác định đượcđầu ra của mạng sẽ hội tụ tại một vài giá trị trạng thái ổn định, dẫn đến vô cùng,hay là là dao động? Trong chương này chúng ta sẽ trình bày cơ sở để trả lời cáccâu hỏi này, cùng với nhiều vấn đề khác về các mạng neural được mô tả trongcuốn sách này
Trang 2Lớp hồi quyĐiều kiện đầu
Hình 6.1 Mạng Hopfield
Các phép biến đổi tuyến tính
Chúng ta bắt đầu vơi một vài định nghĩa chung
∗ Phép biến đổi tuyến tính
Một phép biến đổi tuyến tính gồm 3 phần
1 Một tập các thành phần X= {x i}, gọi là miền (domain),
2 Một tập các thành phần Y = {y i}, gọi là dải (range), và
3 Một quy tắc liên kết x i ∈ X với một thành phần y i ∈Y
∗ Phép biến đổi tuyến tính: một phép biến đổi A được gọi là tuyến tính nếu:
1 Với mọi x1, x2∈ X , A(x1+x2)=A(x1)+A(x2)
2 Đối với mọi x ∈ X, a ∈ R, A(ax) = a A(x)
Quan sát, ví dụ, phép biến đổi nhận được bằng cách quay các vectơ trong miền R2
với một góc quay θ, như hình trên Hai hình tiếp theo mô tả rằng thuộc tính 1 đượcthỏa mãn đối với việc quay Chúng thể hiện rằng nếu ban muốn quay một tổng 2véc tơ, bạn cũng có thể quay từng véc tơ trước và sau đó mới cộng chúng Hìnhthứ 4 mô tả thuộc tính 2 Nếu bạn muốn quay một véc tơ đã vẽ theo tỉ lệ, bạn có
Trang 3thể quay nó trước và sau đó vẽ nó theo tỷ lệ Do đó phép quay là một phép toántuyến tính
Các biểu diễn ma trận
Như chúng ta đã đề cập ở phần đầu của chương này, nhân ma trận là một ví dụ củamột phép biến đổi tuyến tính Chúng ta cũng có thể thấy rằng bất kỳ một phép biếnđổi tuyến tinhs nào giữa hai không gian véc tơ có thể được biểu diễn bới một matrận ( như trong chương trước chúng ta đã trình bày rằng bất kỳ một véc tơ tổngquát nào trong không gian véc tơ thứ nguyên hữu hạn có thể được biểu diễn bởimột cột các số Để thể hiện điều này chúng ta sẽ sử dụng phần lơnc các khái niệmtrong chương trước
Cho {v1, v2, … , v n} là một cơ sở của không gian véc tơ X, và {u1,u2, … , u m} là cơ sởcủa không gian véc tơ Y Điều này có nghĩa là đối với bất kỳ hai véc tơ x ∈ X và y
Vì các vector A(v j) là các thành phần của Y, nên chúng có thể được viết như là các
tổ hợp tuyến tính của các vector cơ sở đối với Y:
Trang 4Nhắc lại rằng vì u i tạo ra một tập cơ sở nên chúng nhất thiết phải độc lập Điều này
có nghĩa là mỗi hệ số nhân với u i trong phương trình (6.9) phải bằng không (xemphương trình (5.4)), do đó
ma trận Khi chúng ta nhân ma trận này với khai triển vector của vector “x”, chúng
ta sẽ nhận được khai triển vector của vector chuyển đổi “y”
Luôn nhớ rằng biểu diễn ma trận không phải là duy nhất (chỉ là biểu diễn của mộtvector tổng quát bởi một cột các số không phải là duy nhất – xem chương 5) Nếuchúng ta thay đổi tập cơ sở đối với miền (domain) hoặc đối với dải (range), thìbiểu diễn ma trận cũng sẽ thay đổi Chúng ta sẽ sử dụng lập luận này cho lợi thếcủa chúng ta trong các chương sau
Một ví dụ của một biểu diễn ma trận, xem xét phép biến đổi quay Hãy tìmmột biểu diễn ma traan cho phép biến đổi này Bước quan trọng được đưa ra trongphương trình (6.6) Chúng ta phải biến đổi mỗi vector cơ sở cho miền (domain) vàsau đó khai triển nó ở dạng các vector cơ sở của dải (range) Trong ví dụ nàydomain và range giống nhau (X=Y=R2), để đơn giản chúng ta sẽ dùng cơ sở chuẩncho cả hai (u i=v i=s i), như thể hiện trong hình bên cạnh
Bước đầu tiên là bến đổi vector cơ sở đầu tiên và khai triển kết quả vector đãchuyển dưới dạng các vector cơ sở Nếu chúng ta quay s1 ngược chiều kim đồng
Trang 5Bước tiếp theo là chuyển đổi vector cơ sở thứ hai Nếu chúng ta quay s2 ngượcchiều kim đồng hồ một góc θ chúng ta sẽ nhận được
A=[cos (θ) −sin (θ) sin (θ) cos(θ) ](6.14 )
Ta thấy rằng khi nhân một vector với ma trận phương trình (6.14), thì vector nàyđược quay một góc θ
Nói tóm lại, để nhận được biểu diễn ma trận của một phép biến đổi chúng ta sửdụng phương trình (6.6) Chúng ta chuyển đổi mỗi vector cơ sở đối với miền(domain) và khai triển nó dưới dạng các vector cơ sở đối với dải (range) Các hệ
số của mỗi khai triển tạo ra một cột của ma trận
Để kiểm tra hình ảnh quá trình tạo một biểu diễn ma trận, dùng các phép biến đổi tuyến tính biểu diễn thiết kế mạng neural
Biến đổi cơ sở
Chúng ta để ý từ phần trước mà biểu diễn ma trận của phép biến đổi tuyến tínhkhông phải là duy nhất Biểu diễn sẽ phụ thuộc vào những tập cơ sở nào được sửdụng cho domain và range của phép biến đổi đó Trong phần này chũng ta sẽ thảoluận một cách chính xác một biểu diễn ma trận thay đổi như thế nào khi các tập cơ
Trang 6Bây giờ giả sử là chúng ta sử dụng các tập cơ sở khác nhau cho X và Y Cho tập {
t1, t2, …, t n} là một cơ sở mới cho X, và tập {w1w2,… , w m} là cơ sở mới cho Y Vớicác cơ sở mới, vector x ∈ X được viết:
Mối liên hệ giữa A và A ' là gì? Để tìm ra, chúng ta cần tìm mối liên hệ giữa hai tập
cơ sở Đầu tiên, vì mỗi t i là một thành phần của X, chúng có thể khai triển dướidạng cơ sở ban đầu đối với X:
Trang 7Kết quả quan trọng này, mà nó mô tả mối quan hệ giữa hai biểu diễn ma trận bất
kỳ của một biến đổi tuyến tính được đưa ra, được gọi là một phép chuyển đổi đồngdạng (similarity transform) [Brog91] Nó sẽ được dùng nhiều trong các chươngsau Hóa ra là với việc chọn các vector cơ sở bên phải chúng ta có thể nhận đượcmột biểu diễn ma trận mà nó biểu lộ các đặc tính chủ yếu của phép chuyển đổituyến tính nó biểu diễn Điều này sẽ được mô tả trong phần tiếp theo
ví dụ như các bộ cơ sở dùng để biến đổi, ta hãy xem lại ví dụ quay vector của phầntrước Trong phần đó một biểu diễn ma trận được trình bày bằng cách dùng tập có
sở chuẩn {s1s1} Và ta hay tìm một biểu diễn mới dùng cơ sở {t1t2}, nó được thểhiện trong hình bên cạnh (chú ý rằng trong ví dụ này bộ cơ sở như nhau đượcdùng cho cả hai main và range.)
Bước đầu tiên là khai triển t1 và t2 dưới dạng bộ cơ sở chuẩn, như trong phươngtrình (6.24) và phương trình (6.25) Bằng cách xem xét ký hính bên cạnh chúng tathấy rằng:
Trang 8=[B−1w A B t]=[−1/3 2/32/3 2/3][cosθ −sinθ sinθ cosθ ][0.51 −11 ]
¿[1/3 sinθ+cosθ−sinθ −1/3 sinθ+cosθ−4 /3 sinθ ]. (6.39)
Trang 9Chúng ta có thể kiểm tra để thấy được như thế nào nếu y ' tương ứng với y? Cả hainên là những biểu diễn của cùng một vector, y, dưới dạng hai tập cơ sở khác nhau;
y dùng cho cơ sở {s1, s2} và y ' dùng cho cơ sở {t1, t2} Trong chương 5 chúng tadùng các vector cơ sở tương hỗ để chuyển một biểu diễn thành một biểu diễn khác(xem phương trình (5.43) Dùng khái niệm này chúng ta có
y '=B−1y=[0.51 −11 ]−1[0.6160.933]=[−1/3 2/32/3 2/3][0.6160.933]=[1.0330.416],(6.45)
Điều này kiểm tra kết quả trước đó của chúng ta Các vector được hiển thị tronghình bên trái Kiểm tra bằng hình ảnh thấy rằng hai biểu diễn, y và y ', đã đưa rabởi phương trình (6.43) và phương trình (6.44), là hợp lý
Giá trị riêng và giá trị vecto
Trong phần cuối chúng ta sẽ thảo luận về giá trị riêng và giá trị vecto của các phépbiến đổi tuyến tính Những giá trị này sẽ giúp chúng ta trả lời được những câu hỏiquan trọng về hoạt động của mạng neural ví dụ như câu hỏi liên quan đến sự ổnđịnh của mạng Hopfield mà chúng ta đã đề cập ở đầu chương
Trước hết ta định nghĩa như thế nào là giá trị riêng và giá trị vecto Xét biến đổituyến tính A: X > X Những vecto z ε X khác 0 và thỏa mãn
Trong đó z là giá trị vecto và λ là giá trị riêng Chú ý rằng khái niệm giá trị vecto
là một không gian vecto vì nếu z thỏa mãn (6.46) thì az cũng thỏa mãn
Do đó một giá trị vecto của một biến đổi cho trước đại diện cho một hướng mà bất
kỳ vecto nào theo hướng đó khi biến đổi sẽ tiếp tục chỉ về cùng một hướng nhưng
sẽ tỉ lệ theo giá trị riêng Xét lại ví dụ về góc quay ở những phần trước Liệu cóvecto nào mà khi bị quay đi 30o sẽ lại tiếp tục chỉ về hướng giống như vậy? Câutrả lời là không, đây là trường hợp không có giá trị riêng
Trang 10Bằng cách nào có thể tính toán được giá trị riêng và giá trị vecto? Giả thiết rằng 1vecto cơ sở được chọn cho không gian vecto n chiều X Khi đó, ma trận X biểudiễn cho phương trình 6.46 như sau
Hoặc
Nghĩa là số cột của ma trận [A-λI] là độc lập, do đó định thức của ma trận bằng 0:
Định thức này là một đa thức bậc n Do đó phương trình 6.49 luôn có n nghiệm,trong đó có những nghiệm giống nhau
Quay lại ví dụ về góc quay Nếu chúng ta dùng tập hợp cơ sở được chuẩn hóa thì
ma trận của biến đổi sẽ là
Do đó có thể viết lại phương trình 6.49 như sau
Hoặc
Nghiệm của phương trình là
Trang 11Như chúng ta dự đoán ban đầu, biến đổi này không có giá trị riêng thực Điều nàynghĩa là bất kỳ vecto thực nào được biến đổi nó sẽ chỉ về một hướng mới.
Xét ma trận sau:
Để tìm được giá trị riêng chúng ta phải giải phương trình:
Hoặc
Và giải ra các nghiệm chính là những giá trị riêng
Giải phương trình (6.48) ta tìm được những giá trị vecto
Thay lần lượt các giá trị λ1, λ2 Với λ1:
Hoặc
Vậy giá trị vecto đầu tiên sẽ là
Trang 13Chú ý rằng đây là ma trận chéo Nếu ta có những giá trị riêng phân biệt ta hoàntoàn có thể chéo hóa ma trận bằng cách dùng các giá trị vecto như là những vecto
cơ bản Quá trình chéo hóa được tóm tắt như sau Xét
trong đó {z1, z2, , zn} là những giá trị vecto của ma trận A
trong đó {λ1, λ2, , λn} là những giá trị riêng của ma trận A
Kết quả này rất hữu ích khi chúng ta phân tích hoạt động của những mạng neural ởcác chương sau
Tóm tắt kết quả
Những biến đổi
Một biến đổi gồm 3 phần:
1 Tập các giá trị X = {xi} được gọi là miền
2 Tập các giá trị Y = {yi} được gọi là dải giá trị và
3 Luật mối liên hệ giữa mỗi giá trị xi với mỗi giá trị yi
Biến đổi tuyến tính
Một biến đổi A là tuyến tính nếu:
1 Với tất cả các x1, x2 thuộc X, A(x1+x2) = A(x1) + A(x2)
2 Với tất cả x thuộc X, a thuộc R, A(ax) = aA(x)
Biểu diễn dưới dạng ma trận
Xét {v1, v2, , vn} là tập cơ bản của khôn gian vecto X, và xét {u1, u2, , um} là tập
cơ bản của không gian vecto Y Xét A là biến đổi tuyến tính với vùng X và dải Y:
Các hệ số của ma trận được lấy như sau:
Trang 14Sự thay đổi cơ bản
Giá trị riêng và giá trị vecto
Trang 15Hình 6.1 Mạng đơn neural.
Phương trình của mạng là
Để biến đổi này là tuyến tính cần thỏa mãn:
Kiểm tra điều kiện thứ nhất
So sánh với
2 phương trình chỉ bằng nhau khi b = 0 Do đó , biến đổi này không phải là biếnđổi tuyến tính Những biến đổi điển hình như vậy gọi là những biến đổi affine.P6.2 Chúng ta đã thảo luận trong chương 5 Phép chiếu có phải là một biến đổituyến tính?
Phép chiếu của vecto X lên vecto v được tính
Trong đó (x,v) là tích trong của x với v
Trang 16Chúng ta xét xem biến đổi này có thỏa mãn 2 điều kiện của phép biến đổi tuyếntính hay không Xét điều kiện thứ nhất:
Kiểm tra điều kiện thứ hai:
Như vậy, phép chiếu là một biến đổi tuyến tính
P6.3 Xét biến đổi A được tạo bởi ánh xạ vecto x trong miền R2 theo đường x1 + x2
= 0 Tìm ma trận của biến đổi này theo tiêu chuẩn cơ bản trong R2
Hình 6.2 Biến đổi ánh xạPhương trình (6.6) chỉ ra cách tìm ma trận này
Ta cần biến đổi mỗi vecto cơ bản của miền sau đó mở rộng kết quả theo khái niệmvecto cơ bản theo các dải Mỗi lần mở rộng ta lại có được một cột của ma trận.Trong trường hợp này tập cơ bản cho cả domain và dãy là {s1, s2} Thực hiện biếnđổi thứ nhất trước Nếu ta ánh xạ s1 theo đường x1 + x2 = 0, ta có:
Trang 17Cho ta cột đầu tiên của ma trận Biến đổi đến s2:
Cho ta cột thứ 2 của ma trận Kết quả cuối cùng:
Kiểm tra kết quả bằng cách biến đổi vecto x = [1,1]T
Sự ánh xạ của x được biểu diễn như trong hình 6.3:
Hình 6.3 Kiểm tra hoạt động ánh xạ
(Bạn có thể đoán được giá trị riêng và giá trị vecto của biến đổi này không? Sửdụng biến đổi tuyến tính dùng mạng neural để kiểm tra Tính toán các kết quả giátrị riêng và giá trị vecto, sử dụng chức năng của Matlab để kiểm tra dự đoán) P6.4 Xét không gian số phức Đây là không gian vecto X, và coi tập cơ bản là {1+ j, 1 -j) Xét A: X > X là sự kết hợp
i Tìm ma trận biến đổi A theo tập cơ bản đã cho ở trên
Trang 18ii Tìm giá trị riêng và giá trị vecto của biến đổi.
iii Tìm ma trận biểu diễn A theo giá trị vecto
i Để tìm ma trận của biến đổi, ta biến đổi mỗi vecto cơ bản:
Từ đó suy ra ma trận biểu diễn:
Để tìm những giá trị riêng, ta dùng phương trình (6.49)
Vậy các giá trị riêng là λ1 = 1; λ 2 = -1 Để tìm các giá trị vecto, sử dụng phươngtrình (6.48)
Trang 19
Hay
Do đó véc tơ riêng thứ hai sẽ là
Hay bất kỳ tích vô hướng nào khác của nó
Chú ý rằng trong khi các véc tơ riêng này có thể là các cột số, trong thực tế chúng
là các số phức Ví dụ:
Kiểm tra rằng chúng là các véc tơ riêng thực
iii Để thực hiện phép chuyển đổi cơ sở ta cần sử dụng phương trình (6.33):
Trong đó
(Chúng ta đang sử dụng cùng một cơ sở cho miền xác định và tập xác định) Vìvậy ta có
Được suy ra từ phương trình (6.69), ta có thể chéo hóa biểu diễn ma trận
P.65-Chéo hóa ma trận sau :
Trang 20Bước đầu tiên là tìm trị riêng
Vậy các trị riêng là λ1=1; λ2=4 Để tìm các véc tơ riêng,
Vớiλ=λ1=1
Hoặc :
Vì vậy véc tơ riêng thứ nhất là :
Hay bất kỳ tích vô hướng nào khác của nó
Với λ=λ1=4
Hoặc
Do đó véc tơ riêng thứ hai sẽ là :
Trang 21Hay bất kỳ tích vô hướng nào khác.
Để chéo hóa ma trận ta sử dụng phương trình (6.69)
Trong đó
Vì vậy ta có :
P6.6-Xét phép biến đổi sautrong đó biểu diễn ma trận đối với tập cơ sở chuẩn
là :
Tìm ma trận cho phép biến đổi đối với các tập cơ sở sau :
Bước đầu tiên là lập các ma trận
Bây giờ ta sử dụng phương trình (6.33) để lập biểu diễn ma trận mới
Trang 22Vậy đây là ma trận chuyển đổi từ tập cơ sở T sang W.
P6.7-Xét phép biến đổi một tập cơ sở của R2 được cho như sau V ={v1, v2}
i Tìm ma trận chuyển đổi A đối với tập cơ sở V nếu nó được cho
bởi
ii Xét tập cơ sở W ={w1, w2} Tìm ma trận chuyển đổi A đối với tập
cơ sở W nếu nó được cho bởi
i Mỗi một phương trình trong hai phương trình cho ta một cột của ma trận,
như được xác định trong phương trình (6.6) Vì vậy ma trận có dạng
ii Ta có thể biểu diễn tập véc tơ cơ sở W dưới dạng cột theo tập véc tơ cơ sở
V
Ta có thể lập ma trận cơ sở mà ta cần để thực hiện biến đổi đồng dạng
Biểu diễn ma trận mới có thể thu được từ phương trình (6.33)
Trang 23P6.8-Xét không gian véc tơ Ρ2 của các đa thức có bậc nhỏ hơn hoặc bằng 2 Một cơ sở của không gian véc tơ này làV ={1, t ,t2} Xét phép biến đổi vi phânD
i Tìm ma trận của phép biến đổi này đối với tập cơ sở V
ii Tìm trị riêng và véc tơ riêng của phép biến đổi
i Bước đầu tiên là biến đổi mỗi véc tơ cơ sở
Ma trận của phép biến đổi được cho bởi
ii Để tìm trị riêng ta phải giải
Vậy tất cả ba trị riêng đều bằng 0 Để tìm các véc tơ riêng ta cần giải
Với λ=0 ta có