Phương pháp này sử dụng kỹthuật giảm chiều để biến đổi các ảnh khuôn mặt thành một không gian mới, trong đó cácthành phần chính là những vector riêng của ma trận hiệp phương sai của tập
Trang 1ĐẠI HỌC QUỐC QIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Thành phố Hồ Chí Minh – 2024
Trang 2LỜI MỞ ĐẦU
Nhận diện khuôn mặt là một trong những ứng dụng quan trọng của xử lý ảnh và học máy
Nó có thể được sử dụng trong nhiều lĩnh vực như an ninh, giáo dục, y tế, giải trí, v.v Tuynhiên, nhận diện khuôn mặt cũng gặp nhiều thách thức như biến đổi ánh sáng, góc nhìn,biểu cảm, kính, râu, v.v Do đó, cần có những phương pháp hiệu quả để trích xuất và so sánhcác đặc trưng của khuôn mặt Một trong những phương pháp phổ biến nhất là phương phápphân tích thành phần chính (PCA), còn được gọi là Eigenface Phương pháp này sử dụng kỹthuật giảm chiều để biến đổi các ảnh khuôn mặt thành một không gian mới, trong đó cácthành phần chính là những vector riêng của ma trận hiệp phương sai của tập dữ liệu Bằngcách này, phương pháp PCA có thể giảm số lượng dữ liệu cần xử lý, đồng thời giữ lại nhữngthông tin quan trọng nhất về khuôn mặt Trong bài viết này, chúng tôi sẽ trình bày cơ sở lýthuyết và cách thực hiện của phương pháp PCA trong nhận diện khuôn mặt, cũng như đánhgiá hiệu suất của nó trên một số tập dữ liệu khác nhau
Mặc dù đã có rất nhiều cố gắng, nhưng bài báo cáo này cũng còn nhiều vấn đề chưa thể đềcập hết hoặc còn thiếu sót ở một mức độ nào đó Chúng tôi rất mong nhận được sự góp ý xâydựng và phê bình chân thành của giáo viên và các bạn đọc
Chân thành cảm ơn những ý kiến đóng góp của quý bạn đọc!
TP Hồ Chí Minh, tháng 1 năm 2023
Trang 3Lời cuối, nhóm chúng em xin một lần nữa gửi lời cảm ơn sâu sắc đến thầy cô và mọi người
đã 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
Chân thành cảm ơn sự giúp đỡ của mọi người rất nhiều!
TP Hồ Chí Minh, tháng 1 năm 2023
Trang 4MỤC LỤC
LỜI MỞ ĐẦU 1
LỜI CẢM ƠN 2
MỤC LỤC 3
PHẦN I 6
TỔNG QUAN VỀ HỆ THỐNG NHẬN DIỆN KHUÔN MẶT 6
1 Hệ thống Sinh trắc học 6
1.1 Định nghĩa 6
1.2 Tổng quan lịch sử và vai trò 6
1.2.1 Lịch sử 6
1.2.2 Vai trò 7
2 Hệ thống nhận diện khuôn mặt 8
2.1 Các pha trong Hệ thống nhận diện khuôn mặt 8
2.2 Phương pháp nhận diện khuôn mặt 8
2.3 Ưu điểm và Nhược điểm 15
PHẦN II 17
THUẬT TOÁN PCA TRONG NHẬN DIỆN KHUÔN MẶT 17
1 Thuật toán PCA 17
1.1 Lịch sử ra đời 17
1.2 Tổng quan về phương pháp PCA 18
1.3 Ứng dụng 19
1.4 Cơ sở lí thuyết 20
2 Thuật toán PCA trong Nhận diện khuôn mặt 22
2.1 Các bước dùng PCA để Nhận diện khuôn mặt 24
2.2 Ưu điểm và Nhược điểm 27
PHẦN III 29
ỨNG DỤNG THUẬT TOÁN PCA TRONG NHẬN DIỆN KHUÔN MẶT BẰNG PHẦN MỀM MATLAB 29
1 Tổng quan về Phần mềm MatLab 29
Trang 52 Sơ đồ khối hoạt động của chương trình Nhận diện khuôn mặt 30
3 Chương trình Nhận diện khuôn mặt bằng Phần mềm MatLab 31
PHẦN IV 46
TÀI LIỆU THAM KHẢO 46
Trang 6PHẦN I TỔNG QUAN VỀ HỆ THỐNG NHẬN DIỆN KHUÔN MẶT
1 Hệ thống Sinh trắc học
1.1 Định nghĩa
- Biometric (sinh trắc học) được mượn từ tiếng hy lạp Trong đó Bio nghĩa là life (sự sống)
còn metricos là measuring (đo lường) Sinh trắc học là một lĩnh vực nghiên cứu và ứngdụng các phương pháp đo lường và phân tích liên quan đến các đặc điểm sinh học và hành
vi của con người Lĩnh vực này sử dụng các công nghệ tiên tiến như cảm biến sinh học, hìnhảnh y học, và các kỹ thuật đo lường khác để thu thập dữ liệu về các chỉ số sinh học, như nhịptim, hoạt động não, và nhiệt độ cơ thể Sinh trắc học không chỉ giúp chúng ta hiểu rõ hơn về
cơ thể con người mà còn có ứng dụng trong nhiều lĩnh vực khác nhau như y học, thể thao,
và công nghiệp
1.2 Tổng quan lịch sử và vai trò
- Kể từ khi công nghệ phát triển rất nhanh và mạnh trong những thập kỉ gần đây đòi hỏi con
người ta phải tìm ra một thứ gì đó đáng tin cậy trong việc bảo mật thông tin và dữ liệu vàgiúp xác định danh tính Sinh trắc học là một ứng cử viên sáng giá đã giúp con người giảiquyết bài toán trên
1.2.1 Lịch sử
Hình 1: Dấu vân tay in trên phiến đất sét ở Babylon
Trang 7- Sinh trắc học là một ngành khoa học đã tồn tại từ thời xa xưa Từ này được W Whewell sử
dụng vào khoảng năm 1831 để nghiên cứu về tuổi thọ của những người mà ông nghiên cứu.Sau đó, sinh trắc học mà F Galton gọi là Biometrika được hình thành và định nghĩa vàokhoảng năm 1901
- Việc sử dụng sinh trắc học như một phương tiện xác thực có nguồn gốc từ thời Babylon.Theo các bằng chứng nghiên cứu, dấu vân tay được sử dụng trên các viên đất sét trong cácgiao dịch kinh doanh ở Babylon vào năm 500 trước Công nguyên Ngoài ra, các thương giaTrung Quốc vào thế kỷ XIV đã sử dụng lòng bàn tay và dấu chân của trẻ em để nhận dạngchúng
- Vào năm 1880, dấu vân tay đã được coi là một sinh trắc học đáng tin cậy và quan trọng.
Như Henry Faulds đã viết trong Nature: “Khi có dấu vết máu hoặc ấn tượng trên đất sét,kính, v.v., chúng có thể dẫn đến việc xác định khoa học của tội phạm Tôi đã có kinh nghiệmtrong hai trường hợp như vậy… Không thể nghi ngờ về sự tiến bộ khi có, ngoài ảnh của họ,một bản sao tự nhiên của những rãnh vân tay không bao giờ thay đổi của những tội phạmquan trọng.”
- Sự tiến bộ của công nghệ đã thay đổi từ việc lăn tay trên mực và lưu trữ trên giấy sang quéttrên máy và lưu trữ kỹ thuật số và được xử lí nhận dạng tự động thay vì thủ công như ngàytrước Đồng thời cho phép con người tiếp cận nhiều hơn tới các loại hình sinh trắc học khácthay vì chỉ vân tay như ngày trước Trong đó tiêu biểu có thể kể đến nhận diện khuôn mặt
1.2.2 Vai trò
- Xác thực danh tính: Sinh trắc học là một phương pháp xác thực danh tính an toàn và đángtin cậy hơn các phương pháp truyền thống như mật khẩu, thẻ thông tin hoặc mã pin Các đặcđiểm sinh học của con người là duy nhất và không thể thay đổi, do đó, sinh trắc học có thểgiúp ngăn chặn gian lận và truy cập trái phép
- Quản lý truy cập: Sinh trắc học có thể được sử dụng để quản lý truy cập vào các hệ thống,tài sản hoặc khu vực Ví dụ, sinh trắc học có thể được sử dụng để mở khóa điện thoại, máytính hoặc cửa văn phòng
Trang 8- Thận trọng: Sinh trắc học có thể được sử dụng để phát hiện và ngăn chặn hành vi phạm tội.
Ví dụ, sinh trắc học có thể được sử dụng để xác định các tội phạm hoặc truy tìm nhữngngười mất tích
- Chăm sóc sức khỏe: Sinh trắc học có thể được sử dụng để theo dõi sức khỏe và bệnh tật Ví
dụ, sinh trắc học có thể được sử dụng để phát hiện sớm các bệnh, theo dõi hiệu quả của cácphương pháp điều trị hoặc nhận dạng các cá nhân bị mất trí nhớ
2 Hệ thống nhận diện khuôn mặt
2.1 Các pha trong Hệ thống nhận diện khuôn mặt
2.2 Phương pháp nhận diện khuôn mặt
- Phương pháp nhận diện khuôn mặt đã trải qua nhiều giai đoạn phát triển từ khi được giới
thiệu vào những năm 1960 Woodrow Wilson Bledsoe được coi là người tiên phong tronglĩnh vực này khi phát triển một hệ thống phân loại ảnh khuôn mặt thông qua một thiết bịnhập liệu máy tính đồ họa Bledsoe đã ghi lại thủ công các toạ độ vị trí của các đặc điểmkhuôn mặt như miệng, mũi, mắt và thậm chí là đường viền tóc Dựa trên cơ sở dữ liệu về cáckhuôn mặt đã được ghi lại, người ta sau đó sẽ so sánh các bức ảnh mới với cơ sở dữ liệu đã
có để xác định những người có sự giống nhau gần nhất dựa trên ảnh đầu vào
Hình 2: Quy trình nhận diện khuôn mặt (Techniques and Challenges of Face Recognition: A Critical Review
by Shilpi Singh & a,S.V.A.V.Prasad )
Trang 9- Tuy nhiên, phương pháp này gặp phải nhiều hạn chế do công nghệ của thời đại đó không
đủ mạnh để đáp ứng yêu cầu tính toán phức tạp Phương pháp nhận diện khuôn mặt đã đượccải tiến dần dần trong suốt thập kỷ 1970 nhưng chủ yếu vẫn là quá trình tính toán thủ công.Phải đến cuối thập kỷ 80 và đầu thập kỷ 90, những phát triển đáng kể mới được thực hiệntrong lĩnh vực nhận diện khuôn mặt dưới dạng một ứng dụng của đại số tuyến tính Phươngpháp này, được biết đến với tên gọi Eigenface , đã được Sirovich và Kirby áp dụng và bắtđầu từ một biểu diễn hình ảnh khuôn mặt ở chiều không gian thấp
- Các phương pháp kỹ thuật công nghệ nhận diện khuôn mặt ngày nay được nghiên cứu vàphát triển dựa trên cách tiếp cận và xử lý thông tin dữ liệu:
A Template/Statistical/Neural Networks based (Cách tiếp cận dựa trên mẫu/thống
kê/mạng thần kinh)
Đây là hướng tiếp cận phổ biến nhất với nhiều công cụ và phương pháp khác nhau như:
Template matching (Đối sánh mẫu)
Đối sánh mẫu là kỹ thuật xử lý ảnh kỹ thuật số để tìm các phần nhỏ của ảnh khớp vớiảnh mẫu Trong đối sánh mẫu, các đặc trưng được thể hiện bằng mẫu (sample), môhình, pixel, kết cấu, v.v Chức năng nhận dạng thường là một phép tính tương quanhoặc khoảng cách
Nhược điểm: phụ thuộc nhiều vào các yếu tố ngoại cảnh như sự thay đổi của ánhsáng, góc chụp, tương phản màu sắc, tư thế chụp, bị che khuất một phần
Trang 10(Source: OpenCV)
Statistical Approach (Phương pháp tiếp cận thống kê)
- Trong cách tiếp cận thống kê, các mẫu được biểu thị dưới dạng các đặc trưng Mỗi hìnhảnh đại diện liên quan đến một đặc trưng Vì vậy, mục tiêu là lựa chọn và áp dụng công
cụ thống kê phù hợp để khai thác và phân tích Có nhiều công cụ thống kê được sử dụng
để nhận dạng khuôn mặt, bao gồm:
PCA (Principal Component Analysis – Phân tích thành phần chính)
- Là một thuật toán thống kê sử dụng phép 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 3chiều) nhằm tối ưu hóa việc thể hiện sự biến thiên của dữ liệu
Trang 11(Source: Vinbigdata)
LDA (Linear discriminant analysis – Phân tích phân biệt tuyến tính)
- LDA được sử dụng rộng rãi để tìm ra sự kết hợp tuyến tính của các đặc trưng trong khivẫn bảo toàn khả năng phân tách lớp Không giống như PCA, LDA cố gắng mô hình hóa
sự khác biệt giữa các cấp độ Đối với mỗi cấp độ, LDA thu được sự khác biệt trong vectơchiếu
- Trong nhận dạng khuôn mặt trên máy vi tính , mỗi khuôn mặt được biểu thị bằng một
số lượng lớn các giá trị pixel Phân tích phân biệt tuyến tính (LDA) chủ yếu được sửdụng ở đây để giảm số lượng đặc điểm xuống con số dễ quản lý hơn trước khi phân loại.Mỗi chiều mới là sự kết hợp tuyến tính của các giá trị pixel, tạo thành một mẫu
Trang 12(Source: Vinbigdata)
DCT (Discrete cosine transform – Biến đổi cosin rời rạc)
- Phương pháp này biểu thị một loạt các điểm dữ liệu liên quan đến tổng các hàm cosin
và các tần số dao động khác nhau DCT dựa trên biến đổi rời rạc Fourier do đó, bằngcách nén các biến thể, nó có thể sử dụng để biến đổi hình ảnh và cho phép giảm chiềuhiệu quả
Gabor wavelet
- Bộ lọc Gabor có khả năng phân tích hình ảnh tương tự hệ thống thị giác của con người,chủ yếu dựa vào việc chủ động kiểm soát hướng của cạnh để trích xuất đặc trưng Các tếbào đơn giản trong vỏ não thị giác có thể được xem như một họ các wavelets 2D Gabor
tự giống nhau
Trang 13(Source: Vinbigdata)
ICA (Independent Component Analysis – Phân tích thành phần độc lập)
- Khác với PCA là tìm kiếm các mối tương quan từ đó tối đa hóa phương sai để tái cấutrúc dữ liệu thì ICA là một phương pháp thay thế nhằm mục đích biến đổi dữ liệu dướidạng kết hợp tuyến tính của điểm dữ liệu độc lập về mặt thống kê Do đó, mục tiêu của
nó là cung cấp một biểu diễn hình ảnh độc lập thay vì tương quan
Kernel PCA
- Là phần mở rộng của PCA bằng cách sử dụng phương pháp hạt nhân (kernel method)
để thực hiện PCA phi tuyến tính Phương pháp luận cơ bản của nó là áp dụng ánh xạ phituyến cho đầu vào và sau đó giải một PCA tuyến tính trong không gian con đặc trưng thuđược
Neural Networks (Mạng thần kinh)
Trang 14- Mạng thần kinh tiếp tục sử dụng kĩ thuật nhận dạng và phân loại mẫu một mạng ron có thể được sử dụng để nhận dạng các khuôn mặt đã căn chỉnh và chuẩn hóa Cónhiều phương pháp khác nhau hỗ trợ trích xuất đặc trưng bằng mạng nơ-ron Cácphương pháp này, kết hợp với các công cụ như PCA hoặc LCA, tạo ra một bộ phân loạikết hợp để nhận dạng khuôn mặt như:
nơ- Mạng thần kinh với bộ lọc Gabor
Mạng thần kinh với mô hình Markov ẩn
Mạng thần kinh mờ
B Geometric Based/ Template Based (Cách tiếp cận dựa trên hình học/ khuôn mẫu)
Các phương pháp dựa trên khuôn mẫu có thể được xây dựng bằng cách sử dụng cáccông cụ như:
SVM (Support Vector Machines)
PCA (Principal Component Analysis – Phân tích thành phần chính)
LDA (Linear Discriminant Analysis – Phân tích phân biệt tuyến tính)
Trang 15- Nhiều nhà nghiên cứu tiếp cận theo cách cố gắng suy ra các đặc điểm phù hợp nhất trong
mối quan hệ giữa các thành phần hoặc giữa một thành phần với toàn bộ khuôn mặt Một sốphương pháp tiêu biểu trong cách tiếp cận này là:
Sử dụng kết hợp nhiều yếu tố khác nhau
Hidden Markov Model (Mô hình Markov ẩn)
D Appearance-Based/Model-Based (Cách tiếp cận dựa trên hình dáng/mô hình)
Dựa trên hình dáng: các nhà nghiên cứu kết hợp phương pháp hình thái học với phântích mô hình machine learning để xác định trực tiếp vị trí của các vùng có khuôn mặt.Mỗi hình ảnh được xem như một vector nhiều chiều Phương pháp dựa trên hình dáng
có thể được phân thành 2 loại là tuyến tính và phi tuyến tính:
Phương pháp tiếp cận tuyến tính: PCA, LDA, ICA, …
Phương pháp tiếp cận phi tuyến tính: Kernel PCA, …
Dựa trên mô hình: các nhà nghiên cứu hướng tới việc mô hình hóa một khuôn mặt tạo ramột mẫu mô hình với các thông số được sử dụng để nhận dạng hình ảnh Phương phápdựa trên mô hình được phân thành 2 loại:
2D Ex-Elastic Bunch Graph Matching (Đối sánh đồ thị co giãn đàn hồi 2D)
3D Ex-Elastic Bunch Graph Matching (Đối sánh đồ thị co giãn đàn hồi 3D)
2.3 Ưu điểm và Nhược điểm
a Ưu điểm
- Nhận diện khuôn mặt có ưu điểm là nhanh và nhạy Đối với các hệ thống bậc cao
còn có thể nhận diện xuyên qua lớp khẩu trang hay khi đã trang điểm (Face ID đã được ứng dụng trên các sản phẩm của apple) Không đòi hỏi người dùng phải làm quá nhiều thao tác để có thể sử dụng Ngoài ra còn có thể nhận diện nhiều nhóm người cùng lúc.
b Nhược điểm
Trang 16- Điểm hạn chế của hệ thống nhận diện khuôn mặt là nó kém chính xác hơn so với vân tay đặc biệt ở các hệ thống chỉ sử dụng công nghệ quét 2D có thể dễ dàng bị làm giả Chi phí của hệ thống nhận diện khuôn mặt cũng tốn kém hơn do nó phải sử dụng thêm một cảm biến camera để có thể quét
2.4 Ứng dụng của hệ thống nhận diện khuôn mặt
- Hệ thống nhận diện khuôn mặt đang được sử dụng rộng rãi trong nhiều lĩnh vực khácnhau Dưới đây là một số ứng dụng tiêu biểu:
An ninh và giám sát: Hệ thống nhận diện khuôn mặt được sử dụng để xác định danhtính của một người, giúp cải thiện an ninh và giám sát
Điện thoại di động và thiết bị di động khác: Các thiết bị di động như điện thoại thôngminh và máy tính bảng sử dụng công nghệ nhận diện khuôn mặt để mở khóa mànhình
Mạng xã hội: Các nền tảng mạng xã hội như Facebook sử dụng công nghệ nhận diệnkhuôn mặt để gắn thẻ người dùng trong các bức ảnh
Y tế: Trong y tế, công nghệ nhận diện khuôn mặt được sử dụng để theo dõi tình trạngsức khỏe và phát hiện các dấu hiệu của bệnh tật
Quảng cáo và tiếp thị: Công nghệ nhận diện khuôn mặt cũng được sử dụng trongquảng cáo để xác định giới tính, độ tuổi và cảm xúc của khách hàng tiềm năng
Trang 17PHẦN II THUẬT TOÁN PCA TRONG NHẬN DIỆN KHUÔN MẶT
1 Thuật toán PCA
1.1 Lịch sử ra đời
- Phân tích thành phần chính (Principal Component Analysis - PCA) được trình bày theonhiều quan điểm khác nhau Với các nhà thống kê cổ điển thì PCA là tìm các trục chính củaellipsoid nhiều chiều bao hàm đám mây số liệu phân phối chuẩn nhiều chiều, các trục đóđược ước lượng từ một mẫu n cá thể, trên mỗi cá thể người ta đo p chỉ tiêu Người đầu tiênđưa ra kỹ thuật này là H.Hotelling (1933), sau đó là T.W.Anderson (1958) vàA.M.Kshirsagar (1972)
- Với các nhà nhân tố học cổ điển thì kỹ thật này là phương pháp phân tích nhân tố trongtrường hợp đặc biệt, khi các phương sai này bằng không hoặc xấp xỉ bằng không Phươngpháp này thường được sử dụng trong phân tích tâm lý, do Horst (1965) và Harman (1966)
đề xuất
- Sau cùng, theo quan điểm phổ biến hơn cả của các nhà phân tích số liệu thì PCA là một kỹthuật biểu diễn các số liệu một cách tối ưu theo một tiêu chuẩn đại số và hình học đặc biệt.khi sử dụng kỹ thuật này người ta không đòi hỏi một giả thuyết thống kê hoặc một mô hìnhđặc biệt nào Quan điểm này trở nên phổ biến từ khi có máy tính điện tử, và là quan điểmmới nhất Những tư tưởng của phương pháp này do K.Pearson (1901) đề xuất Trong côngtrình của C.R Rao (1964) nội dung lý thuyết của phương pháp PCA được trình bày khá đơngiản và rõ ràng
- Lĩnh vực ứng dụng của phương pháp PCA rất rộng trong công nghiệp, nông nghiệp, kinh
tế, khoa học cơ bản… với bảng số liệu mà các cột là các biến và các dòng là các cá thể, trên
đó đo giá trị của biến
Trang 181.2 Tổng quan về phương pháp PCA
- Phân tích thành phần chính (Principal Component Analysis) hay còn gọi là PCA là mộttrong những kết quả đẹp từ việc áp dụng đại số tuyến tính PCA được sử dụng nhiều trongcác khuôn mẫu phân tích bởi vì nó là phương pháp không cần tham số và đơn giản hóa choviệc trích xuất thông tin thích hợp từ các tập dữ liệu không rõ ràng PCA cung cấp mộthướng đi cho việc làm thế nào để hạn chế một tập dữ liệu phức tạp tới một tập dữ liệu với sốchiều nhỏ hơn để thể hiện ra thông tin ẩn dưới tập dữ liệu không rõ ràng đó
- Để hiểu rõ và phân tích một hiện tượng nào đó, ta thường đo lường một vài đại lượng trong
hệ thống Ta có thể không tính toán được điều gì đã xảy ra do dữ liệu đo được rất mù mờ,không rõ ràng, số lượng các biến đo lường có thể rất lớn và tại các thời điểm khác nhau cũng
có thể dễ gây nhầm lẫn Thuật toán PCA rất hữu dụng trong những trường hợp này Nó cóthể biến đổi tập dữ liệu đo lường dư thừa, nhiễu lớn về tập dữ liệu mà biểu diễn tốt nhất (dễquan sát nhất, dễ phân biệt nhất) hệ thống Với một hệ thống liên tục và tuyến tính nếu tađưa các đo lường vào một không gian vecto nơi mà mỗi thể hiện của hệ thống được xemnhư một vector trong không gian vector đó (số các vecto cơ sở là số chiều của không gianđó) Ta sẽ sử dụng phép biến đổi tuyến tính để ánh xạ tập dữ liệu gốc vào tập dữ liệu mới cógiảm sự dư thừa và nhiễu dữ liệu
- Tổng quan về phương pháp PCA PCA là phương pháp:
Loại bỏ thành phần phụ
Giữ thành phần chính
Không ảnh hưởng nhiều dữ liệu so với dữ liệu gốc
- Lợi ích của phương pháp PCA:
Giảm chiều dữ liệu nhưng vẫn giữ được độ chính xác nhất định so với dữ liệu ban đầu
Dễ quan sát, nắm bắt thông tin, nhận biết sự tương quan
Giúp ta tính toán nhanh hơn với độ chính xác cao
Trang 191.3 Ứng dụng
- Phương pháp Principle Component Analysis (PCA) là một kỹ thuật thống kê để giảm sốchiều của dữ liệu mà vẫn giữ được các đặc trưng quan trọng của dữ liệu PCA có nhiều ứngdụng trong đời sống, ví dụ như Công nghệ thông tin, Sinh học… và cả trong Tài chính cụthể là:
1 Trong tài chính: Phân tích rủi ro, PCA có thể giúp xác định các yếu tố chính ảnh hưởng đếnbiến động của giá cổ phiếu, trái phiếu, hoặc các sản phẩm tài chính khác Bằng cách sử dụngcác thành phần chính, ta có thể đo lường rủi ro của danh mục đầu tư và tối ưu hóa lợi nhuận.Ngoài ra còn có thể phân tích hành vi người tiêu dùng, phân tích dữ liệu tài chính, phân tíchthị trường, …
2 Trong sinh học: Phân tích di truyền, PCA có thể giúp phân loại các mẫu di truyền dựa trêncác đặc điểm di truyền của chúng, như số lượng, tần số, hoặc đa dạng của các đoạn DNA.Bằng cách sử dụng các thành phần chính, ta có thể nhận biết được các mối quan hệ di truyềngiữa các mẫu và các nhóm di truyền Ngoài ra còn phân tích biểu hiện gen, phân tích hìnhảnh sinh học, …
3 Trong giáo dục nhà trường: Phân tích dữ liệu học sinh, PCA có thể giúp phân tích các dữliệu về điểm số, năng lực, sở thích, hoặc hành vi học tập của học sinh Bằng cách sử dụngcác thành phần chính, ta có thể nhóm các học sinh có đặc điểm tương đồng và đưa ra cácphương pháp giảng dạy, đánh giá, hoặc tư vấn phù hợp Ngoài ra còn phân tích: phân tích dữliệu giáo viên, phân tích dữ liệu giáo dục
- PCA có nhiều ứng dụng trong công nghệ dữ liệu, ví dụ như:
1 Nhận dạng khuôn mặt: PCA có thể giúp trích xuất các đặc trưng chính của khuôn mặt từ cácảnh và sử dụng chúng để phân biệt các khuôn mặt khác nhau
2 Phân tích dữ liệu nhiều chiều: PCA có thể giúp giảm số lượng các biến trong dữ liệu và tạo
ra các biến mới không tương quan với nhau Điều này giúp cho việc phân tích dữ liệu dễdàng và hiệu quả hơn
3 Trực quan hóa dữ liệu: PCA có thể giúp biểu diễn dữ liệu nhiều chiều trên các đồ thị haihoặc ba chiều, giúp cho việc nhìn nhận và hiểu dữ liệu trở nên rõ ràng hơn
Trang 204 Nén dữ liệu: PCA có thể giúp giảm dung lượng lưu trữ của dữ liệu mà vẫn giữ được cácthông tin cần thiết.
1.4 Cơ sở lí thuyết
- Giá trị trung bình (Kì vọng):
X=X1+ X2+…+ X n
n
- Phương sai (Variance):
+ Với bảng số liệu, phương sai thể hiện sự đặc trưng độ phân tán các số liệu trong tập dữ liệu
so với giá trị trung bình
- Hiệp phương sai (Covariance):
+ Là độ đo sự biến thiên cùng nhau của 2 biến ngẫu nhiên
Nếu giá trị hiệp phương sai mang giá trị âm thì X tăng khi Y giảm hoặc ngược lại
Nếu giá trị hiệp phương sai bằng không thì X và Y độc lập với nhau
+ Hiệp phương sai là công cụ hữu dụng để tìm mối liên hệ giữa các chiều trong một tập dữliệu có số chiều lớn Hiệp phương sai của một biến bằng phương sai của biến đó
Trang 21+ Các vecto trong không gian vector được xem như một biến ngẫu nhiên nhiều chiều, mỗithành phần của vector là một biến ngẫu nhiên vô hướng Giả sử ta có vector sau:
¿[Cov ( X1, X1) Cov( X1, X2) ⋯ Cov( X1, X n)
Cov ( X2, X1) Cov( X2, X2) ⋯ Cov( X2, X n)
Cov ( X n , X1) Cov( X2, X n ) ⋯ Cov( X n , X n)]
+ Ta có nhận xét sau về ma trận hiệp phương sai:
Đường chéo ma trận là phương sai của các thành phần của vecto ngẫu nhiên X
Các vị trị không phải là đường chéo cho thấy mối tương quan dữ liệu theo các chiềutương ứng trong vector ngẫu nhiên X
Ma trận S là ma trận đối xứng
+ X là các vector ngẫu nhiên nên ta có thể khẳng định rằng các thành phần không phảiđường chéo của ma trận S biểu diễn mối tương quan giữa các chiều trong tập dữ liệu Cácthành phần đường chéo biểu diễn khả năng phân tán thống kê của dữ liệu theo chiều tươngứng Như vậy để hệ thống có thể quan sát và phân biệt rõ nhất thì ta cần tăng giá trị phươngsai và giảm giá trị hiệp phương sai để giảm nhiễu và dư thừa đến mức thấp nhất có thể Đểbiểu diễn tốt hệ thống thì ma trận hiệp phương sai của vector dữ liệu phải có các thành phầnđường chéo có giá trị khác không và các thành phần không thuộc đường chéo có giá trị bằngkhông, nói cách khác ma trận hiệp phương sai phải là ma trận chéo Nhắc đến ma trận chéo,
ta phải nhắc tới các bài toán chéo hóa ma trận trong đại số tuyến tính Trong đại số tuyếntính, ma trận đối xứng chéo hóa được bởi một ma trận các vector riêng trực giao của nó Ta
có định nghĩa về trị riêng và vector riêng như sau:
Trang 22 λ được gọi là trị riêng của ma trận A = [a ij¿¿n × n nếu tồn tại X1, X2, … X n không đồngthời bằng không sao cho:
được gọi là vector riêng ứng với trị riêng λ
- Nói tóm lại, phương pháp PCA quy về việc đi tìm trị riêng và vector riêng của ma trận hiệpphương sai S của tập mẫu X Sau đó, ta chỉ giữ lại K vector riêng ứng với K trị riêng lớn nhất
để làm cơ sở cho không gian mới này
- Sau khi có cơ sở của không gian mới, ta cần tìm tọa độ biểu diễn X −X trên hệ trục tọa độmới:
a i chính là tọa độ biểu diễn X −X trên hệ trục tọa độ mới
2 Thuật toán PCA trong Nhận diện khuôn mặt
- PCA được phát minh năm 1901 bởi Karl Pearson, là một thủ tục han chế biến khi thu đượcmột tập dữ liệu có sự dư thừa Thuật toán này giúp cho việc hạn chế các biến vào một sốlượng nhỏ hơn các biến khác được gọi là các thành phần chính Khi thực hiện nhận diện ảnh
số lượng ảnh và kích thước ảnh là một vấn đề lớn trong không gian nhiều chiều Mục tiêucủa PCA trong nhận diện khuôn mặt là hạn chế chiều của dữ liệu bằng cách dữ lại càngnhiều sự biến thiên có thể càng tốt trong tập dữ liệu gốc (điều này nó thể làm mất thông tin).Không gian hạn chế chiều tốt nhất sẽ được xác định bởi các thành phần chính tốt nhất
Trang 23- Nhận diện khuôn mặt sử dụng PCA trong phương pháp khuôn mặt riêng, giúp cho vệcgiảm kích thước của cơ sở dữ liệu cho nhận diện ảnh thông qua loại bỏ các vector riêngbằng không và các vector riêng ứng với các giá trị riêng rất nhỏ, đồng thời làm nổi bật nétđặc trưng ảnh, tăng khả năng phân biệt ảnh do việc giảm mối tương quan giữa các chiềutrong tập dữ liệu ảnh huấn luyện, hay nói cách khác làm căng không gian vector ảnh huấnluyện, nhờ đó mà bằng cách tính khoảng cách ngắn nhất với ảnh cần nhận dạng ta có thể dễdạng tìm được ảnh tương tự trong cơ sở dữ liệu.
- Trong phương pháp này ảnh được lưu trữ như các vector đặc trưng trong cơ sở dữ liệu,được thực hiện bằng cách ánh xạ mỗi ảnh huấn luyện vào không gian khuôn mặt riêng Cácđặc trưng này có thể có hoặc không liên quan với các đặc trưng thuộc về khuôn mặt nhưmắt, mũi, miệng hay tóc Ảnh nhận diện được chiếu vào không gian khuôn mặt riêng và sosánh với ảnh trong cơ sở dữ liệu
- Phương pháp khuôn mặt riêng là một phương pháp hiệu quả được sử dụng trong nhận diệnkhuôn mặt do tính đơn giản, tốc độ nhanh và khả năng học của nó Các khuôn mặt riêng làcác thành phần chính của một sự phân bố khuôn mặt, hay nói cách khác, nó là các vectorriêng của ma trận hiệp phương sai của ảnh khuôn mặt nơi mà mỗi ảnh khuôn mặt NXNpixel được coi như một điểm trong không gian N² chiều Mỗi ảnh huấn luyện tương ứng vớimột vector riêng, cũng như ta có thể coi các vector riêng như một loại khuôn mặt - Mỗi ảnhkhuôn mặt có thể biểu diễn chính xác bởi tổ hợp tuyến tính của các khuôn mặt riêng Sốlượng có thể của các khuôn mặt riêng bằng với số lượng ảnh khuôn mặt trong tập huấn hiện.Các khuôn mặt cũng có thể biểu diễn gần đúng bằng cách sử dụng khuôn mặt riêng tốt nhất,cái mà tương ứng với các giá trị riêng lớn nhất, đại diện cho phương sai lớn nhất giữa tậpcác ảnh