1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đề tài đại số tuyến tính lý thuyết về singular value decomposition ứng dụng svd vào hệ thống gợi ý

15 2 0

Đ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

Thông tin cơ bản

Tiêu đề Đề Tài Đại Số Tuyến Tính Lý Thuyết Về Singular Value Decomposition Ứng Dụng SVD Vào Hệ Thống Gợi Ý
Tác giả Lê Thanh Tài, Lâm Trúc Quỳnh, Mai Tấn Sĩ, Nguyễn Ngọc Như Quỳnh, Phạm Nhật Quang, Nguyễn Hữu Quốc, Lưu Nhựt Tân, Nguyễn Hữu Thắng, Nguyễn Viết Minh Quân
Người hướng dẫn T.S Đặng Văn Vinh
Trường học Đại học Bách Khoa
Chuyên ngành Đại số tuyến tính
Thể loại Đề tài
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 15
Dung lượng 1,64 MB

Nội dung

Youtube cũng tự gợi ý những clip mà có thể bạn sẽ thích.Khi bạn mua một món hàng trên Amazon, hệ thống sẽ tự động gợi ý “Frequently bought together”, hoặc nó biết bạn có thể thích món hà

Trang 1

ĐẠI HỌC HỌC HỌC QUỐC QUỐC QUỐC GIA GIA GIA THÀN THÀNHHHHH PHỐ THÀN PHỐ HỒ PHỐ HỒ CHÍ HỒ CHÍ CHÍ MINH MINH

TRƯỜNG

TRƯỜNG ĐẠI ĐẠI ĐẠI HỌC HỌC HỌC BÁC BÁC BÁCHHHHH KHOA KHOA

CHƯƠNG

CHƯƠNG TRÌNH TRÌNH VIỆT TRÌNH VIỆT VIỆT PPPPPHÁP HÁP (PFIEV) HÁP (PFIEV)

ĐỀ

ĐỀ TÀI TÀI TÀI ĐẠI ĐẠI ĐẠI SỐ SỐ SỐ TUYẾN TUYẾN TUYẾN TÍN TÍN TÍNHHHHH LÝ

LÝ THUYẾT THUYẾT VỀ THUYẾT VỀ VỀ SINGUL SINGUL SINGULAR AR AR VALUE VALUE DECOMPOSITION VALUE DECOMPOSITION ỨNG

ỨNG DỤN DỤN DỤNGGGGG SVD SVD SVD VÀO VÀO HỆ VÀO HỆ HỆ THỐNG THỐNG GỢI THỐNG GỢI GỢI ÝÝÝÝÝ Giáo

Giáo viên viên viên hướng hướng dẫn hướng dẫn dẫn đề đề đề tài tài tài :T.S :T.S Đặng :T.S Đặng Đặng Văn Văn Vinh Văn Vinh Nhóm

Nhóm sinh sinh sinh viên viên viên thực thực thực hiện: hiện:

1.

1 Lê Lê Lê Thanh Thanh Thanh Tài Tài Tài MSSV: MSSV: MSSV: 2010589 2010589 2010589 - VP20NL VP20NL VP20NL ((((( NHÓM NHÓM NHÓM TRƯỞNG TRƯỞNG TRƯỞNG )))))

2.

2 Lâm Lâm Lâm Trúc Trúc Trúc Quỳnh Quỳnh MSSV: Quỳnh MSSV: MSSV: 2014331 2014331 - VP20P0 2014331 VP20P0

3.

3 Mai Mai Mai Tấn Tấn Tấn Sĩ Sĩ Sĩ MSSV: MSSV: MSSV: 2014362 2014362 2014362 - VP20HK VP20HK

4.

4 Nguyễn Nguyễn Nguyễn Ngọc Ngọc Ngọc Như Như Quỳnh Như Quỳnh Quỳnh MSSV: MSSV: 2014335 MSSV: 2014335 2014335 ––––– VP20PO VP20PO

5.

5 Phạm Phạm Phạm Nhật Nhật Nhật Quang Quang Quang MSSV: MSSV: 2011900 MSSV: 2011900 2011900 ––––– VP20HK VP20HK

6.

6 Nguyễn Nguyễn Nguyễn Hữu Hữu Hữu Quốc Quốc Quốc MSSV: MSSV: MSSV: 2014302 2014302 2014302 ––––– VP20NL VP20NL

7.

7 Lưu Lưu Lưu Nhựt Nhựt Nhựt Tân Tân Tân MSSV: MSSV: MSSV: 2014453 2014453 2014453 ––––– VP20PO VP20PO

8.

8 Nguyễn Nguyễn Nguyễn Hữu Hữu Hữu Thắng Thắng Thắng MSSV: MSSV: MSSV: 2014541 2014541 2014541 ––––– VP20NL VP20NL

9.

9 Nguyễn Nguyễn Nguyễn Viết Viết Viết Minh Minh Quân Minh Quân Quân MSSV: MSSV: MSSV: 2010558 2010558 ––––– VP20HK 2010558 VP20HK

Trang 2

MỤC MỤC LỤC LỤC GIỚI

GIỚI THIỆU THIỆU THIỆU :SVD :SVD :SVD VÀ VÀ ỨNG VÀ ỨNG DỤN ỨNG DỤN DỤNGGGGG VÀO VÀO VÀO HỆ HỆ THỐNG HỆ THỐNG THỐNG GỢI GỢI GỢI ÝÝÝÝÝ

CHƯƠN

CHƯƠNGGGGG IIIII ::::: SINGULAR SINGULAR SINGULAR VALUE VALUE VALUE DECOMPOSITION DECOMPOSITION DECOMPOSITION (SVD) (SVD)

1.1

1.1 ::::: Phát Phát Phát biểu biểu SVD biểu SVD

1.2

1.2 ::::: Chứng Chứng Chứng minh minh minh tồn tồn tồn tại tại tại phân phân phân tíc tíc tíchhhhh SVD SVD

1.3

1.3 ::::: Mô Mô Mô phỏng phỏng phỏng SVD SVD

1.4

1.4 ::::: Phương Phương Phương pháp pháp pháp tttttìm ìm ìm phân phân phân tích tích tích SVD SVD

CHƯƠN

CHƯƠNGGGGG IIIIIIIIII ::::: ỨNG ỨNG ỨNG DỤNG DỤNG DỤNG SVD SVD SVD VÀO VÀO VÀO HỆ HỆ HỆ THỐNG THỐNG THỐNG GỢI GỢI GỢI ÝÝÝÝÝ (RECOMME (RECOMME (RECOMMEND ND ND SYSTEMS) SYSTEMS) 2.1

2.1 ::::: Mở Mở Mở đầu đầu

2.2

2.2 ::::: Hai Hai Hai nhóm nhóm nhóm chính chính chính của của của Recommendation Recommendation Recommendation Systems Systems

2.3

2.3 ::::: Bài Bài Bài tttttoán oán tổng oán tổng tổng quát quát của quát của của hệ hệ hệ thống thống thống gợi gợi gợi ýýýýý

2.4

2.4 ::::: Giải Giải Giải quyết quyết quyết vấn vấn vấn đề đề

2.4.1

2.4.1 ::::: Phương Phương án Phương án án 11111

2.4.2

2.4.2 ::::: Phương Phương án Phương án án 22222

Trang 3

GIỚI GIỚI THIỆUTHIỆU

Ma trận được ra đời cách đây hơn 200 năm Ngay từ khi ra đời ma trận đã trở thành một công cụ rất mạnh trong Đại số Tuy với những tính chất riêng của ma trận khiến ta gặp nhiều khó khăn trong quá trình biến đổi và tính toán đối với ma trận Với mục đích làm dễ dàng các bước tính toán cũng như lưu trữ ma trận người ta đã đưa ra phương pháp phân rã

ma trận ( MATRIX FACTORIZATION) Phương pháp này đưa các ma trận thành tích các ma trận con có những tính chất đặc biệt để tính toán và lưu trữ dễ dàng hơn

Trong 7 chương đầu của Đại Số Tuyến Tính chúng ta đã được học qua một Phép phân rã ma trận là: Chéo Hóa Ma Trận ( Eigen Decomposition ) : phân tách một ma trận A:

����= P*D*P-1 Tuy nhiên phép phân tách này có các nhược điểm : ma trận A phải là một

ma trận vuông và tổng bội hình học của A = n thì mới phân tách được

-Vậy đối với một ma trận bất kì thì ta có thể phân tách được không?

Để giải quyết vấn đề này sau đây chúng tôi xin giới thiệu phép phân rã ma trận SVD (Singuler Value Decomposition ) Trong đề tài này chúng tôi sẽ trình bày lý thuyết về SVD

và ứng dụng của SVD trong Recommend System

CHƯƠNG CHƯƠNG IIIII SINGULER

SINGULER VALUEVALUEVALUE DECOMPOSITIONDECOMPOSITION

(SVD)

1.1

1.1 PhátPhátPhát bibiểubiểu SVDểuSVDSVD :::::

Với mọi ma trận AAAAA ∈ ��×�ta đều phân tách được dưới dạng

AAAAA ==== UUUUU VVVVV� TTTTT

V là ma trận trực giao cấp � × �

U là ma trận trực giao cấp � × �

� là các ma trận đường chéo gồm các phần tử trên đường chéo là:

�1 ≥ � ≥ �2 3 ≥ … ≥ �� ≥ 0 p = min(m,n)

1.2

1.2 CCCCChứnghứng minhhứngminhminh llllluônuônuôn tồntồntồn tạitạitại phépphépphép ppppphânhânhân tíchtíchtích SVDSVDSVD vớivớivới mmmọiọiọi mamama trtrtrậnận����

Chứng Chứng mimiminhnh -Xét trường hợp m>n

-Gỉa sử tồn tại phân tích SVD của A = U V Ta sẽ chứng minh luôn tìm được U, và V� T � -Ta có tính chất (AB) = B AT T T

Trang 4

+Ta xét : AAT= (U�VT)(U�V ) = UT T ��TUT= UDUT

-Dễ dàng chứng minh ma trận AA :T

+Là một ma trận đối xứng ( bằng quy nạp )

+Là một ma trận nửa xác định dương ( bằng BĐT Cauchy và quy nạp )

Do đó AA luôn chéo hóa trực giao được và trị riêng của AA không âmT T

Suy ra ta luôn tìm được : U bằng phép chéo hóa trực giao AAT

�à � vì dii≥ 0 ∀� , �� = ��� ( cái tên Singuler Value xuất phát từ đây ) -Chứng minh tương tự với trường hợp xét A A = VT �T�VT=> tồn tại V và � -Mà trị riêng � (ATA ) ⊂ � (AAT) (m>n)

Vậy luôn tìm được đồng thời U, V, thỏa A = U V� � T

1.3

1.3 MMMôôôôô ppppphỏnghỏnghỏng phânphânphân tíchtíchtích SVD:SVD:

Trang 5

1.4 PhưPhưPhươngơngơng pháppháppháp tìmtìm ppppphântìm hânhân tíchtíchtích SSSSSVDVD

*****CácCác bưbưbướcớc tìmớctìmtìm phânphânphân tttttíchíchích SVDSVDSVD của củacủa mamama trtrtrtrtrậnận��×�((((( NếuNếu mNếum> �)))))

B1

B1 ::::: Ta chéo hóa trực giao AA để tìm ma trậnT ��×�và ��×�

B2

B2 ::::: Ta tìm�1, �2bằng căn bậc 2 các trị riêng của AA và sắp xếp theo thứ tự giảm dần trênT

đường chéo của ��×�

B3

B3 ::::: Có ����và ��×�ta thế vào phương trình A = ��×���×���×�� (*) để tìm ma trận V(T)nxn

(Nếu n>m thì ta tìm V trước các bước làm khác tương tự)

1.5

1.5 VVVVVííííí dụdụdụ : Tìm phân tích SVD của A = 1 10 1

1 0

GIẢI

-Ta chéo hóa trực giao AATđể tìm và U�

Xét (AAT- ��) = 2 − �1 1 − �1 01

1 0 1 − � => det(AA

T- ��) = 0 -Tìm được : �1 = 3 ; �2 = 1 , �3 = 0

�1 = 3 => � = � 12

1 ; �2 = 1 => � = �

0

−1

1 ; �3 = 0 => � = �

−1 1 1

 Ta tìm được: U = √61 21

1 ;

1

√2

0

−1

1 ;

1

√3

−1 1

1 �à � =

√3 0

0 1

0 0

Có U, ta thế vào phương trình A = U� �VT=> ta giải ra V =

−1

√6 √21

−1

√2 −1√2

*Câu

*Câu hỏi:hỏi:hỏi: NếuNếuNếu tata kkkkkhôngta hônghông thếthếthế vàovào phươngvàophươngphương trìnhtrìnhtrình trêntrêntrên đểđểđể tìmtìmtìm rara VVVVV mra mààààà tiếpm tiếptiếp tụctục dùngtụcdùngdùng cáchcáchcách ppppphânhân tích

tích chéochéochéo hóahóahóa trựtrựccccc gggggiaotrự iaoiao AAAAA đđđđđểểểểể tìm�� tìmtìm VVVVV đượcđượcđược không?không?

Ta

Ta tttttiếpiếp tụciếptụctục làmlàmlàm nhưnhưnhư sssssauau ::::: �au �A = V∑�∑�� det(��A – I) = 0�

 �11111 ==== 33333 ;;;;; �22222 ==== 11111

�11111 === 33333 =>=>=> XXXXX ==== � �−� ;;;;; �22222 == 11111 === ==>>> XXXXX == == � � � =>=>=> VVVVV == =

√�

√�

−�

√� √��

Thử lại ta tìm lại A :AAAAA ==== UUUUU�VVVVVTTTTT= −� �−� �

� � ((((( KhôngKhôngKhông đúngđúngđúng vvvvvớiớiới mama trậnmatrậntrận AAAAA đđđđđềềềềề cccccho)ho)

Trang 6

-Vậy

-Vậy cáchcáchcách làmlàmlàm tttttrênrênrên kkkkkhônghông đúnghôngđúngđúng NguyênNguyênNguyên nhânnhânnhân làlàlà dddddooooo UUUUU vàvàvà VVVVV phụphụphụ thththuộcuộcuộc dấudấudấu vàovàovào nhau.nhau -Bằng

-Bằng phépphépphép chéochéo hhhhhóachéo óa trựcóatrựctrực gggggiaoiaoiao AAAAA��tata cócó thểcóthểthể tìmtìmtìm đượcđược nnnnnhiềuđược hiềuhiều mamama trậntrậntrận UUUUU mỗimỗimỗi UUUUU tatata lạilại tìmlạitìm được

được mộtmộtmột VVVVV thỏathỏathỏa phépphépphép phânphânphân tíctíctíchhhhh SVDSVDSVD ĐiềuĐiềuĐiều nàynàynày cũcũcũngngng nóinóinói lllllênênên làlà cólàcócó nhiềunhiềunhiều phépphépphép phânphânphân tíctíctíchhhhh SVDSVD cho

cho mamama trậntrậntrận bbbbbấtấtất kìkìkì AAAAA

*Giải

*Giải bbbbbàiài toánàitoántoán bằngbằngbằng matmatmathlabhlabhlab vấnvấn đềvấnđề nnnnnàyđề àyày trởtrởtrở nênnênnên dễdễdễ dàngdàngdàng hơnhơnhơn vớivớivới lllllệnhệnhệnh svdsvd

Viết lại biểu thức (*) dưới dạng tổng của các ma trận rank 1:

AAAAA ==== ������++ �������++ … …… +++ � rrrrruuuuurrrrr�� Với chú ý rằng mỗi ����, 1≤ � ≤ �là một ma trận rank A bằng 1

Rõ ràng trong cách biểu diễn này, ma trận A chỉ phụ thuộc vào r cột đầu tiên của U ,V

và r giá trị khác 0 trên đường chéo của ma trận � Vì vậy, ta có một cách phân tích gọn hơn và gọi là compact SVD :

AAAAA ==== UUUUUrrrrr�(V(Vrrrrr)))))TTTTT

Với U , V lần lượt là ma trận được tạo bởi r cột đầu tiên của U và V.r r �rlà ma trận con được tạo bởi r hàng đầu tiên và r cột đầu tiên của � Nếu ma trận A có rank nhỏ hơn rất nhiều so với số hàng và số cột r ≪ m, n, ta sẽ được lợi nhiều về việc lưu trữ và đánh giá

Trang 7

CHƯƠNG

CHƯƠNG IIIIIIIIII ::::: ỨỨỨNGNGNG DỤNGDỤNGDỤNG SVSVSVDDDDD VÀVÀVÀOOOOO HỆHỆHỆ TTTTTHỐNGHỐNGHỐNG GGGGGỢIỢIỢI ÝÝÝÝÝ (RECOMMEND

(RECOMMEND SYSTEM)SYSTEM) 2.1

2.1 MMMởởởởở ĐầuĐầuĐầu :::::

-Các bạn có lẽ đã gặp những hiện tượng này nhiều lần:

Youtube tự động chuyển các clip liên quan đến clip bạn đang xem Youtube cũng tự gợi ý những clip mà có thể bạn sẽ thích

Khi bạn mua một món hàng trên Amazon, hệ thống sẽ tự động gợi ý “Frequently bought together”, hoặc nó biết bạn có thể thích món hàng nào dựa trên lịch sử mua hàng của bạn

Facebook hiển thị quảng cáo những sản phẩm có liên quan đến từ khoá bạn vừa tìm kiếm.Facebook gợi ý kết bạn

Netflix tự động gợi ý phim cho người dùng

-Và rất nhiều ví dụ khác mà hệ thống có khả năng tự động gợi ý cho ngừời dùng những sản phẩm họcó thể thích Bằng cáchquảng cáo hướng đúng đội tượngnhư thế này, hiệu quả của việc marketing cũng sẽ tăng lên Những thuật toán đằng sau những ứng dụng này là những thuật toán Machine Learning có tên gọi chung làRecommender

SystemshoặcRecommendation Systems, tứcHệ thống gợi ý

2.2

2.2 HaiHaiHai nhómnhómnhóm ccccchínhhínhhính củacủacủa RecRecRecommendationommendationommendation SystemsSystems

-Các Recommendation Systems thường được chia thành hai nhóm lớn:

Content-based

Content-based sssssystemsystems: đánh giá đặc tính củaitemsđượcrecommended Ví dụ: mộtuserxem rất nhiều các bộ phim về cảnh sát hình sự, vậy thì gơi ý một bộ phim trong cơ

sở dữ liệu có chung đặc tínhhình sựtớiusernày, ví dụ phimNgười phán xử Cách tiếp cận này yêu cầu việc sắp xếp cácitemsvào từng nhóm hoặc đi tìm các đặc trưng của từngitem Tuy nhiên, có nhữngitemskhông có nhóm cụ thể và việc xác định nhóm hoặc đặc trưng của từngitemđôi khi là bất khả thi

Collaborative

Collaborative fffffilteringiltering: hệ thống gợi ýitemsdựa trên sự tương quan (similarity) giữa cácusersvà/hoặcitems Có thể hiểu rằng ở nhóm này

mộtitemđượcrecommendedtới mộtuserdựa trên nhữnguserscóhành vitương tự Ví dụ:users A, B, Cđều thích các bài hát của Noo Phước Thịnh Ngoài ra, hệ thống biết rằngusers B, Ccũng thích các bài hát của Bích Phương nhưng chưa có thông tin về việc liệuuser Acó thích Bích Phương hay không Dựa trên thông tin của nhữnguserstương tự

làB và C, hệ thống có thể dự đoán rằngAcũng thích Bích Phương và gợi ý các bài hát của ca

sĩ này tớiA

Trang 8

2.3BàiBài toántoántoán tổngtổngtổng quátquátquát củacủacủa hệhệhệ thốngthốngthống gợigợi ý:gợiý:

iiiii11111 iiiii22222 … iiiiinnnnn

uuuuu11111 rrrrr1,1 rrrrr1,2 … rrrrr1,n

uuuuu22222 rrrrr2,1 rrrrr2,2 … rrrrr2,n

uuuuunnnnn RRRRRm,1 rrrrrm,2 … RRRRRm,n

Gọi U là tập hợp tất cả người dùng, I là tập hợp tất cả các sản phẩm có thể tư vấn Tập I có giá trị trong khoảng {1,n}, tập U có giá trị trong khoảng {1,m} Hàm f(u,i) đo độ phù hợp (hay hạng) của sản phẩm I với người dùng u : f : U x I → R với R là tập được sắp thứ tự.Tập hợp những rating r của người dùng ( bao gồm những giá trị chưa biết) tạo thành ma trận goi là utility matrix

Với mỗi người dùng u U , cần tìm sản phẩm i I , sao cho hàm f(i,u) đạt giá trị lớn nhất: 

uuuuuU,U, iiiiiuuuuuargarg maxmaxfffff(u,i) Vấn đề chính của hệ tư vấn là hàm f(u,i) không được xác định trên toàn không gian U x I mà chỉ trên một miền nhỏ của không gian đó Điều này dẫn tới việc hàm f(u,i) phải được ngoại suy trong không gian U x I Các hệ thống tư vấn thường được phân thành nhiều loại dựa trên cách nó sử dụng các thuật toán để ước lượng hạng hoặc điểm của các sản phẩm Yêu

Yêu cầcầuuuuu bàicầ bàibài tttttoán:oán:oán: Ta cần đưa ra các dự đoán cho đánh giá của một người dùng bất kì trong

hệ thống cho một sản phẩm bất kì mà người dùng đó chưa đánh giá Và trong thực tế, các sản phẩm được hệ gợi ý dự đoán người dùng đó sẽ đánh giá cao, sẽ được đưa lên để gợi ý cho người dùng đó trải nghiệm

2.4

2.4 GiảiGiảiGiải quququyếtyếtyết vấnvấnvấn đđđđđề:ề:

2.4.1

2.4.1 PhươngPhươngPhương ááááánnnnn 11111::::: Ở phương pháp 1 chúng tôi đưa ra phương án gợi ý sản phẩm cho người dùng dựa trên nhómContent-based systems( đánh giá những đặc tính tương quan của các items)

Để giải quyết bài toán đặt ra thì chúng ta áp dụng phương pháp SGD nhằm mục đích phân

rã ma trận X và tìm kiếm được ma trận Y X≈

Ta có một ma trận ��×�luôn có thể khai triển thành :

���== UUUUU���(1)

Trang 9

Ta thấy : Vì tính chất của ma trận đường chéo nên ta có thể khai triển ��×�:

��×�= U �√��VT

Đặt X = U � YT = ��VT

Từ đó ta có thể đặt lại biểu thức (1) : ��×�= XYT

Ta có hàm mất mát của ma trận ��×�: L(A, X, Y, W, �) = ��=1

�=1�∑��,��(���,

∑ ��) + ����∑��=1����+ �∑��=1����

Tối ưu hóa hàm mất mát trên ta được :

� = (1- n ) �� � �+∑ (����,�- � �� ��) ��

��= (1- n�) ��+ ∑ (��� �,�- ��) ����� Trong đó: n - tốc độ học ; � – hàm chính tắt

Bằng tính chất của ma trận U, �, V ta có thể viết lại biểu thức (1) dưới dạng tổng của các ma trận rank 1:

AAAAA ==== ������++ �������++ … …… +++ � rrrrruuuuurrrrr�� Với chú ý rằng mỗi, � �� ��, 1≤ � ≤ �là một ma trận có rank bằng 1 Và r là số các giá trị khác

0 trênđườ�� �ℎé� �ủ� �� ��ậ� �

Chú ý rằng trong ma trận , các giá trị trên đường chéo là không âm và giảm dần�

�� ≥ �� ≥ �� ≥ … ≥ �� ≈ � ≥ ≈ � Thông thường chỉ một lượng nhỏ các��mang giá trị lớn, các giá trị còn lại thường nhỏ và bằng 0Khi đó ta có thể xấp xỉ ma trận A bằng tổng của k r ma trận có rank 1, từ đó:<

AAAAA ≈ AkAkAk === ������++ ������ �++ … …… +++ � kkkkkuuuuukkkkk��

Dưới đây là một định lý thú vị Định lý này nói rằng sai số do cách xấp xỉ trên chính là căn bậc hai qua tổng bình phương của các singular values mà ta đã bỏ qua ở phần cuối của Ở� đây sai số được định nghĩa là Frobineus norm của hiệu hai ma trận:

� − �� ��=∑��=�+��� Việc xấp xỉ ma trận A bằng tổng của k r ma trận có rank 1 còn được gọi là Truncaded SVD.< Bằng cách này ta chỉ tạo ngẫu nhiên và cập nhật trên từng hàng của ma trận X và Y

Trang 10

*Chứng minhminhminh côcôcôngngng thứcthứcthức xấpxấpxấp xxxxxỉỉỉỉỉ TruncatedTruncated

� − �� ��=

�=�+�

 ���� ���

= trace {(�=�+1� �����)�∑��=�+1�������}

= trace { �=�+1�

�=�+1

� �������� �����

= trace { �=�+1�

�=�+1

� ������������ �

= trace {∑�=�+1� �2�����} ( V là ma trận trực giao )

= trace {∑�=�+1� �2�����} ( hàm trace có tính giao hoán )

= trace {∑��=�+1�2�}

= ∑��=�+1�2�( Biểu thức trong trace là số vô hướng )

Như vậy, ta chỉ chọn ra top t trị riêng có giá trị lớn nhất nhất vì khi đó sai số của hai ma trận sẽ là nhỏ nhất vì bằng tổng bình phương của các trị riêng còn lại

Khi cho t = 0 ta có :

� � = ∑��=�+� ��

�=�+�

Suy ra : sai số do xấp xỉ càng nhỏ nếu phần trị riêng bị truncated có giá trị càng nhỏ so với phần trị riêng được giữ lại Đây là một định lý quan trọng giúp xác định việc xấp xỉ ma trận dựa trên lượng thông tin muốn giữ lại

Hệ quả : Phương pháp truncated SVD còn cho ta biết được tỉ lệ phần trăm lượng thông tin lưu trữ trong ma trận xấp xỉ thông qua công thức :

�=�

�=�

Ví dụ : nếu ta muốn giữ lại 90% lượng thông tin trong A, trước hết ta tính∑�=1� �2�, sau đó chịn k là số nhỏ nhất sao cho:

�=�

� � �

�=�

Ngày đăng: 09/04/2024, 16:18

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w