Một số phương pháp phân tích ma trận và ứng dụng

59 0 0
Một số phương pháp phân tích ma trận và ứng dụng

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC QUY NHƠN —————————————— NGUYỄN NHẬT NAM MỘT SỐ PHƯƠNG PHÁP PHÂN TÍCH MA TRẬN VÀ ỨNG DỤNG KHĨA LUẬN TỐT NGHIỆP ĐẠI HỌC Ngành: Toán ứng dụng Chuyên ngành: Khoa học liệu Người hướng dẫn: TS.Lâm Thị Thanh Tâm Bình Định, 2023 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC QUY NHƠN —————————————— MỘT SỐ PHƯƠNG PHÁP PHÂN TÍCH MA TRẬN VÀ ỨNG DỤNG KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC Ngành: Toán ứng dụng Chuyên ngành: Khoa học liệu Sinh viên thực : NGUYỄN NHẬT NAM Mã số sinh viên : 4251140002 Lớp, Khóa : Tốn ứng dụng K42 Người hướng dẫn : TS.Lâm Thị Thanh Tâm Bình Định, 2023 Lời cảm ơn Trước hết, tơi muốn bày tỏ lòng biết ơn sâu sắc Trường Đại học Quy Nhơn, nơi cung cấp cho môi trường học thuật tuyệt vời, đồng thời hỗ trợ suốt quãng thời gian học tập nghiên cứu Tôi xin gửi lời cảm ơn chân thành đến TS.Lâm Thị Thanh Tâm, người dẫn dắt hỗ trợ tơi suốt q trình thực khóa luận Bằng kiên nhẫn, tận tâm trí tuệ mình, TS.Lâm Thị Thanh Tâm hướng dẫn đến hiểu biết giúp phát triển kỹ nghiên cứu quan trọng Tôi muốn cảm ơn Khoa Toán - Thống Kê tạo hội học thuật nghiên cứu tốt cho tơi Sự hỗ trợ khuyến khích q thầy giúp tơi hồn thành khóa luận Cuối cùng, xin gửi lời cảm ơn sâu sắc đến gia đình bạn bè tơi Sự ủng hộ khích lệ khơng ngừng nghỉ họ giúp tơi vượt qua thách thức hồn thành cơng việc Trong q trình viết khóa luận chỉnh sửa nhiều lần khơng thể tránh khỏi việc thiếu sót Tơi xin chân thành cảm ơn nhận góp ý từ quý thầy cô, anh chị bạn bè để chỉnh sửa luận văn tốt Quy Nhơn, ngày tháng năm 2023 Sinh viên thực Nguyễn Nhật Nam i Mục lục Lời cảm ơn i Lời mở đầu iv Một số ký hiệu vi Một số kiến thức chuẩn bị 1.1 Ma trận 1.2 Vector riêng- Giá trị riêng 1.3 Định lí phổ ma trận đối xứng 1.4 Xác xuất thống kê 1.4.1 Kỳ vọng 1.4.2 Phương sai 1.4.3 Ma trận hiêp phương sai PHÂN TÍCH GIÁ TRỊ KÌ DỊ 11 2.1 Giới thiệu 11 2.2 Phân tích giá trị kì dị 11 2.3 Thuật tốn tìm SVD ma trận 14 2.4 Một số tính chất ma trận liên quan đến SVD 18 Phân tích thành phần 21 3.1 Giới thiệu 21 3.2 Ý tưởng 22 3.3 Phân tích thành phần 23 3.4 Tìm thành phần tốn PCA thông qua SVD 24 ii 3.5 Tính nghiệm PCA 26 3.6 Thuật tốn tìm PCA ma trận 27 Một số ứng dụng SVD PCA 30 4.1 Ứng dụng SVD toán xấp xỉ hạng thấp tốt ma trận 30 4.2 Phân tích SVD xử lí ảnh 35 4.3 Eigenface ứng dụng PCA nhận dạng khuôn mặt 39 4.4 Nghiên cứu ứng dụng SVD kiến trúc Transformer 46 Kết luận 48 Tài liệu tham khảo 48 iii Lời mở đầu Trong thời đại cơng nghệ thơng tin nói chung liệu nói riêng ngày phát triển mạnh mẽ, việc thu thập xử lý liệu ngày trở nên quan trọng cần thiết Các phương pháp phân tích liệu phân rã giá trị kì dị (SVD) phân tích thành phần (PCA) đóng vai trò quan trọng việc giải vấn đề liên quan đến liệu lớn đa chiều Những phương pháp khơng giúp giảm kích thước liệu mà cịn giúp khai thác thơng tin hữu ích từ liệu gốc SVD PCA ứng dụng rộng rãi nhiều lĩnh vực khoa học kỹ thuật, chẳng hạn xử lý hình ảnh, phân tích liệu, nhận dạng mẫu, thống kê, Trong khóa luận này, chúng tơi tập trung nghiên cứu phương pháp phân tích liệu phân rã giá trị kì dị (SVD) phân tích thành phần (PCA), số ứng dụng chúng toán thực tế Mục tiêu khóa luận tìm hiểu tính chất ứng dụng SVD PCA việc giải vấn đề liên quan đến liệu Đối tượng nghiên cứu khóa luận phương pháp phân rã giá trị kì dị (SVD) phân tích thành phần (PCA) Ngồi lời cảm ơn, mục lục, lời mở đầu số ký hiệu, luận văn chia làm bốn chương chính: ˆ Chương 1: Kiến thức Trong chương này, chúng tơi trình bày số kiến thức sở đại số tuyến tính, giải tích thống kê, nhằm chuẩn bị cho việc tìm hiểu SVD PCA ˆ Chương 2: Phân rã giá trị kì dị (SVD) Trong chương này, giới thiệu SVD tính chất ma trận liên quan đến SVD ˆ Chương 3: Phân tích thành phần (PCA) Trong chương này, chúng tơi giới thiệu PCA, cách tính PCA mối quan hệ PCA SVD iv ˆ Chương 4: Ứng dụng SVD PCA tốn thực tế Chương trình bày số ví dụ cụ thể việc áp dụng SVD PCA toán thực tế xử lý hình ảnh, nhận dạng khn mặt, phân tích liệu thống kê v Một số ký hiệu R : Tập hợp số thực Rn : Tập hợp véc tơ thực n chiều Rn×m : Tập hợp ma trận thực cấp n × m ∥A∥F : Chuẩn Frobenius ma trận A ∥A∥2 : Chuẩn ma trận A AT : Ma trận chuyển vị A A−1 : Ma trận nghịch đảo A A+ : Ma trận giả nghịch đảo A vi Chương Một số kiến thức chuẩn bị 1.1 Ma trận Định nghĩa 1.1.1 [2] Ma trận cỡ m × n bảng gồm mn số thực xếp thành m dòng n cột Ma trận thường kí hiệu sau  a11 a12 a13 · · · ··· ··· a1n    a21 a22 a23 · · · · · · · · · a2n A=   ··· ··· ···  am1 am2 a13 · · · · · · · · · amn     ,     a a12 a13  11   a21 a22 a23 A=    am1 am2 a13 ··· ··· ··· a1n ··· ··· ··· ··· ··· ··· a2n ··· · · · · · · amn     ,    A = (aij )m×n , aij phần tử ma trận nằm dòng i, cột j, với i = 1, 2, , m j = 1, 2, , n Khi m = n, ta gọi ma trận cỡ m × m ma trận vuông cấp m Các phần tử a11 , a22 , , amm nằm đường thẳng gọi đường chéo ma trận Định nghĩa 1.1.2 [2] Ma trận đơn vị cấp n ma trận vng cấp n có phần tử nằm đường chéo 1, phần tử khác Ta ký hiệu ma trận đơn vị cấp n In có dạng sau     In =     ··· ··· 0         Trong trường hợp không cần ý đến cấp ma trận, ta ký hiệu ma trận đơn vị I Định nghĩa 1.1.3 [1] Ma trận đường chéo ma trận vng có phần tử nằm đường chéo khác 0, phần tử nằm ngồi đường chéo Ma trận đường chéo có dạng sau     D=    a11 0 a22 · · · amm         Ma trận có dịng gọi vector dịng Ma trận có cột gọi vector cột Định nghĩa 1.1.4 [3] Ma trận vuông A cấp n gọi ma trận khả nghịch tồn ma trận A′ vuông cấp n thỏa mãn AA′ = A′ A = In Ma trận A gọi ma trận nghịch đảo ma trận A, ký hiệu A−1 Định nghĩa 1.1.5 [2] Cho ma trận A = (aij )m×n Ma trận chuyển vị A, ký hiệu AT , có dạng AT = (aji )n×m Ma trận vng A gọi ma trận đối xứng AT = A, gọi ma trận phản đối xứng AT = −A Định nghĩa 1.1.6 [2] Ma trận vuông A gọi ma trận trực giao AT A = AAT = I Nhận xét: Chứng minh Vì AT A ma trận đối xứng nên theo Định lí 2.2.1 n giá trị riêng λ1 , , λn khơng âm Do tồn r ⩽ n cho λ1 ⩾ λ2 ⩾ λr > λj = với j > r Khi ma trận A có giá trị kì dị σ1 ⩾ σ2 ⩾ · · · ⩾ σr ⩾ 0, σj = với j > r Chọn vi ∈ Rn , i = 1, 2, , n, vetor riêng tương ứng với λi cho vi vetor đơn vị Đặt V = (v1 , v2 , , ), với vi vector cột Khi V ma trận trực giao Với σi , ⩽ i ⩽ r, giá trị kì dị dương A, đặt ui = Avi ,i σi = 1, 2, , r Khi ui vector đơn vị Rm Xây dựng ma trận U = (u1 , u2 , , um ), với uj = 0, r < j ⩽ m Ta có U ma trận trực giao Ta chứng minh A = UDVT , hay AV = UD Ta có AV = A [v1 , v2 , , ] = [Av1 , Av2 , , Avn ] = [Av1 , Av2 , , Avr , 0, , 0] = [σ1 u1 , σ2 u2 , , σr ur , 0, , 0] = [u1 , u2 , , um ] · diag (σ1 , σ2 , , σr ) = UD Vậy A = UDVT Trong trường hợp rank(A) = r < n, SVD A có dạng “chặt cụt” sau: A = Ur Dr VrT Ur , Vr ma trận tạo r cột U, V, Dr ma trận cấp r × r tạo r hàng r cột D Khai triển gọi phân tích SVD “chặt cụt” A Định lý 2.2.3 [4] (Về dạng khai triển phân tích giá trị kì dị) Cho A ma trận cỡ m × n Khi A = UDVT = σ1 u1 v1T + σ2 u2 v2T + · · · + σr ur vrT (2.2.4) σi giá trị kì dị dương ma trận A, ui vector kì dị trái vi vector kì dị phải ma trận A 13 Chứng minh Ta có     UDVT = [u1 , u2 , , um ]   Dr×r            = [u1 , u2 , , ur , ur+1 , , um ]    σ   = [u1 , u2 , , ur ]   σr Dr×r   v1T        v2T   σ   = [u1 , u2 , , ur ]   σr  v1T    = [σ1 u1 , , σr ur ]     v2T 2.3          v1T         T  v2T v1T   T  v      T   vr   T  vr+1     vnT                     h    + ur+1 ur+2 um   vrT  T v1   v2T      T vr   v1T    i    [0]        v2T         vnT     T T T   = σ1 u1 v1 + σ2 u2 v2 + · · · + σr ur vr   T vr Thuật tốn tìm SVD ma trận Cho A ma trận cỡ m × n, với m ≥ n Để tìm SVD ma trận A, thực bước sau: 14  ˆ Bước Tính ma trận AT A giải phương trình det AT A − λI = để tìm giá trị riêng λ1 ≥ λ2 ≥ ≥ λn ≥ ma trận AT A Từ suy giá trị √ kì dị A σi = λi , i = 1, n D = diag (σ1 , σ2 , , σn ) ˆ Bước Tương ứng với giá trị riêng λi , tìm véctơ riêng vi ∈ Rn cho  AT A − λI vi = Từ tìm ma trận trực giao V cấp n chứa véctơ kì dị phải A ˆ Bước Xác định véctơ kì dị trái A theo cơng thức ui = Avi σi Bổ sung n−r vector ur+1 , , un vào hệ {u1 , u2 , , ur } cho {u1 , u2 , , un } lập thành sở trực chuẩn Rn Từ nhận ma trận trực giao U chứa véctơ kì dị trái A, A = UDVT phân tích SVD ma trận A Cài đặt thuật tốn PYTHON3 xem Hình 2.1 15 Hình 2.1: Cài đặt thuật tốn SVD PYTHON3 Ví dụ       Tìm SVD ma trận A =     Lời giải: Bước 1: Tìm giá trị kì dị ma trận A Ta có         1     AT A =  =  0  1  Giải phương trình det AT A − λI = 0, ta tìm đượccác giá trị riêng λ AT A √ λ1 = 2, λ2 = Do giá trị kì dị A σ1 = 2, σ2 = Suy  √   D= 16 Bước 2: Tìm ma trận V  T Giải phương trình A A − λI v = ta tìm véctơ riêng tương ứng     v1 =   v2 =   Từ suy  VT =    Bước 3: Tìm ma trận U Ta có  u1 =     √1 √1   1     Av1 = √     =  σ1    0                u2 = Av1 =   = σ2    1        Do    U=  √1 √ 0      Vậy phân tích SVD ma trận A    √1 √       A= =    0      √2      1 Bên ví dụ SVD PYTHON3 Hình 2.2 17 Hình 2.2: Ví dụ SVD PYTHON3 2.4 Một số tính chất ma trận liên quan đến SVD Định lý 2.4.1 [4] Cho ma trận A cỡ m × n bất kì, có phân tích SVD A = UDVT Khi đó, hạng A số giá trị kì dị dương A Chứng minh Giả sử r số giá trị kì dị dương A Đặt Ur = [u1 , u2 , , ur ], Vr = [v1 , v2 , , vr ] Do tính chất hạng ma trận tính trực giao U, V ta suy  rank (Ur ) = rank Ur UTr = rank (Ir ) = r,   rank VrT = rank VrT Vr = rank (Ir ) = r Do    rank(A) = rank UDVT = rank Ur DVrT = rank DVTr = rank(D) = r 18 Định lý 2.4.2 [4] Cho A ma trận có cỡ m × n Giả sử A có phân tích SVD dạng khai triển A = σ1 u1 v1T + · · · + σr ur vrT Khi đó, với số nguyên dương k < r, ma trận Ak = σ1 u1 v1T + · · · + σk uk vkT có hạng k, rank (Ak ) = k Chứng minh Dễ thấy ma trận Ak viết dạng     T T  Ak = σ1 v1 + · · · + σk vk    u1 u2 uk         Ta có  u1  u1 T  u1             u2  u2  u2      = Ik rank   = rank          uk uk uk  Xét rank σ1 v1T , σ2 v2T , , σk vkT Ta có               u1 u2 uk         u1 u2 uk T     = k     v1T , v2T , , vkT (v1 , v2 , , vk ) = Ik Do      T T σ1 v1 , , σk vk (v1 , v2 , , vk ) =     19 σ1 σ2 σk   σ       σ2  Ik =        0 0 σk     =B    Vì rank(B) = k = rank (v1 , v2 , , vk ) nên  rank σ1 v1T , σ2 v2T , , σk vkT = k Từ đó, ta suy rank (Ak ) = k Định lý 2.4.3 [4] Cho A ma trận cỡ m × n σ1 , σ2 , , σr giá trị kì p dị dương A Khi ∥A∥F = σ12 + σ22 + · · · + σr2 Chứng minh Giả sử Q ma trận trực giao cấp m Khi ∥QA∥2F = ∥[Qa1 , , Qan ]∥2F = ∥Q1 ∥2F + · · · + ∥Qan ∥2F = ∥a1 ∥2F + · · · + ∥an ∥2F = ∥A∥2F Giả sử A có phân tích SVD A = UDVT Vì U V ma trận trực giao nên ∥A∥2F 2  T T T T = UDV F = DV F = DV = VDT F = DT F = σ12 +σ22 +· · ·+σr2 F Vậy ∥A∥F = q σ12 + · · · + σr2 với σi , i = 1, 2, , r giá trị kì dị ma trận A 20 Chương Phân tích thành phần 3.1 Giới thiệu Phép phân tích thành phần (Principal Components Analysis - PCA) phương pháp phân tích ma trận đa biến, giúp giảm số chiều liệu cách tìm thành phần ma trận Ý tưởng PCA chuyển đổi liệu ban đầu từ khơng gian có số chiều cao sang khơng gian có số chiều thấp hơn, giúp cho việc xử lý phân tích liệu dễ dàng Phép phân tích thành phần đưa vào năm 1901 Karl Pearson phát triển ứng dụng rộng rãi nhiều lĩnh vực khác nhận dạng hình ảnh, phân tích tín hiệu, dự báo kinh tế thị trường tài Một ứng dụng quan trọng phép phân tích thành phần giảm số chiều liệu Khi liệu có số chiều lớn, việc phân tích xử lý trở nên phức tạp tốn nhiều thời gian Đồng thời cho phép giảm số chiều liệu cách xác định thành phần ma trận, giúp cho việc xử lý phân tích liệu trở nên đơn giản nhanh chóng Ngồi ra, phép phân tích cịn sử dụng để giảm tác động nhiễu liệu, phát mối quan hệ biến đầu vào giúp tối ưu hóa thuật tốn máy học.Với ứng dụng lợi ích mình, phép phân tích thành phần trở thành cơng cụ quan trọng phân tích liệu sử dụng rộng rãi nhiều lĩnh vực khác Nội dung chương tổng hợp từ nguồn [5], [7] [17] 21 e2 σ1 σ2 e1 (a) (b) Hình 3.1: Ví dụ phương sai liệu không gian hai chiều (a) Phương sai chiều thử hai (tỉ lệ với độ rộng đường hình chng) nhỏ phương sai chiều thứ (b) Cả hai chiều có phương sai đáng kể Phương sai chiều phương sai thành phần tương ứng lấy toàn liệu Phương sai tỉ lệ thuận với độ phân tán liệu 3.2 Ý tưởng Giả sử liệu ban đầu x ∈ Rm liệu giảm chiều z ∈ Rr với r < m Cách đơn giản để giảm chiều liệu từ m r < m cần giữ lại r phần tử quan trọng Có hai câu hỏi đặt đây: (i) Làm để xác định tầm quan trọng chiều liệu? (ii) Nếu tầm quan trọng chiều liệu nhau, ta cần bỏ chiều nào? Để trả lời câu hỏi thứ nhất, quan sát Hình 3.1a Giả sử điểm liệu có thành phần thứ hai (phương đứng) giống hệt sai khác không đáng kể (phương sai nhỏ) Khi đó, thành phần hồn tồn lược bỏ, ta ngầm hiểu xấp xỉ kỳ vọng thành phần toàn liệu Ngược lại, áp dụng phương pháp lên chiều thứ (phương ngang), lượng thông tin bị đáng kể sai số xấp xỉ q lớn Vì vậy, lượng thơng tin theo thành phần đo phương sai liệu thành phần Tổng lượng thơng tin tổng phương sai toàn thành phần Lấy ví dụ việc có hai camera 22 đặt dùng để chụp người, camera phía trước camera đặt đầu Rõ ràng, hình ảnh thu từ camera đặt phía trước mang nhiều thơng tin so với hình ảnh nhìn từ phía đầu Vì vậy, ảnh chụp từ phía đầu bỏ qua mà khơng làm q nhiều thơng tin hình dáng người Câu hỏi thứ hai tương ứng với trường hợp Hình 3.1b Trong hai chiều, phương sai liệu lớn; việc bỏ hai chiều khiến lượng thông tin đáng kể bị Tuy nhiên, xoay trục toạ độ góc phù hợp, hai chiều liệu lược bở liệu có xu hướng phân bố xung quanh đường thẳng Phân tích thành phần (principle component analysis, PCA) phương pháp tìm phép xoay trục toạ độ để hệ trục toạ độ cho hệ này, thông tin liệu chủ yếu tập trung vài thành phần Phần lại chứa thơng tin lược bỏ 3.3 Phân tích thành phần Về mặt hình thức, cho ma trận liệu X ∈ Rm×n với giá trị chuẩn hóa cho hàng có giá trị trung bình PCA X với r thành phần tìm ma trận trực giao A ∈ Rm×r ma trận B ∈ Rn×r cho X biểu diễn dạng ma trận X = ABT + E ∥E∥2 đạt giá trị nhỏ Ma trận A gọi ma trận thành phần, cột thành phần Ma trận B gọi ma trận tải, tải trọng trọng số cho phép tái cấu trúc biến ban đầu dạng tổ hợp tuyến tính thành phần Cặp (A, B) gọi nghiệm PCA Ngoài ra, PCA trình bày theo cách khác dạng véctơ sau: X= r X bTi + E i=1 Điều cho thấy PCA xấp xỉ X với tổng r ma trận có hạng Mục tiêu  PCA làm giảm tối thiểu ∥E∥2 = X − ABT Vì rank ABT ≤ r nên ABT 23 SVD “chặt cụt” X, nghĩa Ur Dr (Vr )T SVD “chặt cụt” X A = Ur BT = Dr (Vr )T Số lượng thành phần tối thiểu phù hợp số giá trị kì dị khác X, hạng X Vì vậy, khơng cần thiết phải lấy số thành phần r lớn số lượng biến n Trên thực tế, r thường lấy nhỏ nhiều so với n Do thứ tự giảm dần giá trị kì dị X SVD, thành phần giải thích phương sai nhiều thành phần giải thích phương sai với ràng buộc trực giao (không tương quan với thành phần    trước đó) Khi tổng phương sai giải thích Tr BBT = Tr m− D2r với Tr (D2r ) tổng bình phương r giá trị kì dị lớn X 3.4 Tìm thành phần tốn PCA thơng qua SVD Xét vector x Thành phần tổ hợp tuyến tính s = Pm i=1 wi xi có chứa nhiều phương sai liệu đầu vào tốt Như vậy, thành phần định nghĩa trực giác tổ hợp tuyến tính biến quan sát, có phương sai lớn Chúng ta cần đưa ràng buộc cho chuẩn vectơ w = (w1 , w2 , , wm ) Để đơn giản, ràng buộc w có chuẩn , tức v u m uX ∥w∥ = t wi2 = i=1 Các ràng buộc khác giá trị chuẩn w đưa ràng buộc Chú ý phương sai tổ hợp tuyến tính tính thơng qua P ma trận hiệp phương sai liệu Xét tổ hợp tuyến tính wT x = m i=1 wi xi Giả sử giá trị trung bình , tức E{x} = Khi E n T w x 2 o  wT x   = E wT xxT w  = wT E xxT =E  wT x = wT Cw 24   C = E xxT ma trận hiệp phương sai Vì vậy, toán PCA xác định sau: max wT Cw w:∥w∥=1 Vì C ma trận đối xứng nên theo định lí phổ ma trận đối xứng, tồn ma trận trực giao U ∈ Rm×n ma trận đường chéo D = diag (λ1 , , λn ) ∈ Rn×n cho C = UDUT , λ1 , , λn giá trị riêng C, vector cột U véctơ riêng C ứng với giá trị riêng Thực đổi biến v = UT w Khi ta nhận T T T T w Cw = w UDU w = v Dv = n X vi2 λi i=1 Vì U trực giao nên ∥v∥ = ∥w∥, đó, v có ràng buộc ∥v∥ = Tiếp tục thực phép đổi biến mi = vi2 , i = 1, , n Khi ràng buộc ∥v∥ = tương đương với ràng P buộc mi ≥ ni=1 mi = Bài toán chuyển sang dạng max n X mi λi , với mi ≥ 0, i=1 n X mi = i=1 Rõ ràng, tốn cho thấy giá trị lớn tìm mi tương ứng với λi lớn mi cịn lại Kí hiệu i∗ số giá trị riêng lớn Trở lại biến w, điều tương đương với w vectơ riêng thứ i∗ , tức cột thứ i∗ U Như vậy, thành phần tìm cách dễ dàng thơng qua phân tích giá trị riêng Do vectơ riêng ma trận đối xứng trực giao nên việc tìm thành phần thứ hai đồng nghĩa với việc tối đa hóa phương sai cho vi∗ Điều thực tương đương với việc tạo w trực giao cho vectơ riêng Như vậy, có tốn tối ưu hóa tương tự với ràng buộc mi∗ = Rõ ràng, nghiệm tốn tối ưu thu w với vector riêng tương ứng với giá trị riêng lớn thứ hai Logic áp dụng cho thành phần thứ k Do đó, tất thành phần tìm thấy cách đặt vector riêng ui với i = 1, , n U cho giá trị riêng giảm dần Chúng ta giả sử U định nghĩa Khi thành phần thứ i có dạng 25 si = uTi x Lưu ý tất λi không âm ma trận hiệp phương sai 3.5 Tính nghiệm PCA Định lý 3.5.1 Nếu (A, B) nghiệm mơ hình PCA (AQ, BQ) nghiệm mơ hình PCA, với Q ma trận trực giao cấp r Lúc này, Q gọi phép quay trực giao Chứng minh Giả sử (A, B) nghiệm mơ hình PCA Với Q ma trận trực giao cấp r, tức QQT = QT Q = Ir , ta có (AQ)(AQ)T = AQQT AT = AIr AT = AAT = Im (AQ)T (AQ) = QT AT AQ = QT Ir Q = QT Q = Ir Suy (AQ) ma trận trực giao cỡ m × r Mặt khác, ta có (AQ)(BQ)T = AQQT BT = AIr BT = ABT X − AQQT BT = X − ABT Vậy (AQ, BQ) nghiệm mơ hình PCA Từ Định lí 3.5.1, ta có nhận xét sau: Nhận xét: (i) Nghiệm (A, B) PCA không (ii) Phép quay trực giao Q cho ta ma trận tải có cấu trúc đơn giản hơn, nhân tố diễn giải dễ dàng 26 3.6 Thuật tốn tìm PCA ma trận Giả sử X ma trận cỡ m × n, với m ≥ n Để tìm PCA ma trận X, thực bước sau: - Bước 1: Chuẩn hóa liệu cho E{xi } = với xi vector hàng của ma trận X - Bước 2: Tìm SVD “chặt cụt” ma trận X, ta X = Ur Dr (Vr )T với r ≤ n - Bước 3: Tính ma trận A B theo cơng thức sau: A = Ur , BT = Dr (Vr )T - Bước 4: Nếu nghiệm (A, B) chưa tốt chọn phép quay Q, với Q ma trận trực giao cấp r, ta tìm nghiệm mơ hình PCA (AQ, BQ) Cài đặt thuật toán PYTHON3 Hình 3.2 Hình 3.2: Cài đặt thuật tốn PCA PYTHON3 Ví dụ Ví dụ ta tìm PCA ma trận    1 x=  3     2   4  với r = thành phần 27

Ngày đăng: 04/06/2023, 15:20

Tài liệu liên quan