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

đề tài SVD và ứng dụng recommend systems complete

15 104 4

Đ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

Nội dung

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA CHƯƠNG TRÌNH VIỆT PHÁP (PFIEV) ĐỀ 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 Ý Giáo viên hướng dẫn đề tài :T.S Đặng Văn Vinh Nhóm sinh viên thực hiện: Lê Thanh Tài MSSV: 2010589 - VP20NL ( NHÓM TRƯỞNG ) Lâm Trúc Quỳnh MSSV: 2014331 - VP20P0 Mai Tấn Sĩ MSSV: 2014362 - VP20HK Nguyễn Ngọc Như Quỳnh MSSV: 2014335 – VP20PO Phạm Nhật Quang MSSV: 2011900 – VP20HK Nguyễn Hữu Quốc MSSV: 2014302 – VP20NL Lưu Nhựt Tân MSSV: 2014453 – VP20PO Nguyễn Hữu Thắng MSSV: 2014541 – VP20NL Nguyễn Viết Minh Quân MSSV: 2010558 – VP20HK MỤC LỤC GIỚI THIỆU :SVD VÀ ỨNG DỤNG VÀO HỆ THỐNG GỢI Ý CHƯƠNG I : SINGULAR VALUE DECOMPOSITION (SVD) 1.1 : Phát biểu SVD 1.2 : Chứng minh tồn phân tích SVD 1.3 : Mơ SVD 1.4 : Phương pháp tìm phân tích SVD CHƯƠNG II : ỨNG DỤNG SVD VÀO HỆ THỐNG GỢI Ý (RECOMMEND SYSTEMS) 2.1 : Mở đầu 2.2 : Hai nhóm Recommendation Systems 2.3 : Bài tốn tổng qt hệ thống gợi ý 2.4 : Giải vấn đề 2.4.1 : Phương án 2.4.2 : Phương án -1- GIỚI THIỆU Ma trận đời cách 200 năm Ngay từ đời ma trận trở thành công cụ mạnh Đại số Tuy với tính chất riêng ma trận khiến ta gặp nhiều khó khăn q trình biến đổi tính tốn ma trận Với mục đích làm dễ dàng bước tính tốn lưu trữ ma trận người ta đưa phương pháp phân rã ma trận ( MATRIX FACTORIZATION) Phương pháp đưa ma trận thành tích ma trận có tính chất đặc biệt để tính toán lưu trữ dễ dàng Trong chương đầu Đại Số Tuyến Tính học qua Phép phân rã ma trận là: Chéo Hóa Ma Trận ( Eigen Decomposition ) : phân tách ma trận A: 𝐴𝑛𝑥𝑛 = P*D*P-1 Tuy nhiên phép phân tách có nhược điểm : ma trận A phải ma trận vuông tổng bội hình học A = n phân tách -Vậy ma trận ta phân tách khơng? Để giải vấn đề sau xin giới thiệu phép phân rã ma trận SVD (Singuler Value Decomposition ) Trong đề tài chúng tơi trình bày lý thuyết SVD ứng dụng SVD Recommend System CHƯƠNG I SINGULER VALUE DECOMPOSITION (SVD) 1.1 Phát biểu SVD : Với ma trận A ∈ 𝑹𝒎×𝒏 ta phân tách dạng A = USVT V ma trận trực giao cấp 𝑚 × 𝑛 U ma trận trực giao cấp 𝑚 × 𝑛 𝛴 ma trận đường chéo gồm phần tử đường chéo là: 𝜎1 ≥ 𝜎2 ≥ 𝜎3 ≥ ⋯ ≥ 𝜎𝑝 ≥ p = min(m,n) 1.2 Chứng minh ln tồn phép phân tích SVD với ma trận 𝑨 𝒎𝒙𝒏 Chứng minh -Xét trường hợp m>n -Gỉa sử tồn phân tích SVD A = U𝛴VT Ta chứng minh ln tìm U, 𝛴 V -Ta có tính chất (AB)T = BTAT -2- +Ta xét : AAT = (U𝛴VT)(U𝛴VT)T = U𝛴𝛴TUT = UDUT -Dễ dàng chứng minh ma trận AAT : +Là ma trận đối xứng ( quy nạp ) +Là ma trận nửa xác định dương ( BĐT Cauchy quy nạp ) Do AAT ln chéo hóa trực giao trị riêng AAT khơng âm Suy ta ln tìm : U phép chéo hóa trực giao AAT 𝑣à 𝛴 dii ≥ ∀𝑖 , 𝜎𝑖 = √𝑑𝑖𝑖 ( tên Singuler Value xuất phát từ ) -Chứng minh tương tự với trường hợp xét ATA = V𝛴 T𝛴VT => tồn V 𝛴 -Mà trị riêng 𝛿 (ATA ) ⊂ 𝛿 (AAT ) (m>n) Vậy ln tìm đồng thời U, V, 𝛴 thỏa A = U𝛴VT 1.3 Mơ phân tích SVD: -3- 1.4 Phương pháp tìm phân tích SVD *Các bước tìm phân tích SVD ma trận 𝑨𝒎×𝒏 ( Nếu m > 𝒏 ) B1 : Ta chéo hóa trực giao AAT để tìm ma trận 𝑈𝑚×𝑚 𝐷𝑚×𝑚 B2 : Ta tìm 𝜎1, 𝜎2 bậc trị riêng AAT xếp theo thứ tự giảm dần đường chéo 𝛴𝑚×𝑛 𝑇 B3 : Có 𝑈𝑚𝑥𝑚 𝛴𝑚×𝑛 ta vào phương trình A = 𝑈𝑚×𝑚 𝛴𝑚×𝑛 𝑉𝑛×𝑛 V(T)nxn (*) để tìm ma trận (Nếu n>m ta tìm V trước bước làm khác tương tự) 1 1.5 Ví dụ : Tìm phân tích SVD A = (0 1) GIẢI -Ta chéo hóa trực giao AAT để tìm 𝛴 U 2−𝜆 Xét (AAT - 𝜆𝐼) = ( 1 -Tìm : 1−𝜆 ) => det(AAT - 𝜆𝐼) = 1−𝜆 𝜆1 = ; 𝜆2 = , 𝜆3 = 𝜆1 = => 𝑋 = 𝛼 (1) −1 ; 𝜆2 = => 𝑋 = 𝛼 (−1) ; 𝜆3 = => 𝑋 = 𝛼 ( ) 1  Ta tìm được: U = (√6 (1) ; 1 (−1) ; √2 1 −1 √3 ( )) 𝑣à 𝛴 = ( 1) √3 0 −1 Có U, 𝛴 ta vào phương trình A = U𝛴VT => ta giải V = √6 (−1 √2 √2 −1) √2 *Câu hỏi: Nếu ta khơng vào phương trình để tìm V mà tiếp tục dùng cách phân tích chéo hóa trực giao 𝑨𝑻 A để tìm V khơng? Ta tiếp tục làm sau : 𝐴𝑇 A = V∑𝑇 ∑𝑉  𝝀1 = ; 𝝀2 = 𝑇 det(𝐴𝑇 A – 𝜆I) = 𝟏 𝟏 𝟏 √𝟐 𝝀1 = => X = 𝜶 ( ) ; 𝝀2 = => X = 𝜶 ( ) => V = (−𝟏 −𝟏 𝟏 √𝟐 𝟏 √𝟐 𝟏) √𝟐 −𝟏 𝟏 T Thử lại ta tìm lại A ∶A = U𝜮V = (−𝟏 𝟎) ( Không với ma trận A đề cho) 𝟎 𝟏 -4- -Vậy cách làm không Nguyên nhân U V phụ thuộc dấu vào -Bằng phép chéo hóa trực giao A𝐀𝐓 ta tìm nhiều ma trận U U ta lại tìm V thỏa phép phân tích SVD Điều nói lên có nhiều phép phân tích SVD cho ma trận A *Giải tốn mathlab vấn đề trở nên dễ dàng với lệnh svd Viết lại biểu thức (*) dạng tổng ma trận rank 1: A = 𝝈𝟏 𝒖𝟏 𝑽𝑻𝟏 + 𝝈𝟐 𝒖𝟐 𝑽𝟐𝟐 + … + 𝝈rur𝑽𝑻𝒓 Với ý 𝑢𝑖 𝑉𝑖𝑇 , ≤ 𝑖 ≤ 𝑟 ma trận rank A Rõ ràng cách biểu diễn này, ma trận A phụ thuộc vào r cột U ,V r giá trị khác đường chéo ma trận 𝛴 Vì vậy, ta có cách phân tích gọn gọi compact SVD : A = Ur𝜮(Vr)T Với Ur , Vr ma trận tạo r cột U V 𝛴 r ma trận tạo r hàng r cột 𝛴 Nếu ma trận A có rank nhỏ nhiều so với số hàng số cột r ≪ m, n, ta lợi nhiều việc lưu trữ đánh giá -5- CHƯƠNG II : ỨNG DỤNG SVD VÀO HỆ THỐNG GỢI Ý (RECOMMEND SYSTEM) 2.1 Mở Đầu : -Các bạn có lẽ gặp tượng nhiều lần: Youtube tự động chuyển clip liên quan đến clip bạn xem Youtube tự gợi ý clip mà bạn thích Khi bạn mua hàng Amazon, hệ thống tự động gợi ý “Frequently bought together”, biết bạn thích hàng dựa lịch sử mua hàng bạn Facebook hiển thị quảng cáo sản phẩm có liên quan đến từ khố 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à nhiều ví dụ khác mà hệ thống có khả tự động gợi ý cho ngừời dùng sản phẩm họ thích Bằng cách quảng cáo hướng đội tượng này, hiệu việc marketing tăng lên Những thuật toán đằng sau ứng dụng thuật tốn Machine Learning có tên gọi chung Recommender Systems Recommendation Systems, tức Hệ thống gợi ý 2.2 Hai nhóm Recommendation Systems -Các Recommendation Systems thường chia thành hai nhóm lớn: Content-based systems: đánh giá đặc tính items recommended Ví dụ: user xem nhiều phim cảnh sát hình sự, gơi ý phim sở liệu có chung đặc tính hình tới user này, ví dụ phim Người phán xử Cách tiếp cận yêu cầu việc xếp items vào nhóm tìm đặc trưng item Tuy nhiên, có items khơng có nhóm cụ thể việc xác định nhóm đặc trưng item bất khả thi Collaborative filtering: hệ thống gợi ý items dựa tương quan (similarity) users và/hoặc items Có thể hiểu nhóm item recommended tới user dựa users có hành vi tương tự Ví dụ: users A, B, C thích hát Noo Phước Thịnh Ngồi ra, hệ thống biết users B, C thích hát Bích Phương chưa có thơng tin việc liệu user A có thích Bích Phương hay không Dựa thông tin users tương tự B C, hệ thống dự đốn A thích Bích Phương gợi ý hát ca sĩ tới A -6- 2.3 Bài toán tổng quát hệ thống gợi ý: i1 i2 … in u1 r1,1 r1,2 … r1,n u2 r2,1 r2,2 … r2,n … … … … … un Rm,1 rm,2 … Rm,n Gọi U tập hợp tất người dùng, I tập hợp tất sản phẩm tư vấn Tập I có giá trị khoảng {1,n}, tập U có giá trị khoảng {1,m} Hàm f(u,i) đo độ phù hợp (hay hạng) sản phẩm I với người dùng u : f : U x I → R với R tập thứ tự.Tập hợp rating r người dùng ( bao gồm giá trị chưa biết) tạo thành ma trận goi utility matrix Với người dùng u U , cần tìm sản phẩm i  I , cho hàm f(i,u) đạt giá trị lớn nhất: uU, iu arg max f (u,i) Vấn đề hệ tư vấn hàm f(u,i) không xác định tồn khơng gian U x I mà miền nhỏ khơng gian Điều dẫn tới việc hàm f(u,i) phải ngoại suy không gian U x I Các hệ thống tư vấn thường phân thành nhiều loại dựa cách sử dụng thuật toán để ước lượng hạng điểm sản phẩm Yêu cầu toán: Ta cần đưa dự đoán cho đánh giá người dùng hệ thống cho sản phẩm mà người dùng chưa đánh giá Và thực tế, sản phẩm hệ gợi ý dự đốn người dùng đánh giá cao, đưa lên để gợi ý cho người dùng trải nghiệm 2.4 Giải vấn đề: 2.4.1 Phương án 1: Ở phương pháp đưa phương án gợi ý sản phẩm cho người dùng dựa nhóm Content-based systems ( đánh giá đặc tính tương quan items) Để giải toán đặt áp dụng phương pháp SGD nhằm mục đích phân rã ma trận X tìm kiếm ma trận Y ≈ X Ta có ma trận 𝐴𝑚×𝑛 ln khai triển thành : 𝑨𝒎×𝒏 = U𝜮𝑽𝑻 (1) Ta thấy : Vì tính chất ma trận đường chéo nên ta khai triển 𝐴𝑚×𝑛 : -7- 𝐴𝑚×𝑛 = U√𝛴√𝛴 𝑇 VT 𝑇 Đặt X = U√𝛴 YT = √𝛴 VT Từ ta đặt lại biểu thức (1) : 𝐴𝑚×𝑛 = XYT Ta có hàm mát ma trận 𝐴𝑚×𝑛 : 𝑛 𝑚 𝑛 𝑇 𝑇 𝑇 L(A, X, Y, W, 𝜆) = ∑𝑚 𝑖=1 ∑𝑗=1 𝜔𝑖,𝑗 𝑙(𝐴𝑖𝑗 , 𝑥𝑖 𝑦𝑗 ) + 𝜆 ∑𝑖=1 𝑥𝑖 𝑥𝑖 + 𝜆 ∑𝑗=1 𝑦𝑗 𝑦𝑗 Tối ưu hóa hàm mát ta : 𝑥𝑖 = (1- n𝜆) 𝑥𝑖 + ∑𝑗 𝑛(𝐴𝑖,𝑗 - 𝑥𝑖 𝑦𝑗𝑇 ) 𝑦𝑗 𝑦𝑖 = (1- n𝜆) 𝑦𝑖 + ∑𝑗 𝑛(𝐴𝑖,𝑗 - 𝑥𝑖 𝑦𝑗𝑇 ) 𝑥𝑗 Trong đó: n - tốc độ học ; 𝜆 – hàm tắt Bằng tính chất ma trận U, 𝛴, V ta viết lại biểu thức (1) dạng tổng ma trận rank 1: A = 𝝈𝟏 𝒖𝟏 𝑽𝑻𝟏 + 𝝈𝟐 𝒖𝟐 𝑽𝑻𝟐 + … + 𝝈rur𝑽𝑻𝒓 Với ý mỗi, 𝑢𝑖 𝑉𝑖𝑇 , ≤ 𝑖 ≤ 𝑟 ma trận có rank Và r số giá trị khác đườ𝑛𝑔 𝑐ℎé𝑜 𝑐ủ𝑎 𝑚𝑎 𝑡𝑟ậ𝑛 𝛴 Chú ý ma trận 𝛴, giá trị đường chéo không âm giảm dần 𝝈𝟏 ≥ 𝝈𝟐 ≥ 𝝈𝟑 ≥ ⋯ ≥ 𝝈𝒌 ≈ 𝟎 ≥ ≈ 𝟎 Thông thường lượng nhỏ 𝜎𝑖 mang giá trị lớn, giá trị lại thường nhỏ 0Khi ta xấp xỉ ma trận A tổng k < r ma trận có rank 1, từ đó: A ≈ Ak = 𝝈𝟏 𝒖𝟏 𝑽𝑻𝟏 + 𝝈𝟐 𝒖𝟐 𝑽𝑻𝟐 + … + 𝝈kuk𝑽𝑻𝒌 Dưới định lý thú vị Định lý nói sai số cách xấp xỉ bậc hai qua tổng bình phương singular values mà ta bỏ qua phần cuối 𝛴 Ở sai số định nghĩa Frobineus norm hiệu hai ma trận: ‖𝑨 − 𝑨𝒌 ‖𝟐𝑭 = ∑𝒓𝒕=𝒌+𝟏 𝝈𝟐𝒊 Việc xấp xỉ ma trận A tổng k < r ma trận có rank cịn gọi Truncaded SVD Bằng cách ta tạo ngẫu nhiên cập nhật hàng ma trận X Y -8- *Chứng minh công thức xấp xỉ Truncated ‖𝑨 − 𝑨𝒌 ‖𝟐𝑭 = ‖∑ 𝟐 𝑻 𝝈𝒊 𝒖𝒊 𝑽𝒊 ‖ 𝑭 𝒓 𝒊=𝒕+𝟏 𝑟 = trace {(∑𝑖=𝑡+1 𝜎𝑖 𝑢𝑖 𝑉𝑖𝑇 )(∑𝑟𝑖=𝑡+1 𝜎𝑖 𝑢𝑖 𝑉𝑖𝑇 )𝑇 } = trace {∑𝑟𝑖=𝑡+1 ∑𝑟𝑖=𝑡+1 𝜎𝑖 𝑢𝑖 𝑉𝑖𝑇 𝜎𝑟 𝑢𝑖𝑇 𝑉𝑖} = trace {∑𝑟𝑖=𝑡+1 ∑𝑟𝑖=𝑡+1 𝜎𝑖 𝜎𝑖 𝑢𝑖 𝑉𝑖𝑇 𝑉𝑖𝑢𝑖𝑇 } = trace {∑𝑟𝑖=𝑡+1 𝜎𝑖2 𝑢𝑖 𝑢𝑖𝑇 } ( V ma trận trực giao ) = trace {∑𝑟𝑖=𝑡+1 𝜎𝑖2 𝑢𝑖𝑇 𝑢𝑖 } ( hàm trace có tính giao hốn ) = trace {∑𝑟𝑖=𝑡+1 𝜎𝑖2 } = ∑𝑟𝑖=𝑡+1 𝜎𝑖2 ( Biểu thức trace số vô hướng ) Như vậy, ta chọn top t trị riêng có giá trị lớn nhất sai số hai ma trận nhỏ tổng bình phương trị riêng cịn lại Khi cho t = ta có : ‖𝑨‖𝟐𝑭 = ∑𝒓𝒊=𝒕+𝟏 𝝈𝟐𝒊 => ‖𝑨−𝑨𝒕 ‖𝟐𝑭 ‖𝑨‖𝟐𝑭 = ∑𝒓𝒊=𝒕+𝟏 𝝈𝟐𝒊 ∑𝒓𝒊=𝒕+𝟏 𝝈𝟐𝒊 Suy : sai số xấp xỉ nhỏ phần trị riêng bị truncated có giá trị nhỏ so với phần trị riêng giữ lại Đây định lý quan trọng giúp xác định việc xấp xỉ ma trận dựa lượng thông tin muốn giữ lại Hệ : Phương pháp truncated SVD cho ta biết tỉ lệ phần trăm lượng thông tin lưu trữ ma trận xấp xỉ thông qua công thức : ∑𝒌𝒊=𝟏 𝝈𝟐𝒊 ∑𝒓𝒋=𝟏 𝝈𝟐𝒋 Ví dụ : ta muốn giữ lại 90% lượng thơng tin A, trước hết ta tính ∑𝑟𝑖=1 𝜎𝑖2 , sau chịn k số nhỏ cho: ∑𝒌𝒊=𝟏 𝝈𝟐𝒊 ∑𝒓𝒋=𝟏 𝝈𝟐𝒋 ≥ 𝟎, 𝟗 -9- 2.4.2 Phương án 2:Ở phương pháp đưa hướng gợi ý dựa vào Nhóm Collaborative filtering ( hệ thống gợi ý items dựa tương quan ( similarity) users) Ta xét ví dụ cụ thể sau : Movie Movie Movie Movie Movie Movie SAM 5 5 MELODY 4 MIKE 5 LYDIA 3 5 Với: ví dụ đánh giá người dùng với phim tảng hệ thống Mức đánh giá yêu thích từ đến chưa xem phim Ở ta giả sử phim xem qua đánh giá Từ ta lập UTILITY MATRIX Amxn: 5 A= (5 4 5 3 5) Từ ta áp dụng phân tích SVD cho A : A = U∑𝑽𝑻 −0.4472 −0.3586 −0.2925 U= −0.2078 −0.5099 (−0.5316 0.5373 0.0064 −0.2461 −0.8622 0.4033 0.2275 −0.6700 0.3951 −0.0597 0.1097 −0.1887 0.1914 −0.5037 −0.1458 −0.1038 −0.5888 0.2869 0.5341 −0.3857 0.0780 0.4360 0.0260 0.5946 −0.5485 17.7139 0 0 6.3917 0 0 3.0980 ∑= 0 1.3290 0 0 ( 0 0 ) −0.5710 0.2228 −0.6749 0.4109 −0.4275 0.5172 0.6929 0.2637 𝑉 𝑇 =( ) −0.3846 −0.8246 0.2532 0.3286 −0.5859 −0.0532 −0.0140 −0.8085 - 10 - −0.3298 0.2002 0.7065 0.0667 −0.5371 0.2429 ) -Từ phép phân tích ta thấy : +U ma trận (chứa liệu đặc tính items) cho ta thấy tương quan item với : +𝑽𝑻 ma trận (chứa liệu tương quan users) cho ta thấy tương quan users Để dễ so sánh đặc tính users với thuận tiện cho việc gợi ý lưu trữ.Bằng phương pháp Truncated ta hợp chiều liệu xuống sấp sĩ với liệu đánh giá Ta bỏ cột U hàng ma trận V lấy trị riêng lớn ∑ A ≈ 𝑼 𝒓 ∑𝒓 𝑽 𝒓 𝑻 ≈ −0.4472 −0.3586 −0.2925 −0.2078 −0.5099 (−0.5316 0.5373 −0.2461 17.7139 0.4033 ( −0.6700 −0.0597 −0.1887) −0.5710 )( 6.3917 0.2228 −0.4275 0.5172 −0.3846 −0.8246 0.5859 ) −0.0532 Ta tham vấn phân tích sấp sĩ A để nguyên tắc hoạt động phương pháp : −0.5710 ) vị trí LYDIA 0.2228 0.5859 ( ) gần giống (similar) => Sam LYDIA có điểm tương đồng −0.0532 Trong ma trận 𝑉𝑟 𝑇 liệu ta nhìn thấy vị trí Sam ( Ta kiểm tra lại UTILYTI MATRIX ban đầu nhận thấy nhận xét đúng.: Sam = (5 5 5)𝑇 tương đồng với Lydia= (5 3 5)𝑇 Vậy không cần xem xét rating users ta dự biết tương quan giống users với Hệ thống recommend ta cần so sánh liệu tương quan V(T) phát users có liệu tương quan sai số liệu tương quan người dùng tại.Từ hệ thống đưa gợi ý items mà users tương quan đánh giá cao cho người dùng Như ví dụ cụ thể Sam Lydia có liệu tương gần giống nhất, hệ thống chạy thuật toán gợi ý cho Sam phim mà LYDIA xem mà Sam chưa xem xếp thứ tự phim từ xuống theo mức độ đánh giá LYDIA Và đồng thời ta gợi ý cho Lydia phim mà Sam đánh giá cao - 11 - Tuy nhiên hệ liệu lớn cập nhập người dùng thưởng xun việc phân tích liên tục UTILITY MATRIX để đánh giá mức độ tương quan users tốn thời gian khơng gian lưu trữ Ta có hướng giải sau : Tiếp tục với tốn giả sử có users tên Jess Users đánh giá (rating) phim sau : J = (5 0 5)𝑇 Để tìm “đặc tính” users nén thông tin users chiều 𝑉 𝑇 Nói cách khác ta đưa thông tin rating users Jess mã hóa thành liệu tương quan users ma trận 𝑉 𝑇 từ ta có sở để so sánh đặt tính users mà khơng cần áp dụng thuật tốn phân tích cho tồn ma trận A thêm rating Jess vào lần Cơng thức để tính “đặc tính” users thêm vào 𝐕𝐣 = 𝐉 𝐓 𝑼𝒓 𝜮𝒓−𝟏 Sau xác định liệu tương quan users 𝑉 𝑟 users từ liệu có sẵn 𝑉 𝑟 Ta tìm thấy người có tương quan gần với users Từ hệ thống gợi ý cho users nội dung ( phim ) mà người dùng tương quan đánh giá cao −0.4472 −0.3580 −0.2925 𝑉𝑗 = −0.2078 −0.5099 (5) (−0.5316 −0.5373 0.2461 −0.4033 17.7139 ( 0.6700 0.0597 0.1887 ) −0.3775 )=( ) 6.3917 −0.0802 Như ví dụ ta thấy liệu tương quan users Jess gần giống với Sam Melody Vì hệ thống đưa phim Sam Melody xem đánh giá cao lên đầu để gợi ý cho Jess.Vậy với cách làm vừa tiết kiệm khơng gian lưu trữ vừa thu ngắn thời gian để hệ thống đưa gợi ý tốt cho người dùng - 12 - TÀI LIỆU THAM KHẢO [1] Đặng Văn Vinh, Giáo trình đại số tuyến tính , NXB Đại học Qc Gia TP Hồ Chí Minh 2020 [2] Nguyễn Tiến Dũng, Đại số tuyến tính ( Lý Thuyết Ứng Dụng ), NXB Đại học Quốc Gia TP Hồ Chí Minh 2020 [3] DeAngelis, G C.; Ohzawa, I.; Freeman, R D (October 1995) "Receptive-field dynamics in the central visual pathways" Trends Neurosci [4] Machinelearningcoban , Bài 26 : Singulả Value Decomposition;Bài 25 : Matrix Factorization ; Bài 24:Neighborhood-Based Collaborative Filtering; Bài 23: Content-based Recommendation Systems [5] Phạm Hoàng Trương, Luận văn Thạc Sĩ Khoa Học Máy Tính : Nghiên cứu ứng dụng Kỹ Thuật SVD vào hệ thống gợi ý , Đại học Bách Khoa Đà Nẵng [6] Singular Value Decomposition- Stanford University [7] Singular Value Decomposition - Princeton - 13 - - 14 - ... THIỆU :SVD VÀ ỨNG DỤNG VÀO HỆ THỐNG GỢI Ý CHƯƠNG I : SINGULAR VALUE DECOMPOSITION (SVD) 1.1 : Phát biểu SVD 1.2 : Chứng minh tồn phân tích SVD 1.3 : Mơ SVD 1.4 : Phương pháp tìm phân tích SVD CHƯƠNG... SVD CHƯƠNG II : ỨNG DỤNG SVD VÀO HỆ THỐNG GỢI Ý (RECOMMEND SYSTEMS) 2.1 : Mở đầu 2.2 : Hai nhóm Recommendation Systems 2.3 : Bài toán tổng quát hệ thống gợi ý 2.4 : Giải vấn đề 2.4.1 : Phương... phân tách không? Để giải vấn đề sau xin giới thiệu phép phân rã ma trận SVD (Singuler Value Decomposition ) Trong đề tài chúng tơi trình bày lý thuyết SVD ứng dụng SVD Recommend System CHƯƠNG I

Ngày đăng: 24/06/2021, 14:20

TỪ KHÓA LIÊN QUAN

w