Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Ứng dụng PCA giảm chiều dữ liệu, Study Guides, Projects, Research of Applied Mathematics

This document give the theory and aplication of PCA method in matrix

Typology: Study Guides, Projects, Research

2022/2023

Uploaded on 11/13/2023

quoc-bao-nguyen-1
quoc-bao-nguyen-1 🇻🇳

1 document

1 / 17

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC VÀ ỨNG DỤNG
BÁO CÁO BÀI TẬP LỚN
MÔN ĐẠI SỐ TUYẾN TÍNH
ĐỀ TÀI 11 :
PHÂN TÍCH THÀNH PHẦN CHÍNH
( PCA: PRINCIPAL COMPONENT ANALYSIS )
ĐỂ GIẢM CHIỀU DỮ LIỆU
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download Ứng dụng PCA giảm chiều dữ liệu and more Study Guides, Projects, Research Applied Mathematics in PDF only on Docsity!

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA

KHOA KHOA HỌC VÀ ỨNG DỤNG

BÁO CÁO BÀI TẬP LỚN MÔN ĐẠI SỐ TUYẾN TÍNH ĐỀ TÀI 11: PHÂN TÍCH THÀNH PHẦN CHÍNH ( PCA: PRINCIPAL COMPONENT ANALYSIS ) ĐỂ GIẢM CHIỀU DỮ LIỆU

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA

KHOA KHOA HỌC VÀ ỨNG DỤNG

BÁO CÁO BÀI TẬP LỚN ĐỀ TÀI 11: PHÂN TÍCH THÀNH PHẦN CHÍNH PCA ( PCA: PRINCIPAL COMPONENT ANALYSIS ) ĐỂ GIẢM CHIỀU DỮ LIỆU

LỜI MỞ ĐẦU

Đại số tuyến tính là môn học có tầm quan trọng đối với sinh viên ĐH

Bách Khoa TPHCM nói riêng và sinh viên các ngành khối khoa học

kỹ thuật – công nghệ nói chung. Do đó, việc dành cho môn học này

một khối lượng thời gian nhất định và thực hành là điều tất yếu để

giúp cho sinh viên có được cơ sở vững chắc về các môn KHTN và

làm tiền đề để học tốt các môn khác trong chương trình đào tạo.

Trong suốt quá trình thực hiện bài tập lớn nói trên, nhóm chúng em

đã nhận được rất nhiều sự quan tâm và ủng hộ, giúp đỡ tận tình của

thầy cô, anh chị và bạn bè. Ngoài ra, nhóm cũng xin gửi lời tri ân

chân thành đến Thầy Đặng Văn Vinh, là giảng viên và cũng là người

hướng dẫn nhóm em trong đề tài này. Nhờ có thầy hết lòng chỉ bảo

mà nhóm đã hoàn thành tiểu luận đúng tiến độ và giải quyết tốt

những vướng mắc gặp phải. Sự hướng dẫn của thầy đã là chìa khóa

cho mọi hành động của nhóm và phát huy tối đa được mối quan hệ

hỗ trợ giữa thầy và trò trong môi trường giáo dục.

Lời cuối, xin một lần nữa gửi lời biết ơn sâu sắc đến các cá nhân, các

thầy cô đã dành thời gian chỉ dẫn cho nhóm. Đây chính là niềm tin,

nguồn động lực to lớn để nhóm có thể đạt được kết quả này.

Mục lục

Chương 1: Mở đầu :.............................................. 8

1. Sơ lược về đề tài

2. Yêu cầu

3. Điều kiện

4. Nhiệm vụ

Chương 2: Cơ sở lý thuyết:

1. Khái niệm cơ bản: ....................... 9

2. Áp dụng vào đề tài: ..................... 9

3. Các bước tiến hành PCA: ……… 11

Chương 3: Ứng dụng thực tế:

1. Giới thiệu: ….…………………... 13

2. Thực tiễn: ………………………. 14

Chương 4: Kết luận: …………………………….. 16

Chương 1: Mở đầu 1.1-Sơ lược về Dimensionality Reduction ( giảm chiều dữ liệu ): Dimensionality Reduction (giảm chiều dữ liệu), là một trong những kỹ thuật quan trọng trong Machine Learning. Các feature vectors trong các bài toán thực tế có thể có số chiều rất lớn, tới vài nghìn. Ngoài ra, số lượng các điểm dữ liệu cũng thường rất lớn. Nếu thực hiện lưu trữ và tính toán trực tiếp trên dữ liệu có số chiều cao này thì sẽ gặp khó khăn cả về việc lưu trữ và tốc độ tính toán. Vì vậy, giảm số chiều dữ liệu là một bước quan trọng trong nhiều bài toán. Đây cũng được coi là một phương pháp nén dữ liệu. Dimensionality Reduction, nói một cách đơn giản, là việc đi tìm một hàm số, hàm số này lấy đầu vào là một điểm dữ liệu ban đầu (^) x ∈ RD^ với D rất lớn, và tạo ra 1 điểm dữ liệu mới z ∈ RK^ có số chiều K < D. Phương pháp đơn giản nhất trong các thuật toán Dimensionality Reduction dựa trên một mô hình tuyến tính, có tên là Principal Component Analysis (PCA) , tức Phân tích thành phần chính. Phương pháp này dựa trên quan sát rằng dữ liệu thường không phân bố ngẫu nhiên trong không gian mà thường phân bố gần các đường/mặt đặc biệt nào đó. 1.2-Yêu cầu đề tài: 1/ Nêu cơ sở lý thuyết của phân tích thành phần chính (PCA: principle component analysis). 2/ Ứng dụng của phân tích PCA để giảm chiều dữ liệu. 1.3- Điều kiện:

 Sinh viên cần có kiến thức về bộ môn Đại số tuyến tính nói chung và hiểu biết cơ bản về phép phân tích thành phần chính trong machine learning nói riêng.  Tìm hiểu các ứng dụng phân tích thành phần chính PCA thực tiễn. 1.4- Nhiệm vụ:  Tìm hiểu về cơ sở lý thuyết nền tảng của thuật toán PCA.  Không nhất thiết phải dùng matlab để minh họa, nhưng phải có ít nhất 1 ví dụ thực tế. Chương 2: Cơ sở lý thuyết 2.1-Khái niệm cơ bản: Phương pháp phân tích thành phần chính ( PCA ) là phương pháp biến đổi từ m ột không gian nhiều chiều thành một không gian mới ít chiều, cụ thể là giảm chiều dữ liệu từ D về K < D là chỉ giữ lại K là phần tử quan trọng nhất. Tuy nhiên, việc làm này chắc chắn chưa phải tốt nhất vì chúng ta chưa biết xác định thành phần nào là quan trọng hơn. Hoặc trong trường hợp xấu nhất, lượng thông tin mà mỗi thành phần mang là như nhau, bỏ đi thành phần nào cũng dẫn đến việc mất một lượng thông tin lớn. Tuy nhiên, nếu chúng ta có thể biểu diễn các vector dữ liệu ban đầu trong một hệ cơ sở mới cái mà có tầm quan trọng giữa các thành phần là khác nhau rõ rệt, thì chúng ta có thể bỏ qua những thành phần ít quan trọng nhất. Mục tiêu của chúng ta là tìm ra K chiều mà có thể đảm bảo rằng các dữ liệu khi được biểu diễn, không bị trùng lắp không bị mất mát thông tin ( tách biệt nhau hoàn toàn ) 2.2- Áp dụng lí thuyết để phân tích đề tài: PCA là phương pháp biến đổ i giúp giảm số lượng lớn các biến có tương quan với nhau thành tập ít các biến sao cho các biến mới tạo ra là tổ hợp tuyến tính của những biến cũ không có tương quan lẫn nhau. Ví dụ, chúng ta có 1000 biến ban đầu có tương quan tuyến tính với nhau, khi đó chúng ta sử dụng phương pháp PCA xoay chiều không gian cũ thành chiều không gian mới mà ở đó chỉ còn 10 biến không có tương quan tuyến tính mà vẫn dữ được nhiều nhất lượng thông tin t ừ nhóm biến ban đầu.

 Trong không gian mới, có thể giúp chúng ta khám phá thêm những thông tin quý giá mới khi mà tại chiều thông tin cũ những thông tin quý giá này bị che mất (Điển hình cho ví dụ về chú lạc đà phía trên). Và một số hạn chế của PCA:  Chỉ làm việc với dữ liệu numeric.  Nhạy cảm với các điểm outlier ( điểm dị biệt có thể làm méo mó tính chuẩn hóa của các dữ liệu ).  Không phù hợp với các mô hình phi tuyến, do PCA hoàn toàn dựa trên các biến đổ i tuyến tính.

2. 3 - Các bước tiến hành PCA: Phương pháp PCA sẽ "chiếu" (biểu diễn) dữ liệu đa chiều lên một không gian có cơ sở trực giao thức, nếu ta xem mỗi cơ sở trong không gian mới là một biến thì hình ảnh của dữ liệu gốc trong không gian mới này sẽ được biểu diễn thông qua các biến độc lập tuyến tính. Vấn đề là nếu chuyển dữ liệu ban đầu sang không gian mới thì những thông tin đáng quan tâm của dữ liệu ban đầu liệu có bị mất? Để giải quyết vấn đề này phương pháp PCA sẽ tìm không gian mới với tiêu chí cố gắng phản ánh được càng nhiều thông tin gốc càng tốt và thước đo cho khái niệm "thông tin" ở đây là phương sai. Một điểm hay nữa là các biến trong không gian mới độc lập nên ta có thể tính toán được tỷ lệ giải thích phương sai của từ ng biến mới đối với dữ liệu điều này cho phép ta cân nhắc việc chỉ dùng số ít các biến để giải thích dữ liệu. Nói 1 cách ngắn gọn, mục tiêu của phương pháp PCA là tìm 1 không gian mới ( với số chiều nhỏ hơn không gian cũ ). Các trục tọa độ trong không gian mới được xây dựng sao cho trên mỗi trục, độ biến thiên dữ liệu là lớn nhất có thể ( maximize the variability ). Bước 1. Tính giá trị trung bình X^ của X Bước 2. Tính véctơ ^ X = XX. Tính ma trận hiệp phương sai: S =^ 1 N − 1

^ XT^ ^ X .

Bước 3. Tìm trị riêng của S^ và sắp xếp theo giá trị giảm dần λ 1 > λ 2 > > λm và tìm các véctơ riêng đơn vị ứng với các trị riêng. Bước 4. Chọn k^ trị riêng ban đầu và k^ véctơ riêng đơn vị ứng với các trị riêng này. Lập ma trận A có các cột là các véctơ riêng đã chọn. Ma trận A là phép biến đ ổ i cần tìm. Bước 5. Tỉnh ảnh (^) AT^ ^ XT^ của véctơ ^ X. Dữ liệu X^ ban đầu được xấp xỉ bởi X ≈ A ^ X + X.

Mỗi cột của (^) A ^ XT^ chứa tọa độ của các hàng của ma trận ấy trong cơ sở t ừ các cột của ma trận P. Lưu ý: 1/ Ma trận S^ là ma trận đối xứng thực và các trị riêng của S^ là các số thực không âm. 2/ Ma trận S^ luôn chéo hóa trực giao được. 3/ Trên đường chéo của S^ là phương sai của các véctơ x 1 ;^ x 2 ;^ …;^ x^ N Phần tử sij , là hiệp phương sai của xix^ j. Tổ ng các phần tử trên đường chéo của S là phương sai của bảng dữ liệu. Giả sử S = PD P T

. Trên đường chéo của D^ là các giá trị riêng của S. Tổ ng các giá trị riêng của S^ bằng tổ ng các phần tử của S^ (bằng vết của S ). 4/ Ma trận P^ là ma trận trực giao. Mỗi ma trận trực giao tương ứng với một phép quay. Các cột của ma trận P^ tạo nên hệ trực chuẩn. Nếu ta chọn cơ sở trực chuẩn là họ véctơ cột của ma trận P , thì ta xây dựng được hệ trục tọa độ mới dựa trên các véctơ này và có một phép quay từ hệ trục ban đầu sang hệ trục tọa độ mới. 5/ Nếu dữ liệu mẫu (sample data), thì S =^ 1 N − 1 ^ X T (^) ^ X.

3.1- Giới thiệu:

PCA ( Principal Component Analysis ), các components ( thành phần ) ở đây ta nói thực chất là các vectors độc lập tuyến tính được chọn sao cho khi chiếu các điểm dữ liệu lên vector đó thì các điểm dữ liệu có sự variance lớn nhất ( biến động nhiều nhất, phương sai lớn nhất). Để trực quan hơn chúng ta đi đến ví dụ như hình bên, chúng ta chọn 2 vector component theo thứ tự: 1st Comp sẽ có mức độ variance lớn nhất, ta chọn trước, sau đó đến 2nd Comp…. và cứ thế. Khi làm thực tế chúng ta sẽ cần xác định hoặc thử sai xem sẽ chọn bao nhiêu components là hợp lý và mang lại kết quả tốt nhất. Xét một cách nhìn khác thì PCA cũng là một bài toán chuyển hệ tọa độ như hình dưới: Ví dụ sau đây sẽ giải thích lý do tại sao chúng ta cần chọn thành phần để dữ liệu có độ biến thiên phương sai nhiều nhất :

Xét bài toán phân loại : Ung thư/ Không ung thư, Spam/Normal…. Bây giờ nếu chúng ta chọn một thành phần mà chiếu lên đó các điểm dữ liệu không có phương sai lớn, nó sẽ đè lên nhau và co cụm lại một chỗ => không trực quan và khó phân loại. Nói cách khác là làm sao tìm được đường hay mặt phẳng chia tách các dữ liệu đó thành hai phần khác nhau cho hai loại khác nhau. Do đó, ta phải chọn thành phần sao cho khi chiếu data lên comp đó thì nó có phương sai lớn nhất.

3. 2 - Thực tiễn:

 Tài chính định lượng:

Trong tài chính định lượng, phân tích thành phần chính có thể được áp dụng trực tiếp vào việc quản lý rủi ro của các danh mục đầu tư phát sinh lãi suất. Giao dịch nhiều công cụ hoán đổ i thường là một chức năng của 30–500 công cụ hoán đ ổ i có thể định giá trên thị trường được tìm cách giảm xuống thường là 3 hoặc 4 thành phần chính, thể hiện đường đi của lãi suất trên cơ sở vĩ mô. Việc chuyển đ ổ i rủi ro được thể hiện dưới dạng các rủi ro thành hệ số tải (hoặc hệ số nhân) cung cấp các đánh giá và hiểu biết vượt ra ngoài khả năng sẵn có để chỉ đơn giản là xem xét chung các rủi ro đối với nhóm 30–500 riêng lẻ.

 Khoa học thần kinh:

Một biến thể của phân tích các thành phần chính được sử dụng trong khoa học thần kinh để xác định các thuộc tính cụ thể của một kích thích làm tăng xác suất tạo ra điện thế hoạt động của tế bào thần kinh. Kỹ thuật này được gọi là phân tích hiệp phương sai kích hoạt tăng đột biến. Trong một ứng dụng điển hình, người thử nghiệm trình bày quá trình tiếng ồn trắng như một tác nhân kích thích (thường là đầu vào cảm giác cho đối tượng thử nghiệm hoặc như một dòng điện được tiêm trực tiếp vào tế bào thần kinh) và ghi lại một chuỗi các điện thế hoạt động, hoặc các gai, kết quả là do tế bào thần kinh tạo ra. Có lẽ, một số đặc điểm của kích thích làm cho tế bào thần kinh có nhiều khả năng tăng đột biến. Để trích xuất các tính năng này, người thử nghiệm tính toán ma trận hiệp phương sai của nhóm được kích hoạt tăng đột biến , tập hợp tất cả các kích thích (được xác định và tùy ý trong một khoảng thời gian hữu hạn, thường là theo thứ tự 100 ms) ngay trước khi tăng đột biến. Các dấu hiệu riêng của sự khác biệt giữa ma trận hiệp phương sai được kích hoạt tăng đột biến và ma trận hiệp phương sai của tập hợp kích thích trước đó (tập hợp tất cả các kích thích, được xác định trong cùng một khoảng thời gian dài) sau đó chỉ ra các hướng trong không gian của các kích thích cùng với phương sai của nhóm kích thích tăng đột biến khác nhiều nhất so với phương sai của nhóm kích thích trước đó. Cụ thể, các eigenvectors có giá trị dương lớn nhất tương ứng với các hướng mà phương sai của nhóm được kích hoạt tăng đột biến cho thấy sự thay đ ổ i tích cực lớn nhất so với phương sai của nhóm trước đó. Vì đây là những hướng thay đ ổ i kích thích dẫn đến tăng đột biến, chúng thường là những ước tính tốt của các đặc điểm kích thích có liên quan được tìm kiếm.

ơn các thầy cô đã tạo điều kiện cho chúng em có cơ hội để được làm việc và phát triển cùng nhau, giúp đỡ nhau cùng tiến bộ trong con đường học tập. Tài liệu tham khảo: [1] Bộ môn Toán ứng dụng – Khoa Khoa học Ứng dụng: Giáo trình Đại số tuyến tính (Tài liệu lưu hành nội bộ), trường ĐH Bách Khoa – ĐH Quốc gia TPHCM, 20 20. [2]:https://machinelearningcoban.com/2017/06/15/pca/#241-d-liu-mt-chiu [3]:https://en.wikipedia.org/wiki/ Principal_component_analysis#PCA_and_information_theory [4]:https://rpubs.com/vudt1993/ [5]:https://tuanvanle.wordpress.com/2013/12/25/phuong-phap-phan-tich-thanh-phan- chinh-principal-component-analysis-pca/ [6]:https://www.miai.vn/2021/04/22/principal-component-analysis-pca-tuyet-chieu-giam- chieu-du-lieu/