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

Một số kỹ thuật hiện đại trong phân tích thống kê nhiều chiều

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 (691.44 KB, 68 trang )

đại học quốc gia hà nội
trường đại học khoa học tù nhiªn
----------------------------

Lê Thị Thanh Hà

MỘT SỐ KỸ THUẬT HIỆN ĐẠI TRONG PHN
TCH THNG Kấ NHIU CHIU

Luận văn thạc sĩ khoa häc

Hµ Néi-2013


đại học quốc gia hà nội
trường đại học khoa học tù nhiªn
----------------------------

Lê Thị Thanh Hà

MỘT SỐ KỸ THUẬT HIỆN ĐẠI TRONG PHÂN
TÍCH THỐNG KÊ NHIỀU CHIỀU

Chuyên ngành: Lý thuyết xác suất và thống kê toán học
Mã số: 60 46 15

LuËn văn thạc sĩ khoa học

Ngi hng dn khoa hc:

GS. TSKH ĐẶNG HÙNG THẮNG



Hµ Néi-2013


Mục lục
Lời cảm ơn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

i

Lời nói đầu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

iv

1 Phân tích phân biệt tuyến tính
1.1 Quy tắc phân loại Bayes . . . . . . . . . . . . . . . . . . . . . .

1
2

1.1.1

Quy tắc phân loại Bayes 2 lớp . . . . . . . . . . . . . . .

2

1.1.2

Phân tích phân biệt tuyến tính Gauss . . . . . . . . . . .

3


1.1.3

LDA thông qua hồi quy bội . . . . . . . . . . . . . . . .

8

1.1.4

Quy tắc phân loại Bayes đa lớp . . . . . . . . . . . . . .

10

1.2 Phân biệt Logistic

. . . . . . . . . . . . . . . . . . . . . . . . .

15

1.2.1

Trường hợp 2 lớp . . . . . . . . . . . . . . . . . . . . . .

15

1.2.2

Trường hợp đa lớp . . . . . . . . . . . . . . . . . . . . .

19


2 Support Vector Machine

21

2.1 Support vector machine tuyến tính . . . . . . . . . . . . . . . .

21

2.1.1

Trường hợp tách tuyến tính . . . . . . . . . . . . . . . .

21

2.1.2

Trường hợp khơng tách tuyến tính . . . . . . . . . . . .

28

2.2 Support vector machine phi tuyến . . . . . . . . . . . . . . . . .

31

2.2.1

Không gian đặc trưng . . . . . . . . . . . . . . . . . . .

32


2.2.2

Thủ thuật Kernel . . . . . . . . . . . . . . . . . . . . . .

33

2.2.3

Tối ưu hóa trong khơng gian đặc trưng . . . . . . . . . .

39

2.2.4

SVM là một phương pháp quy chuẩn . . . . . . . . . . .

40

2.3 Support vector đa lớp . . . . . . . . . . . . . . . . . . . . . . . .

42

2.3.1

SVM đa lớp là một chuỗi bài toán nhị phân . . . . . . .

42

2.3.2


Một SVM đa lớp đúng . . . . . . . . . . . . . . . . . . .

43

ii


3 Một số ví dụ thực tế

49

3.1 Minh họa về phân tích phân biệt tuyến tính . . . . . . . . . . .

49

3.2 Ứng dụng SVM để phân loại email và spam . . . . . . . . . . .

53

3.3 Dữ liệu chẩn đoán ung thư vú Wisconsin . . . . . . . . . . . . .

56

Kết luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

60

Tài liệu tham khảo . . . . . . . . . . . . . . . . . . . . . . . . . . .


62


iv

Lời mở đầu
Cách đây khơng lâu, phân tích đa biến chỉ bao gồm các phương pháp tuyến
tính minh họa trên các bộ dữ liệu nhỏ và vừa. Hơn thế nữa, tính tốn thống
kê có nghĩa là xử lý hàng loạt và chủ yếu được thực hiện trên một máy tính
lớn tại cơ sở máy tính từ xa. Kể từ những năm 1970, tương tác tính tốn mới
chỉ bắt đầu được khởi sắc và phân tích dữ liệu thăm dị là một ý tưởng mới.
Trong các thập kỷ tiếp sau, chúng ta đã thấy được một số phát triển đáng
kể trong khả năng tính tốn địa phương và lưu trữ dữ liệu. Một số lượng lớn
các dữ liệu đang được sưu tập, lưu trữ, quản lý và tương tác với các gói phần
mềm thống kê cho phép việc phân tích dữ liệu phức tạp được thực hiện dễ dàng.
Ngày nay, các dữ liệu khổng lồ đã trở thành tiêu chuẩn để làm việc hơn là
bị đặt ở trường hợp ngoại lệ và thống kê là một môn khoa học được thay đổi để
theo kịp với sự phát triển này. Thay vì phụ thuộc quá nhiều vào kiểm tra giả
thuyết truyền thống, sự chú ý đang được tập trung vào thông tin hoặc khám
phá kiến thức. Theo đó, chúng ta thấy một số tiến bộ gần đây trong phân tích
đa biến bao gồm các kỹ thuật từ khoa học máy tính, trí thông minh nhân tạo
và lý thuyết học máy. Tuy nhiên, nhiều trong số các kỹ thuật mới này vẫn còn
đang trong giai đoạn mở đầu, chờ lý thuyết thống kê để bắt kịp đồng thời còn
chưa được phổ dụng mặc dù rất hiệu quả.
Nhằm tìm hiểu các kỹ thuật phân tích thống kê mới này, bản luận văn tập
trung vào 2 kỹ thuật đang được sử dụng rộng rãi hiện nay, đó là kỹ thuật phân
tích phân biệt và kỹ thuật Support vector machines. Ngoài phần mở đầu, kết
luận và tài liệu tham khảo, luận văn gồm có 3 chương:
Chương 1: "Phân tích phân biệt" trình bày các kỹ thuật phân loại của
phương pháp phân tích phân biệt bao gồm quy tắc phân loại Bayes và phân

biệt Logistic. Xuất phát là quy tắc phân loại cho bài toán nhị phân sau một


v

số trường hợp đặc biệt sẽ là quy tắc phân loại cho bài toán đa lớp.
Chương 2: "Support Vector Machines". Trong chương này, chúng ta sẽ mô
tả support vector machines tuyến tính và phi tuyến giống như lời giải của bài
toán phân loại nhị phân. Support vector phi tuyến kết hợp các phép biến đổi
khơng tuyến tính của các vectơ đầu vào và sử dụng các thủ thuật kernel để
có thể tính tốn đơn giản hơn. Mặc dù phương pháp support vector được xây
dựng đặc biệt cho trường hợp phân loại nhị phân nhưng chúng ta cũng nỗ lực
để mở rộng phương pháp cho bài toán đa lớp.
Chương 3: "Một số ví dụ thực tế"
Hà nội, ngày 22 tháng 02 năm 2013


Chương 1
Phân tích phân biệt tuyến tính
Xét một tập L các quan sát nhiều chiều và giả thiết rằng mỗi quan sát

được lấy từ lớp K xác định nào đó có các tính chất đặc trưng. Các lớp này có
thể đồng nhất, ví dụ như lồi thực vật, mức độ tín nhiệm của khách hàng, sự

hiện diện hay vắng mặt của 1 tình trạng y tế cụ thể, quan điểm về kiểm duyệt
Internet hoặc email -spam. Để phân biệt các lớp đã biết từ những lớp khác
nhau, chúng ta sẽ liên kết 1 lớp nhãn duy nhất (hoặc 1 giá trị đầu ra) với mỗi
lớp; sau đó, quan sát sẽ được mô tả giống như là các quan sát đã gán nhãn.
Trong mỗi tình huống, chúng ta sẽ nhằm vào 2 mục đích chính


• Phân biệt: Chúng ta sẽ sử dụng thông tin trong một tập dữ liệu các
quan sát đã gán nhãn để xây dựng nên một "quy tắc phân loại" mà sẽ
tách được các lớp một cách tốt nhất có thể.
• Phân lớp: Cho sẵn một tập các thước đo trên một quan sát mới mà chưa
được gán nhãn, chúng ta sẽ sử dụng quy tắc phân loại để dự đốn lớp của
quan sát đó.
Một quy tắc phân loại là một tổ hợp của các biến đầu vào. Khi có 2 lớp (K = 2),
chúng ta sẽ chỉ cần 1 quy tắc phân loại và khi có lớn hơn 2 lớp (K > 2), chúng
ta sẽ cần ít nhất là 2 và nhiều nhất là K − 1 quy tắc phân loại để phân biệt

các lớp và dự đoán lớp của quan sát mới.

Để hiểu rõ hơn, chúng ta sẽ xem xét một ví dụ về chuẩn đốn y tế sau đây.
Nếu một bệnh nhân vào phòng khẩn cấp với vấn đề đau dạ dày nghiêm trọng
1


Chương 1. Phân tích phân biệt tuyến tính

2

và các triệu chứng phù hợp với cả ngộ độc thực phẩm và viêm ruột thừa thì
1 quyết định đặt ra đó là " loại bệnh nào phù hợp với bệnh nhân hơn?" thì
sau đó bệnh nhân mới được điều trị. Trong bài tốn này, chúng ta thấy rằng,
hướng điều trị thích hợp cho nguyên nhân gây bệnh này sẽ là phương pháp
đối lập với nguyên nhân gây bệnh còn lại: viêm ruột thừa đòi hỏi phải phẫu
thuật trong khi ngộ độc thực phẩm thì khơng, đồng thời việc chẩn đốn sai có
thể gây ra tử vong. Theo kết quả của các thử nghiệm lâm sàng, bác sỹ quyết
định khi một quá trình điều trị có thể tối đa hóa khả năng thành công . Nếu
tổ hợp các kết quả kiểm tra nhắm vào một hướng cụ thể thì phẫu thuật được

khuyến khích; ngược lại, các bác sỹ sẽ đề xuất điều trị khơng phẫu thuật. Khi
đó, một "quy tắc phân loại" sẽ được xây dựng từ các kinh nghiệm dựa trên kết
quả điều tra của các bệnh nhân điều trị trước. Quy tắc phân loại càng đáng
tin cậy thì cơ hội chẩn đốn thành cơng càng lớn đối với một bệnh nhân mới
trong tương lai.

1.1

Quy tắc phân loại Bayes

1.1.1

Quy tắc phân loại Bayes 2 lớp

Đầu tiên chúng ta xét bài toán phân loại 2 lớp (K = 2), trong đó chúng ta
mong muốn phân biệt giữa 2 lớp Π1 , Π2 .
Cho
P (X ∈ Πi ) = πi , i = 1, 2,

(1.1)

là xác suất tiên nghiệm mà 1 quan sát ngẫu nhiên được lựa chọn X = x thuộc
Π1 hoặc Π2 . Giả sử, mật độ xác xuất đa biến có điều kiện của X với lớp thứ i

P ({X = x|X ∈ Πi }) = fi (x), i = 1, 2

(1.2)

Theo định lý Bayes, chúng ta thu được xác suất hậu nghiệm
p(Πi |x) = P (X ∈ Πi |X = x) =


fi (x)πi
, i = 1, 2.
f1 (x)π1 + f2 (x)π2

(1.3)

Như vậy, với một x cho trước, chúng ta có ý tưởng phân loại đó là gán x vào
lớp mà có xác suất hậu nghiệm cao hơn. Quy tắc này được gọi là quy tắc phân


Chương 1. Phân tích phân biệt tuyến tính

3

loại Bayes. Hay nói cách khác, chúng ta sẽ gán x vào Π1 nếu
p(Π1 |x)
> 1,
p(Π2 |x)

(1.4)

và gán vào Π2 nếu ngược lại. Thay (1.3) vào (1.4), chúng ta có quy tắc phân
loại



 x ∈ Π1 khi f1 (x) > π2
f2 (x) π1
Quy tắc phân loại


 x ∈ Π2 ngược lại.

Trên biên {x ∈ Rr |
lớp.

1.1.2

(1.5)

f1 (x)
π2
= }, chúng ta sẽ gán ngẫu nhiên x vào 1 trong hai
f2 (x)
π1

Phân tích phân biệt tuyến tính Gauss

Bây giờ chúng ta sẽ làm quy tắc phân lớp Bayes chính xác hơn bằng giả
thiết Fisher rằng cả 2 mật độ xác suất nhiều chiều trong (1.2) là Gauss, có
vectơ trung bình tùy ý.
(a) Trường hợp có ma trận covariance chung. Tức là, f1 (·) là 1 mật độ
Nr (µ1, Σ1 ) và f2 (·) là mật độ Nr (µ2 , Σ2 ), trong đó Σ1 = Σ2 = ΣXX .
Tỷ số hai mật độ

1
exp{−
(x − µ1 )T Σ−1
XX (x − µ1 )}
f1 (x)

2
=
,
1
f2 (x)
−1
T
exp{− (x − µ2 ) ΣXX (x − µ2 )}
2

(1.6)

Suy ra
loge

1
f1 (x)
T −1
= (µ1 − µ2 )T Σ−1
XX x − (µ1 − µ2 ) ΣXX (µ1 + µ2 )
f2 (x)
2
1 T −1
T −1
= (µ1 − µ2 )T Σ−1
XX x − (µ1 ΣXX µ1 − µ2 ΣXX µ2 ).
2

(1.7)
(1.8)


Như vậy
L(X) = loge {

f1 (x)π1
π1
1 T −1
T −1

Σ
µ
−µ
Σ
µ
)+log
(
} = (µ1 −µ2 )T Σ−1
x−
).
1
2
e
1
2
XX
XX
XX
f2 (x)π2
2
π2

(1.9)

Đặt
1 T −1
π1
T −1
b = Σ−1
),
XX (µ1 − µ2 ); b0 = − (µ1 ΣXX µ1 − µ2 ΣXX µ2 ) + loge (
2
π2


Chương 1. Phân tích phân biệt tuyến tính

4

Khi đó
L(X) = b0 + bT x.
Quy tắc phân loại
Quy tắc phân loại

x ∈ Π1 khi L(x) > 0

x ∈ Π2 ngược lại.

(1.10)

Trên biên {x ∈ Rr |L(X) = 0}, phương trình kết quả là tuyến tính trong x và
do đó, xác định một siêu phẳng phân tách 2 lớp. Quy tắc (1.10) được gọi là

phân tích phân biệt tuyến tính Gauss(LDA).
Biểu thức
U = bT x = (µ1 − µ2 )T Σ−1
XX x,

(1.11)

được gọi là hàm phân biệt tuyến tính Fisher(LDF).

Tổng xác suất phân loại sai

LDF chia không gian đặc trưng Rr thành 2 lớp rời nhau R1 , R2 . Nếu x rơi
vào R1 , ta gán nó vào Π1 trong khi nếu x rơi vào R2 , ta sẽ gán nó vào Π2 . Bây
giờ, chúng ta quan tâm tới xác suất phân loại sai x.
x sẽ bị phân loại sai nếu x được gán vào Π2 nhưng thực sự nó lại thuộc Π1
hoặc x được gán vào Π1 nhưng thực sự nó lại thuộc vào Π2 .
Khoảng cách Mahalanobis giữa Π1 và Π2 được định nghĩa là
∆2 = (µ1 − µ2 )T Σ−1
XX (µ1 − µ2 ).

(1.12)

E(U |X ∈ Πi ) = bT µi = (µ1 − µ2 )T Σ−1
XX µi , i = 1, 2,

(1.13)

var(U |X ∈ Πi ) = bT ΣXX b = ∆2 .

(1.14)


Ta có



Đặt
Z=

U − E(U |X ∈ Πi )
var(U |X ∈ Πi )

∼ N (0; 1)


Chương 1. Phân tích phân biệt tuyến tính

5

Khi đó tổng xác suất phân loại sai là
P (∆) = P (X ∈ R2 |X ∈ Π1 )π1 + P (X ∈ R1 |X ∈ Π2 )π2

(1.15)

trong đó,
P (X ∈ R2 |X ∈ Π1 ) = P (L(X) < 0|X ∈ Π1 )
1
π2

= P (Z < − − loge )
2


π1
π2
1

= φ(− − loge )
2

π1

(1.16)


P (X ∈ R1 |X ∈ Π2 ) = P (L(X) < 0|X ∈ Π2 )

1
π2
= P (Z >
− loge )
2

π1
1
π2

= φ(− + loge )
2

π1
Nhận xét 1.1.1. Nếu π1 = π2 =


(1.17)

1
thì
2

P (X ∈ R2 |X ∈ Π1 ) − P (X ∈ R1 |X ∈ Π2 ) = φ(

−∆
)
2

−∆
). Một đồ thị của P (∆) theo ∆ chỉ ra 1 đường cong
2
dốc xuống. Như mong đợi, nó có giá trị 1 khi ∆ = 0 (2 phần tử là đồng nhất)
và do đó P (∆) = 2φ(

và tiến tới 0 khi ∆ tăng. Nói cách khác, khoảng cách giữa 2 trung bình các
phần tử càng lớn thì càng ít có khả năng phân loại sai x.
Kịch bản lấy mẫu

r(r + 1)
tham số khác nhau trong µ1 , µ2 và ΣXX
2
chưa biết nhưng có thể được ước lượng từ tập dữ liệu trên X. Giả sử rằng
Thơng thường, có 2r +

chúng ta có các mẫu độc lập từ 2 lớp Π1 , Π2 . Cho {X1j } là mẫu kích thước n1

lấy từ Π1 và cho {X2j } là mẫu kích thước n2 lấy từ Π2 .

Các kịch bản khác nhau dưới đây là có khả năng khi lấy mẫu từ phần tử của
P:


Chương 1. Phân tích phân biệt tuyến tính

6

1. Lấy mẫu có điều kiện, trong đó 1 mẫu kích thước cố định n = n1 + n2
là được lựa chọn ngẫu nhiên từ P, và tại x cố định có n1 (x) quan sát

từ Πi , i = 1, 2. Kịch bản lấy mẫu này thường xuất hiện trong sinh trắc
nghiệm.

2. Lấy mẫu hỗn hợp, trong đó 1 mẫu kích thước cố định n = n1 + n2 là được
lựa chọn ngẫu nhiên từ P, thỏa mãn n1 , n2 được lựa chọn ngẫu nhiên.
Điều này khá thông thường trong nghiên cứu sự phân biệt.

3. Lấy mẫu tách, trong đó mẫu kích thước ni cố định được lựa chọn ngẫu
nhiên từ Πi , i = 1, 2, và n = n1 + n2 . Đây là kịch bản phổ biến nhất.
Trong cả 3 kịch bản, các ước lượng hợp lý nhất của b0 , b có thể thu được
(Anderson, 1982).
Các ước lượng mẫu

Các ước lượng ML của µi , i = 1, 2 và ΣXX được cho bởi
ni

¯i = n−1

µ
ˆi = X
i

Xij ; i = 1, 2

(1.18)

j=1

ˆ XX = n−1 SXX ,
Σ

(1.19)

trong đó
(1)

(2)

(1.20)

SXX = SXX + SXX ,
ni
(i)
SXX

=
j=1


¯i )(Xij − X
¯i )T , i = 1, 2; n = n1 + n2 .
(Xij − X

(1.21)

Nhận xét 1.1.2. Nếu chúng ta muốn ước lượng không chệch của ΣXX , chúng
ta chia SXX trong (1.20) cho bậc tự do của nó n − 2 = n1 + n2 − 2 để thu được

ΣXX .

Nếu π1 , π2 chưa biết, chúng ta có thể sử dụng ước lượng
πˆi =

ni
, i = 1, 2.
n

(1.22)

Thay thế các ước lượng này vào L(X) trong (1.9) thu được
ˆ
L(x)
= bˆ0 + ˆbTx

(1.23)


Chương 1. Phân tích phân biệt tuyến tính


7

trong đó,
ˆb = Σ−1 (X
¯1 − X
¯2)
XX
n1
n2
ˆb0 = − 1 {X
¯
¯ T −1 ¯
¯ 1T Σ−1 X
− loge ,
XX 1 − X2 ΣXX X2 } + loge
2
n
n

(1.24)
(1.25)

lần lượt là ước lượng ML của b, b0 . Quy tắc phân lớp
Quy tắc phân loại

ˆ
x ∈ Π1 khi L(x)
>0

x ∈ Π2 ngược lại.


Số hạng
ˆbT x = (X
¯1 − X
¯ 2 )T Σ−1 x,
XX

(1.26)

ước lượng LDF Fisher.
(b) Trường hợp ma trận covariance khác nhau. Trong mục này chúng ta
sẽ tìm hiểu xem quy tắc phân lớp (1.10) sẽ thay đổi như thế nào nếu ma trận
covariance của 2 dữ liệu Gauss là khác nhau. Nghĩa là, Σ1 = Σ2 .
Trong trường hợp này (1.7) trở thành
loge

1
f1 (x)
T −1
= c0 − {(x − µ1 )T Σ−1
1 (x − µ1 ) − (x − µ2 ) Σ2 (x − µ2 )}
f2 (x)
2
1
−1
T −1
T −1
= c1 − xT (Σ−1
1 − Σ2 )x + (µ1 Σ1 − µ2 Σ2 )x,
2


(1.27)
(1.28)

trong đó c0 , c1 là các hằng số mà chỉ phụ thuộc vào tham số µ1 , µ2 , Σ1 , Σ2 . Tỷ
số hợp lý -log (1.28) có dạng 1 hàm bậc 2 của x. Trong trường hợp này, lập
Q(x) = β0 + β T x + xT Ωx,

(1.29)

1
− Σ−1
Ω = − (Σ−1
2 )
2 1
−1
β = Σ−1
1 µ1 − Σ2 µ2

(1.30)

trong đó

1
|Σ1 |
π2
T −1
β0 = − {loge
+ µT1 Σ−1
).

1 µ1 − µ2 Σ2 µ2 } − loge (
2
|Σ2 |
π1

(1.31)
(1.32)

Chú ý rằng Ω là 1 ma trận đối xứng. Quy tắc phân lớp
gán x vào Π1 , nếu Q(x) > 0,
gán x vào Π2 , nếu Q(x) < 0,

(1.33)


Chương 1. Phân tích phân biệt tuyến tính

8

Hàm Q(x) được gọi là hàm phân biệt bậc 2(QDF) và quy tắc phân lớp (1.33)
được gọi là phân tích phân biệt bậc 2 (QDA). Biên {x ∈ Rr |Q(x) = 0} mà tách
2 lớp là một hàm bậc 2 của x.

Ước lượng hợp lý cực đại (ML)
Nếu r + 3 tham số phân biệt trong µ1 , µ2 , Σ1 và Σ2 là chưa biết và π1 , π2 cũng
chưa biết (1 tham số điều kiện), chúng có thể được ước lượng bằng cách sử
dụng mẫu ở phía trên với ngoại lệ của ma trận covariance, trong đó ước lượng
của Σi là

ni


Σi =

n−1
i
j=1

¯ i )(Xij − X
¯ i )T ; i = 1, 2.
(Xij − X

(1.34)

Thay thế các ước lượng vào Q(x) trong (1.29), chúng ta có
Q(x) = β0 + β T x + xT Ωx,

(1.35)

1
−1
Ω = − (Σ−1
1 − Σ2 )
2
−1 ¯
¯
β = Σ1 X1 − Σ−1
2 X2
n1
n2
+ loge

β0 = −c1 − loge
n1
n

(1.36)

trong đó

(1.37)
(1.38)

và c1 là ước lượng của số hạng đầu tiên trong (1.28).
Do quy tắc phân loại Q(x) phụ thuộc vào nghịch đảo của Σ1 và Σ2 , nó chỉ
ra rằng nếu cả n1 hoặc n2 nhỏ hơn r thì Σi (i = 1 hoặc 2) sẽ suy biến và QDA
thất bại.

1.1.3

LDA thông qua hồi quy bội

Các kết quả phía trên cũng có thể thu được bằng cách sử dụng hồi quy bội.
Ý tưởng là chúng ta tạo ra một biến chỉ số Y biểu diễn các quan sát mà rơi
vào các lớp tương ứng, sau đó hồi quy Y trên vectơ đặc trưng X.
Cho
Y =

y1 , khi X ∈ Π1

y2 , khi X ∈ Π2


(1.39)


Chương 1. Phân tích phân biệt tuyến tính

là các nhãn lớp và cho

.
Y = (y1 1Tn1 ..y2 1Tn2 )

9

(1.40)

là vector hàng (1 × n), các thành phần của nó là các giá trị của Y cho toàn bộ

n quan sát. Cho

.
X = (X1 ..X2 )

(1.41)

là ma trận (r × n), trong đó X1 là ma trận (r × n1 ) của các quan sát từ Π1 và
X2 là (r × n2 ) - ma trận của các quan sát từ Π2 .
Cho

Xc = X − X¯ = X Hn
Yc = Y − Y¯ = YHn ,


(1.42)
(1.43)

trong đó Hn = In − n−1 Jn là ma trận trung tâm và Jn = 1n 1Tn là ma trận cỡ
n × n của 1.

Nếu chúng ta hồi quy vector hàng Yc trên ma trận Xc thì ước lượng OLS của

vector hệ số hồi quy bội β được cho bởi

βˆT = Yc XcT (Xc XcT )−1 .

(1.44)

Xc XcT = SXX + kddT ,

(1.45)

Yc YcT = k(y1 − y2 )2 ,

(1.47)

Chúng ta có

Yc XcT = k(y1 − y2 )dT ,

(1.46)

trong đó
−1

¯
¯
d = n−1
1 X1 1n1 − n2 X2 1n2 = X1 − X2 ,

SXX = X1 Hn1 X1T + X2 Hn2 X2T ,

và k =

(1.48)
(1.49)

n1 n2
. Do đó,
n
βˆT = k(y1 − y2 )dT (SXX + kddT )−1

T −1 −1
= k(y1 − y2 )dT S−1
XX (Ir + kdd SXX ) .

(1.50)
(1.51)


Chương 1. Phân tích phân biệt tuyến tính

10

Chúng ta có

T

(Ir + kdd

−1
S−1
XX )

kddT S−1
XX
= Ir −
T
1 + kd S−1
XX d
Ir
=
,
1 + kdT S−1
XX d

khi đó,
k(y1 − y2 ) ˆ
)
βˆ = (
n − 2 + T2

−1

d,
XX


(1.52)

trong đó ˆ XX = SXX /(n − 2) và
T 2 = kdT Σ−1
XX d =

n1 n2 ¯
¯ 2 )T Σ−1 (X
¯1 − X
¯2)
( X1 − X
XX
n

(1.53)

là thống kê Hotelling T 2 , mà được sử dụng để kiểm tra giả thuyết µ1 = µ2 . Giả
sử tính chuẩn tắc đa biến
(

n−r−1 2
)T ∼ Fr,n−r−1
r(n − 2)

(1.54)

khi giả thuyết này là đúng. Chú ý rằng D2 = dT ΣX X −1 d là tỷ lệ thuận với 1
ước lượng của ∆2 . Từ (1.24) và (1.52), ta có
ˆ

¯
¯
βˆ ∝ Σ−1
XX (X1 − X2 ) = b,

(1.55)

n1 n2 (y1 − y2 )
. Điều này, lần đầu tiên được ghi
n(n1 + n2 − 2 + T 2 )
nhận bởi Fisher(1936). Do đó, chúng ta có thể thu được ước lượng Fisher LDF
trong đó, hằng số tỷ lệ là

(1.24) thông qua hồi quy bội.

1.1.4

Quy tắc phân loại Bayes đa lớp

Bây giờ chúng ta giả sử rằng, các phần tử sẽ được chia vào K > 2 lớp rời
nhau. Xét ví dụ về phân loại văn bản. Ở mức độ đơn giản nhất của xử lý thông
tin, chúng ta cần lưu và phân loại các file, email và URL. Với mức độ phức tạp
hơn, chúng ta cần gán các mục tin tức, computer FAQs, an ninh thông tin, xác
định tác giả, nhận dạng thư rác,... để phân loại.
Cho
p(X ∈ Πi ) = πi , i = 1, ..., K,

(1.56)



Chương 1. Phân tích phân biệt tuyến tính

11

là xác suất tiên nghiệm của một quan sát ngẫu nhiên được chọn X mà thuộc
vào mỗi lớp khác nhau và cho
p(X = x|X ∈ Πi ) = fi (x), i = 1, ..., K,

(1.57)

là mật độ xác suất nhiều chiều cho mỗi lớp. Kết quả xác suất hậu nghiệm mà
1 quan sát x thuộc lớp thứ i được cho bởi
p(Πi |x) = p(X ∈ Πi |X = x) =

fi (x)πi
K
k=1 fk (x)πk

, (i = 1, 2, ..., K).

(1.58)

Quy tắc phân loại Bayes cho K lớp là gán x vào lớp có xác suất hậu nghiệm lớn
nhất. Do mẫu số của (1.58) là như nhau với mọi Πi , i = 1, 2, ..., K, nên chúng
ta sẽ gán x vào Πi nếu
fi (x)πi = max fj (x)πj .
1≤j≤K

(1.59)


Nếu cực đại trong (1.59) là không xác định duy nhất 1 lớp mà x được gán vào
thì chúng ta sẽ sử dụng phép gán ngẫu nhiên để phá vỡ ràng buộc giữa các lớp
thích hợp.
Do đó, x được gán vào Πi nếu fi (x)πi > fj (x)πj , ∀j = i hoặc tương đương

nếu loge (fi (x)πi ) > loge (fj (x)πj ), ∀j = i. Quy tắc phân loại Bayes có thể được

xác định ở một dạng tương đương bởi cặp so sánh các xác suất hậu nghiệm.
Chúng ta định nghĩa "log −odds" mà cho biết x sẽ được gán vào Πi chứ không
phải Πj như sau

Lij (x) = loge {

fi (x)πi
p(Πi |x)
} = loge {
}.
p(Πj |x)
fj (x)πj

(1.60)

Do đó, chúng ta gán x vào Πi nếu Lij (x) > 0, ∀j = i. Chúng ta xác định vùng
phân lớp R1 , R2 , ..., RK mà

Ri = {x ∈ Rr |Lij (x) > 0; j = 1, ..., K; j = i}, i = 1, ..., K.

(1.61)

Lập luận này có thể chính xác hơn bằng cách giả thiết rằng lớp thứ i Πi mà fi (·)

là mật độ N (µi , Σi ) trong đó µi là r- vector và Σi là ma trận (r × r) covariance,
(i = 1, 2, ..., K). Chúng ta giả thiết sâu hơn rằng ma trận covariance cho K lớp

là đồng nhất Σ1 = · · · = ΣK và bằng ma trận covariance chung ΣXX . Dưới giả


Chương 1. Phân tích phân biệt tuyến tính

12

thiết Gauss nhiều biến, log −odds của việc gán x vào Πi (phản đối Πj ) là một

hàm tuyến tính của x,

Lij (x) = b0ij + bTij x,

(1.62)

bij = (µi − µj )T Σ−1
XX
πi
1
T −1
).
b0ij = − {µTi Σ−1
XX µi − µj ΣXX µj } + loge (
2
πj

(1.63)


trong đó

(1.64)

Do Lij (x) là tuyến tính theo x, các Ri trong (1.61) chia khơng gian r- chiều
bởi các siêu phẳng.
Ước lượng hợp lý cực đại
Thông thường, vector trung bình và ma trận covariance chung sẽ chưa biết.
r(r + 1)
Trong trường hợp đó, chúng ta ước lượng Kr +
tham số phân biệt
2
bằng cách lấy mẫu từ mỗi K lớp. Do đó, từ lớp thứ i, chúng ta lấy ni quan sát
Xij , j = 1, 2, ..., ni trên r- vect-tơ mà sau đó được lập thành ma trận dữ liệu
r×ni

Xi = (Xi1 , ..., Xi,ni ), i = 1, 2, ..., K.

Cho n =

K

(1.65)

ni là tổng số quan sát. Do đó, K-ma trận dữ liệu (1.65) là được

i=1

xếp thành 1 ma trận dữ liệu đơn X có dạng

r×n1 .
. r×nK
X = ( X1 .. · · · .. XK )

r×n

= (X11 , · · · , X1,n1 , · · · , XK1 , · · · , XK,nK ).

(1.66)

Trung bình của mỗi biến cho lớp thứ i được cho bởi r-vector
ni

¯i =
X

n−1
i Xi 1ni

=

n−1
i

Xij , i = 1, 2, ..., K,

(1.67)

j=1


và K vector đó được sắp xếp thành ma trận
r×n

¯ K , ..., X
¯ K ).
¯ 1 , ..., X
¯ 1 , ..., X
X¯ = (X

(1.68)

.
.
Xc = X − X¯ = (X1 Hn1 .. · · · ..XK HnK ),

(1.69)

n1

Cho

r×n

nK


Chương 1. Phân tích phân biệt tuyến tính

13


trong đó Hnj là (nj × nj ) ma trận trung tâm. Do đó, chúng ta tính tốn
ni

K

r×r

SXX =

Xc XcT

=
i=1 j=1

¯ i )(Xij − X
¯ i )T .
(Xij − X

(1.70)

Bây giờ, chúng ta xét phân tích
¯ = (Xij − X
¯ i ) + (X
¯ i − X),
¯
Xij − X

(1.71)

cho quan sát thứ j trong lớp thứ i, trong đó

K

¯ = n−1 X 1n = n−1
X

n1

¯ 1 , ..., X
¯ r )T
Xij = (X

(1.72)

i=1 j=1

là tồn bộ vector giá trị trung bình bỏ qua các lớp đồng nhất. Nhân vào bên
phải 2 vế của (1.71) với chuyển vị tương ứng và lấy tổng trên toàn bộ n quan
sát và chú ý rằng, số hạng tích trực giao là biến mất, chúng ta đi tới phân tích
nhiều chiều cùng phương sai đồng nhất (MANOVA)
(1.73)

Stot = SB + SW ,
trong đó Stot , SB và SW được cho bởi bảng trên.

Bảng 1.1: Bảng phân tích ma trận hiệp phương sai đa biến cho K lớp Π1 , Π2 , ..., ΠK ,
khi có một mẫu ngẫu nhiên của ni quan sát được lấy từ Πi , i = 1, 2, ..., K.
Source of variation

df


Sum of Squares Matrix

Between classes

K−1

Within classes

n−K

SW =

Total

n−1

Stot =

K
i=1

SB =
K
i=1

K
i=1

¯ i − X)(
¯ X

¯ i − X)
¯ T
ni (X
ni
j=1 (Xij
ni
j=1 (Xij

¯ i )(Xij − X
¯ i )T
−X
¯
¯ T
− X)(X
ij − X)

Do đó, tồn bộ ma trận covariance của các quan sát, Stot có n − 1 bậc tự

do và được tính tốn bằng cách bỏ đi các lớp đồng nhất, được phân thành 1
phần ma biểu diễn ma trận covariance giữa các lớp SB , có K − 1 bậc tự do và


Chương 1. Phân tích phân biệt tuyến tính

14

1 phần khác biểu diễn ma trận covariance hợp nhất các lớp, SW (= SXX ), có
n − K bậc tự do. Một ước lượng không chệch của ma trận covariance chung

ΣXX của K lớp được cho bởi


ΣXX = (n − K)−1 SW = (n − K)−1 SXX .

(1.74)

Nếu chúng ta cho fi (x) = fi (x, ηi ), trong đó ηi là một r vector của các tham
số chưa biết và giả sử rằng {πi } đã biết, xác suất hậu nghiệm (1.58) được ước
lượng bởi

pˆ(Πi |x) =

fi (x, ηˆi )πi
K

, i = 1, ..., K,

(1.75)

fj (x, ηˆj )πj
j=1

trong đó, ηˆi là 1 ước lượng của ηi . Do đó, quy tắc phân lớp là gán x vào Πi nếu
fi (x, ηˆi )πi = max fj (x, ηˆj )πj ,
1≤j≤K

(1.76)

quy tắc này thường được gọi là quy tắc phân loại "plug-in".
Nếu {fi (·)} là mật độ Gauss nhiều chiều và ηi = (µi , ΣXX ) thì phiên bản


mẫu của Lij (x) được cho bởi

Lij (x) = boij + bTij x,

(1.77)

¯i − X
¯ j )T Σ−1
bij = (X
XX

(1.78)

gán x vào Πi nếu Lij (x) > 0; j = 1, 2, ..., K; j = i.

(1.80)

trong đó,
nj
ni
1
T −1 ¯
¯
} − loge { }.
(1.79)
boij = − {XiT Σ−1
XX Xi − Xj ΣXX Xj } + loge {
2
n
n

ni
Chúng ta ước lượng tiên nghiệm πi bởi ước lượng tỷ lệ πi = ; i = 1, 2, ..., K.
n
Quy tắc phân loại chuyển thành

Nói cách khác, chúng ta gán x vào lớp Πi với giá trị lớn nhất của Lij (x).
Trong trường hợp có ma trận covariance không thể được giả thiết như nhau,
ước lượng vector trung bình thu được bằng cách ước lượng (1.67) và ma trận


Chương 1. Phân tích phân biệt tuyến tính

15

covariance lớp thứ i, Σi , được ước lượng bới ước lượng hợp lý cực đại của nó
ni

Σi =

n−1
i
j=1

¯ i )(Xij − X
¯ T ), i = 1, 2, ..., K.
(Xij − X
i

(1.81)


Kr(r + 1)
tham số phân biệt cần ước lượng và
2
nếu r lớn thì đây sẽ là một sự gia tăng đáng kể so với thực hiện LDA. Các kết

Như vậy, chúng ta sẽ có Kr +

quả phân tích phân biệt bậc 2 (QDA) là tương tự với trường hợp 2 lớp nếu
chúng ta quyết định dựa vào so sánh loge fi (x), i = 1, 2, ..., K − 1 với loge fK (x)
đã nói.

1.2

Phân biệt Logistic

1.2.1

Trường hợp 2 lớp

Chúng ta thấy rằng từ (1.9) và thực tế rằng p(Π2 |x) = 1−p(Π1 |x) tại X = x,

mà mật độ xác suất hậu nghiệm thỏa mãn
logit p(Π1 |x) = loge (

p(Π1 |x)
) = β0 + β T x,
1 − p(Π1 |x)

(1.82)


có dạng một mơ hình hồi quy logistic. Tiếp cận logistic để phân biệt giả thiết
rằng tỷ lệ hợp lý - log (1.9) có thể được mơ hình như 1 hàm tuyến tính của x.
Nghịch đảo (1.82), chúng ta có
eL(x)
p(Π1 |x) =
,
1 + eL(x)
1
p(Π2 |x) =
1 + eL(x)

(1.83)
(1.84)

trong đó,
L(x) = β0 + β T x.

(1.85)

Chúng ta có thể viết (1.83) là
p(Π1 |x) =

1
= σ(L(x)),
1 + e−L(x)

(1.86)

1
là một hàm sigmoid, lấy giá trị u ∈ R trên (0; 1).

1 + e−u
Ước lượng hợp lý cực đại

trong đó, σ(u) =


Chương 1. Phân tích phân biệt tuyến tính

16

Bây giờ chúng ta viết p(Π1 |x) là p1 (x, β0 , β) và tương tự với p2 (x, β0 , β). Do đó,

thay vì ước lượng µ1 , µ2 đầu tiên và ΣXX như đã làm trong (1.20) và (1.21)

để ước lượng β0 và vector hệ số β, chúng ta sẽ ước lượng trực tiếp thông qua
(1.82). Chúng ta định nghĩa biến đáp ứng Y như sau
Y =

1 nếu X ∈ Π1

0 nếu ngược lại.

(1.87)

Các giá trị của Y là các nhãn lớp. Điều kiện trên X, biến ngẫu nhiên Bernoully
Y có P (Y = 1) = π1 và P (Y = 0) = 1 − π1 = π2 . Do đó, chúng ta nghiên cứu

trong mơ hình dữ liệu nhị phân và cách thông thường chúng ta thực hiện điều
này là thông qua hồi quy logistic.
Cho trước n quan sát, (Xi , Yi ), i = 1, 2, ..., n trên (X, Y ), điều kiện hợp lý cho

(β0 , β) có thể được viết là
n

L(β0, β) =

i=1

(p1 (xi , β0 , β))yi (1 − p1 (xi , β0 , β))1−yi ,

(1.88)

khi đó điều kiện hợp lý -log là
n

ℓ(β0 , β) =
i=1
n

=
i=1

{yi loge p1 (xi , β0 , β) + (1 − yi ) loge (1 − p1 (xi , β0 , β))}

(1.89)

{yi (β0 + β T xi ) − loge (1 + eβ0 +βx )}.

(1.90)

Các ước lượng hợp lý cực đại, β0 , β của (β0 , β) thu được bằng cách cực đại

ℓ(β0 , β) theo β0 , β. Thuật toán cực đại được rút thành một phiên bản lặp của
quy trình bình phương tối thiểu có trọng số trong đó các trọng số và các phản
ứng được cập nhật tại mỗi bước tương tác. Chi tiết của thuật tốn lặp bình
phương tối thiểu đánh lại trọng số được trình bày ở mục sau.
Ước lượng hợp lý cực đại β0 , β có thể đưa vào (1.85) để đưa ra 1 ước lượng
khác của LDF,
L(x) = β0 + β T x.
Quy tắc phân lớp
x ∈ Π1 , nếu L(x) > 0

x ∈ Π2 , nếu L(x) < 0,

(1.91)


Chương 1. Phân tích phân biệt tuyến tính

17

được gọi là phân tích phân biệt logistic.
Chúng ta chú ý rằng cực đại (1.90) nói chung sẽ khơng thu được cùng ước
lượng cho β0 , β như chúng ta tìm được trong (1.24) và (1.25) cho Fisher LDF.
Một quy trình phân lớp tương đương là để sử dụng L(x) trong (1.91) để ước
lượng xác suất p(Π1 |x) trong (1.83). Thay thế L(x) vào (1.83) thu được ước

lượng

p(Π1 |x) =

eL(x)

1 + eL(x)

,

(1.92)

vì vậy x được gán vào Π1 nếu p(Π1 |x) là lớn hơn giá trị cắt nào đó, giả sử 0.5
và x được gán vào Π2 nếu ngược lại.

Thuật tốn bình phương tối thiểu đánh lại trọng số lặp
Để rõ ràng hơn, chúng ta định nghĩa lại r- vector xi và β như (r + 1)-vector
sau: xi ←− (1, xTi )T và β ←− (β0 , β T )T . Do đó, β0 + β T xi có thể được viết gọn
hơn là β T xi . Chúng ta cũng viết p1 (xi , β0 , β) là p1 (xi , β) và ℓ(β0 , β) là ℓ(β).
Đạo hàm (1.90) và cho đạo hàm bằng 0 thu được phương trình điểm
∂ℓ(β)
=
ℓ(β) =
∂β

n

·

i=1

xi {yi − p1 (xi , β)} = 0

(1.93)

Đây là r + 1 phương trình khơng tuyến tính trong r + 1 tham số logistic β.

Từ (1.93), chúng ta thấy rằng n1 =
n2 =

n
i=1

n
i=1

p1 (xi , β) và do đó, chúng ta cũng có

p2 (xi , β).

Các phương trình (1.93) được giải quyết bằng cách sử dụng thuật tốn bình
phương tối thiểu đánh lại trọng số lặp (IRLS). Đạo hàm cấp 2 của ℓ(β) được
cho bởi ma trận (r + 1) × (r + 1)- Hessian.
∂ 2 ℓ(β)
=−
=

∂β∂β T
··

n

i=1

xi xTi p1 (xi , β)(1 − p1 (xi , β)).

(1.94)


Thuật toán IRLS được dựa trên việc sử dụng tiếp cận lặp Newton-Raphson để
tìm ước lượng ML.
Thuật tốn bắt đầu với β 0 = 0. Sau đó, bước thứ k + 1 trong thuật toán
thay thế lặp thứ k β (k) bởi
··

β (k+1) = β (k) − ℓ (β)

−1 ·

ℓ (β) ,

(1.95)


Chương 1. Phân tích phân biệt tuyến tính

18

trong đó các đạo hàm được tính tại β (k) .
Sử dụng ký hiệu ma trận, chúng ta lập
X = (X1 , ..., Xn ), Y = (Y1 , ..., Yn )T ,
lần lượt là ma trận dữ liệu ((r + 1) × n) và n-vector, và cho W = diag{wi } là

ma trận trọng số đường chéo (n × n) với phần tử thứ i trên đường chéo được
cho bởi

wi = p1 (xi , β)(1 − p1 (xi , β)), i = 1, 2, ..., n.
vector điểm của các đạo hàm cấp 1 của (1.93) và ma trận Hessian (1.94) có thể

được viết lại lần lượt là
··

·

(1.96)

T
ℓ(β) = X (Y − p1 ), ℓ(β) = −X WX ,

trong đó, p là n- vector.
Do đó, (1.95) có thể được viết là
β (k+1) = β (k) + (X WX T )−1 X (y − p1 )

= (X WX T )−1 X W{X T β (k) + W−1 (y − p1 )}
= (X WX T )−1 X Wz.

(1.97)

trong đó,
(1.98)

z = X T β (k) + W−1 (y − p1 ),
là một n- vector. Phần tử thứ i của z được cho bởi
zi =

xTi

β


(k)

+

yi − p1 (xi , β (k) )

p1 (xi , β (k) )(1 − p1 (xi , β (k) ))

.

(1.99)

Cập nhật (1.97) có dạng của 1 ước lượng bình phương tối thiểu tổng quát với
W là ma trận đường chéo của các trọng số, z là vector phản ứng và X là ma
(k)

trận dữ liệu. Chú ý rằng p1 = p1 , z = z (k) và W = W(k) có cập nhật tại mỗi
bước trong thuật tốn bởi vì chúng phụ thuộc vào β (k). Hơn nữa, công thức cập
nhật (1.97) giả sử rằng ((r + 1) × (r + 1))- ma trận X WX T có thể lấy nghịch

đảo, 1 điều kiện mà sẽ vi phạm trong ứng dụng mà n < r + 1. Mặc dù thực tế

rằng sự hội tụ của thuật toán IRLS tới cực đại của ℓ(β) khơng thể được đảm
bảo, nhưng thuật tốn hội tụ tới hầu hết các trường hợp.


Chương 1. Phân tích phân biệt tuyến tính

19


Nhận xét 1.2.1. Phân tích phân biệt Gauss hay Phân biệt logistic
So sánh lý thuyết và thực tiễn giữa 2 loại phân biệt chúng ta rút ra một vài
khác biệt dưới đây
1. Điều kiện hợp lý -log (1.90) là có hiệu lực dưới các giả thiết của họ hàm mũ
trên f (·) (bao gồm mơ hình Gauss đa biến với cùng ma trận covariance).
Điều này cho thấy rằng phân biệt logistic là tốt hơn phân tích phân biệt
Gauss khi khơng có giả thiết chuẩn.
2. Các nghiên cứu mô phỏng đã chỉ ra rằng khi giả thiết về phân phối Gauss
hoặc giả thiết cùng ma trận covariance khơng được thỏa mãn thì phân
biệt logistic thực hiện tốt hơn.
3. Phân tích phân biệt logistic là tiệm cận ít hiệu quả hơn phân tích phân
biệt Gauss bởi vì Gauss LDA được dựa trên đầy đủ ML hơn là điều kiện
ML.
4. Tại điểm mà chúng ta kỳ vọng phân biệt tốt sẽ diễn ra, phân biệt logistic
đòi hỏi một kích thước mẫu lớn hơn Gauss LDA để đạt được cùng phân
phối tỷ lệ sai số (Efron, 1975) và kết quả này mở rộng tới LDA bằng cách
sử dụng 1 họ hàm mũ với ước lượng plug-in.
1.2.2

Trường hợp đa lớp

Phương pháp phân biệt logistic mở rộng cho trường hợp đa lớp (> 2). Đặt
ui = loge {fi (x)πi }, chúng ta có thể biểu diễn (1.58) dưới dạng
p(Πi |x) =

eui
K
uk
k=1 e


= σi .

(1.100)

Trong ngôn ngữ thống kê, (1.100) được biết là mơ hình logistic bội, trong khi
ở ngơn ngữ mạng neural, nó được gọi là hàm kích hoạt mũ chính tắc (hoặc
softmax). Mặt khác, chúng ta có thể viết
σi =

1
,
1 + e−ωi

(1.101)


×