Khai niém PCA 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 một 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
Trang 1
DAI HOC QUOC GIA TP HO CHI MINH TRUONG DAI HOC BACH KHOA KHOA QUAN LY CONG NGHIEP
›«eŸ[JIs
BẢO CÁO BÀI TẬP NHÓM
Dé tai:
PHAN TICH THANH PHAN CHINH (PCA)
VA UNG DUNG DE HOI QUY TUYEN TINH
NHOM 11
Tp.HCM, 01/2021
ĐẠI HỌC QUỐC GIA TP HÒ CHÍ MINH—
Trang 2
-*“eS[IIlilis
BẢO CÁO BÀI TẬP NHÓM
Dé tai:
PHAN TICH THANH PHAN CHINH (PCA)
VA UNG DUNG DE HOI QUY TUYEN TINH
DANH SACH THANH VIEN NHOM 11
Trương CôngNguyễn 2013516
Ngô Quang Huy 2013304
Nguyên Đặng Trúc Linh 2013628
Nguyễn Lê Hữu Lộc 2013687 Nguyễn Vũ Khôi Nguyên 2013932
GVHD: Bùi Anh Tuấn
MỤC LỤC
I Cơ sở lý thuyết của phân tích thành phần chính (PCA)
Trang 3L Giới thiệu về PCA - 5.2 211111111211 1211111111115111111112121121 5118 rrrre
2 CO 86 todn HOC / ca ÝỶẠ
2.1 Một số khái niệm toán học dung trong PCA - -.- c2 c2
2.2 Thuật toán PCA - -.- 2S 2 2112121 1111111111111111 1110111111111 11 11 11 ke
3 Minh họa thuật toán PCA G1 HH HH n TH HT ST 11 1111121111111 1 1xx xkceg
IL Ứng dụng của phân tích PCA để hồi quy tuyến tính -
L Giới thiệu về hồi quy tuyến tính đơn phân 2 s1 E111 S21E1 E2 2xe2
2 Tiến trình thực hiện thuật toán PCA đề hồi quy tuyến tính 5:
Kon)
3.1 Lý thuyết bài toán 5s s12 11111211 1111 110121111 1 11g11 tre
KPAA/(.i0.:-A/Liil4di4ăăắÁẮÁỀỀẮÁÝỶÝÁ£
Trang 4I Cơ sở lý thuyết của phân tích thành phần chính
(PCA: principle component analysis)
1 Khai niém PCA
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 một 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
2 Cơ sở toán học
2.1 Một số khái niệm toán học sử dụng trong PCA
2.1.1 Các đặc trưng số của vector ngẫu nhiên
a Kỳ vọng
Ý nghĩa: Giá trị “mong muốn”, biểu diễn giá trị trung bình của một biến
Biéu diễn toán học:
Với X biến ngẫu nhiên trên tập rời rạc, ta có:
—„ —-pyl-V,
({ —ii —f£ \ j
— !
b Độ lệch chuẩn
Ý nghĩa: đo tính biến động của giá trị mang tính thống kê Nó cho thấy sự chênh lệch về giá trị của từng thời điểm đánh giá so với giá trị trung
bình
Biêu diễn toán học
c Phuong sai
Ý nghĩa: phương sai của một biến ngẫu nhiên là thước đo sự phân tán thống kê của biến đó, nó hàm ý các giá trị của biến đó thường ở cách kỳ
vọng bao xa
Biểu diễn toán học
varLV) =ơữ =š' =E(.V(f)- m (r))
đ Hiệp phương sai
Ý nghĩa: hiệp phương sai là độ đo sự biến thiên cùng nhau của hai biến
Trang 5¬ Trường Đại học Bách Khoa — ĐHQG TP HCM Nhom II - DSTT
ngẫu nhiên (phân biệt với phương sai - đo mức độ biến thiên của một biến)
Biêu diễn toán học
covLÝ,ƒ ) =E(.V(f]- om (fÌ(fÌ- m (f)Ì
* Trường hợp đặc biệt: khi đó:
1 1 n
[le = n (ry + 2+: ++ +2n) = nào
FF =s = i— Fa - ff)
\n- I
Op = ~ n-1 ((t1 ~ Ha) + (82 — Mẹ) + °° + (tn ~ Hx) = =F Do (ti ~ He)
i=l
n
Oy = — (sty — Me) (1 — My) + (2 — Mz)(e — tụ) + -** + [na — Ma) (Me — Hy) = "a1 Ồ (mi — H;)(M = Hy)
TY =
=
2.1.2 Trị riêng, vector riêng của ma trận hiệp phương sai
a Ma trén hiép phương sai
X là vector cột, mỗi thành phần Ä là biến ngẫu nhiên có phương sai xác
định và E)XVX =,
¬ Se
— Xây dựng ma trận hiệp phương sai với các thành phân “7 lả hiệp phương sai:
# =covLV,.V ]=£(VX - ¿),V - ø¿}
Cov(X.V) covey.) cov(VX V, )
s =
cov(V,.V ) coúv(LV,.Y.] cov(Y V,]
b Trị riêng, vector riêng
Khái niệm:
Cho 4€” là ma trận vuông
7m oan on ° eon 2 ¬
Vector €C”” gọi là vector riêng của trị riêng 7 © C nếu:
Trang 6Au =u
Tinh chat + Trị riêng là nghiệm của phương tinh đặc trưng det( A- AJ) =0
+ Một trị riêng có thê có nhiều vector riêng + Mỗi vector riêng chỉ ứng với một trị riêng đuy nhất + Mọi trị riêng của A đều khác không khi A khả nghịch + Nếu 2 là trị riêng của A thì Ä là trị riêng của 4 2.2 Thuật toán PCA
Cho ma trận X= |X;| €R"*?
Các bước của PCA lần lượt như sau:
s% Bước l: Tiền xử lý
s* Bước 2: Xây dựng không gian mới s* Bước 3: Chuyên dữ liệu từ không gian ban đầu vào không gian mới
2.2.1 Tiền xử lý
Dữ liệu ban đầu có thê có giá trị thay đôi bất thường, đo vậy cần phải
có một bước tiền xử lý đề chuẩn hóa giá tri trên các cột của ma trận X
Có 2 cách tiền xử lý thường được dùng cho PCA:
+ Centered PCA + Normed PCA
a Centered PCA
Mang tat ca các feater (của các cột của X) về cùng một gốc tọa độ :
x =lây
Sau bước tiền xử lí, ma trận # sẽ là đầu vào cho bước tiếp theo
R=
vn
ij
Trang 7
& Trường Đại học Bách Khoa — ĐHQG TP HCM Nhom II - DSTT
Trong đó ø là số dòng của X, Ø,là giá trị trung bình của cột thứ j của X
b Normed PCA
Mang tat ca các feater về cùng một tọa độ, đồng thời chuãn hóa về cùng một quãng độ lệch chuân bằng I:
3 =lây
„._ XT Gi
“he
(Trong đó Ø, là độ lệch chuẩn (standard deviation) của cột thứ / trong X.)
Xét ma trận X có kích thước n x p,
Ma trận hiệp phương sai của X:
1 T S,=—— xX xX
x n-1
Tinh chat:
+ Các thành phần nằm trên đường chéo của S, 1a phwong sai cla mét
kiêu đo riêng biệt nào đó
+ Các thành phần không nằm trên đường chéo là hiệp phương sai giữa hai kiêu đo nào đó (tức là nói lên tính tương quan giữa hai kiểu do,
như vậy trường hợp tốt nhất là các kiểu đo là không tương quan tức là
hiệp phương sai giữa chúng bằng 0)
Sau khi nhận được ma trận X cân biên nó về ma trận Y sao cho
s=—— YY’ lama tran duong chéo
n—1
Thực chất là phép biến đổi P: y=P #
Trang 81 1, 1 % Sr
=——YY ——IP XxX *
Sy= 7 YY! 6 (PX)(PX)' (*)
Sử dung tinh chat: (PX)'= X7P" (**)
Từ (*), (**) suy ra: Sy= >"> Pé pt
Dat A=X x"
Người ta chứng minh được: A là ma trận đối xứng và có thể phân tích
dưới dạng: A=EDET
Trong đó, E là ma trận gồm các vector riêng của A xếp theo cột, và
EE=E
PAP — PP’ DPP
Do dé: nm | no | thỏa mãn là ma trận đường
chéo
2.2.2 Xây dựng không gian mới
Tính ma trận hiệp phương sai V=#T#
Trong đó, Ve R?*? — là ma trận posttive semidefimite kích thước p x p, co m tri
riéng A;20, i=1,2, m;(m<p) Tim trị riêng của V theo thứ tự giảm dần À¡>3;> >À„
—>Véc tơ riêng tương ứng L¡,uU;, „ tạ
Vậy các véc tơ ứ, hoàn toàn độc lập tuyến tính, và chính là các trục của
không gian mới
2.2.3 Chuyển dữ liệu (từ không gian ban đầu vào không gian mới)
Xây dựng không gian mới từ k véc tơ đầu tiên (từ lớn đến nhỏ) trong m
véc tơ riêng của V, (k<m)
Như vậy gọi U=iu| up [u|eR”
Trang 9đề Trường Đại học Bách Khoa — ĐHQG TP HCM Nhom II - DSTT
Khi đó tọa độ các điểm trong hệ tọa độ mới là F= XU
3 Minh hoa thuat toan PCA
s* Gai đoạn L: Tiên xử li
Bước I: Thu thập đữ liệu Bước 2: Chuẩn hóa đữ liệu s* Giai đoạn 2: Xây dựng không gian mới
Bước 3: Xây dựng ma trận hiệp phương sai Bước 4: Xác định trỊ riêng, vector riêng Bước 5: lựa chọn các thành phần xây đựng vector đặc trưng s* Giai đoạn 3: Chuyên đữ liệu từ không gian ban đầu vào không gian mới Bước 6: chuyền dữ liệu và không gian mới
s* Ví dụ:
® Bước l: Thu thập dữ liệu
Xo Yo 2.5 2.4 0.5 0.7 2.2 2.9
xX 1.9 2.2
3.1 3.0 2.3 2.7
2 1.6
1 1.1 1.5 1.6 1.1 0.9
¢ Buse 2: Chuan héa dé liéu
Original PCA data Norm PCA data
Trang 10
Xnom 0.5 0.7 -0.5276 -0.4520 2.2 2.9 0.1571 0.3698
* 1.9 2.2 0.0362 0.1083
3.1 3.0 0.5195 0.4072 2.3 2.7 0.1973 0.2951
2 1.6 0.0765 -0.1158
1 1.1 -0.3262 -0.3026 1.5 1.6 -0.1248 -0.1158 1.1 0.9 -0.2859 -0.3773 mean 1.8100 1.9100 mean 0 0
std 0.7852 0.8465 std 0.3162 0.3162
var 0.6166 0.7166 var 0.1 0.1
Bước 3: Xây dựng ma trận hiệp phương sai
0.1000 0.0926
covVar =
0.096 0.1000
Bước 4: Xác định trị riêng, vector riêng
0.0074 0)
€ ival =|
0 0.1926
Bước 5: Lựa chọn các thành phần xây dựng vecto đặc trưng
Với 2 =0 1926 trị
0.707]
fea vector =| |
0.7071
,.: 4, =0.007 , 4 =0.192( voi “% —0-007F va 4 0.1926 tị
Trang 11đề Trường Đại học Bách Khoa — ĐHQG TP HCM Nhom II - DSTT
Bước 6: Chuyên dữ liệu và không gian mới
Original PCA data Norm PCA data
IL Ứng dụng của phân tích PCA để hồi quy tuyến tính
1 Giới thiệu hồi quy tuyến tính đơn phân
Hồi quy tuyến tính có thê được phân loại là đơn phân, nhị phân và đa phân dựa trên số lượng biến độc lập và biến phụ thuộc Trong đó, Hồi quy
tuyến tinh don phân la van dé co ban nhất, được xác định như sau:
Gia str x, y tuân theo phương trình quan hệ tuyến tính
y=fg+x+£_ (Ù)
;(¡ =0.l ` v Lệ £ ek x on
Trong đó PA € la hang so, là sai sô ngâu nhiên;
mỗi biến được quan sát n lần và vectơ quan sát là
(2) (3)
Trang 12$=((.1)¡ell.n
Dữ liệu trên được biêu diễn như sau ` Dựa vào dữ liệu quan sat ở trên ta có một đường hồi quy tuyên tính về các biên x, y là:
Dang ma tran của công thức (I) là:
Y=(I1,X)B+E (5)
} —( } , FE =(
Trong đó: B=W / >
—> Phương pháp giải được sử dụng phô biến nhất của hồi quy tuyến tính
đơn phân là dựa trên hồi quy tuyến tính bình phương nhỏ nhất và kết quả
của nó không có sự độc lập về tọa độ Tuy nhiên, trong thực tế thì có rất ít
biến độc lập hoàn toàn đo đó một phương pháp khác được sử dụng đề hồi
quy tuyến tính đơn phân mà không liên quan đến tọa độ chính là phương
pháp PCA
2 Tiến trình thực hiện thuật toán PCA để hồi quy tuyến tính:
Cho các biến tự do x, y liên hệ với nhau như đã được cho từ (1)
—{4), khi đó PCA được thực hiện trên tập vector (X, Y) và độ dốc của
thành phần chính thứ nhất là 8 sẽ biểu thị cho vector cần tìm Giả thiết
đường hồi quy tuyến tính đi qua các tâm tỉ cự (xX, ota tat cả các điểm
mẫu và độ đốc của nó là Pr thi một phương trình hồi quy tuyến tính sẽ được
thiết lập dựa trên PCA qua các bước
Bước I: Tính giá trị trung bình của x ; Y
— | v — | v
Bước 2: Thiết lập ma trận hiệp phương sai của (X, Y) là
cf (Ï |
|
Sy =| |
| o |
Trong do:
Trang 13¬ Trường Đại học Bách Khoa — ĐHQG TP HCM Nhom II - DSTT
"ram
4 => Ƒ_+(7 + ylg ~ ¢F ) +7
Bước 4: Tim vectơ riêng tương ứng là
|
(đ =| “~€Œ“ |
„ a
— D6 doc cua là:
À—Œ - Oo +0 + Mor - oF ) +4o
oF Œ
Ộ ; (X,Y) Cho răng đường quy hồi nhóm biên đi qua tâm tỉ cự
của mỗi điểm trong S, thi
(**)
Từ (*) và (**) ta có đường hồi quy tuyến tính cần tìm
10
Trang 14
3 Ví dụ thử nghiệm
3.1 Lý thuyết bài toán
Quan sát mầu số liệu về chi phí chào hàng và doanh số ban hang cua 12
doanh nghiệp
X: chỉ phí chào hàng (triệu đồng/năm)
Y: doanh số bán hàng (triệu đồng/năm) Giả sử X, Y có mối quan hệ tuyến tính, hãy ước lượng hàm hồi quy dựa vào PCA của đoanh số bán hàng phụ thuộc chi phí chào hàng?
Ta đặt:
X= (100, 106, 60, 160, 70, 170, 140, 120, 116, 120, 140, 150)
Y= (1270, 1490, 1060, 1626, 1800, 1020, 1610, 1280, 1390, 1440, 1590,
1380)’
Dựa vào đữ liệu trên ta thiết lập một đường hồi quy tuyến tính về các
biến x, y la:
V=B\x +B,
Các bước hồi quy tuyến tính bằng PCA như sau:
Bước I: Tính giá trị trung bình của X , Y
Bước 2: Thiết lập ma trận hiệp phương sai của (X, Y) là
11
Trang 15¬ Trường Đại học Bách Khoa — ĐHQG TP HCM Nhom II - DSTT
Trong do:
Bước 3: Tính giá trị riêng của x tương ứng với thành phần chính thứ nhất
A=-\ +0 + lo - oY) +400, }=4,922912
N
Bước 4: Tìm vectơ riêng tương ứng là
1 |
(đœ=| “4~t€Œ |
OU |
đi
—>Độ doc cua
À-Ø - Fr +(†P + [flor - Œ } +4
— = =-6|771
ei IG
la:
(***)
c(X,Ÿ) Cho rắng đường quy hồi nhóm biên đi qua tâm tỉ cự của mỗi điêm
trong S, thì
12
Trang 163.2
fh, =¥- BN =7.01055'
(****)
Từ (***) và (****) ta có đường hỏi quy tuyến tinh cần tìm là:
popxrt+P, =-O1 779% + 7.016055!
Code Matlab
Tinh trung binh bang ham mean(x)
‘Tinh phuong sai x,y
x = input('Nhap ma tran X: ');
y = input('Nhap ma tran Y: ');
A=0; B=0; C=0;
for i=l:length (x)
A=A+ (x (i) -mean (x))^2/1ength (z) ; B=B+ (y(i)-mean(y))*2/Length(y);
C=C+ (x (1) -mean(x))* (y(i)-mean(y))/length (x);
end
fprintf ('A=%d, B=%d,C=%d\n',A,B,C);
‘Tinh tri rieng:
lambdal=0.5*( A+B + sgrt( (A-B)^2 + 4*C^2) );
fprintf ('lambdal=%d\n', lambdal);
Tim vector rieng:
alphal=(1/ (lambdal-A))/C;
fprintf('alphal=%d\n',alphal);
sTinh cac he so beta:
betal=(lLambdal-A) /C;
beta0=mean(y)—-betal*mean (x);
fprintf('Phuong trinh duong hoi guy la: y=%d x +%d\n',betal,beta0);
13
Trang 17đề Trường Đại học Bách Khoa — ĐHQG TP HCM Nhom II - DSTT
TAI LIEU THAM KHAO
[1] Biotechnology https://bitly.com.vn/9p4v75
[2] Machinelearning https://bitly.com.vn/yuf24c
14