Hoạt động của hệ thống

Một phần của tài liệu Áp dụng máy học để tìm ra các đặc trưng tối ưu trong các bài toán xử lý số liệu lớn (Trang 37)

Tập dữ liệu ban đầu được phân chia ngẫu nhiên thành hai tập: Tập dữ liệu huấn luyện và Tập dữ liệu kiểm trạ

ạ Tập dữ liệu huấn luyện cho qua Phần 1

Dữ liệu huấn luyện là bảng có kích cỡ m x n, với n là số thuộc tính ban đầu và m là số bản ghị Khi cho bảng này qua Phần 1, GA sẽ sinh ra các bảng con có kích cỡ m x ki ; trong đó ki là số cột (số thuộc tính) của bảng con thứ i (i=1,2…) và ki < n. Mỗi bảng là một tập con các thuộc tính của bộ dữ liệu ban đầụ

Việc sinh ra các tập con bộ thuộc tính đó là nhờ GA tạo ra các nhiễm sắc thể là các chuỗi số 0 và 1 (bước 0). Cụ thể như sau:

Chuỗi số là dãy gồm n phần tử (với n là số cột của bảng số liệu ban đầu)

a1 a2 a3 a4 an

1 1 0 0 1

Nếu

Sử dụng hàm sinh ngẫu nhiên các số 0 và 1, tương ứng sẽ có các nhiễm sắc thể với các giá trị ai khác nhaụ Có thể coi mỗi chuỗi (hay nhiễm sắc thể) là đại diện cho bộ thuộc tính, nếu trong chuỗi đó giá trị của phần tử thứ k bằng 0 có nghĩa là trong bộ thuộc tính mới sinh ra cột thứ k hay thuộc tính thứ k của bộ thuộc tính ban đầu không được chọn vào bộ mới nàỵ Ngược lại nếu phần tử thứ k của chuỗi nhị phân trên bằng 1 thì cột thứ k của bộ thuộc tính ban đầu được đưa vào bộ thuộc tính mớị Kết quả là tạo ra các bảng với số cột nhỏ hơn số cột của bảng dữ liệu ban đầu, cũng có nghĩa tạo ra tập các bộ thuộc tính con của bộ thuộc tính gốc.

Đánh giá độ thích nghi của mỗi cá thể hay là độ phù hợp của mỗi bảng, nhờ mạng nơron nhân tạo (bước 1).

Độ thích nghi của mỗi cá thể hay độ phù hợp của các bộ thuộc tính con được tính là số lần phân lớp đúng khi cho các bản ghi của bảng đó qua mạng nơron. Vì các bảng có kích cỡ khác nhau nên khi tìm độ phù hợp của các bảng này, phải thiết kế một mạng nơron riêng cho mỗi bảng.

38

Hơn nữa, để đánh giá chính xác độ phù hợp, ở đây sử dụng kỹ thuật kiểm chứng chéo (cross validation) đảm bảo cho việc huấn luyện và kiểm thử được thực hiện trên hầu hết các bản ghi của bộ dữ liệu ban đầụ Nếu hệ số kiểm chứng chéo là n, thì chia bảng đó thành n phần. Thực hiện ít nhất n lần huấn luyện và kiểm thử trên mỗi bảng con. Trong đó lấy ngẫu nhiên n-1 phần dùng cho việc huấn luyện, phần còn lại thực hiện kiểm chứng [10].

Với bộ dữ liệu ban đầu người ta thường lấy 70% bản ghi dùng để huấn luyện (Train) và 30% dùng để kiểm tra (Test). Trong 70% huấn luyện đó, lại tách ra 70% để huấn luyện thực sự, còn 30% để kiểm thử (Validation)

Hình 4.3: Mô tả kiểm chứng chéo

Hình vẽ trên mô tả chia bộ dữ liệu thành các tập huấn luyện thực sự và kiểm thử khác nhaụ Với các bộ 1,2,…,n thì phần tô màu xám là phần huấn luyện, còn phần có màu trắng là dùng cho việc kiểm thử.

Như vậy độ phù hợp của mỗi bảng con sẽ là trung bình cộng của n lần huấn luyện/ kiểm chứng chéo đó.

Với fitness là độ phù hợp của bảng, fi là số lần phân lớp đúng của lần huấn luyện & kiểm thử thứ i của bảng đó và n là hệ số kiểm chứng chéọ

39

Cụ thể fi được tính như sau:

Việc thiết kế mạng nơron cho mỗi bảng phụ thuộc vào số cột của bảng. Sử dụng mạng nơron Back propagation 3 lớp: lớp vào, lớp ẩn và lớp rạ Nói chung mạng nơron cho mỗi bảng chỉ khác nhau về số nơron lớp vào chính là số cột của bảng, số nơron lớp ẩn là tùy chọn. Còn số nơron lớp ra bằng số lớp của bảng số liệu ban đầụ Hàm kích hoạt cho lớp ẩn và lớp ra ở đây sử dụng hàm Sigmoid đơn cực như sau:

Hình 4.4: Hàm Sigmoid đơn cực

Như vậy nơron đầu ra thực sự có giá trị trong khoảng [0, 1]. Khi huấn luyện, các đầu ra mong muốn cho nhận các giá trị là 0 và 1. Tùy từng vị trí phân lớp cụ thể, ở lớp ra nơron nào sẽ được nhận giá trị 0 và nơron nào sẽ được nhận giá trị 1. Để biết mẫu đầu vào thuộc lớp nào, lấy giá trị cao nhất của nơron lớp ra, tương ứng với giá trị được gán của nơron lớp ra mong muốn. Từ đó sẽ suy ra được bản ghi đầu vào thuộc phân lớp nàọ

Sau đó, GA lại tiếp tục sinh ra các tập con bộ thuộc tính khác, thông qua các phép toán: chọn lọc, lai ghép, đột biến (bước 2) đã được trình bày kỹ ở chương 3 của

luận văn. Có nghĩa là sau bước khởi tạo ban đầu, tính được độ phù hợp của mỗi bộ thuộc tính. Thực hiện phép toán chọn lọc theo kỹ thuật bánh xe quay trên các bộ thuộc tính này, khi đó các bộ thuộc tính có độ phù hợp cao thì khả năng được chọn càng caọ Lưu ý số cá thể trong mỗi quần thể hay cỡ quần thể ở đây ta cho cố định, không thay đổị Nghĩa là nếu cỡ quần thể là m thì thực hiện m lần chọn lọc. Kết thúc quá trình chọn lọc, lưu lại số lần được chọn của mỗi bộ thuộc tính vào trong bảng 4.1.

Tiếp theo các bộ thuộc tính được lai ghép với nhau thông qua xác suất lai ghép, Hoặc có thể thực hiện phép toán lai ghép dựa vào thông tin ở bảng 4.1. Thực hiện m/2 lần lai ghép. Mỗi lần lai ghép lấy ra 2 bộ thuộc tính để lai ghép, kết quả sinh ra 2 bộ thuộc tính mớị Bộ thuộc tính nào được lấy ra để lai ghép thì số lần chọn của nó ở bảng trên sẽ được trừ đi 1 để phục vụ cho lần lai ghép saụ Sau m/2 lần lai ghép thì cỡ quần thể sau khi lai ghép là m.

40 Bộ thuộc tính Số lần được chọn Bộ 1 x Bộ 2 y Bộ 3 t . . . . . . . . . . . . Bộ m z Bảng 4.1: Bảng kết quả sau quá trình chọn lọc

Qua phép đột biến mỗi vị trí trên bộ thuộc tính sẽ được đột biến thay đổi giá trị từ 0 sang 1 hoặc ngược lại, phụ thuộc vào xác suất đột biến của mỗi bộ thuộc tính và xác suất đột biến tại mỗi vị trí trên bộ thuộc tính đó. Như vậy, qua ba phép chọn lọc, đột biến và lai ghép các bộ thuộc tính mới được sinh rạ Để đánh giá độ phù hợp của mỗi bộ thuộc tính này, lại cho chúng qua mạng nơron nhân tạọ

Lặp lại các bước 1, bước 2 cho đến một số thế hệ đủ lớn nào đó hoặc độ thích nghi của cá thể tốt nhất trong các thế hệ kế tiếp nhau khác nhau không đáng kể. Kết thúc quá trình hoạt động ở Phần 1: thu được bộ thuộc tính có độ phù hợp cao nhất. Kết quả này được sử dụng để đưa vào Phần 2.

b. Hoạt động phần 2

Lấy tất cả bản ghi của bộ số liệu ban đầu nhưng chỉ với các thuộc tính vừa tìm được ở Phần 1, chia làm hai phần: huấn luyện và kiểm trạ Tập dữ liệu huấn luyện mới được sử dụng để huấn luyện cho mạng nơron.

Mạng nơron này là mới hoàn toàn, có cấu trúc và tham số tương tự như các mạng nơron ở phần trên, chỉ khác là số nơron đầu vào bằng số thuộc tính tối ưu vừa tìm được. Sau khi huấn luyện xong, cho tập dữ liệu kiểm tra vào mạng nơron này để đánh giá chất lượng hệ thống.

Để kiểm tra tính ổn định của hệ thống, tiến hành kiểm thử nhiều lần. Tức là mỗi lần kiểm thử là một lần chia bộ số liệu ngẫu nhiên thành tập huấn luyện và kiểm thử khác nhaụ

41

Một phần của tài liệu Áp dụng máy học để tìm ra các đặc trưng tối ưu trong các bài toán xử lý số liệu lớn (Trang 37)

Tải bản đầy đủ (PDF)

(62 trang)