You are on page 1of 27

BÁO CÁO BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH

ỨNG DỤNG SVD


VÀO MECHINE
LEARNING
● GVHD: Nguyễn Hữu Hiệp
● Lớp L19 - Nhóm 6
THÀNH VIÊN TRONG NHÓM
STT Họ và tên MSSV
1 Dương Hoàng Ân 1912635
2 Nguyễn Thị Việt 1915913
3 Hà Trần Quang Trung 2014874
4 Trần Viết Việt Anh 2112822
NỘI DUNG
01 02 03
Giới thiệu Cơ sở lý thuyết của SVD trong
SVD Machine Learning

04 05 06
Ví dụ Thách thức và hạn chế Kết luận
1. GIỚI THIỆU
1.1. Giới thiệu về phân tích suy biến SVD
 Phương pháp phân tích suy biến (Singular Value
Decomposition) được viết tắt là SVD, là một
trong những phương pháp thuộc nhóm matrix
factorization được phát triển lần đầu bởi những
nhà hình học vi phân.

 Phương pháp SVD đã được phát triển dựa trên


những tính chất của ma trận trực giao và ma
trận đường chéo để tìm ra một ma trận xấp xỉ
với ma trận gốc.
1.2. Machine Learning là gì

 Machine Learning là một lĩnh vực của trí tuệ


nhân tạo (AI).

 Mục tiêu của Machine Learning là hiểu cấu


trúc dữ liệu và điều chỉnh dữ liệu đó thành
các model mà mọi người có thể hiểu và sử
dụng.
2. CƠ SỞ LÝ THUYẾT
CỦA PHÂN TÍCH
SUY BIẾN SVD
2.1. Mục tiêu của phân tích suy biến SVD
 Phương pháp SVD sẽ tìm ra một lớp các ma trận
xấp xỉ tốt nhất với một ma trận cho trước dựa trên
khoảng cách norm Frobenios giữa 2 ma trận.

 Quá trình nhân ma trận thực chất là quá trình biến


đổi các điểm dữ liệu của ma trận gốc thông qua
những phép xoay trục (rotation) và phép thay đổi
độ lớn (scaling) và từ đó tạo ra những điểm dữ liệu
mới trong không gian mới.
2.2. Quá trình phân tích SVD của một ma trận

 Biểu diễn SVD qua các trường hợp của ma trận A


Trường hợp: m < n
2.2. Quá trình phân tích SVD của một ma trận

 Biểu diễn SVD qua các trường hợp của ma trận A


Trường hợp: m > n
2.2. Quá trình phân tích SVD của một ma trận
 Nguồn gốc SVD

 Compact SVD (SVD gọn nhẹ hơn)


Ví dụ minh hoạ với m=4, n=6, r=2.
3. SVD TRONG
MACHINE LEARNING
• Dự đoán sở thích của người dùng trong các hệ thống đề xuất bằng Collaborative Filtering
cách lập mô hình mối quan hệ giữa người dùng và các mục trong
một ma trận lớn.
• Ước lượng một ma trận lớn, phức tạp bằng một ma trận nhỏ hơn, Matrix Approximation
đơn giản hơn.
• Biểu diễn dữ liệu bằng cách sử dụng ít tính năng hơn bằng cách Data Compression
chỉ giữ lại các giá trị số ít quan trọng nhất và các vectơ số ít liên
quan.
3.1. Cách SVD được sử dụng trong Machine Learing
• Giảm kích thước của tập dữ liệu Bằng cách tìm các mẫu cơ bản Dimensionality Reduction
trong dữ liệu và loại bỏ những mẫu ít quan trọng hơn.
Content
PCA Hệ thống gợi ý
3.2. Các thuật toán Machine LearningFiltering
sử dụng SVD
• Những thuật toán liên • Ứng dụng chính là tìm • Ý tưởng chính của
quan đến nhận dạng kiếm mối quan hệ giữa phương pháp dựa trên
khuôn mặt sơ khai đều người dùng và sản phẩm nội dung là cố gắng xây
được ứng dụng từ PCA và để tối đa hóa sự tương dựng một mô hình, dựa
SVD để biểu diễn khuôn tác của người dùng với trên các “tính năng” có
mặt như là sự kết hợp sản phẩm, đề xuất video sẵn, giải thích các tương
tuyến tính “egenfaces”. hoặc nhạc có liên quan để tác giữa người dùng và
tạo danh sách phát cho mục được quan sát.
người dùng khi họ tương
tác với một mục liên
quan.
3.3. Lợi ích của việc sử dụng SVD trong Machine
Learning

1 2
Hiệu suất Kích thước mô hình

3 4
Khả năng mở rộng Tính điểm PCA
4. VÍ DỤ VỀ ỨNG DỤNG
CỦA SVD TRONG
MACHINE LEARNING
4.1. Phân tích SVD ứng dụng trong nén ảnh
4.2. Ứng dụng SVD trong hệ gợi ý
 Hệ gợi ý dựa trên nội dung- Content-based Recommendation Systems
4.2. Ứng dụng SVD trong hệ gợi ý
 Hệ gợi ý dựa trên nội dung- Content-based Recommendation Systems
4.2. Ứng dụng SVD trong hệ gợi ý
 Neighborhood-Based Collaborative Filtering
4.2. Ứng dụng SVD trong hệ gợi ý
 Matrix factorization

 Một trong những ứng dụng thành công nhất của mô hình yếu tố tiềm ẩn là dựa trên
Phân tích ma trận thành nhân tử (Matrix Factorization, Matrix Decomposition).

 Kết quả cuộc thi Netflix Prize đã chứng minh, các mô hình phân tích ma trận thành
nhân tử vượt trội so với các kỹ thuật hàng xóm gần nhất cổ điển để đưa ra các
khuyến nghị sản phẩm, cho phép kết hợp các thông tin bổ sung như phản hồi ngầm,
hiệu ứng thời gian và mức độ tin cậy.
5. THÁCH THỨC VÀ HẠN CHẾ
KHI SỬ DỤNG TRONG SVD
TRONG MACHINE LEARNING
5.1. Các thách thức khi sử dụng SVD trong Machine
Learning
 Độ phức tạp tính toán: Phép tính SVD có độ phức tạp cao, đặc biệt là trên dữ
liệu lớn.

 Giới hạn bộ nhớ: SVD yêu cầu lưu trữ ma trận toàn phần trong bộ nhớ, điều
này có thể gây ra các vấn đề về bộ nhớ cho dữ liệu lớn.

 Khả năng sử dụng trên dữ liệu thưa: SVD không phù hợp với dữ liệu thưa,
nghĩa là dữ liệu với số lượng giá trị không xác định (hoặc không có) trong ma
trận.
5.2. Các hạn chế khi sử dụng SVD trong Machine
Learning
Khả năng Khó sử dụng trên
Hạn chế chế
giải thích dữ liệu có cấu
độ chính
kết quả trúc đặc biệt

Hạn chế độ Hạn chế chọn kích


chính xác thước
6. KẾT LUẬN
 SVD là một công cụ quan trọng trong đại số tuyến tính và có rất
nhiều ứng dụng trong nhiều lĩnh vực khác nhau, từ xử lý số liệu đến
học máy và xử lý tín hiệu.

 Phân tích SVD được sử dụng trong Machine Learning mang lại rất
nhiều ứng dụng trong nhiều lĩnh vực như nén ảnh, ứng dụng trong hệ
thống gợi ý, ....
CẢM ƠN THẦY
VÀ CÁC BẠN ĐÃ
LẮNG NGHE!

You might also like