Chương 1: Giới thiệu vềkhai phá dữliệu . 10
1.1. Khai phá dữliệu là gì? . 10
1.2. Tại sao phải tiến hành khai phá dữliệu? . 10
1.3. Quá trình khai phá dữliệu . 11
1.4. Kiến trúc ñiển hình của một hệkhai phá dữliệu .13
1.5. Các bài toán khai phá dữliệu ñiển hình . 14
1.6. Các lĩnh vực liên quan ñến khai phá dữliệu. 16
1.7. Các ứng dụng ñiển hình của khai phá dữliệu. 17
1.8. Các thách thức với khai phá dữliệu . 17
1.9. Kết luận . 18
Chương 2: Trích chọn thuộc tính phù hợp . 19
2.1. Giới thiệu . 19
2.2. Mô hình trong bài toán trích chọn . 20
2.2.1. Các mô hình trong trích chọn . 20
2.2.2. ðánh giá hai mô hình Filter và Wrapper . 22
2.2.2.1. Filter . 22
2.2.2.2. Mô hình Wrapper . 22
2.3. Một sốkỹthuật xửlý . 23
2.3.1. Bộsinh tập con (Feature Subset Generator) . 23
2.3.2. Bộ ñánh giá tập con ñặc trưng (Feature Subset Evaluator) . 24
2.3.3. Thuật toán học ñiều khiển (Central Machine learning Algorithm) . 25
2.4. Kết luận . 25
Chương 3: Genetic Algorithms . 27
3.1. Giới thiệu . 27
3.2. ðộng lực . 27
3.3. Thuật giải di truyền . 28
3.3.1. Nội dung thuật toán . 28
3.3.2. Thểhiện các giảthuyết . 30
3.3.3. Các toán tửdi truyền . 32
3.3.4. Hàm thích nghi và sựchọn lọc . 34
Chương 4: Minimax Probability Machine . 36
4.1. Giới thiệu . 36
4.2. Nội dung. 36
4.3. Ưu ñiểm và nhược ñiểm của minimax probability machine . 37
4.4. Các phiên bản cải tiến của thuật toán minimax probability machine . 38
4.4.1. Minimum error minimax probability machine (MEMPM) . 38
4.4.2. Biased minimax probability machine (BMPM) . 39
Chương 5: Phương pháp ñềnghị.
62 trang |
Chia sẻ: huong.duong | Lượt xem: 1857 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Phương pháp tối ưu hàm kernel của thuật toán MPM, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
hình
khác nhau ñược ñưa ra trong phương pháp trích chọn. ðiển hình là hai mô hình: Filter và
Wrapper.
Hình 2.2. Mô hình Filter
1 2
Filter
3 A
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
Hình 2.3. Mô hình Wrapper
Giải thích hình vẽ:
A: Tập ñặc trưng ñầu vào.
1: Bộ sinh tập con (Feature Subset Generator).
2: Bộ ñánh giá (Feature Subset Evaluator).
3: Các thuật toán học máy (Followed Machine learning Algorithm)
4: Thuật toán học máy ñiều khiển (Central Machine learning Algorithm).
Mô hình Filter ñánh giá mỗi cá thể bằng một vài tiêu chuẩn, rồi chọn ra tập con các
thuộc tính có ñộ ñánh giá cao nhất. Nhìn chung, Filter coi tiến trình của trích chọn thuộc
tính như tiến trình thực thi trước, sau ñó mới sử dụng thuật toán ñể phân lớp.
Wrapper sử dụng một thuật toán tìm kiếm ñể ñánh giá tập con các thuộc tính coi như
là một nhóm hơn là một cá thể riêng lẻ. Mô hình Wrapper ñược ñặt vào trung tâm của
một thuật toán máy học cụ thể. Nó ñánh giá ñộ tốt của những tập con ñặc trưng tùy theo
ñộ chính xác học của tập con, ñiều này xác ñịnh thông qua tỷ lệ. Những thuật toán tìm
kiếm cũng sử dụng hàm ñánh giá kinh nghiệm (heuristics) ñể hướng dẫn việc tìm kiếm
tập trung vào các ñối tượng có triển vọng.
1
2
4
Wrapper Model
3
A
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
2.2.2. ðánh giá hai mô hình Filter và Wrapper
2.2.2.1. Filter
• Ưu ñiểm:
- Không có xử lý học máy trong quá trình lựa chọn các ñặc trưng.
- Dễ dàng nhận diện và thời gian tiêu thụ ít hơn mô hình Wrapper.
• Nhược ñiểm:
- Hiệu suất sản sinh các tập con ñặc trưng là không ñảm bảo vì nó thường ñánh
giá một tập con ñặc trưng chỉ dựa trên ñặc trưng nhỏ thiên về nguyên lý mà
không tính tới ñộ chính xác của kết quả học máy.
- Kết quả thu ñược bị giảm sút về ñộ chính xác học ở những giai ñoạn sau vì các
hàm ñánh giá hiện thời ñược sử dụng thường thiên về giá trị ở một vài phạm vi,
do ñó sẽ không ñánh giá một cách khách quan tầm quan trọng của các ñặc
trưng.
2.2.2.2. Mô hình Wrapper
• Ưu ñiểm:
- ðảm bảo hiệu suất của kết quả học hơn mô hình Filter.
• Nhược ñiểm:
- Ít ñược sử dụng hơn môt hình Filter trên thực tế vì:
Tiến trình học tốn kém về thời gian ñến mức thời gian thực hiện ñưa ra bởi
một thuật toán sử dụng mô hình Wrapper là không chấp nhận ñược.
Với một hệ thống kích thước cực lớn, mô hình này không thực tế do phạm
vi của nó buộc phải thu nhỏ lại trước khi thuật toán học máy ñược áp dụng.
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
Kết quả ñánh giá của mô hình phụ thuộc nhiều vào thuật toán học máy ñiều
khiển.
2.3. Một số kỹ thuật xử lý
2.3.1. Bộ sinh tập con (Feature Subset Generator)
Tùy từng chiến lược cụ thể, bộ sinh tập con sẽ tạo ra những tập con ñặc trưng từ một
tập ñầu vào tương ứng. ðầu ra của bộ sinh sẽ xác ñịnh thuật toán trích chọn ñặc trưng của
việc tìm ñường và tìm kiếm phạm vi trong một không gian ñặc trưng tương ứng. Nói
chung, bộ sinh có hai chiến lược ñể sản sinh ra những tập con ñặc trưng:
• ðầy ñủ (Completely): Một bộ khởi tạo ñầy ñủ có thể sản sinh ra tất cả các tập con
từ một tập ñặc trưng ñầu vào, do vậy phạm vi tìm kiếm của chiến lược này là NP
ñầy ñủ, tuy nhiên ñiều này không phải lúc nào cũng chứng tỏ tìm kiếm vét cạn là
cần thiết trong thực tế, bởi vì một số công nghệ như: ñường biên và rẽ nhánh có
thể ñược áp dụng ñể lược bớt phạm vi tìm kiếm tốt nhất. Bởi vậy nếu là thuật toán
trích chọn với bộ khởi tạo ñầy ñủ, thực nghiệm chỉ ra rằng không gian tìm kiếm
lớn nhất là O(2k). Mà ñối với hầu hết những hệ thống học máy thực, ñiều này là
không cần thiết phải ñánh giá tất cả những tập con từ một tập ñặc trưng tương ứng.
Thường thì, thuật toán trích chọn với bộ khởi tạo ñầy ñủ có thể tìm ra một tập con
ñặc trưng tối ưu của hệ thống học máy nhưng ñòi hỏi thời gian thực thi phức tạp.
Liu H. [12] ñã ñưa ra bộ khởi tạo ñầy ñủ ñặc biệt mà sản sinh một cách ngẫu nhiên
ra những tập con ñặc trưng dựa vào thuật toán Las Vegas (LV). Thuật toán LV có
thể tìm kiếm trên toàn bộ không gian ñáp án rồi sau ñó ñưa ra kết quả tối ưu ñảm
bảo. Tuy nhiên khác với những bộ khởi tạo ñầy ñủ khác, ñối với một ứng dụng
thực tế, khả năng thực thi của bộ khởi tạo Liu là hoàn toàn thay ñổi, nó phụ thuộc
nhiều vào quá trình phân chia dữ liệu ngẫu nhiên trong toàn bộ hệ thống học máy.
• Kinh nghiệm (Heuristically): ðể lược bớt không gian tìm kiếm, bộ khởi tạo kinh
nghiệm sản sinh ra các tập con ñặc trưng dựa vào những kinh nghiệm chiến lược
nào ñó. Có ba kỹ thuật tìm kiếm tập con ñiển hình là:
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
- Lựa chọn tiến (Forward Selection): các tập con ñặc trưng ñược khởi tạo
trước hết là rỗng (null), sau ñó liên tục gán những tính năng tốt nhất hiện
thời cho tập con ñó cho ñến khi không còn tính năng nào nữa hay các ñiều
kiện thực thi ñưa ra ñã ñược tiếp nhận hết.
- Lược bỏ lùi (Backward Elimination): Các tập con ñặc trưng ñược khởi tạo
trước hết là ñầy ñủ các ñặc trưng, sau ñó loại bỏ lần lượt những ñặc trưng
kém nhất hiện thời từ các tập con ñó, cho ñến khi không còn ñặc trưng nào
hoặc các ñiều kiện thực thi ñưa ra ñã ñược triệt tiêu hết.
- Lựa chọn hai hướng (Bi – direction Selection): các tập con ñặc trưng ñược
khởi tạo trước hết là rỗng, ñầy, hoặc sản sinh ngẫu nhiên một tập con ñặc
trưng, sau ñó liên tục hoặc là gán tính năng tốt nhất hiện thời cho tập con ñó
hoặc là triệt tiêu tính năng kém nhất từ các tập con ñó. ðể từ ñó ñưa ra
những giá trị ñịnh hướng tốt nhất ở mỗi lần lặp lại ñó. Quá trình tiếp tục
cho tới khi tất cả ñiều kiện ñược ñưa ra từ trước ñã ñược tiếp nhận hết.
Bộ phận khởi tạo kinh nghiệm giảm thiểu phạm vi tìm kiếm ña thức số mũ, do ñó
giảm thời gian thực hiện thuật toán phức tạp trong phương pháp trích chọn. Tuy nhiên,
thuật toán chỉ ñưa ra một lượng nhỏ kết quả tối ưu, khi thực hiện tìm ñường và tìm kiếm
phạm vi của bộ phận khởi tạo, kết quả này ñược ñảm bảo thông qua những thuật toán này.
2.3.2. Bộ ñánh giá tập con ñặc trưng (Feature Subset Evaluator)
Hiệu suất của một tập con ñặc trưng ñược ñánh giá dựa trên cơ sở nào ñó mà bộ ñánh
giá ñạt ñược. Bộ ñánh giá của những mô hình thuật toán khác nhau là khác nhau. Bộ ñánh
giá của mô hình Filter thường là các hàm ñánh giá, trong khi của mô hình Wrapper là ñộ
học chính xác ñạt ñược bởi quá trình thực thi thuật toán học máy ñiều khiển trên hệ thống
học.
• Hàm ñánh giá
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
Những hàm ñánh giá ñiển hình dùng ñể ño ñạc và phân biệt khả năng phân lớp của
những ñặc ñiểm khác nhau trên các mẫu. Thực tế, các hàm ñánh giá khác nhau
thường ñược dùng hiện nay như: xấp xỉ chất lượng (Approximation Quality), ñộ
quan trọng của thuộc tính (Feature Importance), trọng số của thuộc tính (Feature
Weight) …
• Học chính xác
Trong mô hình Wrapper, ñể ước lượng ñộ học máy chính xác, trước hết, các mẫu
của hệ thống học phải ñược chia ngẫu nhiên làm hai hệ thống con, chẳng hạn như:
hệ thống huấn luyện và hệ thống kiểm tra, trong ñó, cấu trúc của hai hệ thống con
có cùng ñặc ñiểm và ñược tạo ra bởi bộ sinh; sau ñó thuật toán học máy ñiều khiển
sẽ thực hiện trên hệ thống con huấn luyện (training) và tiếp thu ñộ học chính xác
ñược xác ñịnh nhờ quá trình kiểm tra kết quả học ñược với hệ thống kiểm tra
(testing). Hiển nhiên, ñộ chính xác ñạt ñược trong trường hợp này là giá trị ngẫu
nhiên, nó phụ thuộc lớn vào kết quả của việc chia mẫu. ðể giảm thiểu mức ñộ
ngẫu nhiên của việc ước lượng ñộ chính xác học máy, bộ ñánh giá của mô hình
Wrapper thường xuyên tính toán ñộ chính xác học máy thông qua thuật toán ñánh
giá chéo k – lần.
2.3.3. Thuật toán học ñiều khiển (Central Machine learning Algorithm)
Trong mô hình Wrapper, thuật toán học máy ñiều khiển có ảnh hưởng lớn tới ước
lượng ñộ chính xác học của một tập con ñặc trưng. Do vậy, thuật toán ñóng vài trò quyết
ñịnh trong mô hình Wrapper. Thuật toán thường ñược chọn ở ví trí trung tâm mô hình
thường là: ID3, CN2, C4.5 …
2.4. Kết luận
Trích chọn ñược xem như bước tiền xử lý dữ liệu. Phương pháp này lọc ra những ñặc
trưng tốt nhất, ñồng thời loại bỏ nhiễu, giảm bớt chiều trong dữ liệu. Hai mô hình phổ
biến trong phương pháp trích chọn thuộc tính ñặc trưng là Filter và Wrapper. Mỗi mô
hình ñều có những ưu ñiểm và nhược ñiểm riêng. Tùy từng yêu cầu và trường hợp cụ thể
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
mà ta có thể áp dụng một trong hai mô hình này.
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
Chương 3: Genetic Algorithms
3.1. Giới thiệu
Thuật toán di truyền là thuật toán tối ưu ngẫu nhiên dựa trên cơ chế chọn lọc tự nhiên
và tiến hóa di truyền. Thuật toán di truyền ñược ứng dụng ñầu tiên trong hai lĩnh vực
chính: tối ưu hóa và học tập của máy. Trong lĩnh vực tối ưu hóa thuật toán di truyền ñược
phát triển nhanh chóng và ứng dụng trong nhiều lĩnh vực khác nhau như tối ưu hàm, xử
lý ảnh, bài toán hành trình người bán hàng, nhận dạng hệ thống và ñiều khiển. Thuật toán
di truyền cũng như các thuật toán tiến hóa nói chung, hình thành dựa trên quan niệm cho
rằng, quá trình tiến hóa tự nhiên là quá trình hoàn hảo nhất, hợp lý nhất và tự nó ñã mang
tính tối ưu. Quan niệm này có thể xem như một tiên ñề dúng, không chứng minh ñược,
nhưng phù hợp với thực tế khách quan. Quá trình tiến hóa thể hiện tính tối ưu ở chỗ, thế
hệ sau bao giờ cũng tốt hơn (phát triển hơn, hoàn thiện hơn) thế hệ trước bởi tính kế thừa
và ñấu tranh sinh tồn.
3.2. ðộng lực
Thuật giải di truyền cung cấp một phương pháp học ñược thúc ñẩy bởi sự tương tự
với sự tiến hóa sinh học. Thay vì tìm kiếm các giả thuyết từ tổng quát ñến cụ thể hoặc từ
ñơn giản ñến phức tạp, GAs tạo ra các giả thuyết kế tiếp bằng cách lặp việc ñột biến và
việc tái hợp các phần của giả thuyết ñược biết hiện tại là tốt nhất. Ở mỗi bước, một tập
các giả thuyết ñược gọi là quần thể hiện tại ñược cập nhật bằng cách thay thế vài phần
nhỏ quần thể bởi cá thể con của các giả thuyết tốt nhất ở thời ñiểm hiện tại. Sự phổ biến
của GAs ñược thúc ñẩy bởi các yếu tố sau:
• Tiến hóa là một phương pháp mạnh và thành công cho sự thích nghi bên trong các
hệ thống sinh học.
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
• GA có thể tìm kiếm trên các không gian giả thuyết có các phần tương tác phức tạp,
ở ñó ảnh hưởng của mỗi phần lên toàn thể ñộ thích nghi giả thuyết khó có thể mô
hình hóa.
• Thuật giải GA có thể ñược thực hiện song song và có thể tận dụng thành tựu của
phần cứng máy tính.
3.3. Thuật giải di truyền
3.3.1. Nội dung thuật toán
Bài toán dành cho GAs là tìm kiếm trên không gian các giả thuyết ứng cử ñể xác ñịnh
giả thuyết tốt nhất. Trong GAs “giả thuyết tốt nhất” ñược ñịnh nghĩa như là một giả
thuyết tối ưu hóa một ñại lượng số ñược ñịnh nghĩa trước cho bài toán sắp tới, ñược gọi
là ñộ thích nghi của giả thuyết. Ví dụ, nếu tác vụ học hỏi là bài toán xấp xỉ một hàm chưa
biết cho tập mẫu huấn luyện gồm dữ liệu ñầu vào và dữ liệu ñầu ra, thì ñộ thích nghi có
thể ñược ñịnh nghĩa như là ñộ chính xác của giả thuyết trên dữ liệu huấn luyện này. Nếu
tác vụ là học chiến lược chơi cờ, ñộ thích nghi có thể là số ván thắng của chiến lược này
khi ñấu với các chiến lược khác trong quần thể hiện tại.
Mặc dù các thuật giải di truyền ñược thực hiện thay ñổi theo bài toán cụ thể, nhưng
chúng chia sẻ chung cấu trúc tiêu biểu sau: Thuật giải hoạt ñộng bằng cách cập nhật liên
tục tập giả thuyết – ñược gọi là quần thể. Ở mỗi lần lặp, tất cả các cá thể trong quần thể
ñược ước lượng tương ứng với hàm thích nghi. Rồi quần thể mới ñược tạo ra bằng cách
lựa chọn có xác suất các cá thể thích nghi tốt nhất từ quần thể hiện tại. Một số trong
những cá thể ñược chọn ñược ñưa nguyên vẹn vào quần thể kế tiếp. Những cá thể khác
ñược dùng làm cơ sở ñể tạo ra các cá thể con bằng cách áp dụng các tác ñộng di truyền:
lai ghép và ñột biến.
GA( Fitness, Fitness_threshold, p, r, m)
{ // Fitness: hàm gán thang ñiểm ước lượng cho một giả thuyết.
// Fitness_threshold: Ngưỡng xác ñịnh tiêu chuẩn dừng giài thuật tìm kiếm.
// p: Số cá thể trong quần thể giả thuyết.
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
// r: Phân số cá thể trong quần thể ñược áp dụng toán tử lai ghép ở mỗi bước.
// m: Tỉ lệ cá thể bị ñột biến.
• Khởi tạo quần thể: P Tạo ngẫu nhiên p cá thể giả thuyết
• Ước lượng: Ứng với mỗi h trong P, tính Fitness(h)
• while [max Fitness(h)] < Fitness_threshold do
Tạo thế hệ mới, PS
1. Chọn cá thể: chọn theo xác suất (1 – r)p cá thể trong quần thể P thêm vào PS. Xác
suất Pr(hi) của giả thuyết hi thuộc P ñược tính bởi công thức:
2. Lai ghép: chọn lọc theo xác suất
2
r p×
cặp giả thuyết từ quần thể P, theo Pr(hi) ñã
tính ở bước trên. Ứng với mỗi cặp , tạo ra hai con bằng cách áp dụng toán tử
lai ghép. Thêm tất các các con vào PS.
3. ðột biến: Chọn m% cá thể của PS với xác suất cho mỗi cá thể là như nhau. Ứng với
mỗi cá thể biến ñổi một bit ñược chọn ngẫu nhiên trong cách thể hiện của nó.
4. Cập nhật: P PS.
5. Ước lượng: Ứng với mỗi h trong P, tính Fitness(h)
• Trả về giả thuyết trong P có ñộ thích nghi cao nhất.
}
Bảng 3.1. Thuật giải di truyền mẫu
Quần thể gồm p cá thể. Ở mỗi lần lặp, quần thể kế tiếp PS ñược hình thành từ việc lựa
chọn theo xác suất các giả thuyết hiện tại theo ñộ thích nghi của chúng và bằng cách thêm
vào các giả thuyết mới. Các giả thuyết mới ñược tạo ra bằng cách áp dụng toán tử lai
ghép cho cặp giả thuyết thích nghi nhất và bằng cách tạo ra các ñột biến ñiểm ñơn trong
thế hệ giả thuyết kết quả. Quá trình này ñược lặp cho ñến khi các giả thuyết thích hợp
ñược phát hiện. Các toán tử lai ghép và ñột biến tiêu biểu ñược ñịnh nghĩa trong bảng kế
tiếp.
Một thuật giải di truyền mẫu ñược mô tả trong bảng 3.1. Các ñầu vào cho thuật giải
này bao gồm hàm tính ñộ thích nghi ñể tính hạng cho các giả thuyết ứng cử, một giá trị
ngưỡng ñược ñịnh nghĩa cấp ñộ thích nghi có thể chấp nhận ñể kết thúc thuật giải, kích
thước quần thể, và các tham số quyết ñịnh các quần thể kế tiếp ñược tạo ra như thế nào:
phần quần thể bị thay thế ở mỗi thế hệ và tỉ lệ ñột biến.
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
Lưu ý trong thuật giải này, ở mỗi bước lặp qua vòng lặp chính tạo ra một thế hệ mới
các giả thuyết dựa vào quần thế hệ hiện tại. Trước tiên, một số giả thuyết ñược chọn từ
quần thể hiện tại ñể ñưa vào thế hệ kế tiếp. Những giả thuyết này ñược chọn theo xác suất,
ở ñây xác suất của giả thuyết ñược tính bởi:
Vì vậy, xác suất ñể giả thuyết ñược chọn tỉ lệ với ñộ thích nghi của nó và tỉ lệ nghịch
với ñộ thích nghi của các giả thuyết cạnh tranh khác trong quần thể hiện tại.
Một khi các cá thể này của thế hệ hiện tại ñã ñược chọn ñể ñưa vào quần thể thế hệ kế
tiếp, các cá thể thêm vào ñược tạo ra dùng toán tử lai ghép. Lai ghép, ñược ñịnh nghĩa chi
tiết trong phần kế tiếp, lấy hai giả thuyết từ thế hệ hiện tại và tạo ra hai giả thuyết con
bằng cách kết hợp các phần của hai giả thuyết cha. Các giả thuyết cha ñược chọn theo
xác suất từ quần thể hiện tại, sử dụng hàm xác suất ñược cho bởi phương trình (2.1). Sau
khi các cá thể mới ñược tạo ra từ hoạt ñộng lai ghép này, quần thế thế hệ mới bây giờ có
ñủ số lượng thành viên mong muốn. Lúc này, một phân số m nào ñó các cá thể này ñược
chọn một cách ngẫu nhiên, và tất cả các ñột biến ngẫu nhiên ñược thực hiện ñể thay ñổi
các cá thể này.
3.3.2. Thể hiện các giả thuyết
Các giả thuyết trong GAs thường ñược thể hiện dưới dạng chuỗi các bit, ñể chúng có
thể dễ dàng ñược thực hiện bởi các toán tử di truyền là ñột biến và lai ghép. Các giả
thuyết ñược thể hiện bởi chuỗi bit này có thể khá phức tạp. Ví dụ, tập các luật if-then có
thể dễ dàng ñược thể hiện theo cách này, bằng cách chọn một cách thức mã hóa các luật
ñể phân bố các chuỗi con riêng cho mỗi ñiều kiện trước và ñiều kiện sau của luật.
ðể thấy các luật if-then có thể ñược mã hóa bằng các chuỗi bit như thế nào, trước tiên
hãy xem chúng ta có thể sử dụng chuỗi bit như thế nào ñể mô tả ràng buộc trên giá trị của
thuộc tính ñơn. Lấy một ví dụ, hãy xem xét thuộc tính Outlook, thuộc tính này có thể lấy
bất kì giá trị nào trong ba giá trị: Sunny, Overcast hoặc Rain. Một cách rõ ràng ñể thể
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
hiện ràng buộc cho Outlook là dùng một chuỗi bit có chiều dài 3, mỗi vị trí bit tương ứng
với một trong ba giá trị có thể của nó. ðặt giá trị 1 ở một vài vị trí ñể chỉ ra rằng thuộc
tính ñược phép lấy giá trị tương ứng. Ví dụ, chuỗi 010 thể hiện ràng buộc Outlook phải
lấy giá trị thứ hai trong các giá trị này, hay là Outlook = Overcast. Một cách tương tự,
chuỗi 011 thể hiện ràng buộc tổng quát hơn là cho phép hai giá trị có thể, hay là Outlook
= Overcast Rain. Chú ý 111 thể hiện ràng buộc có thể tổng quát nhất, chỉ ra rằng
chúng ta không quan tâm giá trị nào trong các giá trị có thể của nó mà thuộc tính giữ.
ðưa ra phương pháp này ñể thể hiện các ràng buộc trên thuộc tính ñơn, các liên kết
của các ràng buộc trên nhiều thuộc tính có thể dễ dàng ñược thể hiện bằng cách nối các
chuỗi bit tương ứng. Ví dụ, xem xét thuộc tính thứ hai, Wind có thể lấy giá trị Strong
hoặc Weak. ðiều kiện trước của luật chẳng hạn như:
Có thể ñược biểu diễn bởi chuỗi bit có chiều dài là 5 sau:
Outlook Wind
011 10
Các ñiều kiện sau của luật (chẳng hạn như PlayTennis = yes) có thể ñược thể hiện
theo kiểu tương tự. Vì vậy, toàn bộ luật có thể ñược mô tả bởi móc nối các chuỗi bit mô
tả các ñiều kiện ñầu, cùng với chuỗi bit mô tả ñiều kiện sau của luật. Ví dụ, luật
IF Wind = Strong THEN PlayTennis = yes
sẽ ñược thể hiện bởi chuỗi:
Outlook Wind PlayTennis
111 10 10
ở ñây 3 bit ñầu tiên mô tả ràng buộc “không quan tâm” trên Outlook , hai bit kế tiếp
mô tả ràng buộc trên Wind, và hai bit cuối cùng mô tả ñiều kiện sau của luật (ở ñây chúng
ta giả sử PlayTennis có thể lấy giá trị Yes hoặc No). Chú ý chuỗi bit thể hiện luật chứa
một chuỗi con cho mỗi thuộc tính trong không gian giả thuyết, thậm chí thuộc tính không
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
bị ràng buộc bởi các ñiều kiện trước. ðiều này tạo ra một chuỗi bit có chiều dài cố ñịnh
ñể thể hiện các luật, trong ñó các chuỗi con ở các vị trí cụ thể mô tả các ràng buộc trên
các thuộc tính cụ thể. ðưa ra cách thể hiện này cho các luật ñơn, chúng ta có thể thể hiện
tập các luật bằng cách móc nối các thể hiện chuỗi bit của các luật riêng biệt.
Trong thiết kế mã hóa chuỗi bit cho một vài không gian giả thuyết, thật là hữu ích ñể
sắp xếp cho mọi chuỗi bit tuân thủ theo cú pháp ñể thể hiện một giả thuyết ñược ñịnh
nghĩa tốt. ðể mô tả, chú ý cách mã hóa luật ở ñoạn trên, chuỗi bit 111 10 11 thể hiện luật
có ñiều kiện trước không ràng buộc thuộc tính mục tiêu PlayTennis. Nếu tránh xem xét
giả thuyết này, chúng ta có thể mượn một cách mã hóa khác (ví dụ phân bố chỉ một bit
cho ñiều kiện sau ñể chỉ ñịnh giá trị là Yes hoặc No), thay ñổi các toán tử di truyền ñể
tránh một cách tường minh việc xây dựng các chuỗi bit như thế, hoặc ñơn giản gán một
ñộ thích nghi rất thấp cho các chuỗi bit như vậy.
3.3.3. Các toán tử di truyền
Những thế hệ sau trong GAs ñược quyết ñịnh bởi tập các toán tử tái hợp và ñột biến
các cá thể ñược chọn từ quần thể hiện tại. Các toán tử GAs tiêu biểu ñể thực hiện các giả
thuyết chuỗi bit ñược mô tả trong bảng 3.2. Các toán tử này tương ứng với các phiên bản
ñược ý tưởng hóa của các hoạt ñộng di truyền trong tiến hóa sinh học. Hai toán tử phổ
biến nhất là lai ghép và ñột biến.
Toán tử lai ghép tạo ra hai con từ hai chuỗi cha bằng cách sao chép các bit ñược chọn
lựa từ mỗi cha. Bit ở vị trí i trong mỗi con ñược sao chép từ bit ở vị trí i của một trong hai
cha. Chọn lựa cha nào phân phối bit cho vị trí i ñược quyết ñịnh bởi thêm vào một chuỗi
mặt nạ lai ghép.
ðể minh họa, xem xét toán tử lai ghép ñiểm ñơn (single-point) ở ñầu bảng 3.2. Xem
xét hai con trên nhất trong trường hợp này. Con này lấy năm bit ñầu tiên của nó từ cha
thứ nhất và sáu bit còn lại từ cha thứ hai, bởi mặt nạ lai ghép là 11111000000 xác ñịnh
các lựa chọn này cho mỗi vị trí bit. Con thứ hai dùng cùng mặt nạ lai ghép, nhưng ñổi vai
trò của hai cha. Do ñó, nó chứa các bit không ñược dùng bởi con ñầu tiên. Trong lai ghép
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
ñiểm ñơn, mặt nạ lai ghép luôn luôn ñược xây dựng sao cho nó bắt ñầu với chuỗi chứa n
giá trị 1 liên tục, ñược theo sau một số giá trị 0 cần thiết ñể hoàn chỉnh chuỗi. Cách này
tạo ra cá thể con có n bit ñầu ñược phân phối bởi một cha và các bit còn lại bởi cha thứ
hai. Mỗi lần toán tử lai ghép ñiểm ñơn ñược áp dụng, ñiểm lai ghép n ñược chọn ngẫu
nhiên, rồi mặt nạ lai ghép ñược tạo và áp dụng.
Bảng 3.2. Các toán tử chung cho thuật giải di truyền.
Trong lai ghép hai ñiểm(ñiểm kép), cá thể con ñược tạo ra bởi thay thế các ñoạn trung
gian của một cá thể cha vào giữa của chuỗi cha thứ hai. Nói một cách khác, mặt nạ lai
ghép là một chuỗi bắt ñầu với n0 trị 0, ñược theo sau bởi chuỗi liên tục n1 trị 1, ñược theo
sau bởi một số trị 0 cần thiết ñể hoàn chỉnh chuỗi. Mỗi lần toán tử lai ghép hai ñiểm ñược
áp dụng, một mặt nạ ñược tạo ra bằng cách chọn ngẫu nhiên các số nguyên n0 và n1. Thí
11101001000
00001010101
11101010101
00001001000
11111000000
11101001000
00001010101
11001011000
00101000101
00111110000
11101001000
00001010101
10001000100
01101011001
00111110000
11101001000 11101011000
Các chuỗi ban Mặt nạ lai ghép Các cá thể con
Lai ghép ñiểm ñơn:
Lai ghép ñiểm kép:
Lai ghép ñồng nhất:
ðột biến ñiểm:
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
dụ, trong ví dụ ñược chỉ ra ở bảng 3.2 cá thể con ñược tạo ra dùng một mặt nạ với n0 = 2
và n1 = 5. Như lai ghép trước, hai cá thể con ñược tạo ra bằng cách hoán ñổi vai trò của
hai cá thể cha.
Lai ghép ñồng nhất kết hợp các bit ñược lấy mẫu ñồng nhất từ hai cá thể cha, như
ñược minh họa trong trong bảng 3.2. Trong trường hợp này, mặt nạ lai ghép ñược tạo ra
như là một chuỗi bit ngẫu nhiên với mỗi bit ñược chọn ngẫu nhiên và ñộc lập với các bit
khác.
Thêm vào các toán tử tái kết hợp - tạo ra cá thể con bằng cách kết hợp các phần của
hai cá thể cha, một loại toán tử thứ hai tạo ra cá thể con từ một cá thể cha. Cụ thể là toán
tử ñột biến tạo ra những thay ñổi ngẫu nhiên nhỏ cho chuỗi bit bằng cách chọn một bit ở
vị trí ngẫu nhiên, rồi thay ñổi giá trị của nó. ðột biến thường ñược thực hiện sau khi lai
ghép ñược áp dụng như trong giải thuật mẫu trong bảng 3.1.
Một vài hệ thống GAs mượn thêm một vài toán tử, các toán tử ñặc biệt ñược chuyên
biệt hóa cho biểu diễn giả thuyết cụ thể ñược sử dụng bởi hệ thống.Ví dụ, Grefenstette et
al. (1991) mô tả hệ thống học tập luật ñiều khiển robot. Nó sử dụng ñột biến và lai ghép
cùng với một toán tử ñể chuyên biệt hóa các luật.
3.3.4. Hàm thích nghi và sự chọn lọc
Hàm thích nghi ñịnh nghĩa tiêu chuẩn ñể xếp hạng các giả thuyết tiềm ẩn và ñể chọn
lọc chúng theo xác suất ñể ñưa vào quần thể thế hệ kế tiếp. Nếu tác vụ là học các luật
phân loại, thì hàm thích nghi thông thường có một thành phần cho ñiểm ñộ chính xác
phân loại của luật trên tập mẫu huấn luyện ñược cho. Thường các tiêu chuẩn khác có thể
ñược bao hàm, chẳng hạn như ñộ phức tạp và mức ñộ tổng quát của luật. Một cách tổng
quát hơn, khi giả thuyết chuỗi bit ñược hiểu như là một thủ tục phức tạp (ví dụ, khi chuỗi
bit thể hiện tập chọn lọc, các luật if-then sẽ ñược móc xích với nhau, ñể ñiều khiển thiết
bị robot), hàm thích nghi có thể ño hiệu suất tổng của thủ tục kết quả hơn là hiệu suất của
các luật riêng biệt.
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
Trong thuật giải GA mẫu ñược chỉ trong bảng 3.1, xác suất ñể một giả thuyết ñược
chọn ñược cho bởi tỉ số của ñộ thích nghi của nó với ñộ thích nghi của các thành viên
khác của quần thể hiện tại, như ñã thấy trong phương trình tính giá trị thích nghi. Phương
pháp này thỉnh thoảng thường ñược gọi là sự chọn lọc tỉ lệ ñộ thích nghi, hoặc sự chọn
lọc vòng roulette. Các phương pháp khác dùng ñộ thích nghi ñể chọn lọc các giả thuyết
cũng sẽ ñược ñề xuất. Ví dụ, sự chọn lọc kiểu vòng thi ñấu, hai giả thuyết ñầu tiên ñược
chọn ngẫu nhiên từ quần thể hiện tại. Với một vài xác suất p ñược ñịnh nghĩa trước hai cá
thể này càng phù hợp càng ñược chọn và với xác suất (1 – p) giả thuyết càng ít phù hợp
càng ñược chọn. Sự chọn lọc theo vòng thi ñấu thường tạo ra quần thể khác nhau nhiều
hơn so với sự chọn lọc tỉ lệ với ñộ thích nghi (Goldberg và Deb 1991). Trong phương
pháp sự chọn lọc theo hạng, các giả thuyết trong quần thể hiện tại ñầu tiên sẽ ñược sắp
xếp theo ñộ thích nghi. Xác suất ñể giả thuyết sẽ ñược chọn tỉ lệ với hạng của nó trong
danh sách ñã sắp xếp hơn là ñộ thích nghi của nó.
ht
t
p
:
/
/
e
t
r
i
t
h
u
c
.
v
n
Chương 4: Minima
Các file đính kèm theo tài liệu này:
- CNTT1002.pdf