1
B GIÁO D C VÀ ĐÀO T O
Đ I H C ĐÀ N NG
H
MINH ĐÍCH
NGHIÊN C U GI I THU T DI TRUY N
NG D NG VÀO GI I M T S
BÀI TOÁN TH NG KÊ
Chuyên ngành: KHOA H C MÁY TÍNH
Mã s : 60.48.01
TĨM T T LU N VĂN TH C SĨ K THU T
Đà N ng - Năm 2011
2
Cơng trình đư c hồn thành t i
Đ I H C ĐÀ N NG
Ngư i hư ng d n khoa h c: PGS.TS. Lê Văn Sơn
Ph n bi n 1: TS. Huỳnh H u Hưng
Ph n bi n 2: PGS.TS. Đồn Văn Ban
Lu n văn đư c b o v trư c H i ñ ng ch m Lu n văn t t
nghi p th c sĩ k thu t h p t i Đ i h c Đà N ng vào ngày 15
tháng 10 năm 2011
* Có th tìm hi u lu n văn t i:
- Trung tâm Thông tin - H c li u, Đ i h c Đà N ng
- Trung tâm H c li u, Đ i h c Đà N ng.
3
M
Đ U
1. Lý do ch n ñ tài
Trong nh ng năm g n đây, k thu t l p trình ti n hóa là m t trong nh ng
k thu t l p trình r t phát tri n trong lĩnh v c trí tu nhân t o. M t công th c
tương t v i công th c n i ti ng c a N.Wirth ñưa ra trong l p trình c u trúc đư c
áp d ng cho k thu t l p trình ti n hóa:
C u trúc d li u + Gi i thu t di truy n = chương trình ti n hóa
Thu t ng chương trình ti n hóa là m t trong nh ng khái ni m ñư c
dùng ñ ch các chương trình máy tính có s d ng thu t tốn tìm ki m và t i ưu
hóa d a trên “nguyên lý ti n hóa t nhiên”. Ta g i chung các thu t toán như v y
là thu t tốn ti n hóa. Có m t s thu t tốn ti n hóa đư c cơng b :
- Quy ho ch ti n hóa – EP, do D.B.Pogel đ xu t.
- Chi n lư c ti n hóa, do T.Baeck, F.H.Hofmeister và H.P.Schwefel ñ
xu t.
- Thu t gi i di truy n, do D.E.Golberg ñ
xu t, ñư c L.Davis và
Z.Michalevicz phát tri n. Trong ph m vi lu n văn ch nghiên c u l p trình ti n
hóa thông qua gi i thu t di truy n và ng d ng vào gi i quy t hai l p bài tốn
phân tích d li u th ng kê.
2 . Đ i tương và ph m vi nghiên c u
2.1. Đ i tư ng nghiên c u
Đ i tư ng nghiên c u c a ñ tài g m:
- Gi i thu t di truy n
- Phân l p d li u b ng các hàm phân bi t tuy n tính
- Phân tích h i qui
2.2. Ph m v nghiên c u
ng d ng gi i thu t di truy n ñ thi t k gi i thu t tìm giá tr Min (Max)
c a hàm nhi u bi n làm cơng c đ gi i các bài tốn th ng kê đ ra trong lu n
văn. C th là hai bài tốn:
- Bài tốn phân tích d li u h i qui tuy n tính.
- Bài tốn phân l p d li u b ng t p các hàm phân bi t tuy n tính.
3. M c ñích ñ tài
4
M c đích c a đ tài là mu n tìm m t cách ti p c n m i b ng thu t gi i di
truy n ñ gi i m t s l p bài toán thu c lĩnh v c th ng kê, ñ ng th i cũng mu n
ch ng minh tính năng vư t tr i c a gi i thu t di truy n trong vi c tìm l i gi i cho
nhi u d ng bài toán khác nhau.
4. M c tiêu, ý nghĩa ñ tài
Nghiên c u và ng d ng gi i thu t di truy n vào hai l p bài toán thu c
lĩnh v c th ng kê là bài tốn h i quy tuy n tính và bài toán phân l p d li u d a
trên các hàm phân lo i tuy n tính. K t qu c a bài tốn mang l i v a có tính năng
c a m t h th ng máy h c, giúp d báo, tính tốn, phân l p các d li u khơng
đư c h c v a có ý nghĩa ñ xu t và ñ t ñư c k t qu kh quan v m t phương
pháp phân l p d li u cũng như vi c thi t l p các mơ hình tốn h c và phân tích
tương quan cho các s li u th c nghi m dùng trong nghiên c u khoa h c.
Đ i v i thu t gi i di truy n, ý tư ng xuyên su t nh t c a nó là mơ ph ng
q trình ti n hóa t nhiên đ áp d ng tìm ki m l i gi i cho m t bài tốn trên máy
tính.
Vi c áp d ng gi i thu t di truy n ñ gi i quy t hai l p bài toán nói trên là
m t phương pháp ti p c n m i, tinh t ñ gi i quy t m t s l p bài toán trong lĩnh
v c th ng kê là nh ng bài toán t n r t nhi u cơng s c cho thao tác tính tốn đ
tìm ra l i gi i cho bài tốn.
5. C u trúc lu n văn
N i dung chính c a lu n văn đư c trình bày trong 4 chương :
Chương 1. Cơ s lý thuy t v gi i thu t di truy n
Chương 2.
ng d ng gi i thu t di truy n tìm c c tr c a hàm nhi u bi n
Chương 3. Phân l p d li u b ng các hàm phân bi t tuy n tính
Chương 4. Bài tốn h i quy
CHƯƠNG 1. CƠ S
LÝ THUY T V THU T GI I DI TRUY N
1.1. KHÁI NI M
Gi i thu t di truy n(GA) là gi i thu t tìm ki m, ch n l a các gi i pháp
t i ưu ñ gi i quy t các bài toán th c t khác nhau, d a trên cơ ch ch n l c c a
di truy n h c: t t p l i gi i ban đ u, thơng qua nhi u bư c ti n hố, hình thành
5
t p l i gi i m i phù h p hơn, và cu i cùng tìm ra l i gi i t i ưu nh t. Gi i thu t di
truy n d a trên quan ñi m cho r ng q trình ti n hố c a t nhiên là q trình
hồn h o nh t, h p lý nh t và t nó đã mang tính t i ưu.
Ý tư ng chính c a gi i thu t di truy n là thay vì ch phát sinh m t l i gi i
ban ñ u chúng ta s phát sinh m t lúc nhi u l i gi i cùng lúc. Sau đó, trong s l i
gi i ñư c t o ra, ch n ra nh ng l i t t nh t ñ làm cơ s phát sinh ra nhóm các l i
gi i sau v i nguyên t c càng v sau càng t t hơn. Quá trình c th ti p di n cho
đ n khi tìm đư c l i gi i t i ưu ho c x p x t i ưu.
1.2. GI I THU T DI TRUY N
1.2.1 Đ nh nghĩa :
GA ñư c ñ nh nghĩa là m t b 7: GA=( I, Ψ , Ω,s, t, µ, λ ) :
• I=Bt: Khơng gian tìm ki m l i gi i c a bài tốn.
•
•
•
•
•
Ψ :I → R: Ký hi u c a hàm thích nghi (Eval function).
Ω : Ký hi u cho t p các phép toán di truy n.
µ+λ
S: I
→ Iµ ký hi u cho thao tác ch n; gi l i µ cá th .
ϖ
t: I → {True, false} là tiêu chu n d ng.
µ , λ : l n lư t là s cá th trong th h cha m và th h con cháu.
1.2.2. Nh ng q trình ti n hóa c a gi i thu t :
1.2.2.1. Quá trình lai ghép (Cross Over):
Phép lai: Là quá trình hình thành nhi m s c th m i trên cơ s các
nhi m s c th cha m b ng cách ghép m t hay nhi u ño n gen c a hai (hay nhi u)
nhi m s c th cha-me v i nhau, phép lai ñư c th c hi n v i xác su t pc
1.2.2.2. Quá trình tái sinh (Preproduction) và l a ch n (Selection):
Tái sinh: Là q trình trong đó các cá th ñư c sao chép d a trên cơ s
đ thích nghi c a nó.
Phép l a ch n: Là quá trình lo i b các cá th x u trong qu n th , ch
gi l i trong qu n th các cá th t t
1.2.2.3. Quá trình đ t bi n (Mutation):
6
Đ t bi n là hi n tư ng cá th con mang m t s tính tr ng khơng có trong
mã di truy n c a cha-m .
1.2.3. T ng quát v gi i thu t di truy n :
Hình 1.1 Gi i thu t di truy n t ng quát
1.2.4. Tính h i t trong gi i thu t di truy n
Cho GA=( I , Ψ , Ω, s, t , µ , λ ) n u các đi u ki n sau th a:
• I là khơng gian h u h n, đ m đư c;
• L i gi i t i ưu a* ∈ I
Thì gi i thu t s d ng và l i gi i tìm đư c chính là l i gi i t i ưu a*
1.2.5. Nguyên lý ho t ñ ng c a c a gi i thu t :
• Bư c 1: Ch n m t s tư ng trưng cho tồn b các l i gi i
• Bư c 2: Ch ñ nh cho m i l i gi i m t ký hi u. Ký hi u có th là m t
dãy các bits 0, 1 hay dãy s th p phân
• Bư c 3: Tìm hàm s thích nghi và tính h s thích nghi
• Bư c 4: T c hi n tái sinh và ch n.
• Bư c 5: Tính h s thích nghi cho các cá th m i, i l i m t s nh t
ñ nh các cá th tương ñ i t t.
7
• Bư c 6: N u chưa tìm đư c l i gi i t i ưu hay tương ñ i t t nh t,
quay l i bư c 4 đ tìm l i gi i m i.
• Bư c 7: K thúc gi i thu t và báo cáo k t qu tìm đư c.
Hình 1.2 Sơ đ t ng quát c a gi i thu t di truy n
1.2.6. Xây d ng mơ hình gi i thu t di truy n nâng cao :
Hình 1.3 Mơ hình gi i thu t di truy n nâng cao
8
1.3. S
K T H P GI A DI TRUY N VÀ LEO Đ I.
1.3.1 Khái ni m:
Sau khi tìm đư c l i gi i t i ưu c a bài tốn thì v n đ cịn l i là ph i
chính xác hóa nghi m t i ưu v a tìm đư c, mà thu t tốn leo đ i l i ch cho phép
tìm đư c gi i pháp t i ưu c c b .
1.3.2. K t h p di truy n và leo đ i
• Bư c 1: Ch y gi i thu t di truy n cho đ n khi cá th th h
m i
khơng t t hơn nhi u so v i th h trư c.
• Bư c 2: Gán n cá th t t nh t c a gi i thu t di truy n cho n ñi m xu t
phát c a gi i thu t leo đ i.
• Bư c 3: Ch y gi i thu t leo đ i tìm ñư c l i gi i t i ưu
CHƯƠNG 2.
NG D NG GI I THU T DI TRUY N TÌM
C C TR C A HÀM NHI U BI N
2.1. Đ T V N Đ
Hi n nay có r t nhi u phương pháp gi i quy t bài toán t i ưu hàm s ,
nhưng các phương pháp ch d ng l i
nh ng l p bài toán v i nh ng thơng tin rõ
ràng. Do đó, vi c tìm ra m t phương pháp m i ñ gi i bài toán t i ưu hàm nhi u
bi n t ng quát là c n thi t.
Nhưng ñ gi i quy t l p hai bài toán trong lu n văn này thì ph i có m t
cơng c c n thi t ph i thi t k là bài tốn tìm c c tr (giá tr Max hay Min) c a
m t hàm s nhi u bi n mà m i bi n có th nh n các giá tr s n m trên m t mi n
con ho c toàn mi n s th c (t − ∞ ñ n
+ ∞ ).
2.2. BI U DI N BI N
Cho m t hàm nhi u bi n y = f ( x1 , x 2 ,..., x n ) v i xi ∈ Di = [ a i ,bi ] ⊆ R .
Đ bi u di n xi (i=1,…,n) sao cho có th th c hi n các phép tốn di
truy n m t cách hi u qu , thì ta bi u di n xi b ng chu i bit nh phân.
Gi s xi là m t s th c có k ch s th p phân sau d u ch m. Thì giá tr
c a xi là: x i = a i + decimal(U)
bi − a i
2m − 1
i
9
2.3. CÁC GIÁ TR L A CH N TRONG GI I THU T DI TRUY N
2.3.1. L a ch n kích thư c c a qu n th
Đ đ m b o kích thư c qu n th khơng q l n ñ ng th i cũng giúp tăng
hi u qu và tính chính xác c a gi i thu t khi hàm s có s bi n l n, thì ta nên ch n
kích thư c qu n th ph thu c vào s bi n c a hàm s : µ = 100 +10 *NumVar
(NumVar là s bi n c a hàm s ).
2.3.2. L a ch n s l n ti n hóa c a gi i thu t
Đ đ m b o tính chính xác c a gi i thu t ta ch n s
l n ti n hóa
NumGen = 100 + 10 * NumVar (NumVar là s bi n c a hàm s ).
2.3.3. L a ch n xác su t lai ghép
S k t h p các l i gi i cha m t o sinh các cá th m i trong gi i thu t di
truy n b ng toán t lai ghép
2.3.4. L a ch n xác su t ñ t bi n
Xác su t ñ t bi n PM=
1
.
GenSize
2.3.5. L a ch n kho ng giá tr c a các bi n
Xác ñ nh ñư c kho ng giá tr c a x thu c kho ng [a,b] nào đó. V i l p
bài tốn trong lu n văn thì m i bi n xi s thu c [ − ∞,+∞ ]. Nhưng trong máy
tính, m i ki u d li u đư c khai báo cho bi n có giá tr khác nhau, giá tr ∞ có th
đư c quy ư c b ng giá tr l n nh t c a ki u d li u đó.
2.4. HÀM ĐO Đ
THÍCH NGHI (EVAL FUNCTION)
2.4.1. Ánh x giá tr hàm m c tiêu f(x) sang giá tr thích nghi (Eval)
- N u bài tốn t i ưu là tìm c c ti u c a m t hàm ñánh giá g(x) thì ta xây
d ng như sau:
C − g ( x)
f ( x) = Max
0
khi g(x) < C Max
Trong cac truong hop khac
- N u bài toán t i ưu là tìm c c đ i c a m t hàm đánh giá g(x) thì ta xây
d ng như sau:
10
C + g ( x )
f ( x) = Min
0
khi g(x) + C Min > 0
Trong cac truong hop khac
Trong đó CMax, CMin là m t tham s đ u vào.
2.4.2. Đi u ch nh đ thích nghi
• G i G là ñ t t c a cá th , đ thích nghi c a cá th theo phương pháp
đi u ch nh tuy n tính đư c xác ñ nh theo quy t c sau:
F=a*G+b
• Giá tr ñ thích nghi cu i cùng này l i n m trong đo n[0,1].
2.5 CÁC PHÉP TỐN DI TRUY N
2.5.1. Kh i t o qu n th ban ñ u
Begin
for i:=0 to PopSize-1 do
for j:=0 to GenSize-1 do
QuanThe.CaThe[i][j]:=Flip(0.5);
End;
Flip(0.5) là hàm t o các ng u nhiên 0 và 1 v i xác su t 50%
Hình 2.3 Đo n mã gi minh h a cho thao tác kh i t o qu n th
2.5.2. Phép ch n cá th (Selection)
S d ng phương pháp thông d ng là quy t c ch n theo bàn Roulete.
Q trình này đư c th c hi n theo các bư c:
• Bư c 1: Tính ñ thích nghi cho t ng cá th trong qu n th .
• Bư c 2: Tính t ng đ thích nghi c a t t c các cá th
• Bư c 3: Phát sinh m t s ng u nhiên p n m trong kho ng t 0 ñ n
t ng đ thích nghi c a qu n th .
• Bư c 4: Tr v cá th đ u tiên mà đ thích nghi c a nó và đ thích
nghi c a các cá th khác nhau trong qu n th trư c ñ y.
2.5.3. Phép lai ghép (CrossOver)
11
Phép lai ñư c th c hi n trên hai cá th cha m ñư c ch n v i xác su t
pc ∈ [0, 1] và ñư c th c hi n theo nhi u cách khác nhau.
• Lai ghép đơn đi m
• Lai ghép đa đi m
CHƯƠNG 3. PHÂN L P D
LI U B NG CÁC HÀM PHÂN BI T
TUY N TÍNH
3.1 PHÂN L P D
LI U
3.1.1 Khái ni m
Khi phân tích d li u, thư ng d a vào m t s tiêu chu n hay các ñ i
lư ng khác nhau v b n ch t. Ví d : Khi phân lo i b nh nhân m c m t ch ng
b nh nào đó thì c n căn c vào m t s tiêu chu n (huy t áp, các xét nghi m, ch p
X quang,…) c a ngư i đó và các b nh ñã có. Khi xác ñ nh ñư c các d ki n liên
quan ñ n nh ng ch tiêu ñã ch n, chúng ta có th d đốn đư c kh năng ch n
đốn b nh c a b nh nhân đó đó v i đ chính xác cao.
Thay vì nghiên c u trên t p d li u l n thì sau khi phân l p d li u ta s
ti n hành phân tích trên các t p d li u nh hơn mà m i t p d li u này có m t s
tính ch t ñ c thù tùy thu c vào các ch tiêu l a ch n đ phân nhóm t p d li u thu
th p ban ñ u.
3.1.2. Các bư c ñ gi i quy t bài toán phân l p
Bư c 1: H c (training).
Bư c 2 : Ki m tra và ñánh giá.
3.1.3. Hàm phân l p tuy n tính
Hàm phân l p tuy n tính có ranh gi i phân l p là 1 siêu ph ng, vì v y nó
ch phân tách đư c 2 l p.
Ví d : Xét hàm tuy n tính phân tách Rn thành 2 n a không gian (halfspace).
Đ cho ti n, ta gán w1 = +1, w2 =-1, lu t phân l p khi s d ng hàm phân
l p tuy n tính là:
12
f(x) = θ((w, x) -b)
(3.1)
+ 1, t ≥ 0
(3.2)
θ( t ) =
− 1, t < 0
Trong đó, f(x) là hàm phân l p, θ(t) là hàm ngư ng (threshold
function), (w, x) là tích vơ hư ng c a w, x, w là tr ng s (weight) trên các t a
ñ /ñ c trưng c a x, b là ngư ng (threshold).
3.2. HÀM PHÂN BI T TUY N TÍNH VÀ M T QUY T Đ NH
3.2.1. Đ nh nghĩa:
Hàm phân bi t tuy n tính là m t hàm s nh n m t vector ñ u vào x và
gán nó cho m t trong c l p. Hàm phân bi t tuy n có d ng:
k
g(x) = W0 + W1 X1 + W2 X 2 + ... + Wk X k = W0 + ∑ Wi X i = W t X + W0
i =1
Trong đó:
(3.3)
W = (W1, W2, ..., Wk) là vectơ tr ng s và W0 ñư c g i là tr ng s n n
hay ngư ng.
X = (X1, X2, ... Xk) là các bi n ñ c l p.
3.2.2. Trư ng h p phân hai l p
N u lo i d li u phân thành hai l p thì phương trình (1) tr thành :
g(X) = W0 + W1X1
(3.4)
D a vào hàm phân bi t (2) s phân chia d li u thành hai l p ñư c th c
hi n d a trên quy t ñ nh sau: Quy t ñ nh là thành ph n d li u thu c vào W1
n u ta có g(X) > 0 và quy t đ nh là W2 n u g(X) < 0. Trư ng h p g(X)= 0
WtX1 + W0 = WtX2 + W0 hay Wt(X1 – X2) = 0
(3.5)
Do đó khi g(X) > 0 thì X đư c gán đ n W1 (X n m trên R1), ngư c l i
thì X đư c gán ñ n W2 (X n m trên R2). Khi X thu c R1 thì ta có th nói X thu c
ph n dương c a H và khi X thu c R2 thì ta có th nói X thu c ph n âm c a H.
Hàm phân bi t tuy n tính g(X) ch ra kho ng cách ñ i s t X ñ n siêu
ph ng H. Vì v y, có l cách đơn gi n nh t là bi u di n X theo bi u th c sau:
W
X = Xp + r
W
Trong đó:
•
Xp là hình chi u chu n c a X trên H.
(3.6)
13
•
r là kho ng cách đ i s t X ñ n siêu ph ng H.
Hình 3.2 M t quy t đ nh tuy n tính H xác đ nh b i g(X) = WtX + W0, và chia
không gian thành 2 n a không gian R1(g(X)>0) và R2(g(X)<0)
Mà g(Xp) = 0 nên ta có:
g( X )
(3.7)
g ( X ) = W t X + W0 = r W
r=
hay
W
3.2.3. Trư ng h p phân nhi u l p
Khi d li u chia thành c l p, ta s chia không gian đ c tính thành t i đa
*
*
c (c − 1) m t quy t đ nh, thì s ta có c (c − 1) hàm phân bi t tuy n tính, m i hàm
2
2
dùng cho m t ph n c a s phân l p.
3.2.4. T ng quát hóa các hàm phân bi t tuy n tính
Hàm phân bi t tuy n tính g(X) có th vi t dư i d ng :
k
g(X) =W0 +
∑WX
i =1
i
(3.8)
i
Trong đó Wi là các thành ph n c a vectơ tr ng s W
Vi c t ng quát hóa các hàm phân lo i có l i ích là có th vi t g(X) dư i
d ng thu n nh t d a vào aty.
Trư ng h p ñ c bi t:
k
k
i =1
i =0
g (X ) = W0 + ∑ Wi X i = ∑ Wi X i
N u ñ c X0 = 1 thì ta có th vi t:
(3.9)
14
1
X 1
(3.10)
y= 1 =
...
X
X k
y ñư c g i là vectơ gia tăng ñ c tính.
Tương t vectơ gia tăng tr ng s có th ñư c vi t dư i d ng sau:
W0
W W0
(3.11)
a = 1 =
...
W
Wk
Hình 3.5 Minh h a chuy n đ i to ñ t không gian X-2 sang không gian
y-3 chi u
3.3. T NG BÌNH PHƯƠNG SAI S
T I TI U
3.3.1 Trong trư ng h p phân hai l p (The Two-Category Case)
Gi s có m t t p h p n m u y1, y2, ..., yn
Trong đó m t s m u ñư c gán nhãn W1 và m t s ñư c gán nhãn W2.
Đ xác ñ nh vectơ tr ng s a trong hàm phân bi t tuy n tính g(X) = aty. M u yi
đư c phân l p chính xác n u aty > 0 và ñư c gán nhãn là W1 ngư c l i thì yi đư c
gán nhãn là W2.
V y, ta đã thay th vi c tìm gi i pháp cho m t t p h p các b t phương
trình tuy n tính b i tìm gi i pháp cho m t t p h p các phương trình tuy n tính.
15
y10
y 20
M
M
M
y
n0
y11 L y1k
y 21 L y 2 k
M
M
M
M
M
M
M
M
M
y n1 L y nk
b1
a0
b2
M
a1
=
M
M
M
a
k
b
n
(3.12)
hay Ya = b
Ta có th vi t (12) dư i d ng: a = Y-1b (N u Y là ma tr n kh ngh ch) do
đó, ta có th tìm vectơ tr ng s a sao cho sai s Y*a và b là c c ti u. G i vectơ e
là: e = Ya – b
Thì ta c n ph i tìm vectơ a sao cho:
J (a)
s
(3.13)
2
= Ya- b = (Ya − b) t (Ya − b) = ∑ (a t y i − bi ) 2
(3.14)
Đ tìm c c ti u c a t ng bình phương các sai s thì ta tìm b ng phương
pháp đ o hàm:
n
∇J s (a ) = ∑ 2(a t y i − b i ) y i = 2Y t ( Ya − b)
(3.15)
i =1
Cho phương trình đ t giá tr 0 và gi i ra ta ñư c ñi u ki n:
YtYa = Ytb
(3.16)
V y ta ch c n tìm nghi m a th a mãn phương trình (3.16) là đ . Gi i ra
ta ñư c : a = (YtY)-1 Ytb = Y*b
*
t
(3.17)
-1
Y = (Y Y) Y
t
(3.18)
3.3.2. Trong trư ng h p phân nhi u l p:
Ta có:
g i ( X ) = W t X + Wi 0
v i i = 1, 2, …, c
Đ t y(X) là m t vectơ k+1 chi u c a các hàm X và khi đó,
g i ( X ) = ait y
i=1, 2, …, c
(3.19)
Khi đó, X đư c gán cho l p Wi n u gi(X) > gj(X) v i ∀ j ≠ i
Lúc này t n t i m t t p h p các vectơ tr ng s ai (i = 1, 2, …,c) sao cho
n um u
yk ∈ Yk thì a it y k > a tj y k ∀ j ≠ i
(3.20)
Xem bài toán như là c bài toán con, m i bài toán con là m i bài tốn
phân lo i 2 nhóm. Nghĩa là đ i v i bài toán con th i tr ng s s tìm vectơ tr ng
s ai là k t qu c a h phương trình:
16
a it y = 1
t
a i y = −1
∀i ∈ Yt
∀i ∉ Yt
(3.21)
Ma tr n Y trong trư ng h p t ng quát s là m t ma tr n c p (nx(k+1))
c a các m u ñư c xét. Gi s Y ñư c phân ho ch có d ng:
Y1
Y = Y2
M
Yc
(3.22)
Tương t g i A là ma tr n c p ((k+1) x c) c a các vectơ tr ng s có
d ng t ng quát là:
A = [a1 a2 …
a c]
(3.23)
Ma tr n B là ma tr n c p (n x c) có d ng
B1
B
B = 2
M
Bc
(3.24)
Theo cách phát tri n c a ma tr n bình phương l i (YA – B)t (YA – B)
khi đó là k t qu c a phương trình:
A = Y* B
(3.25)
Bây gi , vi c tìm c hàm phân bi t tuy n tính th c hi n theo các bư c sau:
Bư c 1: Tìm các vectơ tr ng s ai theo phương pháp MSE thõa h
t
phương trình: a i y = 1
∀i ∈ Yi
∀i ∉ Yi
t
ai y = 0
(3.26)
Bư c 2: S d ng k t qu c a bư c 1, gán m u yk cho nhóm Wi, n u
t
ai
yk >
t
aj
y k v i ∀i ≠
j
3.3.3. Qui trình th c hi n chương trình phân l p d li u
Bư c 1: Nh p d li u g m m t t p m u ng u nhiên ( X1 , X1 ,..., X1 ) ,
1
2
k
2
n
( X1 , X 2 ,..., X 2 ) , …, ( X1 , X n ,..., X n ) thu ñư c t quan sát lưu tr dư i d ng
2
k
2
k
b ng d li u.
17
Bư c 2: Tìm ư c lư ng c a các h s c a các vectơ tr ng s ai b ng
thu t toán di truy n
Bư c 3: V ñ th minh h a cho k t qu c a s phân l p.
*
Bư c 4: Cho m t b các giá tr ( X1 , X * ,..., X * ) xác ñ nh xem m u này
2
k
s thu c vào l p nào trong các phân nhóm.
CHƯƠNG 4. PHÂN TÍCH H I QUY
4.1. D N NH P
Hi n nay các v n ñ trong khoa h c, k thu t hay nh ng lĩnh v c khác
trong th c t , có liên quan đ n vi c xác ñ nh m i liên h gi a m t t p h p các tiêu
chu n hay các ñ i lư ng (các bi n) khác nhau v b n ch t.
Chúng ta có th làm rõ b n ch t c a hi n tư ng hay s vi c c n nghiên
c u ñ tìm ra quy lu t và d đốn. D ng ñơn gi n là, phương trình h i quy:
Y = b0 + b1X1 + b2X2 + b3X3 + ... + bkXk
(4.1)
4.2. Ư C LƯ NG CÁC MƠ HÌNH TỐN H C
4.2.1. Ư c lư ng các mơ hình tốn h c
Các bư c đ ư c lư ng mơ hình tốn h c bao g m:
Bư c 1: Mơ hình hóa đ i tư ng nghiên c u đ ti n hành thu th p s
li u th c nghi m.
• Bư c 2: D đốn mơ hình tốn h c d a trên cơ s các s li u ñã thu
th p ñư c trong quá trình nghiên c u.
• Bư c 3: Xác đ nh các h s c a mơ hình tốn h c
• Bư c 4: Ki m ñ nh s phù h p c a mơ hình tốn đã d đốn.
4.2.2. Mơ hình hóa đ i tư ng nghiên c u
G i X1, X2 ..., Xk là các nguyên nhân tác ñ ng gây nên h u qu hay k t
qu Y thì hàm Y = f(X1, X2, ..., Xk) → Y.
4.2.3. Xây d ng mơ hình tốn h c
4.2.3.1. Phương pháp “đ th th c nghi m” và “tuy n tính hóa”:
18
Mơ hình tốn h c có th d đốn nh ñ th th c nghi m ñư c phác h a
t các s li u thu t p ñư c.
4.2.3.2.D đốn mơ hình tốn h c b ng phương pháp suy lu n:
Ch ng h n, mơ hình gradient m t đ hay n ng đ có th d đốn ñư c là
Y=aX + b, v i b là m t ñ hay n ng ñ
trung tâm xu t phát ñi m, X là kho ng
cách t trung tâm ñó ñ n ñi m ñang xét.
X
X
ñây, X có th ñư c thay th b ng các
2
ñ i di n c a nó như lnX, 10 , e , X ,...
4.2.4. Tìm các h s c a mơ hình tốn h c
Hai phương pháp thư ng ñư c s d ng là :
- Phương pháp t i thi u hóa t ng bình phương sai s
- Phương pháp Moment.
4.2.5. Ki m ñ nh và ñánh giá m c ñ phù h p c a mơ hình tốn h c
Mơ hình tốn h c Y = b0 + b1X1 + b2X2 + ... + bkXk
hay Y* - Y = b1 (X1 - X ) + b2 (X2 - X ) + ... + bK (Xk - X )
4.3. PHƯƠNG PHÁP T I TI U HĨA T NG BÌNH PHƯƠNG SAI S
(MINIMUM SUM SQUARED METHOD)
4.3.1. Phương pháp t i ti u hóa t ng bình phương sai s
Phương pháp bình phương t i thi u là phương pháp chu n ñ c th hố
mơ hình h i quy tuy n tính và ư c lư ng các thông s chưa bi t và tuân theo 4 gi
thi t sau ñây:
1. Các bi n ñ c l p xi không ph i là các bi n ng u nhiên.
2. Kỳ v ng toán c a thành ph n sai s (εi) b ng 0, t c là E[εi]=0
3. Có tính thu n nh t - phương sai c a thành ph n sai s c đ nh, t c là
var(εi) = σ2
4. Khơng có t tương quan, t c là cov(εi, εj) = 0, (i ≠ j)
N u f có d ng phi tuy n thì ta s ti n hành tuy n tính hóa mơ hình tốn
h c trư c khi ti n hành phân tích. Khi đó, phương trình h i quy s có d ng như
phương trình (2):
19
Y = ϕ(X1, X2, ..., Xk) = f(X1,X2,...,Xk; b0, b1,...,b)
(4.2)
Hay Y = b0 + b1X1 + b2X2 + b3X3 + ... bkXk
(4.3)
N u giá tr Y h i quy, hoàn toàn trùng kh p v i giá tr Y th c nghi m.
Khi đó, ta có :
Y = b0 + b1X1 + b2X2 + b3X3 + ... bkXk+e
(4.4)
n
Qe = ∑ (Yi − Yi* ) 2
(4.5)
i =1
Đ tìm các tham s b0, b1, ... bk ta l y ñ o hàm riêng c a Qe theo các bi n
b0, b1, ... bk, cho các giá tr ñ o hàm này b ng 0, ta có h phương trình sau:
∂ (Qe )
∂(b ) = 0
0
∂ (Qe )
=0
∂ (b1 )
...
...
∂ (Qe )
∂ (b ) = 0
k
(4.6)
4.3.2. Tìm giá tr c a các h s h i quy b ng thu t gi i di truy n
Đ xác ñ nh các giá tr c a các h s h i quy b0, b1, ,,, bk chúng ta s
d ng cơng c tìm giá tr t i thi u c a hàm nhi u bi n b ng thu t gi i di truy n
đã đư c trình bày trong chương 2 đ tìm giá tr c c tiêu g n đúng c a Qe. T
đó xác đ nh ñư c các giá tr ư c lư ng c a các tham s b0, b1, ..., bk c a phương
trình h i quy tuy n tuy n.
4.4. Ư C LƯ NG H I QUY TUY N TÍNH
4.4.1. Ư c lư ng H i quy tuy n tính đơn
Cho hai ñ i lư ng h i quy tuy n tính ng u nhiên X và Y , khi đó mơ
hình h i quy tuy n tính đơn t ng qt có d ng: Y = b0 + b1X
20
Trong đó b0 và b1 đư c xác đ nh như sau:
n
b1 =
∑ (x
i =1
i
n
− x)( yi − y)
2
n
∑ (x
i =1
=
i
∑ (x y
i =1
n
i
∑ (x
− x)
i =1
2
i
i
− n x y)
;
b0 =
y − b1 x
− nx2 )
Vi c phân tích h i quy d a trên mơ hình tốn h c ñư c th c hi n như
sau:
• Bư c 1: Tìm giá tr c c ti u c a m t hàm nhi u bi n s (hai bi n) b ng
thu t gi i di truy n ñ xác ñ nh các h s h i quy b0, b1 c a mơ hình tốn h c và
giá tr g n đúng c a Qe.
• Bư c 2: Ki m ñ nh s phù h p theo các công th c:
2
n
n
1 n
Q x = ∑ (X i − X) 2 = ∑ Xi2 − ∑ X i
n i=1
i =1
i =1
1 n
QY = ∑ (Yi − Y) = ∑ Y − ∑ Yi
n i=1
i =1
i=1
n
n
2
(4.7)
2
(4.8)
2
i
n
Qe = ∑ (Yi − Yi* ) 2
(4.9)
i =1
n
n
1 n
Q Y* = ∑ (Yi* − Y) 2 = ∑ (Yi* )2 − ∑ Yi
n i=1
i =1
i =1
2
(4.10)
Q Y = Q Y* + Q e
F(1,n − 2) =
r =R =
(4.11)
(n − 2)QY*
(4.12)
Qe
QR
Q
= 1− e
QY
QY
(4.13)
B ng 4.1 B ng ki m ñ nh & ñánh giá m c đ phù h p c a mơ hình tốn h c
Ngu n bi n lư ng
Y = b0 + b1X
Đ t do
T ng các bình phương
H i quy
1
Q Y*
Sai s ng u nhiên
n-2
Qe
Bi n lư ng
S2 =
Qe
(n − 2)
21
T ng th c t
n-1
F(1,n − 2) =
QY
(n − 2)QY*
Qe
QR
Q
= 1− e
QY
QY
r =R =
• Bư c 3: Ki m đ nh giá tr c a h s b0 v i gi i thuy t tương ñ ng
n
b0 − t p (n − 2)
n
S2 ∑ Xi2
S2 ∑ Xi2
< b 0 < b0 + t p (n − 2)
i =1
nQ x
( 4.14)
i =1
nQ x
• Bư c 4: Xác đ nh kho ng tin tư ng cho Y0 = b0 + b1X0
Và
V i:
Y0 ∈ Y0 ± tp(n - 2) S
(4.15)
Y0
1 X − X 2
SY0 = S + 0
n Qx
(4.16)
4.4.2. H i quy tuy n tính b i :
Mơ hình tốn h c t ng quát h i quy tuy n tính b i có d ng:
Y = b0 + b1X1 + b2X2, +...+ bk-1Xk-1
Ti n hành phân tích h i quy d a trên mơ hình tốn h c như sau:
• Bư c 1: Tìm giá tr c c ti u c a m t hàm nhi u bi n s (s bi n ≥3)
b ng thu t gi i di truy n ñ xác ñ nh các h s h i quy b0, b1, b2, ..., bk-1 c a mơ
hình tốn h c và giá tr g n đúng c a Qe.
• Bư c 2: Ki m ñ nh s phù h p c a mơ hình tốn h c tìm đư c. Tương
t trư ng h p K = 2 mô hình tốn h c d ng t ng qt v n đư c tính theo cơng
th c (9), hay là:
n
n
∑ (Y − Y) = ∑ (Y
2
i =1
hay:
i
i =1
*
i
n
− Y) 2 + ∑ (Yi − Yi* ) 2
i =1
Q Y = Q Y* + Q e
Tính các giá tr QY,
Q Y* theo các cơng th
Ti n hành ki m đ nh s phù h p
(4.17)
c (4.8) và (4.10).
22
Q Y*
F(K − 1, n − 1) =
K −1
Qe
n−K
(4.18)
Đ ñánh giá m c đ phù h p c a mơ hình tốn h c, chúng ta s d ng h
s tương quan đa ph n R theo cơng th c (4.13), như sau:
Q Y*
Q
= 1− e
QY
QY
Đ ki m ñ nh giá tr c a h s tương quan ña ph n R chúng ta s d ng
tr c nghi m F v i K-1 và n-K ñ t do và gi thuy t tương ñ ng H0:b1=0:
R2
(4.19)
K −1
F(k − 1,n − 1) =
2
1− R
n −K
B ng 4.2 B ng ki m ñ nh và ñánh giá m c ñ phù h p c a mơ hình tốn h c Y =
b0 + b1X1 + b2X2, +...+ bk-1Xk-1
Ngu n bi n lư ng
Đ t do
T ng các bình phương
Bi n lư ng
Y = b0 + b1X1 + b2X2, +...+
H i quy
K-1
Qe
bk-1Xk-1
S2 =
(n − K)
Sai s ng u nhiên
n-K
Qe
T ng th c t
n-1
QY
R=
R2
K −1
F(k − 1, n − 1) =
1− R 2
n −K
r =R =
QY*
QY
Qe
QY
K = S2 A-1
V ma tr n hi p phương sai:
Trong đó, A là ma tr n:
Q x1
Q x1x 2
...
...
Q
x1x k −1
= 1−
Q x1x 2
Q x1x 3
...
Qx2
Q x2x3
...
...
...
...
...
...
...
Q x 2 x k −1
Q x3x k −1
...
Q x1x k −1
Q x 2x k −1
...
...
Q x k −1
(4.20)
(4.21)
23
Trong đó:
n
n
1 n
2
Q xi = ∑ (Xij − Xi )2 = ∑ Xij − ∑ Xij
n j=1
j=1
j=1
2
(4.22)
n
n
1 n
n
Qxix j = ∑(Xij − Xi )(Xij − X j ) = ∑ Xi X j − ∑ Xi ∑ X j
n i=1 j=1
i =1
j=1
(4.23)
Trong trư ng h p K = 2 (mơ hình tốn h c là Y= b1X + b0) ma tr n A
có d ng:
n
A= n
∑ Xi
i =1
i =1
n
2
∑ Xi
i =1
n
∑X
i
(4.24)
Trong hai trư ng h p h i quy có d ng đư ng cong b c hai (mơ hình
tốn h c là Y = b2X2 + b1X + b0) thì ma tr n hi p phương sai A có d ng:
n
n
2
n ∑ X i ∑ Xi
i =1
i =1
(4.25)
n
n
n
2
3
A = ∑ Xi ∑ X i ∑ X i
i =1
i =1
i=1
n
n
n
2
3
4
∑ Xi ∑ Xi ∑ X i
i =1
i =1
i=1
S2i = S2 *Cii
b
V phương sai c a b1:
(4.26)
v i Cii là ph n t c a ma tr n A-1
V phương sai c a Y0 = b0 + b1X10 + b2X20, +...+ bk-1Xk-10 :
(
)(
+ ... + 2 ( X − X )( X − X ) C + 2 ( X − X )( X − X ) C
2
SY0 =
(
)
(
)
)
2
2
S2
0
0
0
0
+ X1 − X1 K11 + X2 − X2 K22 + ... + 2 X1 − X1 X2 − X2 C12
n
0
2
2
0
3
3
13
0
2
2
0
4
4
14
(4.27)
+ ...
V i Kij là ph n t c a ma tr n hi p phương sai K.
Trong trư ng h p mơ hình tốn h c là phù h p v i các s li u th c
nghi m thu đư c thì ta ti n hành các bư c sau:
• Bư c 3: Ki m ñ nh giá tr c a các h s bi b ng cách s d ng kho ng
tin tư ng c a bi v i P ≤ 0.05 như sau:
bi − t p (n − K)Sbi < b t < b t + t p (n − K)Sbi
(4.28)
24
• Bư c 4: Xác đ nh kho ng tin tư ng (d đốn giá tr c a Y0 d a vào t p
giá tr Xi0). Cho Y0 = b0 + b1X10 + b2X20, +...+ bk-1Xk-10: Kho ng tin tư ng c a
Cho Y0 = b0 + b1X10 + b2X20, +...+ bk-1Xk-10 v i m c sai l m P ñư c cho b i:
Y0 − t p (n − 2)SY10 < Y0 < Y0 + t p (n − 2)SY0
hay Y0 ∈Y0 ± t p (n − 2)SY
0
(4.29)
4.4.3. Các bư c th c hi n chương trình phân tích d li u h i quy
• Bư c 1: Nh p m t t p m u ng u nhiên
1
1
1
2
2
2
2
n
n
n
(X ,X ,...,X1 −1 ,Y1 ),(X1 ,X 2 ,...,X k −1,Y2 ),...,(X1 ,X 2 ,...,X k −1,Yn )
k
• Bư c 2: Phác h a ñ th c a hàm s d a theo các bi n ñ c l p và ph
thu c đư c ch n.
• Bư c 3: Tìm ư c lư ng c a các h s h i quy bj c a phương trình: Y =
b0 + b1X1 + b2X2, +...+ βk-1Xk-1 sao cho t ng giá tr c a các sai s gi a các giá tr
Yi ,Y* là nh nh t.
• Bư c 4: Ki m ñ nh m c ñ phù h p c a mơ hình tốn h c
*
• Bư c 5: Cho m t b các giá tr (X1 , X1 ,..., X1 ,X* ,..., X* ) c a các
1
2
2
k
bi n ñ c l p Xi d đốn giá tr Y* c a bi n ph thu c Y.
• Bư c 6: Tìm xem v i giá tr nào c a (X1, X2, ... Xk) thì Y đ t giá tr
c c ñ i (Max) hay giá tr c c ti u (Min).
• Bư c 7: V đ th đư ng bi u di n d li u
25
K T LU N VÀ HƯ NG PHÁT TRI N
1. K T LU N
Lu n văn ng d ng thu t gi i di truy n đ tìm c c tr c a m t hàm ña
bi n ñư c trình bày trong chương 2. K t qu này đư c s d ng làm cơng c đ
gi i quy t hai l p bài toán thu c lĩnh v c th ng kê ñư c ñ c p
hai chương ti p
theo c a lu n văn.
M c tiêu c a lu n văn là gi i hai l p bài toán thu c lĩnh v c th ng kê ñã
nêu. K t qu c a các bài toán mang l i v a có tính năng c a m t h th ng máy
h c, giúp d báo, tính tốn, phân l p các d li u khơng đư c h c v a có ý nghĩa
đ xu t và ñ t ñư c k t qu kh quan v m t phương pháp phân l p d li u cũng
như vi c thi t l p các mô hình tốn h c.
Bài tốn phân l p d li u d a trên t p các hàm phân bi t tuy n tính th c
ch t là tìm cách phân chia t p d li u ban ñ u (có kích thư c l n) thành nh ng t p
d li u nh hơn mà m i t p d li u con này th a m t s tính ch t đ c thù nào đó,
t o đi u ki n thu n l i cho quá trình phân tích d li u, nghiên c u d li u sau này
nh nhàng hơn, ít t n cơng s c hơn nhưng v n có th đ t đư c hi u qu cao.
Bài tốn phân tích h i quy tuy n tính th c ch t là tìm m i quan h mô t
s ph thu c c a các giá tr bi n ng u nhiên ñ c l p vào giá tr c a bi n ph thu c
xu t. Ki m ñ nh ñ tin c y c a mơ hình tìm đư c, đ ng th i cho phép ta d báo
các giá tr n m ngoài t p th c nghi m v i đ chính xác cao mà khơng c n ph i lưu
tr t p th c nghi m n a.
Vi c áp d ng thu t gi i di truy n ñ gi i quy t hai l p bài tốn trên đư c
trình bày m t cách rõ ràng, c th . Th hi n m t phương pháp ti p c n m i, tinh
t ñ gi i quy t m t s l p bài toán trong lĩnh v c th ng kê là nh ng bài tốn t n
r t nhi u cơng s c cho thao tác tính tốn đ tìm l i gi i cho bài toán. Cách ti p
c n b ng thu t tốn di truy n chúng ta có th gi m đi chi phí cơng s c cho vi c
tính tốn r t nhi u mà v n đ t ñư c k t qu t i ưu.
Các k t qu ñ t ñư c c a lu n văn ñã góp ph n xây d ng m t phương
pháp m i, m t hư ng ti p c n m i ñ gi i quy t m t s l p bài toán th ng kê