Tải bản đầy đủ (.pdf) (65 trang)

Nghiên cứu phương pháp nhận dạng ảnh mặt người và ứng dụng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2 MB, 65 trang )

..

ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
----------------

ĐỖ DUY CỐP

NGHIÊN CỨU PHƢƠNG PHÁP
NHẬN DẠNG ẢNH MẶT NGƢỜI VÀ ỨNG DỤNG

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Thái Ngun – 2014
Số hóa bởi Trung tâm Học liệu

/>

ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
----------------

ĐỖ DUY CỐP

NGHIÊN CỨU PHƢƠNG PHÁP
NHẬN DẠNG ẢNH MẶT NGƢỜI VÀ ỨNG DỤNG
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
NGƢỜI HƢỚNG DẪN KHOA HỌC: TS. Vũ Việt Vũ



Thái Nguyên - 2014

Số hóa bởi Trung tâm Học liệu

/>

i

MỤC LỤC
MỤC LỤC .......................................................................................................... i
DANH MỤC CÁC TỪ VIẾT TẮT .................................................................. ii
DANH MỤC CÁC BẢNG................................................................................ ii
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ .......................................................... iii
LỜI CẢM ƠN ................................................................................................... 1
LỜI CAM ĐOAN ............................................................................................. 2
CHƢƠNG 1 TỔNG QUAN VỀ NHẬN DẠNG ẢNH MẶT NGƢỜI ............ 3
1.1 Tổng quan về nhận dạng ảnh mặt ngƣời ................................................. 3
1.2 Các hƣớng tiếp cận trong nhận dạng mặt ngƣời...................................... 4
1.2.1 Phƣơng pháp trích chọn đặc trƣng sử dụng mặt riêng (Eigenface) .. 4
1.2.2 Phƣơng pháp trích chọn đặc trƣng sử dụng mơ hình Markov ẩn ..... 5
1.2.3 Phƣơng pháp phân tích thành phần chính ......................................... 5
1.3 Bố cục luận văn ....................................................................................... 6
CHƢƠNG 2 TRÍCH CHỌN ĐẶC TRƢNG ................................................... 7
2.1 Phƣơng pháp phân tích thành phần chính - PCA .................................... 7
2.1.1 Cơ sở toán học ................................................................................... 8
2.1.2 Phƣơng pháp PCA ........................................................................... 17
2.2 Phƣơng pháp phân tách tuyến tính - LDA ............................................. 24
2.3 Phƣơng pháp xử lý hình thái.................................................................. 27
2.3.1 Biến đổi trúng-trƣợt (hit-or-miss) ................................................... 29

2.3.2 Phép dãn ảnh và co ảnh tổng quát ................................................... 33
2.3.3 Dãn và co ảnh đa mức xám ............................................................. 40
CHƢƠNG 3 MẠNG NƠRON ........................................................................ 42
3.1 Giới thiệu mạng nơron ........................................................................... 42
3.1.1 Nơron – đơn vị xử lý cơ bản ........................................................... 42
3.1.2. Liên kết giữa các nơron .................................................................. 43
3.1.3. Hàm kích hoạt và các quy tắc xác định tín hiệu ra ........................ 44
3.1.4 Quy tắc delta.................................................................................... 45
3.2 Thuật toán học lan truyền ngƣợc ........................................................... 46
Số hóa bởi Trung tâm Học liệu

/>

ii

CHƢƠNG 4 THIẾT KẾ VÀ ĐÁNH GIÁ ...................................................... 52
4.1 Thiết kế hệ thống ................................................................................... 52
4.1.1 Cơ sở dữ liệu ảnh ............................................................................ 52
4.1.2 Môi trƣờng cài đặt ........................................................................... 53
4.1.3 Cài đặt.............................................................................................. 53
4.2 Kiểm thử và đánh giá ............................................................................. 56
KẾT LUẬN ..................................................................................................... 58
HƢỚNG PHÁT TRIỂN .................................................................................. 59
TÀI LIỆU THAM KHẢO ............................................................................... 60
DANH MỤC CÁC TỪ VIẾT TẮT
LDA (Linear Discriminant Analysis): Phƣơng pháp phân tách tuyến tính
LMS (Least Mean Square): Phƣơng pháp bình phƣơng trung bình tối
thiểu
ORL (Olivetti Research Laboratory, Surrey University): Cơ sở dữ liệu
ảnh dùng trong luận văn

PCA(Principal Components Analysis): Phƣơng pháp phân tích thành phần
chính
DANH MỤC CÁC BẢNG
Bảng 2.1. Tính toán độ lệch chuẩn ................................................................. 10
Bảng 2.2. Tập dữ liệu hai chiều và tính tốn hiệp phương sai ....................... 12
Bảng 4.1. Các module chính của chương trình .............................................. 53

Số hóa bởi Trung tâm Học liệu

/>

iii

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 2.1. Ví dụ minh họa PCA .............................................................................................. 8
Hình 2.2. Dữ liệu và đồ thị biểu diễn dữ liệu ...................................................................... 18
Hình 2.3. Đồ thị biểu diễn dữ liệu đã chuẩn hóa với các vector riêng................................ 20
Hình 2.4. Ảnh gốc trong cơ sở dữ liệu ORL ........................................................................ 23
Hình 2.5. Ảnh sau khi biến đổi theo PCA ............................................................................ 23
Hình 2.6. Ví dụ minh họa LDA ............................................................................................ 24
Hình 2.7. Ảnh sau khi biến đổi theo LDA ............................................................................ 27
Hình 2.8. Sự liên thơng ........................................................................................................ 28
Hình 2.9. Phép dãn ảnh nhị phân ........................................................................................ 31
Hình 2.10. Phép co ảnh nhị phân ........................................................................................ 32
Hình 2.11. Các tốn tử đại số ảnh trên các mảng nhị phân ................................................ 34
Hình 2.12. Lật và dịch một mảng nhị phân ......................................................................... 34
Hình 2.13. Phép dãn ảnh tổng quát dựa theo phép cộng Minkowski .................................. 37
Hình 2.14. So sánh các kết quả của hai phép co ảnh .......................................................... 39
Hình 2.15. Phép dãn ảnh và co ảnh tổng quát với phần tử cấu trúc 55 ............................ 40
Hình 2.16. Ảnh sau khi xử lý hình thái ................................................................................ 41

Hình 3.1. Các thành phần cơ bản của mạng nơron nhân tạo.............................................. 43
Hình 3.2. Một số dạng hàm kích hoạt của nơron ................................................................ 44
Hình 3.3. Mạng nơron l lớp ................................................................................................. 47
Hình 4.1. Ảnh gốc trong bộ ảnh ORL .................................................................................. 52
Hình 4.2. Ảnh gốc được bổ sung ảnh gương ....................................................................... 54
Hình 4.3. Giao diện chính của chương trình ....................................................................... 56

Số hóa bởi Trung tâm Học liệu

/>

1

LỜI CẢM ƠN
Lời đầu tiên tơi xin bày tỏ lịng biết ơn sâu sắc tới TS. Vũ Việt Vũ, công
tác tại trƣờng Đại học Kỹ thuật Công nghiệp - Đại học Thái Nguyên, ngƣời đã
tận tình hƣớng dẫn và giúp tơi hồn thành luận văn tốt nghiệp này.
Tơicũng xin gửi lời cảm ơn chân thành đến các thầy cô giáo của trƣờng
Đại học Công nghệ thông tin và truyền thông - Đại học Thái Nguyên, cùng
các thầy cô giáo của Viện Công nghệ thông tin - Viện khoa học Việt Nam đã
nhiệt tình giảng dạy, truyền đạt kiến thức cho tôi trong suốt 2 năm học qua.
Tôi xin cảmơn sự động viên và giúp đỡ của tất cả những ngƣời thân trong
gia đình, của các bạn bè, đồng nghiệp trong quá trìnhthực hiện luận văn này.
Thái Nguyên, ngày 20 tháng 05 năm 2014
Học viên

Đỗ Duy Cốp

Số hóa bởi Trung tâm Học liệu


/>

2

LỜI CAM ĐOAN
Tơi là: Đỗ Duy Cốp
Lớp: CK11A
Khố học: 2012 - 2014
Chuyên ngành: Khoa học máy tính
Mã số chuyên ngành: 60 48 01
Cơ sở đào tạo: Trƣờng Đại học Công nghệ thông tin và Truyền thông Thái
Nguyên.
Giáo viên hƣớng dẫn: TS. Vũ Việt Vũ
Cơ quan công tác: Trƣờng Đại học Kỹ thuật Công nghiệp - Đại học Thái
Nguyên
Tôi xin cam đoan luận văn “Nghiên cứu phương pháp nhận dạng ảnh
mặt người và ứng dụng” này là cơng trình nghiên cứu của riêng tôi. Các số
liệu sử dụng trong luận văn là trung thực. Các kết quả nghiên cứu đƣợc trình
bày trong luận văn chƣa từng đƣợc công bố tại bất kỳ cơng trình nào khác.
Thái Ngun, ngày 20 tháng 05 năm 2014
Học viên

Đỗ Duy Cốp

Số hóa bởi Trung tâm Học liệu

/>

3


CHƢƠNG 1. TỔNG QUAN VỀ NHẬN DẠNG ẢNH MẶT NGƢỜI

1.1 Tổng quan về nhận dạng ảnh mặt ngƣời
Xử lý ảnh là một lĩnh vực đƣợc quan tâm rất nhiều trong khoảng 10 năm
trở lại đây. Bài toán nhận dạng ảnh nhằm mục đích phát hiện và nhận dạng
đối tƣợng trong ảnh. Bài toán nhận dạng ảnh đƣợc ứng dụng trong nhiều lĩnh
vực, đặc biệt là nhận dạng mặt ngƣời đã đƣợc ứng dụng trong các hệ thống
bảo mật, nhận dạng ngƣời trên các bằng lái xe, hộ chiếu, nhận dạng ngƣời
trong các hệ thống tƣơng tác ngƣời-máy, trong lĩnh vực giải trí,…
Đặc biệt sau thảm họa ngày 11/9, các chính phủ trên toàn thế giới đã bắt
đầu chú ý hơn tới các mức an ninh ở sân bay và biên giới. Ngân sách hằng
năm của các nƣớc đã tăng lên nhiều cho các kỹ thuật hiện đại để xác định,
nhận dạng và lần theo các đối tƣợng nghi vấn. Nhu cầu tăng lên trong các ứng
dụng này đã giúp các nhà khoa học có thêm quỹ để phát triển các dự án
nghiên cứu. Mặc dù việc nhận dạng mặt ngƣời khơng thể chính xác đƣợc nhƣ
các phƣơng pháp nhận dạng khác nhƣ nhận dạng vân tay, nhƣng nó vẫn nhận
đƣợc sự quan tâm lớn của các nhà nghiên cứu trong lĩnh vực thị giác máy. Lý
do chủ yếu là trên thực tế, mặt ngƣời vẫn là cách truyền thống để con ngƣời
nhận ra nhau.
Một hệ thống nhận dạng mặt ngƣời điển hình bao gồm các thành phần
chính nhƣ hình1.1.
Ảnh
mặt
ngƣời

Trích chọn
đặc trƣng

Nhận dạng
mặt ngƣời


Thơng tin
ngƣời đƣợc
nhận dạng

Hình 1.1. Mơ hình hệ thống nhận dạng mặt người

Số hóa bởi Trung tâm Học liệu

/>

4

1.2 Các hƣớng tiếp cận trong nhận dạng mặt ngƣời
Có hai hƣớng tiếp cận chính làm hạt nhân của các kỹ thuật phân tích đặc
trƣng mặt ngƣời: hƣớng tiếp cận hình học và hƣớng tiếp cận hình ảnh.
 Hướng tiếp cận hình học sử dụng việc ánh xạ khơng gian các đặc
trƣng mặt ngƣời. Mặt ngƣời đƣợc phân loại theo khoảng cách hình
học, theo đƣờng bao và theo các góc giữa các điểm.
 Hướng tiếp cận hình ảnh bao gồm việc xây dựng các mẫu từ những
đặc trƣng mặt ngƣời. Mẫucủa các đặc trƣng nổi bật, hoặc thậm chí
là tồn khuôn mặt đƣợc thiết lập, việc nhận dạng đƣợc thực
hiệnbằng cách duyệt các khn mặt rồi tìm mặt nào khớp nhất với
mẫu.
Hiện nay các hệ thống nhận dạng mặt ngƣời vẫn đang tiếp tục đƣợc phát
triển. Dƣới đây là một số phƣơng pháp trích chọn đặc trƣng:
- Mặt riêng (Eigenface)
- Mơ hình Markov ẩn
- Phân tích thành phầnchính(PCA)
1.2.1 Phƣơng pháp trích chọn đặc trƣng sử dụng mặt riêng (Eigenface)

Thuật tốn Eigenface rất phổ biến và đƣợc sử dụng rộng rãi do sựđơn giản
và hiệu quả tính tốn. Thuật tốn sử dụng cáchtiếp cận lý thuyết thơng tin
trong việc mã hóa các ảnh mặt ngƣời và xác địnhcác vector riêng tƣơng ứng
với giá trị riêng lớnnhất của ma trận hiệp phƣơng sai của ảnh. Sau đó, đối với
mỗi nhómảnh của một ngƣời, ta tính vector trung bình, một ngƣỡng sẽ đƣợc
chọnđể xác định khoảng cách chấp nhận đƣợc cựcđạitừ một ảnh đến
nhómảnhgiúp nhận dạng những ảnh mới.
Số hóa bởi Trung tâm Học liệu

/>

5

1.2.2 Phƣơng pháp trích chọn đặc trƣng sử dụng mơ hình Markov ẩn
Mơ hình Markov ẩn phân loại một đặc trƣng mặt ngƣời bằng tính chất của
chuỗi Markov. Một dãy ngẫu nhiên các biến lấy trên các giá trị điểmảnh
tƣơng ứng tạo nên chuỗi Markov, nếu xác suất để hệ thống đạt trạng thái xn+1
tại thời điểm n+1 chỉ phụ thuộc vào xác suất để hệ thống đạt trạng thái xn tại
thời điểm n. Trong một chuỗi Markov, việc chuyển hệ thống từ trạng thái này
sang trạng thái khác tƣơng ứng với một xác suất nàođó, nhƣng kết quả của
một ký hiệu ra lại xác định đƣợc trƣớc. Nhƣ vậy, kết quả là một phân bố xác
suất của tất cả các ký hiệu ra tại mỗi trạng thái và kết quả này đƣợc dùngđể so
sánh giữa hai khuôn mặt.
1.2.3 Phƣơng pháp phân tích thành phần chính
Trong phương pháp phân tích thành phần chính(PCA  cịn gọi là biến
đổi Karhunen-Loeve), tập dữ liệu đƣợc biểu diễn lại với số đặc trƣngít hơn
đồng thời giữ đƣợc hầu hết các thông tin quan trọng nhất của dữ liệu. PCA
thƣờngđƣợc sử dụng cùng phƣơng pháp mặt riêng. Tập con các vector riêng
đƣợc dùng làm các vector cơ sở của một không gian con, trong đó ta có thể so
sánh vớicác ảnh trong cơ sở dữ liệuđểnhận dạng các ảnh mới. Các vector cơ

sở này cịn đƣợc gọi là các thành phần chínhcủa cơ sở dữ liệu ảnh.
Mạng nơron đƣợc sử dụng rộng rãi trong các hệ thống nhận dạng mặt
ngƣời. Kỹ thuật mạng nơron mô phỏnghoạt động của các nơron trong bộnão
ngƣời. Mạng nơron có khả năng điều chỉnh các trọng số dựa trên các mẫu
họctrong quá trình huấn luyện. Kết quả là mạng đạt đƣợc hiệu quả cao trong
việc phân loại các lớp, dựa trên dữ liệu mẫu khả tách tuyến tính hoặc phi
tuyến.

Số hóa bởi Trung tâm Học liệu

/>

6

1.3Bố cục luận văn
Mặc dù các hệ thống nhận dạng mặt ngƣời hiện tạiđã đạt đƣợc hiệu quả
khá cao, tuy nhiên chúngvẫn còn hạn chế là chỉ tập trung vào một hay một vài
phƣơng pháp trích chọn đặc trƣng. Có hệ thống chỉ thực hiện nhận dạng dựa
trên các đặcđiểm về hình học của mặt ngƣời hoặc có hệ thống chỉ dựa trên các
đặcđiểm thống kê.
Trong luận văn này, việc trích chọn đặc trƣng sẽ đƣợc thực hiệndựa trên
những đặcđiểm thống kê của khuôn mặt (cụ thể là phƣơng pháp phân tích
thành phầnchính– PCA và phƣơng pháp phân tách tuyến tính – LDA) và
những đặcđiểm về hình thái của khn mặt. Chƣơng 2 trình bàychi tiết về các
phƣơng pháp trích chọn đặc trƣng đƣợc lựa chọn để xây dựng chƣơng trình.
Chƣơng 3 trình bày về mạng noron với thuật tốn họclan truyền ngƣợc lỗi,
đƣợc dùng để phân loạiảnh. Chƣơng 4 trình bày cụ thểviệc thiết kế hệ thống
và đánh giáhiệu quả thực hiện. Cuối cùng làphầnkết luận.

Số hóa bởi Trung tâm Học liệu


/>

7

CHƢƠNG 2. TRÍCH CHỌN ĐẶC TRƢNG
Chương này sẽ trình bày về các phương pháp trích chọn đặc trưng được
sử dụng trong luận văn. Mục đích thứ nhất của việc trích chọn đặc trưng là
giảm số chiều của dữ liệu. Dữ liệu ảnh mặt người có số điểm ảnh lớn (cỡ vài
nghìn đến vài chục nghìn điểm ảnh), do đócần có một phép biến đổi để giảm
lượng thông tin sử dụng để biểu diễn,đồng thời không làm mất quá nhiều
thông tin quan trọng. Mục đích thứ hai của việc trích chọn đặc trưng là giúp
phân biệt tốt hơn đối với các mẫu dữ liệu. Các ảnh mặt người sẽ được biểu
diễn trong một khơng gian mới sao cho có thể làm nổi bật được sự khác biệt
giữa các ảnh với nhau.Các phần sau sẽ trình bày về phương pháp phân tích
thành phần chính, phương pháp phân tách tuyến tính và phương pháp xử lý
hình thái ảnh mặt người.

2.1 Phƣơng pháp phân tích thành phầnchính - PCA
Phƣơng pháp phân tích thành phầnchính [4](PCA – Principal Components
Analysis) là một kỹ thuật thống kê hữu ích trong các ứng dụng nhận dạng mặt
ngƣời và nénảnh, đồng thờiđây cũng là một kỹ thuật phổ biến cho việc tìm
kiếmcác mẫutrong khơng gian dữ liệu có số chiều lớn.
Mụcđích của phƣơng pháp phân tích này có thể diễnđạt ngắn gọn nhƣ
sau:Ảnh gốc có kích thƣớc 112×92 (10304 điểmảnh).Nhữngảnh này
cầnđƣợcrút gọn sao cho lƣợng thông tin dùng để biểu diễnảnhđó giảmđi,đồng
thờikhơng làm mất những đặcđiểm quan trọng nhất của khn mặt. Kết
quảcủa việc phân tích này sẽđạt đƣợcnhƣ hình 2.1.

Số hóa bởi Trung tâm Học liệu


/>

8

Hình 2.1. Ví dụ minh họa PCA
Ảnh gốc cần 10304 giá trị để biểu diễn trong khi ảnh biến đổi chỉ cần49
giá trị.
2.1.1 Cơ sở toán học
a. Lý thuyết thống kê
Các nhà thống kê thƣờng quan tâm đến việc lấy mẫutrên một tập dữ liệu.
Ví dụ vềcuộc bầu cử, tập dữ liệu là toàn bộ dân số trong một đất nƣớc, trong
khi đó mẫu là một tập con của dân số nhà thống kê muốn đánh giá. Một vấn
đề lớn của thống kê học là thông qua phƣơng pháp đánh giá một mẫu của dân
số, kết quả thống kê cho phép đánh giá đƣợc xu hƣớng chính của tồn bộdân
số.
Xét một tập ví dụ X = [1 2 4 6 12 15 25 45 68 67 65 98]. Chỉ số dƣới của
ký hiệuX đƣợc dùng để trỏ tới một số cụ thể trong tập. Ví dụ X3 trỏ tới số thứ
ba trong Xvới giá trị là 4. Lƣu ý rằng X1 là số đầu tiên trong X. Ngoài ra ký
hiệu ncòn đƣợc sử dụngđể chỉ tổng số các phần tử trong tập X.
Giá trị trung bình của mẫu là:

Số hóa bởi Trung tâm Học liệu

/>

9

Giá trị trung bình khơng thể hiệnđƣợcnhiều về dữ liệu ngoại trừ điểm
trung bình. Ví dụ, hai tập sau có cùng một giá trị trung bình là 10, nhƣng

chúng hồn toànkhác nhau:
[0 8 12 20] và [8 9 11 12]
Sự khác nhau đó là sự trải rộng của dữ liệu. Độ lệch chuẩncủa tập dữ liệu
sẽ đánh giá đƣợc sự trải rộng của dữ liệu.Độ lệch chuẩnkí hiệu là s trong cơng
thức (2.2) làkhoảng cách trung bình từ điểm trung bình của dữ liệu đến các
điểm. Cơng thức tínhnhƣ sau:

Câu hỏi đặt ra: “Vì sao lại sử dụng giá trị (n1) mà không phải là n?”
Nguyên nhân là, nếu mẫu của tập dữ liệu đƣợc lấy là tập con của thế giới thực
thì phải sử dụng (n1) vì giá trị nhận đƣợc gần với độ lệch chuẩn hơn so với
sử dụngn. Tuy nhiên, nếu tính độ lệch chuẩncho tồn bộ dân số, giá trị cần
dùng làn chứ không phải (n1).
Với hai tập dữ liệu trên, việc tính độ lệch chuẩnđƣợc thực hiện nhƣ bảng
2.1. Tập thứ nhất có độ lệch chuẩnlớn hơn do dữ liệu trải ra xa hơn so
vớiđiểm trung bình. Một ví dụ khác, tập [10 10 10 10] cũng có điểm trung
bình là 10, nhƣng độ lệch chuẩnlại bằng 0, bởi vì tất cả các số là giống nhau.
Khơng số nào chệch ra khỏi điểm trung bình.
Phƣơng sailà một hàm đo khác về sự trải rộng của dữ liệu trong một tập.
Thực tế nó gầnnhƣ giống hồn tồnvới độ lệch chuẩn:

Số hóa bởi Trung tâm Học liệu

/>

10

Bảng 2.1. Ví dụ về tính độ lệch chuẩn
Tập 1:
Xi
0


10

100

8

2

4

12

2

4

20

10

100

Tổng

208

Chia cho (n-1)

69.333


Khai căn

8.3266

Tập 2:
Xi
8

2

4

9

1

1

11

1

1

12

2

4


Tổng

10

Chia cho (n-1)

3.333

Khai căn

1.8257

Số hóa bởi Trung tâm Học liệu

/>

11

Nhƣ vậy đây chỉ là bình phƣơng của độ lệch chuẩn. s2 là ký hiệu thƣờng
dùng cho phƣơng sai của một mẫu. Cả hai phƣơng pháp này đều đánh giá độ
trải rộng của dữ liệu. Độ lệch chuẩnlà phƣơng pháp thơng dụng hơn, bên
cạnhđóphƣơng sai cũng đƣợc sử dụng.
Hai phƣơng pháp trên chỉ sử dụng đƣợc cho dữ liệu một chiều. Tuy nhiên,
nhiều tập dữ liệu lại có nhiều hơn một chiều và mục đích của việc phân tích
thống kê các tập dữ liệu này là nhằm tìm hiểu mối quan hệ giữa các chiều. Ví
dụ, xét tập dữ liệu về chiều cao của các sinh viên trong một lớp và điểm số
của họ về một mơn học nào đó. Ta có thể tiến hành phân tích thống kê xem
ảnh hƣởng của chiều cao sinh viên đếnđiểm số nhƣ thế nào.
Độ lệch chuẩn và phƣơng sai chỉ thực hiện trên một chiều, do đó chúng

cũng chỉ có thể tính tốn đƣợccho mỗi chiều của tập dữ liệu một cách độc lập
với các chiều khác. Tuy nhiên, nếu có một phƣơng pháp đánh giá đƣợc sự
biến đổi của các chiều từ giá trị trung bình của mỗi chiều khác, khi đósẽ rất
hữu ích đối với việc thống kê dữ liệu.
Hiệp phƣơng sailà một phƣơng pháp nhƣ vậy. Hiệp phƣơng sai luôn
đánh giá giữa hai chiều. Để tính hiệp phƣơng sai giữa một chiều với chính nó,
có thể sử dụng phƣơng sai. Vớimột tập dữ liệu ba chiều (x, y, z), ta có thể
đánh giá hiệp phƣơng sai giữa các chiều x và y, giữa y và z, giữa z và x.
Công thức tính hiệp phƣơng sai gầngiống với cơng thức tính phƣơng sai.
Cơng thức tính phƣơng sai có thể đƣợc viết lại nhƣ sau:

Tƣơng tự, cơng thức tính hiệp phƣơng saiđƣợc viếtnhƣ sau:

Số hóa bởi Trung tâm Học liệu

/>

12

Công thức (2.5) tƣơng tựcông thức (2.4), ngoại trừ ở nhân tử thứ hai, giá
trị của X đƣợc thay bằng giá trị của Y. Việc nàycó thể đƣợcdiễn đạt nhƣ sau:
“Với mỗi điểm dữ liệu, tính tích của độ sai khác giữa giá trị x và giá trị trung
bình của x, với độ sai khác giữa giá trịy và giá trị trung bình của y. Cộng tất cả
vào rồi chia cho (n1)”.
Ví dụvới một nhóm sinh viên, xét tổng số giờ họ dành cho môn học A và
điểm số họ đạt đƣợc ở mơn đó. Khi đó bài tốn có hai chiều, chiều thứ nhất là
H, số giờ học, chiều thứ hai là M, điểm số. Bảng 2.2 là các số liệu và việc tính
tốn cov(H,M), hiệp phƣơng sai giữa thời gian học và điểm số.
Bảng 2.2. Tập dữ liệu hai chiều và tính tốn hiệp phương sai
Số giờ (H)


Điểm (M)

9

39

15

56

25

93

14

61

10

50

18

75

0

32


16

85

5

42

Tổng

112

533

Trung bình

12.44

59.22

Dữ liệu

Số hóa bởi Trung tâm Học liệu

/>

13

H


M

9

39

4.92

23.42

115.23

15

56

1.08

6.42

6.93

25

93

11.08

30.58


338.83

14

61

0.08

1.42

0.11

10

50

3.92

12.42

48.69

18

75

4.08

12.58


51.33

0

32

13.92

30.42

423.45

16

85

2.08

22.58

46.97

5

42

8.92

20.42


182.15

Tổng

1199.61

Trung bình

133.29

Giá trị chính xác khơng quan trọng bằng dấu của nó (dƣơng hay âm). Nếu
giá trị là dƣơng, nóchỉ ra rằng cả hai chiều cùng nhau tăng, nghĩa là một cách
tổng quát, khi số giờ học tăng lên thì điểm số cũng tăng lên.
Nếu giá trị là âm, khi đó một chiều tăng lên, một chiều giảm đi. Giá trị
hiệp phƣơng sai âm cho thấy rằng chúng đối lập nhau, khi số giờ học tăng lên
thì điểm số giảm đi.
Trƣờng hợp cuối cùng, nếu giá trị hiệp phƣơng sai bằng 0, khi đó hai
chiều độc lập với nhau.
Kết quả điểm số tăng lên khi số giờ học tăng có thể dễ dàng nhận thấy
bằng đồ thị. Tuy nhiên, việc minh họa trực quan nhƣ vậy chỉ có thể thực hiện
đƣợc khi dữ liệu cóhai hoặc ba chiều. Vì giá trị hiệp phƣơng sai có thể đƣợc

Số hóa bởi Trung tâm Học liệu

/>

14

tính giữa hai chiều bất kỳ trong một tập dữ liệu, nên kỹ thuật này thƣờng đƣợc

sử dụng để tìm mối liên hệ giữa các chiều trong các tập dữ liệu nhiều chiều
mà việc biểu diễn trực quan gặp khó khăn.
Từ cơng thức tính cov(X,Y) trên, bằng cáchđổi chỗ hai nhân tử

− ta suy ra cov(X,Y) = cov(Y,X).
Hiệp phƣơng sai chỉ đánh giá đƣợc quan hệ giữa hai chiều. Nếu dữ liệu
cónhiều hơn hai chiều, có thể có nhiều hơn một giá trị hiệp phƣơng sai đƣợc
tính. Ví dụ, từ một tập dữ liệu ba chiều (x, y, z) ta có thể tính cov(x,y), cov(y,z)
và cov(z,x). Với một tập dữ liệu n chiều, sẽcó

giá trị hiệp phƣơng sai

khác nhau.
Các giá trị hiệp phƣơng sai giữa tất cả các chiều khác nhau đƣợc tính
tốnrồi đƣa vào một ma trận. Ma trận hiệp phƣơng sai của một tập dữ liệu n
chiều là:

ở đây Cnn là ma trận n hàng,n cột và Dimi là chiều thứi. Tồn bộ cơng thức
trên có nghĩa là với một tập dữ liệu n chiều, ma trận hiệp phƣơng sai của dữ
liệu làma trận n hàng,n cột (ma trận vuông) với phần tử tại hàngi, cột jlà giá
trị hiệp phƣơng sai giữa hai chiều thứi và thứj.
Ví dụ: Ma trận hiệp phƣơng sai của một tập dữ liệu ba chiều, với các
chiều là x, y và z là ma trậncó 3 hàng, 3 cột với các giá trị nhƣ sau:

Số hóa bởi Trung tâm Học liệu

/>

15


Một số điểm chú ý: Trên đƣờng chéo chính, các giá trị chính là hiệp
phƣơng sai giữa một chiều và chính nó, đó là phƣơng sai của chiều đó. Điểm
thứ hai là, vì cov(a,b) = cov(b,a) nên ma trận hiệp phƣơng sai là ma trận đối
xứng qua đƣờng chéo chính.
b. Đại số ma trận
Phần này trình bàymột số kiến thức cơ bản về đại số ma trận đƣợcdùng
trong PCA. Đặc biệt trong đó sẽ xét các vector riêng vàgiá trị riêngcủa một
ma trận cho trƣớc.
Hai ma trận có thể đƣợc nhân với nhau, vớiđiều kiệnchúng có kích thƣớc
phù hợp. Vector riênglà một trƣờng hợp đặc biệt của việc này. Xét hai phép
nhân giữa một ma trận và một vector nhƣsau:

Ví dụ vector thường và vetor riêng
Trong trƣờng hợp thứ nhất, vector kết quả không phải là một bội số của
vector gốc, trong khi đó ở trƣờng hợp thứ hai, vector kết quả bằng đúng 4 lần
vector gốc.Vector

(trƣờng hợp thứ hai) biểu diễn một mũi tên từ gốc (0,0)

đến điểm (3,2). Ma trận bênh cạnh là ma trận vng, có thể coi nhƣ một ma
trận biến đổi. Nếu nhân ma trận này vào phía trái của vector, kết quả sẽ là một
vector khác đã đƣợc biến đổi từ vị trí gốc của nó.Vector này (và tất cả các bội
số của nó, vì chiều dài của vector khơng ảnh hƣởng đến kết quả) là một vector
riêngcủa ma trận biến đổi đó.

Số hóa bởi Trung tâm Học liệu

/>

16


Các vector riêng có một số tính chất. Thứ nhất,vector riêng chỉ có thể
đƣợc xác định đƣợcđối với các ma trận vng. Khơng phải mọi ma trận
vng đều có vector riêng. Nếu một ma trận nn có vector riêng thì số lƣợng
đólà n.
Thứ hai, khi nhân vectorriêng với một số nàođó, vector kết quả vẫn sẽ
bằng đúng số lần nhƣ vậy của vector gốc. Lý do làkhi lấy một tỉ lệ nào đó của
vector, chỉ đơn giản độ dài của nó bị thay đổi, khơng ảnh hƣởng đến chiều của
vector. Cuối cùng, mọi vector riêng của một ma trận là trực giao, nghĩa là
chúng vng góc với nhau, bất kể dữ liệucó bao nhiêu chiều. Điều này rất
quan trọng bởi vì nó có ý nghĩa lớnkhi biểu diễn dữ liệu theo các vector trực
giao này thay vì biểu diễn theo các trục x và y.

Ví dụ về sự ổn định của vector riêng đối với việc lấy tỉ lệ
Giá trị riêngcó quan hệ chặt chẽvới vector riêng.Thực tế làở ví dụ trên đã
xuất hiện một giá trị riêng. Trong cả hai ví dụ trên, số lần vector gốc đƣợc
tăng lên sau khi nhân với ma trận vuông luôn cốđịnh, số lần nàylà 4. Vậy 4 là
giá trị riêng ứng với vector riêng đó. Khơng cần biết bội số nào của vector
riêng đã đƣợclấy trƣớc khi đem nhân với ma trận vuông, vector kết quả nhận
đƣợc luôn bằng 4 lần vector gốc.
Hiện nay có rất nhiều thƣ viện tốn học hỗ trợ việc tìm các vector riêng và
giá trị riêng của các ma trận, ví dụgói phần mềmnewmat trên trang web
hay các bộ cơng cụ trong thƣ viện lập trình
củaMATLAB.
Số hóa bởi Trung tâm Học liệu

/>

17


2.1.2 Phƣơng phápPCA
Phƣơng pháp phân tích thành phầnchính cho phépxác định các mẫu trong
một tập dữ liệu và biểu diễn dữ liệu theo cách có thể làm nổi bật đƣợc sự
giống nhau và khác nhau giữa các mẫu. Vì các mẫu có thể rất khó tìm ra trong
dữ liệu nhiều chiều (do không thể biểu diễn trực quan bằng đồ họa), nên PCA
[4] là một công cụ hữu hiệu để phân tích dữ liệu. Phƣơng pháp này bao gồm
một số bƣớc cơ bản sau:
Bƣớc 1: Lấy dữ liệu
Để có thểvẽ đồ thị minh họa trực quan việc phân tích PCA theo từng
bƣớc, dữ liệu trong ví dụ sẽ có hai chiều.Dữ liệu đƣợc cho ở hình 2.2.
Bƣớc 2: Hiệu chỉnh theo giá trị trung bình
Để tínhPCA thuận lợi, các giá trị trên mỗi chiều của dữ liệu sẽ đƣợc trừđi
giá trị trung bình của chiềuđó. Tất cả các giá trị x bị trừ đi
x của tất cả các điểm) và tất cả các giá trị y bị trừ đi

(trung bình giá trị

(trung bình giá trị y của

tất cả các điểm). Tập dữ liệu nhận đƣợc có giá trị trung bình là 0.
Bƣớc 3: Tính ma trận hiệp phƣơng sai
Do dữ liệu có hai chiều nên kích thƣớc của ma trận hiệp phƣơng sai là
22. Ma trậnthu đƣợclà:

Vì các phần tử nằm ngồi đƣờng chéo chính của ma trận là dƣơng, nên hai
giá trị x và y cùng nhau tăng.

Số hóa bởi Trung tâm Học liệu

/>


18

Dữ liệu gốc

X

Y

X

Y

2.5

2.4

0.69

0.49

0.5

0.7

1.31

1.21

2.2


2.9

0.39

0.99

1.9

2.2

0.09

0.29

3.1

3.0

1.29

1.09

2.3

2.7

0.49

0.79


2

1.6

0.19

0.31

1

1.1

0.81

0.81

1.5

1.6

0.31

0.31

1.1

0.9

0.71


1.01

Dữ liệu sau
khi chỉnh

Hình 2.2. Dữ liệu và đồ thị biểu diễn dữ liệu

Số hóa bởi Trung tâm Học liệu

/>

19

Bước 4: Tính vector riêng và giá trị riêng của ma trận hiệp phương sai
Vì ma trận hiệp phƣơng sai vng nên có thể tính vector riêng và giá trị
riêng của ma trận này. Chúng cho biết những thông tin hữu ích về dữ liệu. Hai
vector riêng là



, với hai giá trị riêng

tƣơng ứnglà 0.0490833989 và 1.28402771.
Điều lƣu ý quan trọng rằng các vector riêng ở đây đều là vector đơn vị,
nghĩa là độ dài của chúng bằng 1. Điều này rất quan trọng trong PCA. Hầu hết
các gói phần mềmtốn học, khi tính vector riêng đều trả về kết quả làcác
vector đơn vị.
Nhƣ trên đồ thị dữ liệu ở hình2.3, dữ liệu có một mẫu chủđạo (hƣớng theo
một đƣờng chéo). Ở phía trên của dữ liệu là hai vector riêng, chúng là những

đƣờng chéo hình chấm chấm. Nhƣ đã trình bày ở phần vector riêng, chúng
vng góc với nhau. Nhƣng quan trọng hơn, chúng cung cấp thông tin về các
mẫu trong dữ liệu. Một trong hai vector riêng nằm theo hƣớng phân
bốchínhcủa dữ liệu.Vector riêng đó cho thấy mối quan hệ giữa dữ liệu với
đƣờng thẳngđó. Vector riêng thứ hai cho thấy một mẫu khác, kém quan trọng
hơn, là tất cả cácđiểmphân bố dọc theo đƣờng chính nhƣng cách đƣờng chính
một khoảng nàođó.
Nhƣ vậy, bằng việc tính các vector riêng của ma trận hiệp phƣơng sai, ta
có thể trích ra các đặc trƣng củadữ liệu. Các bƣớc còn lại sẽ là việc biến đổi
dữ liệu sao cho nó đƣợc biểu diễn theo các đặc trƣng đó.

Số hóa bởi Trung tâm Học liệu

/>

20

Hình2.3. Đồ thị biểu diễn dữ liệu đã chuẩn hóa với các vector riêng
Bƣớc 5: Chọn các thành phần và xác lậpvector đặc trƣng
Các vector riêng và giá trị riêng tính đƣợcở phần trƣớc vớicác giá trị riêng
khá khác nhau. Vector riêng ứng với giá trị riêng cao nhất sẽ là thành phần
chính của tập dữ liệu. Trong ví dụ trên, vector riêng với giá trị riêng lớn hơn
là vector trỏ dọctheo dữ liệu. Nó mơ tả mối quan hệ có ý nghĩa nhất giữa các
chiều củadữ liệu.
Một cách tổng quát, sau khi tìm đƣợccác vector riêng từ ma trận hiệp
phƣơng sai, bƣớc tiếp theo là sắp xếp chúng theo giá trị riêng, từ cao đến thấp.
Nghĩa là cácthành phần đƣợc sắp xếp theo thứ tự tầm quan trọng giảm dần.
Khi đó, các thành phần ít có ý nghĩa có thể đƣợc bỏ quanếu cần. Một số thông
tinđã bị lƣợc bỏ, nhƣng vì giá trị riêng của chúng nhỏnêndữ liệu không bị mất
nhiều. Khi bỏ qua một số thành phần, dữ liệu thu đƣợc sẽ có số chiều ít hơn

dữ liệu gốc. Nói cách khác, nếu dữ liệu gốc cón chiều, sau khi tính đƣợc
Số hóa bởi Trung tâm Học liệu

/>

×