Phương pháp học máy nhằm tăng hiệu quả phân lớp của giải thuật được đề xuất dưới đây được tham khảo từ bài báo: Ha-Nam Nguyen et all, “Feature Elimination Approach Based on Randon Forest for Cancer Diagnosis”, MICAI 2006: Advances
in Artificial Intelligence, Volume 4293/2006. Trong bài báo này tác giả đề xuất giải thuật “Dynamic Feature Elimination base on RF” (DEF-RF). Giải thuật gồm 4 bước được trình bày dưới đây [13]
Bước 1: Sử dụng N-fold cross validation, sử dụng giải thuật RF như là giải
Chương 5: Phương pháp học máy đề xuất Trang 53
Bước 2: Xếp hạng tất cả các thuộc tính theo tiêu chí xếp hạng trong đó
i=1,..,n; n là số các thuộc tính.
Bước 3: Loại bỏ thuộc tính bằng cách sử dụng tiêu chí xếp hạng thuộc tính có
được ở bước hai kết hợp với độ chính xác kiểm chứng khi chạy giải thuật trên tập con mới (tập con có được từ việc loại bỏ thuộc tính ở trên).
Bước 4: Quay lại bước 1 cho tới khi kết quả phân lớp thỏa mãn một số tiêu chí
đề ra.
Trong bước một của giải thuật tác giả HaNam-Nguyen và cộng sự sử dụng kỹ thuật N-fold cross validation trên bộ dữ liệu sẵn có, và sử dụng RF như là một giải thuật học trên tập dữ liệu tập huấn. Tại lần kiểm chứng chéo thứ j ta được một tập hợp gồm (Fj
).
Trong bước hai của giải thuật, từ những kết quả thu được từ bước một tác giả đề xuất tiêu chí xếp hạng các thuộc tính. Đây là bước quan trọng nhất trong việc cải tiến hiệu quả phân lớp của RF. Trong tiêu chí xếp hạng cho mỗi thuộc tính được xây dựng trong bước hai sẽ được xử dụng như một tiêu chí chính cho việc loại bỏ các thuộc tính dư thừa hay thuộc tính không tương quan trọng trong bước ba của giải thuật:
Trong đó, j=1,..,n là số lượng các tập con khi sử dụng kỹ thuật N-fold cross validation; Fi,j là giá trị của chỉ số GINI; , là kết quả dự đoán chính xác từ việc chạy giải thuật RF trên dữ liệu học và dữ liệu kiểm chứng; ε là một số thực, có giá trị rất nhỏ, nhằm mục đích sử lý trong trường hợp giá trị của
bằng giá trị của , thì sẽ có giá trị hợp lệ. Trong đó , được tính như sau:
Trong đó, cũng cần lưu ý rằng số đối tượng được phân lớp đúng bao gồm cả số đối tượng được giải thuật dự đoán đúng thuộc về đúng một lớp nào đấy và số đối tượng mà giải thuật dự đoán đúng không thuộc vào một lớp nào đấy. Cách đánh giá độ chính xác của giải thuật trong phân lớp dữ liệu theo cách trên cũng được trình bày khá chi
Chương 5: Phương pháp học máy đề xuất Trang 54
tiết trong bài báo Marina Sokolova et all, “ Beyond Accuracy, F-score and ROC: a
Family of Discriminant Measures for Performance Evaluation”, AustraAI 2006 [14].
Tuy nhiên, theo ý kiến chủ quan của tôi nếu trong trường hợp dữ liệu được phân thành nhiều lớp và số luợng các đối tượng thuộc mỗi lớp không như nhau, hay nói một cách khác là tỉ lệ các đối tượng thuộc về mỗi lớp trong bộ số liệu là không đồng đều (trong thống kê giá trị này cũng được gọi là trọng số (weight)), thì công thức trên có thể cho kết quả xếp hạng thuộc tính chưa tốt. Một cách đơn giản, nếu số lượng đối tượng thuộc mỗi lớp khác nhau thì giải thuật có thể có những kết quả dự báo với độ chính xác khác nhau trên mỗi lớp. Công thức tính tiêu chí xếp hạng mà tác giả đề xuất ở trên, theo tôi có thể chưa phản ánh hết mức độ quan trọng của mỗi thuộc tính trong mỗi lớp.
Từ nhận xét trên, tôi đề xuất một cách khác thức nhằm tính tiêu chí xếp hạng thuộc tính được tốt hơn, từ đó sẽ cải thiện được hiệu quả của thuật toán. Cách thực hiện như sau:
Trong bước một chúng ta sử dụng kỹ thuật N-fold cross validation trên bộ dữ liệu sẵn có, và sử dụng RF như là một giải thuật học trên tập dữ liệu tập huấn. Tại lần kiểm chứng chéo thứ j ta được một tập hợp gồm (Fj ).
Trong đó:
Fj là độ quan trọng thuộc tính (chỉ số GINI).
là độ chính xác kết quả khi giải thuật học trên bộ dữ liệu tập huấn đối với lớp k.
là độ chính xác kết quả khi giải thuật học trên bộ dữ liệu kiểm chứng đối với lớp k.
được tính như sau:
Trong bước hai của phương pháp máy học, từ những kết quả thu được từ bước một chúng ta đề xuất xây dựng một tiêu chí xếp hạng các thuộc tính.
Theo lý thuyết Bayes cũng như cách thức phân lớp Natvie Bayes được trình bày ở trên tôi có nhận định sau:
Chương 5: Phương pháp học máy đề xuất Trang 55
Nếu chúng ta xem tất cả các thuộc tính được phân vào một lớp k bất kỳ từ một giải thuật phân lớp nào đó là một tập mẫu, tập mẫu này gồm các đối tượng nhận một trong hai giá trị “T” và “F”. Các thuộc tính được phân lớp đúng nhận giá trị “T” và ngược lại thì nhận giá trị “F”. Như vậy, trong trường hợp của chúng ta là xác suất của các đối tượng nhận giá trị “T”, theo Bayes đây chính là ,
Cũng theo Bayes hậu xác suất , tuy nhiên trong trường hợp của chúng ta tiền xác xuất của mỗi lớp P(Ci) là không được xác định cụ thể. Do đó, ta giả định rằng các lớp có xác suất bằng nhau, nói một cách khác ta có P(C1) = P(C2) = ….= P(Cn).
Thêm vào đó, ta thấy rằng khi thực hiện các đo lường trong công thức (1) ở trên thì P(X) là không thay đổi. P(X) là xác suất của thuộc tính X trong tập n thuộc tính, một cách đơn giản, giả sử chúng ta có tập thuộc tính gồm n thuộc tính thì xác suất của X là 1/n. Do vậy, nên chúng ta có thể bỏ qua thành phần này khi tiến hành tính . Lúc này chỉ còn phụ thuộc duy nhất vào thành phần , . Muốn tính
ta chỉ cần tính , mà . Theo đó, hậu xác suất ở đây hay xác suất phân lớp đúng của một giải thuật phân lớp (độ
chính xác của giải thuật phân lớp) .
Nếu sử dụng độ chính xác của giải thuật phân lớp thuộc tính như là một yếu tố trong việc đánh giá mức độ quan trọng của một thuộc tính, thì việc ước lượng độ chính xác của giải thuật sẽ ảnh hưởng rất lớn đến kết quả đánh giá. Giả sử chúng ta đưa ra các ước lượng không thật chính xác về độ chính xác của giải thuật, và sử dụng độ chính xác này như là một yếu tố trong xếp hạng thuộc tính thì sẽ cho kết quả xếp hạng không tốt. Sau đó, ta lại sử dụng kết quả xếp hạng này như một tiêu chí để loại bỏ các thuộc tính thừa hoặc không liên quan thì việc loại bỏ các thuộc tính này đôi khi là loại bỏ nhầm. Nếu áp dụng Bayes để tính độ chính xác của giải thuật chúng ta có thể tận
dụng được ưu điểm của Bayes là cho độ chính xác cao với sai số nhỏ. Do đó, khi sử dụng độ chính xác của giải thuật như một tham số trong việc
Chương 5: Phương pháp học máy đề xuất Trang 56
đánh giá mức độ quan trọng của thuộc tính sẽ cho kết quả đánh giá chính xác hơn.
Từ những nhận định trên, tôi đề xuất tiêu chí xếp hạng cho thuộc tính thứ i như sau: Độ chính xác trung bình của giải thuật học đối với các lớp dữ liệu của tập
dữ liệu tập huấn được tính như là tích của độ chính xác giải thuật học trên từng lớp của tập dữ liệu tập huấn:
Độ chính xác trung bình của giải thuật đối với các lớp dữ liệu của tập dữ liệu kiểm chứng được tính như là tích của độ chính xác giải thuật trên từng lớp của tập dữ liệu kiểm chứng:
Tiêu chí xếp hạng thuộc tính i , , được tính như sau:
Trong đó, j=1,..,n là số lượng các tập con khi sử dụng kỹ thuật N-fold cross validation; Fi,j là giá trị của chỉ số GINI; và là các tính toán được thực hiện trên các kết quả thu được từ việc chạy giải thuật RF; là một số dương có giá trị rất bé nhằm giải quyết trong trường hợp = 0, hay giá trị
của bằng giá trị của thì .
Thành phần đầu của công thức tính xếp hạng cho thuộc tính i, Fi,j, có giá trị giảm dần đối với mỗi thuộc tính trên tất cả các cây trong rừng khi chúng ta thực hiện giải thuật học RF trên dữ liệu. Thuộc tính có giá trị của chỉ số GINI càng nhỏ có nghĩa là thuộc tính càng tốt. Thành phần thứ hai trong công thức xếp hạng thể hiện chúng ta mong muốn giải thuật sẽ có độ chính xác cao, nếu hiệu số càng nhỏ có nghĩa là độ chính xác của giải thuật càng cao, giải thuật càng tốt và các thuộc tính mà chúng ta chọn để xây dựng bộ phân lớp gần tối ưu. Việc kết hợp hai thành phần chỉ số GINI và độ chính phân lớp trong công thức xếp hạng thuộc tính trên sẽ
Chương 5: Phương pháp học máy đề xuất Trang 57
cho một đánh giá tương đối tốt về mức độ quan trọng của mỗi thuộc tính trong tập các thuộc tính cần phân lớp.
Trong bước ba của mô hình học máy, chúng ta sử dụng chiến lược loại bỏ lùi (backward elimination approach) để loại bỏ thuộc tính. Tiêu chí để loại bỏ thuộc tính trong chiến lược loại bỏ này là sự kết hợp của tiêu chí xếp hạng thuộc tính
(được trình bày ở bước hai) và độ chính xác kiểm chứng. Trong giải thuật này thuộc tính có giá trị nhỏ nhất sẽ bị loại bỏ trước. Sau đó chạy giải thuật RF trên tập dữ liệu còn lại, độ chính xác kiểm chứng sẽ quyết định tập dữ liệu mới có được chấp nhận như một ứng viên đại diện cho các thuộc tính trong bộ dữ liệu cũ hay không. Trong trường hợp, nếu độ chính xác kiểm chứng nhỏ hơn độ chính xác của tập con được chọn lựa trước đó, giải thuật sẽ thử loại bỏ các thuộc tính khác dựa vào xếp hạng thuộc tính.
Toán tử loại bỏ dần thuộc tính để tìm một tập con mới tốt hơn tập con được xây dựng trước đó sẽ dừng lại bất cứ khi nào khi độ chính xác kiểm chứng của tập con mới tốt hơn độ chính xác của tập con được xây dựng trước đó. Giải thuật sẽ dừng lại khi không còn thuộc tính để tạo ra tập con mới, hoặc không tìm được tập có độ chính xác kiểm chứng tốt hơn và tập con hiện có được xem là tập con tốt nhất của giải thuật. Nếu không, giải thuật sẽ quay trở lại bước một.
Chương 6: Kết quả thực nghiệm Trang 58
Chương 6: Kết quả thực nghiệm