Hãy lấy ra xấp xỉ Nyström theo cách làm cho câu trả lời cho câu hỏi của bạn rõ ràng hơn.
Giả định chính trong Nyström là hàm kernel có thứ hạng . (Thực sự chúng tôi cho rằng nó xấp xỉ thứ hạng m , nhưng để đơn giản, bây giờ hãy giả vờ nó chính xác là thứ hạng m .) Điều đó có nghĩa là bất kỳ ma trận hạt nhân nào cũng sẽ có thứ hạng nhiều nhất là m , và đặc biệt là
K = [ k ( x 1 , x 1 ) ... k ( x 1 , x n ) ⋮ ⋱ ⋮ k ( x nmmmm, hình dạngn×m, và giá trị riêng được sắp xếp theoΛ, mộtm×mma trận đường chéo.
là hạngm. Do đó cómgiá trị riêng khác không, và chúng tôi có thể viết eigendecomposition củaKlà
K=UΛUT
với vector riêng lưu trữ trongU
K= ⎡⎣⎢⎢k ( x1, x1)⋮k ( xn, x1)Giáo dục⋱Giáo dụck ( x1, xn)⋮k ( xn, xn)⎤⎦⎥⎥,
mmKK= UΛ UT
Bạnn × mΛm × m
Vì vậy, hãy chọn các yếu tố, thường là thống nhất ngẫu nhiên nhưng có thể theo các sơ đồ khác - tất cả những gì quan trọng trong phiên bản đơn giản này là K 11 có thứ hạng đầy đủ. Khi chúng tôi thực hiện, chỉ cần dán lại các điểm để chúng tôi kết thúc với ma trận hạt nhân theo các khối:
K = [ K 11 K T 21 K 21 K 22 ] ,
trong đó chúng tôi đánh giá từng mục trong K 11 (đó là m × mmK11
K= [ K11K21KT21K22] ,
K11m × m ) và
(
( n - m ) × mK21( n - m ) × m), nhưng không muốn đánh giá bất kỳ mục nào trong
.
K22
Bây giờ, chúng ta cũng có thể phân tách eigendecro theo cấu trúc khối này:
nơiU1làm×mvàU2là(n-m)×m. Nhưng lưu ý rằng bây giờ chúng ta cóK11=U1ΛU T 1 . Vì vậy, chúng ta có thể tìm thấy
K=UΛUT=[U1U2]Λ[U1U2]T=[U1ΛUT1U2ΛUT1U1ΛUT2U2ΛUT2],
U1m×mU2(n−m)×mK11=U1ΛUT1 và
Λ bằng cách kết hợp ma trận đã biết
K 11 .
Bạn1ΛK11
Chúng tôi cũng biết rằng . Ở đây, chúng ta biết tất cả mọi thứ trong phương trình này ngoại trừ U 2 , vì vậy chúng tôi có thể giải quyết cho những gì giá trị riêng mà ngụ ý: phải nhân cả hai bên bởi ( Λ U T 1 ) - 1 = U 1 Λ - 1 để có được
U 2 = K 21 U 1 Λ - 1 .K21= U2Λ UT1Bạn2( Λ UT1)- 1= U1Λ- 1
Bạn2= K21Bạn1Λ- 1.
Bây giờ chúng tôi có mọi thứ chúng tôi cần để đánh giá
:
K 22K22K22= U2Λ UT2= ( K21Bạn1Λ- 1) Λ ( K21Bạn1Λ- 1)T= K21Bạn1( Λ- 1Λ ) Λ- 1BạnT1KT21= K21Bạn1Λ- 1BạnT1KT21= K21K- 111KT21= ( K21K- 1211) ( K21K- 1211)T.(*)(**)
Trong (*), chúng tôi đã tìm thấy một phiên bản nhúng Nyström mà bạn có thể đã xem đơn giản là định nghĩa. Điều này cho chúng ta biết các giá trị hạt nhân hiệu quả mà chúng ta đang áp dụng cho khối .K22
Trong (**), chúng ta thấy rằng ma trận tính năng , đó là hình dạng(n-m)×K21K- 1211 , tương ứng với các giá trị hạt nhân được liệt kê này. Nếu chúng ta sử dụng K 1( n - m ) × mchomđiểm, chúng ta có một tập hợp cácmchiều tính năng
Φ=K1211mm
Φ = ⎡⎣⎢K1211K21K- 1211⎤⎦⎥.
Chúng ta có thể chỉ một cách nhanh chóng xác minh rằng
tương ứng với ma trận kernel đúng:
Φ Φ TΦΦ ΦT= ⎡⎣⎢K1211K21K- 1211⎤⎦⎥⎡⎣⎢K1211K21K- 1211⎤⎦⎥T= ⎡⎣⎢K1211K1211K21K- 1211K1211K1211K- 1211KT21K21K- 1211K- 1211KT21⎤⎦⎥= [ K11K21KT21K21K- 111KT21]= K.
mΦK
xΦ
ϕ(x)=[k(x,x1)…k(x,xm)]K−1211.
x[k(x,x1)…k(x,xm)]K21K21K−1211ϕ(x)K11K11K−1211=K1211ΦxnewΦtest=Ktest,1K−1211.
m[KtrainKtest,trainKtrain,testKtest]mKtestK22
Ở trên, chúng tôi giả định rằng ma trận hạt nhân
là
chính xác bậc
m . Điều này thường không phải là trường hợp; cho một hạt nhân Gaussian, ví dụ,
K là
luôn bậc
n , nhưng giá trị riêng sau thường thả ra khá nhanh chóng, vì vậy nó sẽ là
gần một ma trận cấp bậc
m , và tái tạo của chúng ta về
K 21 hoặc
K thử nghiệm , 1 đang đi để
gần với các giá trị thực nhưng không hoàn toàn giống nhau. Họ sẽ được tái tạo tốt hơn gần hơn eigenspace của
K 11 được cho rằng của
KmKnmK21Ktest,1K11KNhìn chung, đó là lý do tại sao chọn đúng
m điểm rất quan trọng trong thực tế.
Cũng lưu ý rằng nếu có bất kỳ giá trị riêng nào bằng 0, bạn có thể thay thế nghịch đảo bằng giả và mọi thứ vẫn hoạt động; bạn chỉ cần thay thế K 21 trong việc tái thiết với K 21 K † 11 K 11K11K21K21K†11K11 .
Kmax(λi,10−12)