1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng Cơ sở Toán trong Tin học PCA và LSA

67 437 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

Định dạng
Số trang 67
Dung lượng 9,29 MB

Nội dung

Bài giảng Lý thuyết Cơ sở Toán trong Tin học PCA và LSA. Bài giảng Lý thuyết Cơ sở Toán trong Tin học PCA và LSA. Bài giảng Lý thuyết Cơ sở Toán trong Tin học PCA và LSA. Bài giảng Lý thuyết Cơ sở Toán trong Tin học PCA và LSA . Bài giảng Lý thuyết Cơ sở Toán trong Tin học PCA và LSA

TOÁN CHO TIN HỌC Phạm Nguyên Khang BM Khoa học máy tính pnkhang@cit.ctu.edu.vn Nội dung • • • Đại số tuyến tính Tối ưu Ứng dụng tốn học máy ỨNG DỤNG TOÁN TRONG HỌC MÁY Ứng dụng tốn học máy • • • • Hệ phương trình tuyến tính Bài tốn bình phương nhỏ Hồi quy tuyến tính Giảm chiều liệu • • • Phân tích thành phần (PCA) Phân tích ngữ nghĩa tiềm ẩn (LSA) Máy học véc-tơ hỗ trợ • • SVM chuẩn Proximal SVM Hệ phương trình tuyến tính • Xét hệ phương trình tuyến tính: Ax = b • • A ma trận vuông n x n Giải: • • (1) -1 A khả đảo, nghiệm x = A b -1 Làm A khơng khả đảo (khơng tồn A ) ví dụ: số phương trình nhiều số biến ? • • Giải pháp: Tìm x cho Ax “gần” với b Tìm x cho ||Ax – b|| nhỏ Bài tốn bình phương nhỏ • • • Tìm x cho f(x) = ||Ax - b||  Bài tốn khơng có ràng buộc Ta có: • Tìm gradient x • Cho gradient = giải hệ phương trình tìm x Bài tốn bình phương nhỏ • Chú ý: • T Nếu cột A độc lập tuyến tính A A khả đảo tồn nghiệm nhất: (2) • • (2) phương trình chuẩn tốn bình phương nhỏ Điều xảy cột A không độc lập tuyến tính ? • • Tìm x có norm nhỏ cho nhỏ x tồn cột A không độc lập tuyến tính Bài tốn bình phương nhỏ • • • • pseudo-inverse (giả nghịch đảo) hay gọi nghịch đảo Moore-Pensore ma trận A kích thước m x n, ký hiệu A+ định nghĩa sau: • • • Nếu A = VSUT (SVD A) Thì A+ = VS+UT Trong S+ ma trận nghịch đảo S (lấy nghịch đảo phần tử khác S ta S +) Tính chất: • • Nếu m > n A có hạng đầy đủ A+ = (ATA)-1AT Nếu m < n A có hạng đầy đủ A+ = AT (AAT)-1 Trong octave A+ định nghĩa hàm pinv(A) Áp dụng pseudo inverse để giải hệ phương trình tuyến tính • X = A+b (trong octave: x = pinv(A)*b hay x = A\b) Hồi quy tuyến tính • Xét toán dự báo giá nhà dựa diện tích đất Hồi quy tuyến tính • Xét toán dự báo giá nhà dựa diện tích đất ? 10 PCA (Giải thuật) • Giải thuật tính PCA • Quy tâm hàng X • • Tính mean theo hàng, thay hàng X = trừ cho mean Tính ma trận phương sai – hiệp phương sai: T C= X X m • Tìm giá trị riêng véc-tơ riêng C => U Λ • • [U L] = eig(C) Sắp xếp giá trị riêng véc-tơ riêng, giữ lại k véc-tơ riêng có giá trị riêng lớn => U reduce (sử dụng hàm sort octave) • Chiếu liệu lên thành phần chính: T z(i) = Ureduce x(i) Z = XUreduce 53 PCA (Quiz) • Bài tốn PCA tìm u cho (bình phương) lỗi chiếu nhỏ nhất, điều tương đương với cực tiểu hoá: a) m (i) x ∑ m i=1 b) m (i) xapprox ∑ m i=1 c) m (i) (i) x − xapprox ∑ m i=1 d) m (i) (i) x + xapprox ∑ m i=1 2 2 2 2 54 PCA (Quiz) • Giả sử ta chạy PCA giữ lại k = n thành phần (khơng giảm chiều) Các câu bên ? a) Ureduce có kích thước n x n b) Với x, xapprox = x c) d) Phần trăm phương sai giữ lại 100% Ta có ∑ ∑ k i=1 n i=1 λi λi >1 55 PCA (Quiz) • Khi nên sử dụng PCA, chọn tất câu ? a) b) c) d) Nén liệu để tốn nhớ/không gian lưu trữ Giảm chiều liệu đầu vào để tăng tốc giải thuật máy học Thay sử dụng hồi quy, ta sử dụng PCA Để hiển thị liệu nhiều chiều (chọn k = k = 3) 56 PCA (Thực hành) • Bài 1: liệu 2D • Chương trình (ex_pca.m) load ('ex7data1.mat'); %dữ liệu lưu vào biến X %Quy tâm X %Vẽ liệu [U, L] = pca(X); % tính PCA k = 1; Z = project_data(X, U, k); %chiếu liệu Z(1,:) %hiển thị phần tử X_rec = recover_data(Z, U, k); %phục hồi liệu X_rec(1:, ) %hiển thị phần tử 57 PCA (Thực hành) • Bài 1: liệu 2D • • Cài đặt giải thuật PCA (tên file: pca.m) • • function [U, L] = pca(X) • • • %U: véc-tơ riêng %L: ma trận giá trị riêng %Gợi ý: sử dụng hàm eig sort để xếp end Nếu cài đặt véc-tơ riêng hoặc:  −0.707  u = ÷  −0.707  (1)  0.707  u = ÷  0.707  (1) 58 PCA (Thực hành) • Bài 1: liệu 2D • Chiếu liệu lên thành phần (tên file: project_data.m) • function Z = project_data(X, U, k) • • • • • %U: véc-tơ riêng: n x n %X: liệu gốc: m x n %Z: m x k, k < n end Nếu cài đặt hình chiếu phần tử lên thành phần 1.481 -1.481 59 PCA (Thực hành) • Bài 1: liệu 2D • Phục hồi liệu gốc (tên file: recover_data.m) • function X_rec = recover_data(Z, U, k) • • • • • %U: véc-tơ riêng: n x n %X_rec: m x n %Z: m x k, k < n end Nếu cài đặt phần tử đầu tiền có giá trị [-1.047 -1.047] 60 Phân tích ngữ nghĩa tiềm ẩn • Latent semantic analysis (LSA) • • • Kỹ thuật thống kê xử lý liệu văn bản: trích thơng tin mối quan hệ (ngữ nghĩa) từ tập văn Văn biểu diễn ma trận Term x Document Mục tiêu: giảm chiều chiếu liệu sang không gian chủ đề, giải vấn đề đồng nghĩa (dựa đồng xuất hiện) Topic Document Term/word Document Z Term/word W D 61 Singular value decomposition • Tách giá trị kỳ dị (SVD) ma trận phép tốn phân rã ma trận A thành tích ma trận U.S.V S A • • = V T T U 62 T T U, V ma trận trực giao: U U = I, V V S ma trận đường chéo, phần tử nằm đường chéo S gọi giá trị kỳ dị (singular) Singular value decomposition • • • • Mối quan hệ giá trị kỳ dị (singular values) giá trị riêng (eigenvalues) A = USVT T Giá trị riêng A A = bình phương giá trị kỳ dị A T T T A A = USV USV = VSU USV = VS V ) riêng AAT Thành phần trái( A (U) véc-tơ T riêng Thành T phần phải A (V) Tlà véc-tơ T ATA 63 Phân tích ngữ nghĩa tiềm ẩn • Độ tương tự (similarity) Terms Term * D • D T = DD T Term Độ tương tự (similarity) Documents Doc D T * D = T D *D Doc 64 Phân tích ngữ nghĩa tiềm ẩn • Giải thuật LSA • S ma trận đường chéo SVD ma trận D S D = V T U T V red Sred S ≈ Ured 65 Phân tích ngữ nghĩa tiềm ẩn • Giải thuật LSA • Độ tương tự terms: D* DT = U * S*V T *V * S*U T = U * S* S*U T = (U * S)* (U * S)T ≈ (Ured * Sred )* (Ured * Sred )T • Độ tương tự documents DT * D = V * S*U T *U * S*V T = V * S* S*V T = (V * S)* (V * S)T ≈ (Vred * Sred )* (Vred * Sred )T • Hình chiếu terms • Hình chiếu documents W = (Ured * Sred ) 66 Z = (Vred * Sred ) Phân tích ngữ nghĩa tiềm ẩn • Giải thuật LSA • Chiếu document lên khơng gian ngữ nghĩa : • Ta có: D = U * S*V T ⇒ U T * D = U T *U * S*V T = S*V T chiếu document mới: T • Hình⇔ V * S= D *U T Z = D *U lên không gian ngữ nghĩa: new chiếu new term mớired • Tương tự hình Wnew = Dnew *Vred 67 ... dụng toán học máy ỨNG DỤNG TỐN TRONG HỌC MÁY Ứng dụng tốn học máy • • • • Hệ phương trình tuyến tính Bài tốn bình phương nhỏ Hồi quy tuyến tính Giảm chiều liệu • • • Phân tích thành phần (PCA) ... cho ||Ax – b|| nhỏ Bài tốn bình phương nhỏ • • • Tìm x cho f(x) = ||Ax - b||  Bài tốn khơng có ràng buộc Ta có: • Tìm gradient x • Cho gradient = giải hệ phương trình tìm x Bài tốn bình phương... quy tuyến tính Giảm chiều liệu • • • Phân tích thành phần (PCA) Phân tích ngữ nghĩa tiềm ẩn (LSA) Máy học véc-tơ hỗ trợ • • SVM chuẩn Proximal SVM Hệ phương trình tuyến tính • Xét hệ phương trình

Ngày đăng: 17/02/2019, 10:12

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w