Đang tải... (xem toàn văn)
PHÂN TÍCH PCA GIẢM CHIỀU DỮ LIỆU
TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP.HCM
NHÓM 04 - L14
Trang 2Thành viên tham gia
Trang 3Tóm tắt nội dung
• Giới thiệu về PCA
• Các bước phân tích PCA • Matlab
• Kết luận
Trang 4I Giới thiệu về PCA
Principal component analysis (PCA)
• Phép phân tích thành phần chính (Principal component analysis-PCA) là một thuật toán thống kê sử dụng biến đổi trực giao để biến đổi một tập hợp dữ liệu từ một không gian nhiều chiều sang một không gian mới ít chiều hơn (2 hoặc 3 chiều) nhằm tối ưu hóa việc thể hiện sự biến thiên của dữ liệu.
Trang 5Một số khái niệm toán học sử dụng trong PCA:
01: Kì vọng
02: Độ lệch chuẩn03: Phương sai
04: Hiệp phương sai
05: Ma trận hiệp phương sai06: Phương sai lớn nhất
07: Trị riêng
08: Vector riêng
Trang 6II Các bước phân tích PCA
Cho bảng số liệu có dữ liệu 3 chiều như sau:
Trang 7Bước 1: Tính giá trị trung bình (tìm kỳ vọng mean)
Trang 9
Bước 3+4: Tìm trị riêng của S và sắp xếp theo giá trị giảm và chọn k trị riêng ban đầu và k vecto riêng đơn vị ứng với các trị riêng này
Trang 10
Bước 5: Tính ảnh của vecto Dữ liệu X ban đầu được xấp xỉ bởi
Mỗi cột của chứa tọa độ của các hàng của ma trận trong cơ sở từ các cột của ma trận P.
E 0.0820 0.0817
Trang 11 Đánh giá sai số:
Tính tổng các trị riêng của S ta được:
Khi ta giảm chiều dữ liệu từ 3 chiều về 2 chiều thì phương sai đã giảm còn và chiếm tỉ lệ: so với phương sai ban đầu.
Trang 12
SUBPLOT(1, 2, 2);
SCATTER(REDUCED_DATA(:, 1), REDUCED_DATA(:, 2), ’R’, ’FILLED’);
TITLE(’MA TRẬN SAU KHI ĐƯỢC GIẢM CHIỀU’);DISP(’MA TRẬN ĐẦU RA SAU KHI GIẢM CHIỀU:’);DISP(REDUCED_DATA);
SELECTED_VECTORS = V(:, END:-1:END-K+1);
REDUCED_DATA = (X - XM) * SELECTED_VECTORS;FIGURE;
SUBPLOT(1, 3, 1);
SCATTER3(X(:, 1), X(:, 2), X(:, 3), ’B’, ’FILLED’);TITLE(’MA TRẬN TRƯỚC KHI GIẢM CHIỀU ’);SUBPLOT(1, 3, 2);
SCATTER(REDUCED_DATA(:, 1), REDUCED_DATA(:, 2), ’R’, ’FILLED’);
TITLE(’MA TRẬN SAU KHI ĐƯỢC GIẢM CHIỀU’);SUBPLOT(1, 3, 3);
DISP(’MA TRẬN ĐẦU RA SAU KHI GIẢM CHIỀU:’);DISP(REDUCED_DATA);
END
Trang 13Sơ đồ khối code
Trang 14• Qua đề tài về ứng dụng phân tích thành phần chính pca để giảm chiều dữ liệu, nhóm chúng em đã có cái nhìn sâu sắc hơn về sự gắn kết giữa lý thuyết và thực tế ở bộ môn đại số tuyến tính nói riêng.
• PCA trở thành một trong những phương pháp quan trọng nhất trong hành trình khám phá vũ trụ số liệu không ngừng mở rộng.
• Nhóm em đã hiểu được cách phân tích thành phần chính PCA giảm số chiều dữ liệu ma trận bất kì và tạo code Matlab có khả năng giảm chiều của 1 file dữ liệu tuỳ ý.
KẾT QUẢ
Trang 15Cảm ơn thầy và các bạn đã lắng nghe