Kiến trúc của hệ thống gồm hai phần chính: phần 1 đƣợc sử dụng để tìm ra bộ thuộc tính tốt nhất. Một cách tổng quát là hệ thống sinh ra các bộ thuộc tính con, sau đó sử dụng thuật toán học máy RF để đánh giá các bộ thuộc tính con này. Quá trình này lặp đi lặp lại tới khi thỏa mãn điều kiện dừng hệ thống sẽ thu đƣợc bộ thuộc tính tối ƣu nhất.
Phần 2 để kiểm chứng lại xem mô hình đƣa ra có phù hợp không.
3.4 Nội dung phƣơng pháp đề xuất.
Bƣớc 1: Tạo ra m bộ thuộc tính từ tập n thuộc tích ban đầu.
- Mỗi bộ chứa 2*n/m thuộc tính. Gồm: o n/m thuộc tính đều nhau o n/m thuộc tính ngẫu nhiên
Bƣớc 2: Tính thang điểm ƣớc lƣợng cho từng bộ thuộc tính
- Dùng RF tính thang điểm ƣớc lƣợng cho các bộ thuộc tính. => Đƣợc tập các giá trị ƣớc lƣợng f(i) (i=1,..,m)
Bƣớc 3: Tính ranking theo trọng số của từng thuộc tính.
- Trọng số của mỗi thuộc tính i đƣợc tính theo công thức:
𝑊𝑗 = 𝑘𝑖𝑗 ∗ 𝑓𝑗
𝑚
𝑗 =1
k = 0 nếu thuộc tính thứ i không đƣợc chọn trong bộ thuộc tính thứ j (7)
Bƣớc 4: Xây dựng tập mới gồm p% thuộc tính tốt nhất
Quay lại B1. Điều kiện dừng a) số thuộc tính < ngƣỡng cho phép, hoặc bộ thuộc tính mới có độ thích hợp không lớn hơn bộ thuộc tính vừa xác định trƣớc đó.
b) Số vòng lặp xác định
Thuật toán trên đƣợc đề xuất dựa vào giải thuật di truyền, ở đây m là cỡ của quần thể có thể đƣợc tạo ngẫu nhiên hoặc xác định ngay từ ban đầu, m đƣợc xác định tùy theo số lƣợng thuộc tính của bài toán. Sau đó giống nhƣ GAs, chúng ta cũng phải xác định hàm thích nghi, tức là tính độ thích nghi của mỗi cá thể, cụ thể ở thuật toán trên luận văn đề xuất dùng thuật toán học RF để tính độ thích nghi cho mỗi bộ thuộc tính, có áp dụng kỹ thuật kiểm chứng chéo trên mỗi bộ thuộc tính. Độ thích nghi của mỗi bộ thuộc tính đƣợc xác định là số lần phân lớp đúng khi cho các bản ghi qua thuật toán RF. Nhƣng khác với GAs, thuật toán đề xuất không thực hiện lựa chọn lai ghép và đột biến để ra đƣợc các cá thể mới, mà luận văn đề xuất phƣơng án tính độ thích nghi(trọng số) cho các thuộc tính theo công thức ở trên. Rồi từ đó tạo ra bộ thuộc tính mới bằng cách lấy các thuộc tính có trọng số cao nhất, loại bỏ các thuộc tính có trọng số thấp. Lặp lại quá trình trên cho đến khi đƣợc một bộ thuộc tính với số lƣợng thuộc tính cho phép hoặc bộ thuộc tính mới tìm đƣợc có độ thích nghi không lớn hơn bộ thuộc tính tìm đƣợc ở lần gần nhất. Khi đó chúng ta sẽ có bộ thuộc tính đƣợc lựa chọn là các thuộc tính có độ phù hợp cao nhất.
3.5 Hoạt động của hệ thống đề xuất
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 khoảng 70% và tập dữ liệu kiểm tra khoảng 30%.
a. 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 ghi. Khi cho bảng này qua Phần 1, phƣơng pháp đề nghị 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 đầu.
Việc sinh ra các tập con bộ thuộc tính đó là nhờ tạo ra bộ các thuộc tính 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) Nếu
𝑎𝑘 = 0 cột k không được chọn 1 cột k được chọn
Bƣớc 1: Tập các thuộc tính ban đầu đƣợc phân chia thành m bộ thuộc tính con, mỗi bộ thuộc tính con gồm 2 phần nhƣ sau:
- Chia đều tất cả các thuộc tính thành m bộ, tức là tất cả các thuộc tính đều đƣợc chọn.
- Sử dụng hàm sinh ngẫu nhiên các số 0 và 1 m lần, tƣơng ứng sẽ có mbộ thuộc tính với các giá trị ai khác nhau. Có thể coi mỗi chuỗi nhị phân là đại diện cho 1 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ày. 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ới.
- Kết quả là tạo ra tập m bộ thuộc tính con của bộ thuộc tính gốc, mỗi bộ gồm 2 phần trên.
Bƣớc 2: Đánh giá độ thích nghi của mỗi bộ thuộc tính mới bằng việc áp dụng thuật toán học máy RF .
Độ thích nghi 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 RF.
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 đầu. 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 [22].
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 3.5: Mô tả kiểm chứng chéo[22]
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 nhau. 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 đó.
fitness = fi
n i=1
n
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éo. Cụ thể fi đƣợc tính nhƣ sau:
fi =số lần phân lớp đúng các bản ghi tổng số các bản ghi của bảng
Bƣớc 3: Sau đó, với mỗi thuộc tính của bộ thuộc tính ban đầu ta tính đƣợc độ phù hợp (trọng số)w của mỗi thuộc tính theo công thức:
𝑊𝑗 = 𝑘 ∗ 𝑓𝑖𝑡𝑛𝑒𝑠𝑠𝑖
𝑚
𝑖=1
Với j=1,..,n tƣơng ứng với n thuộc tính đầu tiên, fitnessi là độ phù hợp của bộ thuộc tính thứ i trong m bộ thuộc tính mới. k nhận giá trị 1 nếu thuộc tính thứ j đƣợc chọn và nhận giá trị 0 nếu thuộc tính j không đƣợc chọn trong bộ thuộc tính i.
(9)
(10)
Bƣớc 4: Thực hiện sắp xếp n thuộc tính theo thứ tự giảm dần của trọng số wj.
Tiếp theo lấy p% các thuộc tính đƣợc theo thứ tự từ trên xuống dƣới ta đƣợc một bộ thuộc tính mới gồm (n*p)/100 thuộc tính.
Bộ thuộc tính này lại lặp lại các bƣớc trên cho đến khi thu đƣợc một bộ thuộc tính có số thuộc tính đạt ngƣỡng nào đó hoăc số lần lặp xác định. 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 tra. Tập dữ liệu huấn luyện mới đƣợc sử dụng để huấn luyện cho RF.
Sau khi huấn luyện xong, cho tập dữ liệu kiểm tra vào RF 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 các tập huấn luyện và kiểm thử khác nhau. Thực hiện kiểm thử nhiều lần với các giá trị khác nhau của tham số số lƣợng cây trong RF.
3.6 Sơ đồ khối phƣơng pháp đề xuất
Sau đây, hình 3.6 là sơ đồ khối mô tả phƣơng pháp học máy đã trình bày ở phần trên.