1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Báo cáo bài tập lớn đề tài 11 cơ sở lý thuyết của pca ứng dụng pca để giảm chiều dữ liệu

17 3 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 17
Dung lượng 1,22 MB

Nội dung

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN ĐỀ TÀI 11: CƠ SỞ LÝ THUYẾT CỦA PCA ỨNG DỤNG PCA ĐỂ GIẢM CHIỀU DỮ LIỆU LỚP: L05 – NHÓM TỪ HUY BẢO MSSV:2112887 BÙI ĐỨC CẢM MSSV:2112916 NGUYỄN SĨ CƯỜNG MSSV:2112969 LÊ THỊ MỸ DUNG MSSV:2112988 HUỲNH NGUYỄN PHÚC DUY MSSV:2113005 NGUYỄN XUÂN DŨNG MSSV:2113071 TÔ ANH DŨNG MSSV:2113074 GVHD: NGUYỄN HỮU HIỆP TP HCM, 04/2021 i TÓM TẮT BÀI BÁO CÁO Báo cáo trình bày trình nghiên cứu, tìm kiếm thơng tin thực đề tài nhóm A sử dụng phần mềm Matlab với mục tiêu hồn thành tập lớn mơn Đại Số Tuyến Tính giao Cụ thể, báo cáo sâu vào cơng việc nhóm A cần làm, áp dụng kiến thức ma trận, trị riêng, vectơ riêng,… chương trình để thực phân tích thành phần (PCA: Principle Component Analysis) mơ tả trình phần mềm Matlab i LỜI MỞ ĐẦU Ngày nay, thực phân tích nhóm đối tượng, khó tránh phải việc nhóm đối tượng phục thuộc vào nhiều yếu tố, điều khiến cho việc tạo dựng hàm số để phân tích nhóm đối tượng cần phụ thuộc vào số lượng lớn biến, lên đến hàng nghìn, hàng trăm, hàng triệu,… đồng nghĩa với việc không gian mô tả cần thiết Điều không gây khó khăn cho việc lưu trữ liệu mà cịn khó khăn cho việc mơ hình hóa tính tốn để nhận xét, đưa góc nhìn trực quan cho việc kết luận tương quan đối tượng Vì thế, việc giảm số lượng biến thực quan trọng lĩnh vực có liên quan Tuy nhiên, giảm số lượng biến tập liệu phải đánh đổi độ xác tập liệu đó, điều có nghĩa phải chấp nhận phần liệu Cho nên: “Làm để giảm thiểu số chiều liệu, mà đảm bảo số lượng thông tin cần thiết? Một đề xuất hay để giải vấn đề sử dụng phương pháp Phân tích thành phần (PCA: Principle Pomponent Analysis) Ở báo cáo này, chúng em sử dụng phương pháp Phân tích thành phần để giảm chiều liệu i LỜI CẢM ƠN Trong suốt q trình thực tập lớn mơn Đại Số Tuyến Tính, nhóm chúng em nhận nhiều quan tâm ủng hộ, giúp đỡ tận tình thầy cơ, anh chị bạn bè Ngồi ra, nhóm xin gửi lời cảm ơn chân thành đến Thầy Nguyễn Hữu Hiệp Cô Nguyễn Xuân Mỹ, giảng viên hướng dẫn cho đề tài Nhờ có thầy hết lịng bảo mà nhóm hồn thành tập lớn tiến độ giải tốt vướng mắc gặp phải Sự hướng dẫn thầy kim nam cho hành động nhóm phát huy tối đa mối quan hệ hỗ trợ thầy trị mơi trường giáo dục Bộ mơn Đại Số Tuyến Tính mơn học vơ hữu ích, có tính thực tế cao, đảm bảo cung cấp đầy đủ kiến thức thực tiễn cho sinh viên Tuy nhiên, vốn kiến thức chúng em nhiều hạn chế, bỡ ngỡ nên cố gắng chắn tập lớn Đại Số Tuyến Tính lần khó tránh khỏi thiếu sót Kính mong thầy xem xét, góp ý cho tập lớn chúng em hoàn thiện Lời cuối, xin lần gửi lời biết ơn sâu sắc đến cá nhân, thầy cô dành thời gian dẫn cho nhóm, xin cảm ơn đến tác giả tài liệu mà nhóm tham khảo Đây niềm tin, nguồn động lực to lớn để nhóm đạt kết i MỤC LỤC TÓM TẮT BÀI BÁO CÁO LỜI MỞ ĐẦU ii LỜI CẢM ƠN iii DANH MỤC HÌNH ẢNH v CHƯƠNG MỞ ĐẦU CHƯƠNG ĐẶT VẤN ĐỀ CHƯƠNG PHÂN TÍCH THÀNH PHẦN CHÍNH 3.1 CƠ SỞ LÝ THUYẾT 3.1.1 Giới thiệu Phân tích thành phần 3.1.2 Khái niệm Phân tích thành phần 3.1.3 Ưu điểm phương pháp .3 3.1.4 Nhược điểm phương pháp 3.1.5 Một số khái niệm liên quan 3.1.6 Các bước phân tích thành phần 3.2 ỨNG DỤNG CHƯƠNG 4: ỨNG DỤNG CỦA PHÂN TÍCH THÀNH PHẦN CHÍNH TRONG GIẢM CHIỀU DỮ LIỆU CHƯƠNG GIẢI BÀI TOÁN PCA BẰNG MATLAB 5.1 ĐOẠN CODE MATLAB CHẠY CHƯƠNG TRÌNH 5.2 VÍ DỤ CHƯƠNG KẾT LUẬN 10 TÀI LIỆU THAM KHẢO iv DANH MỤC HÌNH ẢNH Hình 3.1: Ví dụ phân tích PCA Hình 3.2: Biểu đồ mô Hình 5.1: Biểu diễn ma trận ban đầu .8 Hình 5.2: Biểu diễn ma trận giảm chiều Hình 5.3: Kết sau giảm chiều v CHƯƠNG MỞ ĐẦU 1.1 YÊU CẦU ĐỀ TÀI - Nêu sở lý thuyết phân tích thành phần (PCA: Principle Component Analysis) - Ứng dụng phân tích PCA để giảm chiều liệu 1.2 YÊU CẦU THÊM - Nhóm cần có kiến thức PCA - Nhóm cần có kiến thức lập trình Matlab CHƯƠNG ĐẶT VẤN ĐỀ - Mỗi liệu thu thập tiến hành nghiên cứu, thí nghiệm thường thể dạng bảng giá trị số nhiều cá thể Chúng tạo thành “đám mây số liệu” phức tạp Các số liệu cần phân tích xử lí để rút nhận xét, đánh giá thích hợp - Phân tích thành phần (Principle Component Analysis- PCA) kĩ thuật biểu diễn số liệu dựa theo tiêu chuẩn đại số hình học mà khơng địi hỏi giả thuyết thống kê hay mơ hình đặc biệt - Kết hợp với phương pháp phân tích thành phần giúp ta khái quát số liệu thu được, đồng thời đưa ước lượng, dự đốn xác với đại lượng sau CHƯƠNG PHÂN TÍCH THÀNH PHẦN CHÍNH 3.1 CƠ SỞ LÝ THUYẾT 3.1.1 Giới thiệu Phân tích thành phần - Cùng lạc đà, nhiên với góc nhìn khác (trục thơng tin), có cách thu nhận thông tin khác cho ta kết luận khác - Phân tích thành phần thuật tốn tìm khơng gian (với số chiều nhỏ không gian cũ), trục tọa độ không gian xây dựng cho trục, Hình 3.1: Ví dụ phân tích PCA độ biến thiên liệu lớn 3.1.2 Khái niệm Phân tích thành phần - Phân tích thành phần phương pháp biến đổi giúp giảm số lượng lớn biến có tương quan với thành tập biến cho biến tạo tổ hợp tuyến tính biến cũ khơng có tương quan lần - Phân tích thành phần kỹ thuật giảm kích thước đơn giản, biến đổi cột liệu thành tập đặc trưng Nó thực điều cách tìm tập hợp hướng (như trục X Y) giải thích biến đổi tối đa liệu, tức hướng ta tìm giá trị lớn phương sai Hình 1:3.2: Bi u ểBiểu đồồ mồ phỏphỏng ng Hình đồ mơ - Ví dụ, có 100 biến ban đầu có tương quan tuyến tính với nhau, sử dụng phương pháp Phân tích thành phần xoay chiều không gian cũ thành chiều không gian mà cịn biến khơng có tương quan tuyến tính mà nhiều lượng thơng tin từ nhóm biến ban đầu - Nếu biểu diễn vectơ liệu ban đầu hệ sở mà hệ sở đó, tầm quan trọng thành phần khác rõ rệt, bỏ qua thành phần quan trọng - Ví dụ, có hai camera đặt dùng để chụp người, camera đặt phía trước người camera đặt đầu Rõ ràng hình ảnh thu từ camera đặt phía trước người mang nhiều thơng tin so với hình ảnh nhìn từ phía đầu Vì vậy, ảnh chụp từ phía đầu bỏ qua mà khơng có q nhiều thơng tin hình dáng người bị  Phân tích thành phần phương pháp tìm hệ sở cho thông tin liệu chủ yếu tập trung vài toạ độ, phần cịn lại mang lượng nhỏ thơng tin Và đơn giản tính tốn, PCA tìm hệ trực chuẩn để làm sở  Phương pháp phân tích thành phần (Principal Component Analysis) cơng cụ tốn thống kê vạn áp dụng hiệuquả xử lý thông tin từ ma trận số liệu quan trắc 3.1.3 Ưu điểm phương pháp Phân tích thành phần - Giảm số chiều không gian chứa liệu có số chiều lớn - Xây dựng trục tọa độ mới, thay giữ lại trục khơng gian cũ, lại có khả biểu diễn liệu tốt tương đương, đảm bảo độ biến thiên liệu chiều - Tạo điều kiện để liên kết tiềm ẩn liệu khám phá khơng gian mới, mà đặt khơng gian cũ khó phát liên kết khơng thể rõ - Đảm bảo trục tọa độ không gian trực giao đôi với nhau, khơng gian ban đầu trục khơng trực giao 3.1.4 Nhược điểm phương pháp Phân tích thành phần - Khiến biến độc lập trở nên khó hiểu - Phải chuẩn hóa liệu trước thực - Có thể gây thơng tin - PCA nhạy cảm với nhiễu - Không phù hợp với tập liệu nhỏ 3.1.5 Một số khái niệm liên quan - Độ lệch chuẩn (Standard Deviation) đại lượng thống kê dùng để đo mức độ phân tán tập liệu Nó cho thấy chênh lệch giá trị thời điểm đánh giá so với giá trị trung bình Nếu chênh lệch khơng đáng kể độ lệch chuẩn tính biến động mức thấp ngược lại - Giá trị kỳ vọng hay giá trị trung bình (mean) trung bình có trọng số tất giá trị cụ thể biến - Phương sai (variance) giá trị kỳ vọng bình phương độ lệch X so với giá trị trung bình Nói chung, phương sai "trung bình bình phươngkhoảng cách điểm liệu tới điểm trung bình" - Ma trận hiệp phương sai tập hợp m biến ngẫu nhiên ma trận vng hạng (mm), phần tử nằm đường chéo phương sai tương ứng biến này, phần tử cịn lại hiệp phương sai đơi hai biến ngẫu nhiên khác tập hợp - Trị riêng vectơ riêng: Cho Số gọi trị riêng ma trận tồn vectơ khác cho gọi vectơ riêng ma trận tương ứng với giá trị riêng - Chéo hóa ma trận: Ma trận vng gọi chéo hố tồn ma trận đường chéo ma trận khả nghịch cho 3.1.6 Các bước phân tích thành phần - Bước 1: Tính giá trị trung bình - Bước 2: + Tính vectơ + Tính ma trận hiệp phương sai: - Bước 3: Tìm trị riêng xếp theo giá trị giảm dần tìm vectơ riêng đơn vị ứng với trị riêng - Bước 4: Chọn trị riêng ban đầu vectơ riêng đơn vị ứng với trị riêng Lập ma trận có cột vectơ riêng chọn Ma trận phép biến đổi cần tìm - Bước 5: Tính ảnh vectơ Dữ liệu ban đầu xấp xỉ Mỗi cột chứa tọa độ hàng ma trận sở từ cột ma trận  Lưu ý - Ma trận ma trận đối xứng thực trị riêng số khơng âm - Ma trận ln chéo hóa trực giao được: + Trên đường chéo phương sai vectơ Phần tử hiệp phương sai + Tổng phần tử đường chéo phương sai bảng liệu Giả sử Trên đường chéo trị riêng - Ma trận ma trận trực giao Mỗi trực giao tương ứng với phép quay + Các cột ma trận tạo nên hệ trực chuẩn Nếu ta chọn sở trực chuẩn họ vectơ cột ma trận ta xây dựng hệ trục tọa độ dựa vectơ có phép quay từ hệ trục tọa độ ban đầu sang hệ trục tọa độ - Nếu liệu mẫu (sample data) - Nếu liệu dân số (population data) 3.2 ỨNG DỤNG Phân tích thành phần ứng dụng rộng rãi nhiều lĩnh vực chuyên môn như: kinh tế, sinh học, kỹ thuật,… - Kinh tế: Sử dụng tính tốn, dự đoán vĩnh vực chứng khoán cổ phiếu,… - Sinh học: Thống kế phân loại mã gen tế bào phức tạp,… - Kỹ thuật: Sử dụng thuật tốn đại như: nhận diện khn mặt,… CHƯƠNG ỨNG DỤNG CỦA PHÂN TÍCH THÀNH PHẦN CHÍNH TRONG GIẢM CHIỀU DỮ LIỆU - Giảm chiều liệu sử dụng cho giảm nhiễu (noise reduction), trực quan hóa liệu (data visualization), phân tích cụm, bước trung gian để tạo điều kiện thuận lợi cho phân tích khác - Giảm chiều liệu có ứng dụng phổ biến lĩnh vực có số lượng quan sát lớn số lượng biến lớn, chẳng hạn xử lí tín hiệu, nhận dạng tiếng nói , thơng tin học thần kinh, tin sinh học - Ví dụ: Khi có tập liệu lớn thành ma trận 3001000, tức có 1000 chiều (số cột) sử dụng phân tích thành phần thành 300800, 30010, Chọn vectơ riêng ứng với trị riêng lớn CHƯƠNG GIẢI BÀI TOÁN PCA BẰNG MATLAB 5.1 ĐOẠN CODE MATLAB CHẠY CHƯƠNG TRÌNH function[]=PCAt(X) disp('Ma tran Input:'); X = rand(5,3); disp([X]); Xm=mean(X); C=cov(X); [V,e]=eig(C); for i=1:size(e,1) for j=1:size(e,1) if e(i,j)~=0 E(i)=e(i,j); end end end K=input('Chon gia tri K = '); j=1; for i=size(V,2):-1:K A(:,j)=V(:,i); j=j+1; end Y=(X-Xm)*A; disp('Ma tran Output da giam chieu:'); disp([Y]); 5.2 VÍ DỤ Ví dụ 1: Cho ma trận ban đầu (53) 0.4898 0.4456 0.6463 0.7094 0.7547 0.2760 0.6797 0.6551 0.1626 0.1190 0.4984 0.9597 0.3404 0.5853 0.2238 Biểu diễn ma trận hình sau: Hình 5.1: Biểu diễn ma trận ban đầu Dùng code để giảm xuống hai chiều ta ma trận: -0.0436 0.5522 0.0349 -0.1229 -0.4206 -0.0728 -0.0660 0.3301 -0.1972 0.0059 Biểu diễn ma trận hình sau: Hình 5.2: Biểu diễn ma trận giảm chiều Ví dụ 2: Cho ma trận 109 0.5557 0.1662 0.1844 0.6225 0.2120 0.9879 0.0773 0.1704 0.9138 0.2578 0.7067 0.3968 0.5578 0.0740 0.3134 0.6841 0.4024 0.9828 0.4022 0.6207 0.1544 0.3813 0.1611 0.7581 0.8711 0.3508 0.6855 0.2941 0.5306 0.8324 0.5975 0.3353 0.2992 0.4526 0.4226 0.3596 0.5583 0.7425 0.4243 0.4294 0.1249 0.2405 0.2122 0.0244 0.7639 0.0985 0.2902 0.7593 0.8236 0.3175 0.7406 0.1750 0.6537 0.7437 0.1636 0.9569 0.1059 0.6660 0.9357 0.6816 0.8944 0.4579 0.4633 0.5166 Dùng code để giảm xuống thành chiều ta được: 0.0102 -0.2317 -0.8658 -0.3372 -0.1856 0.7779 -0.4413 -0.1373 0.3793 -0.1531 0.6830 -0.4475 0.6853 0.3136 -0.2652 0.2152 0.2995 -0.1780 -0.2182 0.2830 0.4154 -0.5933 0.1817 -0.1902  Kết quả: Hình 5.3: Kết sau giảm chiều 0.7027 0.1536 0.9535 0.5409 0.6797 0.0366 0.8092 0.7486 CHƯƠNG KẾT LUẬN - Mục đích phân tích thành phần rút thơng tin chủ yếu chứa bảng số liệu cách xây dựng biểu diễn đơn giản cho đám số liệu thể rõ Cụ thể hơn, phân tích thành phần tức tìm trục hay mặt phẳng “phản ánh” tốt nhất, trung thực đám mây điểm -biến, điểm - cá thể - PCA giúp giảm số chiều liệu liệu có q nhiều chiều thơng tin Do liệu ban đầu có số chiều lớn (nhiều biến) PCA giúp xoay trục tọa độ xây trục tọa độ đảm bảo độ biến thiên liệu giữ lại nhiều thông tin mà không ảnh hưởng tới chất lượng mô hình dự báo Trong khơng gian mới, có thẻ giúp khám phá thêm thông tin quý giá mà chiều thông tin cũ thông tin quý giá bị che TÀI LIỆU THAM KHẢO [1] Đại số Tuyến Tính – Đặng Văn Vinh Đại Học Quốc Gia TP Hồ Chí Minh, Trường Đại Học Bách Khoa, 2020 [2] Lập Trình Symbolic Trong Matlab - ThayHai DayCode Youtube:https://youtu.be/o-n9pIkKQxQ [3] Hướng Dẫn Vẽ Đồ Thị Trong Matlab - ThayHai DayCode Youtube:https://youtu.be/MHnkO3VBPps [4] Principal Component Analysis https://machinelearningcoban.com/2017/06/15/pca/ [5] Data Reduction and Regression Using Principal Component Analysis http://www.scielo.org.mx/scielo.php?script=sci_arttext&pid=S187090442016000100031 [6] Tạp Chí Khoa Học ĐHQGHN - Phạm Văn Huấn, Khoa học tự nhiên công nghệ số 28

Ngày đăng: 23/05/2023, 15:24

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w