1. Trang chủ
  2. » Công Nghệ Thông Tin

Một phương pháp trích trọn thuộc tính hiệu quả cho dữ liệu có số chiều lớn

5 9 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 662,52 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài báo đề xuất một phương pháp học máy cho giải thuật phân lớp này nhằm tăng hiệu quả phân lớp của thuật toán. Cách tiếp cận này về cơ bản đã làm tăng khả năng phân lớp của giải thuật RF, phương pháp đề xuất còn cho thấy khả năng phân lớp tốt hơn một số phương pháp trích chọn đã được công bố. Như vậy, hướng cải tiến mà bài báo đề xuất là có khả thi và thu được kết quả tương đối cao. Mời các bạn cùng tham khảo!

Trang 1

Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)

Một phương pháp trích trọn thuộc tính hiệu quả cho

dữ liệu có số chiều lớn

Hà Văn Sang1, Đồng Thị Ngọc Lan1 và Ngô Thị Thu Trang2

1Khoa Hệ thống thông tin Kinh tế, Học Viện Tài chính

2Khoa Viễn thông, Học viện Công nghệ Bưu chính Viễn thông Email: sanghv@hvtc.edu.vn, landn0101@gmail.com, trangntt1@gmail.com

Abstract— Phân lớp là một trong những bài toán cơ bản trong

khai phá tri thức và dữ liệu Một thách thức của bài toán phân

lớp là số lượng thuộc tính thường rất lớn, việc phân lớp sao cho

chính xác và hiệu quả hiện vẫn là một nghiên cứu thú vị cho các

nhà khoa học trong lĩnh vực khoa học máy tính Bài báo đi sâu

vào nghiên cứu giải thuật phân lớp thuộc tính random forest

(RF) Đây là một giải thuật đã được nhiều nghiên cứu chứng

minh là rất hiệu quả trong phân lớp thuộc tính đối với bộ dữ liệu

có số lượng thuộc tính lớn Trên cơ sở đó bài báo đề xuất một

phương pháp học máy cho giải thuật phân lớp này nhằm tăng

hiệu quả phân lớp của thuật toán Cách tiếp cận này về cơ bản đã

làm tăng khả năng phân lớp của giải thuật RF, phương pháp đề

xuất còn cho thấy khả năng phân lớp tốt hơn một số phương

pháp trích chọn đã được công bố Như vậy, hướng cải tiến mà bài

báo đề xuất là có khả thi và thu được kết quả tương đối cao

Keywords- randomforest, trích chọn thuộc tính, phân lớp dữ

liệu, khai phá dữ liệu.

I GIỚI THIỆU Trong xu hướng hội nhập quốc tế, thời đại thông tin bùng

nổ, chúng ta đang “ngập lụt” trong dữ liệu nhưng lại “đói” về

tri thức, cho nên một trong các vấn đề cấp thiết đó là làm sao

phân tích và xử lý một khối lượng thông tin khổng lồ liên tục

được cập nhật để đáp ứng các yêu cầu về phát triển mọi mặt

văn hoá, kinh tế, chính trị, xã hội của đất nước Hiện nay phần

lớn các thuật toán phân lớp đã phát triển chỉ có thể giải quyết

được một lượng số liệu giới hạn cũng như một độ phức tạp dữ

liệu biết trước Trong khi đó nhờ sự phát triển mạnh mẽ của

khoa học và kỹ thuật, khối lượng dữ liệu mà chúng ta thu thập

được ngày càng phong phú và đa dạng Hơn nữa, tuỳ thuộc vào

từng loại dữ liệu và ứng dụng cụ thể mà mỗi thuật toán có độ

tốt xấu không giống nhau Các nghiên cứu cho thấy có rất

nhiều hướng cải tiến các thuật toán phân lớp như áp dụng các

thuật toán lai ghép (ensemble method), các thuật toán dựa vào

phương pháp nhân (kernel-based method), hoặc áp dụng các

phương pháp trích chọn đặc trưng (feature extraction/ selection

method) Với các phương pháp kể trên phương pháp trích chọn

đặc trưng trở nên nổi trội và có một số ưu điểm phù hợp trong

việc xử lý dữ liệu có số lượng thuộc tính lớn (vài nghìn đến vài

trăm nghìn thuộc tính) nhưng đồng thời chỉ có một số lượng

khá nhỏ các mẫu phân tích (vài chục hoặc vài trăm) Trong

khai phá dữ liệu thì phương pháp trích chọn đóng một vai trò

quan trọng để trích chọn và chuẩn bị dữ liệu Hướng tiếp cận

này làm tăng hiệu năng thu nhận tri thức trong các ngành như

tin sinh, xử lý dữ liệu web, xử lý tiếng nói, hình ảnh, Phương

pháp này có ảnh hưởng ngay lập tức đến các ứng dụng như tăng tốc độ của các thuật toán khai phá dữ liệu, cải thiệu chất lượng dữ liệu và vì vậy tăng hiệu suất khai phá dữ liệu, kiểm soát được các kết quả của thuật toán

Trong bài báo này chúng tôi sẽ trình bày một đề xuất mới

để dựa vào đó xây dựng mô hình trích chọn đặc trưng tối ưu giúp giảm kích cỡ của dữ liệu theo hướng chỉ giữ lại các thuộc tính đặc trưng, loại bỏ những thuộc tính không liên quan và những thuộc tính nhiễu nhằm tăng tốc độ các thuật toán phân lớp cải thiện chất lượng dữ liệu và vì vậy sẽ tăng hiệu suất của việc khai phá dữ liệu Cụ thể, phương pháp đề xuất sẽ chọn ra những thuộc tính tốt nhất để làm tăng năng suất của thuật toán phân lớp Random Forest

II CƠ SỞ LÝ THUYẾT

A Trích chọn thuộc tính

Trích chọn thuộc tính là một bước cơ bản nhất trong việc tiền xử lý dữ liệu, nó làm giảm bớt số chiều của mẫu Lựa chọn thuộc tính có thể là một phần vốn có của trích chọn thuộc tính

ví dụ như phương pháp phân tích thành phần cơ bản hoặc thậm chí là một thiết kế xử lý thuật toán ví dụ như trong thiết kế cây quyết định Tuy nhiên, lựa chọn thuộc tính thường là một bước

cô lập riêng biệt trong một chuỗi xử lý [7]

Có thể định nghĩa lựa chọn thuộc tính là một quá trình tìm

ra M thuộc tính từ tập N thuộc tính ban đầu, như vậy phải xác định tiêu chuẩn lựa chọn thuộc tính [8] Theo cách này, kích cỡ của không gian đặc trưng được rút ngắn tối đa theo một tiêu chuẩn định lượng nhất định Khi kích cỡ của một lĩnh vực được

mở rộng, số phần tử của tập N sẽ tăng lên, vì vậy việc tìm ra một tập đại diện tốt nhất thường gặp khó khăn và có nhiều vấn

đề liên quan đến tập được chọn Nhìn chung, một thuật toán trích chọn gồm 4 bước cơ bản: Sinh tập con, lượng giá tập con, điều kiện dừng và xác nhận kết quả

Quá trình sinh tập con là một thủ tục tìm kiếm, về cơ bản

nó sinh ra những tập con dùng cho việc lượng giá Gọi N là số các đại diện (đặc trưng) của tập dữ liệu gốc ban đầu, thì tổng số các tập con có thể được sinh ra sẽ là 2n, 2n tập này sẽ liệt kê toàn bộ các tập con của không gian Mỗi tập con được sinh ra bằng thuật toán cần được lượng giá trị bằng một tiêu chuẩn lượng giá trị nhất định và được so sánh với tập con tốt nhất đã tìm được trước nó Nếu không có điều kiện dừng phù hợp, thuật toán này có thể sẽ chạy mãi không dừng Điều kiện dừng của một quá trình sinh phải rơi vào một trong số các trường hợp sau:

Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)

Trang 2

Một phương pháp trích trọn thuộc tính hiệu quả cho

dữ liệu có số chiều lớn

Hà Văn Sang1, Đồng Thị Ngọc Lan1 và Ngô Thị Thu Trang2

1Khoa Hệ thống thông tin Kinh tế, Học Viện Tài chính

2Khoa Viễn thông, Học viện Công nghệ Bưu chính Viễn thông Email: sanghv@hvtc.edu.vn, landn0101@gmail.com, trangntt1@gmail.com

Abstract— Phân lớp là một trong những bài toán cơ bản trong

khai phá tri thức và dữ liệu Một thách thức của bài toán phân

lớp là số lượng thuộc tính thường rất lớn, việc phân lớp sao cho

chính xác và hiệu quả hiện vẫn là một nghiên cứu thú vị cho các

nhà khoa học trong lĩnh vực khoa học máy tính Bài báo đi sâu

vào nghiên cứu giải thuật phân lớp thuộc tính random forest

(RF) Đây là một giải thuật đã được nhiều nghiên cứu chứng

minh là rất hiệu quả trong phân lớp thuộc tính đối với bộ dữ liệu

có số lượng thuộc tính lớn Trên cơ sở đó bài báo đề xuất một

phương pháp học máy cho giải thuật phân lớp này nhằm tăng

hiệu quả phân lớp của thuật toán Cách tiếp cận này về cơ bản đã

làm tăng khả năng phân lớp của giải thuật RF, phương pháp đề

xuất còn cho thấy khả năng phân lớp tốt hơn một số phương

pháp trích chọn đã được công bố Như vậy, hướng cải tiến mà bài

báo đề xuất là có khả thi và thu được kết quả tương đối cao

Keywords- randomforest, trích chọn thuộc tính, phân lớp dữ

liệu, khai phá dữ liệu.

I GIỚI THIỆU Trong xu hướng hội nhập quốc tế, thời đại thông tin bùng

nổ, chúng ta đang “ngập lụt” trong dữ liệu nhưng lại “đói” về

tri thức, cho nên một trong các vấn đề cấp thiết đó là làm sao

phân tích và xử lý một khối lượng thông tin khổng lồ liên tục

được cập nhật để đáp ứng các yêu cầu về phát triển mọi mặt

văn hoá, kinh tế, chính trị, xã hội của đất nước Hiện nay phần

lớn các thuật toán phân lớp đã phát triển chỉ có thể giải quyết

được một lượng số liệu giới hạn cũng như một độ phức tạp dữ

liệu biết trước Trong khi đó nhờ sự phát triển mạnh mẽ của

khoa học và kỹ thuật, khối lượng dữ liệu mà chúng ta thu thập

được ngày càng phong phú và đa dạng Hơn nữa, tuỳ thuộc vào

từng loại dữ liệu và ứng dụng cụ thể mà mỗi thuật toán có độ

tốt xấu không giống nhau Các nghiên cứu cho thấy có rất

nhiều hướng cải tiến các thuật toán phân lớp như áp dụng các

thuật toán lai ghép (ensemble method), các thuật toán dựa vào

phương pháp nhân (kernel-based method), hoặc áp dụng các

phương pháp trích chọn đặc trưng (feature extraction/ selection

method) Với các phương pháp kể trên phương pháp trích chọn

đặc trưng trở nên nổi trội và có một số ưu điểm phù hợp trong

việc xử lý dữ liệu có số lượng thuộc tính lớn (vài nghìn đến vài

trăm nghìn thuộc tính) nhưng đồng thời chỉ có một số lượng

khá nhỏ các mẫu phân tích (vài chục hoặc vài trăm) Trong

khai phá dữ liệu thì phương pháp trích chọn đóng một vai trò

quan trọng để trích chọn và chuẩn bị dữ liệu Hướng tiếp cận

này làm tăng hiệu năng thu nhận tri thức trong các ngành như

tin sinh, xử lý dữ liệu web, xử lý tiếng nói, hình ảnh, Phương

pháp này có ảnh hưởng ngay lập tức đến các ứng dụng như tăng tốc độ của các thuật toán khai phá dữ liệu, cải thiệu chất

lượng dữ liệu và vì vậy tăng hiệu suất khai phá dữ liệu, kiểm soát được các kết quả của thuật toán

Trong bài báo này chúng tôi sẽ trình bày một đề xuất mới

để dựa vào đó xây dựng mô hình trích chọn đặc trưng tối ưu giúp giảm kích cỡ của dữ liệu theo hướng chỉ giữ lại các thuộc

tính đặc trưng, loại bỏ những thuộc tính không liên quan và những thuộc tính nhiễu nhằm tăng tốc độ các thuật toán phân lớp cải thiện chất lượng dữ liệu và vì vậy sẽ tăng hiệu suất của

việc khai phá dữ liệu Cụ thể, phương pháp đề xuất sẽ chọn ra những thuộc tính tốt nhất để làm tăng năng suất của thuật toán

phân lớp Random Forest

II CƠ SỞ LÝ THUYẾT

A Trích chọn thuộc tính

Trích chọn thuộc tính là một bước cơ bản nhất trong việc tiền xử lý dữ liệu, nó làm giảm bớt số chiều của mẫu Lựa chọn thuộc tính có thể là một phần vốn có của trích chọn thuộc tính

ví dụ như phương pháp phân tích thành phần cơ bản hoặc thậm chí là một thiết kế xử lý thuật toán ví dụ như trong thiết kế cây

quyết định Tuy nhiên, lựa chọn thuộc tính thường là một bước

cô lập riêng biệt trong một chuỗi xử lý [7]

Có thể định nghĩa lựa chọn thuộc tính là một quá trình tìm

ra M thuộc tính từ tập N thuộc tính ban đầu, như vậy phải xác định tiêu chuẩn lựa chọn thuộc tính [8] Theo cách này, kích cỡ

của không gian đặc trưng được rút ngắn tối đa theo một tiêu chuẩn định lượng nhất định Khi kích cỡ của một lĩnh vực được

mở rộng, số phần tử của tập N sẽ tăng lên, vì vậy việc tìm ra một tập đại diện tốt nhất thường gặp khó khăn và có nhiều vấn

đề liên quan đến tập được chọn Nhìn chung, một thuật toán trích chọn gồm 4 bước cơ bản: Sinh tập con, lượng giá tập con,

điều kiện dừng và xác nhận kết quả

Quá trình sinh tập con là một thủ tục tìm kiếm, về cơ bản

nó sinh ra những tập con dùng cho việc lượng giá Gọi N là số các đại diện (đặc trưng) của tập dữ liệu gốc ban đầu, thì tổng số các tập con có thể được sinh ra sẽ là 2n, 2n tập này sẽ liệt kê

toàn bộ các tập con của không gian Mỗi tập con được sinh ra bằng thuật toán cần được lượng giá trị bằng một tiêu chuẩn

lượng giá trị nhất định và được so sánh với tập con tốt nhất đã tìm được trước nó Nếu không có điều kiện dừng phù hợp, thuật toán này có thể sẽ chạy mãi không dừng Điều kiện dừng

của một quá trình sinh phải rơi vào một trong số các trường hợp sau:

- Toàn bộ các phần tử của tập hợp đều được chọn

- Các phần tử chưa chọn bị lặp lại

- Sinh thêm một tập con nữa cũng không cho kết quả tốt hơn

- Đã chọn đủ số tập con thoả mãn điều kiện tiêu chuẩn

Tập con tốt nhất được chọn ra phải được lượng giá trong những trường hợp khác nhau và nó cùng với tập gốc phải biểu diễn được với dữ liệu thực tế Lựa chọn các thuộc tính có thể tiến hành theo hai cách: cách thứ nhất là xếp loại các thuộc tính theo một tiêu chuẩn nào đó và lấy ra k thuộc tính đầu tiên, cách này là dựa vào ngưỡng để chọn thuộc tính Cách thứ hai là chọn ra tập con nhỏ nhất mà không làm giảm đi quá trình học, cách này tự động xác định số lượng thuộc tính

Lựa chọn thuộc tính có thể dựa vào các mô hình, các chiến lược tìm kiếm, thước đo chất lượng thuộc tính và ước lượng

Có ba loại mô hình như Filter, Wrapper, Embedded Các chiến lược tìm kiếm bao gồm: forward, backward, floating, branch and bound, randomized

Ước lượng của việc chọn lựa thuộc tính bao gồm hai nhiệm vụ: một là so sánh hai giai đoạn: trước và sau khi lựa chọn thuộc tính Hai là so sánh hai thuật toán lựa chọn thuộc tính [1]

Tóm lại lựa chọn thuộc tính được xem như là sự tổng hợp của

ba thành phần chính: tìm kiếm, đánh giá, chọn lựa mô hình Về

cơ bản có thể phân loại các phương pháp lựa chọn thuộc tính gồm có Filter, Wrapper và Embedded

Hướng tiếp cận Filter (Các thuộc tính được chọn độc lập với thuật toán khai phá dữ liệu)[13]

Hướng tiếp cận Wrapper (Các thuộc tính được chọn phụ thuộc theo 1 nghĩa nào đó với thuật toán khai phá dữ liệu)[13]

Để thực hiện được các thuật toán trích chọn chúng ta phải thực hiện được một số công việc sau:

- Phương pháp để sinh ra tập thuộc tính đặc trưng(tương ứng với các chiến lược tìm kiếm)

- Định nghĩa hàm đánh giá (Đưa ra tiêu chí để xác định

1 thuộc tính hay 1 nhóm thuộc tính là tốt hay xấu)

- Ước lượng hàm đánh giá (Kiểm chứng hàm đánh giá

có thực sự phù hợp và hiệu quả với bộ dữ liệu không)

B Thuật toán Random Forest

Random Forest (rừng ngẫu nhiên) [14, 15, 16] là phương phân lớp thuộc tính được phát triển bởi Leo Breiman tại đại học California, Berkeley Về bản chất RF sử dụng kỹ thuật có tên gọi là bagging Kỹ thuật này cho phép lựa chọn một nhóm nhỏ các thuộc tính tại mỗi nút của cây phân lớp để phân chia thành các mức tiếp theo Do đó, RF có khả năng phân chia không gian tìm kiếm rất lớn thành các không gian tìm kiếm nhỏ hơn, nhờ thế thuật toán có thể thực hiện việc phân loại một cách nhanh chóng và dễ dàng

Trong random forest, sự phát triển của một tập hợp các cây

đã làm cải thiện một cách đáng kể độ chính xác phân lớp, mỗi cây trong tập hợp sẽ “bỏ phiếu” cho lớp phổ biến nhất Để phát triển các tập hợp cây này thông thường các véc tơ ngẫu nhiên được tạo ra, các véc tơ này sẽ chi phối sự phát triển của mối

cây trong các tập nói trên Đối với cây thứ k trong tập các cây, một véc tơ ngẫu nhiên Θk được tạo ra, véc tơ này độc lập với các véc tơ được tạo ra trước đó Θ1, Θ2, …, Θk-1 nhưng sự phân bố của các véc tơ này là tương tự nhau Một cây được phát triển dựa vào tập huấn luyện và véc tơ Θk kết quả là được một phân lớp h(x, Θk) trong đó x là véc tơ đầu vào Sau khi một số lượng lớn các cây được tạo ra các cây này “bỏ phiếu” cho lớp phổ biến nhất

Random forest được định nghĩa như sau [8]: Một random forest là một phân lớp bao gồm một tập các phân lớp có cấu trúc cây {h(x, Θk), k=1,… trong đó {Θk} là những véc tơ độc lập, tương tự nhau được phân bố một cách ngẫu nhiên và mỗi cây sẽ bỏ một phiếu bầu cho lớp phổ biến nhất ở véc tơ đầu vào

x

Ý tưởng chính của giải thuật random forest:

• Ở mỗi lần phân chia cây một tập ngẫu nhiên m thuộc tính được lấy ra và chỉ m thuộc tính này tham gia vào việc phân chia cây

• Đối với mỗi cây phát triển dựa trên một mẫu boostrap,

tỷ lệ lỗi của các phần tử không thuộc vào bootstrap là được kiểm soát Tỷ lệ lỗi này được gọi là tỷ lệ lỗi “out-of-bag” (OOB)

Qua những tìm hiểu trên về giải thuật RF ta có nhận xét rằng RF là một phương pháp phân lớp tốt do: (1) Trong RF các sai số (variance) được giảm thiểu do kết quả của RF được tổng hợp thông qua nhiều bộ học (learner), (2) Việc chọn ngẫu nhiên tại mỗi bước trong RF sẽ làm giảm mối tương quan (correlation) giữa các người học trong việc tổng hợp các kết quả Ngoài ra, chúng ta cũng thấy rằng lỗi chung của một rừng các cây phân lớp phụ thuộc vào lỗi riêng của từng cây trong rừng cũng như mỗi tương quan giữa các cây

III MÔ HÌNH ĐỀ XUẤT Bài báo sử dụng mô hình Wrapper với hàm mục tiêu để đánh giá ở đây là thuật toán toán Random Forest được biểu diễn như hình 3.1 dưới đây

Hình 3.1: Mô hình đề xuất

Kiến trúc của hệ thống gồm hai phần chính:

Trang 3

Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)

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

Thuật toán đề xuất

Chúng tôi đề xuất thuật toán để đánh giá và tìm ra tập các

thuộc tính tốt từ tập các thuộc tính ban đầu như sau:

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:

n/m thuộc tính đều nhau

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:

kij = 0 nếu thuộc tính thứ i không được chọn trong bộ thuộc

tính thứ j

kij = 1 nếu thuộc tính thứ i được chọn trong bộ thuộc tính

thứ j

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

Trên đây là hướng đề xuất để tìm ra bộ thuộc tính tối ưu nhỏ

nhất, cách làm này mục đích là để hạn chế số lượng thuộc tính

đầu ra Các thuộc tính ban đầu được phân chia đều để đảm bảo

tất cả các thuộc tính đều được chọn, rồi kết hợp với cách phân

chia các thuộc tính ngẫu nhiên để tạo được các bộ con thuộc

tính mới Sau đó dùng thuật toán học máy RF tính độ phù hợp

của các bộ thuộc tính Dựa trên các giá trị độ phù hợp vừa tính

được chúng ta tìm ra bộ thuộc tính có số lượng thuộc tính ít

hơn mà vẫn đảm bảo được mục tiêu của bài toán

IV KẾT QUẢ 4.1 Môi trường thực nghiệm

Tất cả các thực nghiệm được thực hiện trên máy Laptop với

bộ xử lý Intel (R) Core (TM) i7 -2620 M CPU @ 2.70 GHz

2.69 GHz, RAM 4GB Phương pháp học máy được thực hiện trên ngôn ngữ R, đây là ngôn ngữ chuyên dùng trong xác suất thống kê, có thể tải về từ địa chỉ www.r-project.org, gói random forest cũng được tải về từ địa chỉ này, các mô đun khác

là hoàn toàn tự xây dựng, không sử dụng hay kế thừa lại của bất cứ nguồn nào

4.2 Quá trình thực nghiệm và kết quả Chúng tôi đã sử dụng bộ dữ liệu có trên thực tế để kiểm nghiệm hệ thống là bộ dữ liệu mô tả về bệnh ung thư dạ dày Kết quả thực nghiệm được trình bày dưới đây

Bộ dữ liệu ung thư dạ dày (Stomach)

Bộ dữ liệu Stomach Cancer gồm 137 mẫu bao gồm các thông tin về gen của các bệnh nhân bị bệnh và không bị bệnh Trong đó có 67 mẫu của bệnh nhân bình thường và 70 mẫu của người bị bệnh Bộ dữ liệu này được cung cấp bởi Trung tâm nghiên cứu về bệnh ung thư của Đại học Quốc gia Seoul tại Seoul, Hàn Quốc [17]

Bộ dữ liệu là bảng hai chiều 137 x 119, gồm 137 bản ghi, mỗi bản ghi có 119 thuộc tính Các bản ghi trong bộ dữ liệu được phân thành hai lớp ký hiệu là normal (bệnh nhân bình thường) và cancer (bệnh nhân bị ung thư)

Kết quả và phân tích thực nghiệm trên bộ dữ liệu Stomach Phần 1: Thực thi thuật toán RF trên bộ dữ liệu Stomach gốc 20 lần, mỗi lần chạy lại thực hiện kiểm chứng chéo 5 lần với số cây lần lượt là 100,300,500,800,1000 ta được kết quả như sau :

Bảng 4.1 Giá trị trung bình, độ lệch chuẩn khi chạy RF 20 lần trên bộ dữ liệu Stomach với số cây lần lượt bằng 100,300,500,800,1000

Số cây Giá trịtrung

chuẩn

Giá trị nhỏ nhất

Giá trị lớn nhất

100 0.7765 0.02539685 0.73 0.82

300 0.781 0.0148324 0.76 0.81

500 0.7875 0.01996708 0.76 0.83

800 0.795 0.01538968 0.77 0.81

1000 0.796 0.0146539 0.76 0.82

Ta thấy số cây tăng lên thì độ chính xác phân lớp của RF cũng tăng lên, độ lệch chuẩn nhỏ dần, điều đó rõ ràng là đúng với tư tưởng của thuật toán, vì RF thực hiện phân lớp bằng phương pháp xây dựng cây, mỗi cây sẽ bỏ phiếu cho một phân lớp, số lượng cây càng lớn thì số phiều bầu cho phân lớp càng nhiều, do độ độ chính xác phân lớp càng cao Từ kết quả độ lệch chuẩn tính được chứng tỏ RF chạy tương đối ổn định

Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)

Trang 4

Bảng 4.2 Thời gian (phút) trung bình,nhỏ nhất, lớn nhất khi

huấn luyện và kiểm tra RF 20 lần trên Stomach với số cây lần

lượt bằng 100,300,500,800,1000

Số

cây

Thời

gian

huấn

luyện

trung

bình

Thời gian huấn luyện nhỏ nhất

Thời gian huấn luyện lớn nhất

Thời gian kiểm tra trung bình

Thời gian kiểm tra nhỏ nhất

Thời gian kiểm tra lớn nhất

100 0.379 0.366 0.402 0.0294 0.018 0.04

300 0.9621 0.946 0.986 0.0339 0.024 0.046

500 1.5574 1.502 1.846 0.0386 0.03 0.046

800 2.4123 2.366 2.482 0.0361 0.03 0.042

1000 3.0899 3.01 3.146 0.0391 0.032 0.048

Số lượng cây càng lớn thì thời gian huấn luyện và kiểm tra

càng tăng vì số cây càng lớn thì số phép toán thực hiện càng

nhiều nên thời gian thực hiện cũng tăng theo

Phần 2: Tiến hành lựa chọn bộ dữ liệu tối ưu từ bộ dữ

liệu Stomach ban đầu bằng phương pháp đề xuất ở trên Với

tập các thuộc tính ban đầu, chúng ta thực hiện chia thành m bộ

thuộc tính con bằng cách sử dụng hàm sample( , ,replace=True)

sao cho mỗi bộ chứa n/m thuộc tính phân phối đều và n/m

thuộc tính ngẫu nhiên, với n là tổng số thuộc tính, m là tham số

phân chia(cụ thể thực nghiệm chọn m=10) Mất khoảng 20

phút để lựa chọn được một bộ thuộc tính mới có độ chính xác

đoán nhận gần 84% Cụ thể, file kết quả BestDPos cho biết bộ

thuộc tính mới gồm 36 thuộc tính có vị trí tương ứng trong số

119 thuộc tính ban đầu là :

2 8 15 16 19 26 27 28 34

45 50 53 57 58 59 61 64 66 68

69 71 77 80 82 90 93 95

101 102 103 107 109 110 116 118 119

Với bộ thuộc tính mới tìm được ta lại thực hiện lại phần 1

đã trình bày ở trên được kết quả đoán nhận của RF khi chạy 20

lần trên bộ thuộc tính mới biểu diễn bởi bảng 4.3

Bảng 4.3 Giá trị trung bình, độ lệch chuẩn khi chạy RF 20

lần trên Stomach tối ưu với số cây lần lượt bằng

100,300,500,800,1000

Số

cây

Giá trị

trung

bình Độ lệch

chuẩn Giá trịnhỏ nhất Giá trịlớn nhất

100 0.825288 0.009637 0.803843 0.846115

300 0.822774 0.007596 0.806182 0.836424

500 0.826391 0.008341 0.803342 0.842774

800 0.832055 0.007423 0.821053 0.846784

1000 0.833693 0.00556 0.824561 0.840769

Bảng 4.4 Thời gian trung bình,nhỏ nhất, lớn nhất khi huấn luyện và kiểm tra RF 20 lần trên Stomach tối ưu với số cây lần lượt bằng 100,300,500,800,1000

Số cây

Thời gian huấn luyện trung bình

Thời gian huấn luyện nhỏ nhất

Thời gian huấn luyện lớn nhất

Thời gian kiểm tra trung bình

Thời gian kiểm tra nhỏ nhất

Thời gian kiểm tra lớn nhất

100 0.1235 0.11 0.16 0.011 0 0.02

300 0.319 0.29 0.39 0.0165 0 0.03

500 0.5445 0.51 0.61 0.0205 0.01 0.05

800 0.8555 0.81 0.92 0.0275 0.01 0.05

1000 1.031 0.99 1.08 0.03 0.01 0.06 4.3 Nhận xét

So sánh bảng 4.1 với bảng 4.3 ta thấy tỉ lện đoán nhận của

RF với bộ thuộc tính mới tăng lên rõ ràng, ước tính tăng khoảng 5%, thuật toán RF cho kết quả đoán nhận trung bình là 78% trên bộ dữ liệu ban đầu, còn RF chạy trên bộ dữ liệu sau khi lựa chọn các thuộc tính bằng thuật toán đề xuất cho kết quả đoán nhận trung bình là 83% Từ bảng 4.2 và 4.4 ta cũng thấy thời gian huấn luyện và thời gian kiểm tra đều giảm đi đáng kể

Tỉ lệ đoán nhận trên bộ thuộc tính mới tăng lên cho thấy bộ thuộc tính mới đã loại bỏ được một số thuộc tính nhiễu, thuộc tính dư thừa Còn thời gian giảm đi là vì số lượng thuộc tính đã giảm xuống tương đối nhiều, cụ thể từ 119 thuộc tính ban đầu, sau khi lựa chọn bộ thuộc tính mới còn là 36 thuộc tính, như vậy số thuộc tính đã giảm khoảng 69% số thuộc tính ban đầu Điều đó chứng tỏ phương pháp thực nghiệm mà bài báo đưa ra cho hiệu quả tương đối tốt Tuy nhiên, để tìm ra một bộ thuộc tính mới chúng ta đã tiêu tốn một khoảng thời gian tương đối lớn Với bộ dữ liệu Stomach chúng ta mất khoảng 20 phút để tìm ra được một bộ thuộc tính tối ưu hơn, và với các bộ dữ liệu lớn hơn thì thời gian đó lại tăng lên, nhưng chúng ta chỉ mất thời gian 1 lần tìm bộ thuộc tính tối ưu Sau đó, tất cả các bài toán sử dụng bộ dữ liệu này khi thực thi trên bộ thuộc tính mới

sẽ giảm thời gian tính toán trên tất cả các lần chạy Và từ đó, thì thời gian làm việc sẽ giảm đi đáng kể

Bộ thuộc tính mới tìm được theo phương pháp đề xuất, đáp ứng được các mong muốn của chúng ta là nâng cao hiệu suất phân lớp và giảm thời gian học và thời gian kiểm thử Đặc biệt, trên các bảng 4.1, 4.3 ta thấy độ lệch chuẩn khi chạy

RF trên bộ thuộc tính mới chỉ bằng 1/4 đến 1/3 độ lệch chuẩn khi chạy RF trên bộ dữ liệu ban đầu, chứng tỏ chạy RF trên bộ

dữ liệu mới ổn định hơn trên bộ dữ liệu ban đầu Những điều vừa nhận xét được minh họa rõ nét hơn trên các hình 4.1-4.2 sau đây Các hình vẽ đó phản ánh cho chúng ta thấy chạy RF trên bộ dữ liệu mới cho kết quả cao hơn và ổn định hơn và chạy nhanh hơn khi chạy RF trên bộ dữ liệu Stomach ban đầu

Trang 5

Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)

Hình 4.1 Biểu đồ so sánh kết quả chạy RF 20 lần trên bộ dữ

liệu mới và bộ dữ liệu ban đầu với số cây bằng

100,300,500,800,1000

Hình 4.2 Biểu đồ so sánh thời gian chạy trung bình của 20

lần chạy RF trên bộ dữ liệu mới và bộ dữ liệu ban đầu với số

cây bằng 100,300,500,800,1000

V KẾT LUẬN Trong bài báo này chúng tôi đã tập trung nghiên cứu, tìm hiểu

về thuật toán di truyền và Random Forest cùng với một số

phương pháp tiền xử lý dữ liệu khác Từ những tìm hiểu này,

bài báo đề xuất hướng cải tiến hiệu quả phân lớp của thuật toán

RF theo phương pháp tìm ra bộ thuộc tính tối ưu nhỏ nhất từ

một bộ thuộc tính rất lớn của dữ liệu ban đầu

Bài báo đã trình bày chi tiết các bước trong nội dung thuật toán

đề xuất, sau đó tiến hành thực nghiệm để chứng minh tính đúng

đắn của thuật toán Thực nghiệm đã sử dụng bộ dữ liệu được

lấy từ các công trình nghiên cứu trước đó là dữ liệu gen của các

bệnh nhân bị ung thư dạ dày (Stomach) Trong quá trình thực

nghiệm chúng tôi tiến hành chạy rất nhiều lần, sau đó đánh giá

kết quả nhận được giữa chương trình RF nguyên bản và

phương pháp đề xuất, có phân tích và vẽ biểu đồ so sánh Từ

đó, chúng ta thấy được kết quả thực nghiệm trên cả hai bộ dữ

liệu đều phản ánh rằng phương pháp đề xuất làm cho thuật toán

phân lớp RF chạy nhanh hơn, ổn định hơn và có khả năng đoán

nhận chính xác hơn Tuy nhiên, phương pháp đề xuất này có

nhược điểm là phải tiêu tốn một khoảng thời gian chạy để tìm

ra bộ thuộc tính tối ưu tương đối lớn Nhưng lại giảm được thời

gian huấn luyện và kiểm thử cho tất cả các lần sử dụng bộ dữ

liệu về sau này Nếu muốn kết quả dự đoán chính xác hơn thì

việc thay đổi một số tham số còn làm thuật toán tiêu tốn thời gian hơn nữa

Để giải quyết hạn chế của phương pháp học máy được đề xuất ở trên trong thời gian tới chúng tôi sẽ chú trọng tìm hiểu, cải tiến nhằm tăng tốc độ phân lớp của giải thuật Đồng thời, chúng tôi cũng tiến hành thử nghiệm phương pháp trên nhiều

bộ dữ liệu khác nhau nhằm đánh giá độ chính xác và ổn định của phương pháp đối với từng loại dữ liệu cụ thể Chúng tôi sẽ tìm hiểu một số phương pháp phân lớp khác như cây quyết định hoặc phương pháp véc tơ hỗ trợ (SVM), để thay thế thuật toán Random Forest khi đánh giá kết quả dự đoán Rồi tiến hành so sánh giữa các phương pháp này với nhau Qua đó, chúng tôi hy vọng có thể đóng góp thêm một chọn lựa cho các nhà phát triển ứng dụng khi phát triển các ứng dụng liên quan đến phân lớp dữ liệu

TÀI LIỆU THAM KHẢO

[1] Nguễn Hà Nam, tối ưu hóa KPCA bằng GA để chọn các thuộc tính đặc trưng nhằm tăng hiệu quả phân lớp của thuật toán Random Forest, Tạp chí Khoa học ĐHQGHN, Khoa học Tự nhiên và Công nghệ 25 (2009) 84-93

[2] Nguyễn Đình Thúc, Lập trình tiến hóa, Nhà xuất bản giáo dục, 2001 [3] Huan Liu and Hiroshi Motoda, Computational Methods of Feature Selection, Chapman & Hall/CRC, 2008

[4] YongSeog Kim and Filipppo Meczenc, Feature Selection in Data Mining, 2005

[5] Jacek Jarmulak and Susan Craw, Genetic Algorithms for Feature Selection and Weighting, IJCAI 99 workshop, 1999

[6] Jihoon Yang and Vasant Honavar, Feature Subset Selection Using a Genetic Algorithm, Artifical Intelligence Research Group

[7] Krzysztof J.Cios, Witold Deddrycz, Roman W.Swiniarski, Lukasz A.Kurgan, Data Mining A Knowledge Discovery Approach, Springer, 2007

[8] Luis Carlos Molina et at, Feature Selection for Algorithms: A Survey and Experimental Evaluation, 2000

[9] Ron Kohavi and George H John, Wrapper for Feature Subset Selection, AIJ special issuse on relevance, 1996

[10] Sancho Salcedo –Sanz etc, Feature Selection via Genetic Optimization, 2000

[11] Ha Nam Nguyen, Syng Yup Ohn, A Learning Algorithm based for Searching Optimal Combined Kernal Function in Support Vector Machine, 2005

[12] Translation of Microarray Data into Clinically Relevant Cancer Diagnostic Tests Using Gege Expression Ratios in Lung Cancer And Mesothelioma, Cancer Research, 2002

[13] R Kohavi, G.H John, Wrappers for FeatureSubset Selection, Artificial Intelligence Vol 97(1997) 273

[14] L Breiman (2002), Manual On Setting Up, Using, And Understanding Random Forests V3.1, Available:

http://oz.berkeley.edu/users/breiman/Using_random_forests_V3.1.pdf [15] L Breiman (2001), "Random Forests", Machine Learning Journal Paper, vol 45

[16] A C Leo Breiman, Random Forests, Available:

http://www.stat.berkeley.edu/~breiman/RandomForests/cc_home.htm [17] Ha Nam Nguyen, Syng Yup Ohn (2005), A Learning Algorithm based for Searching Optimal Combined Kernal Function in Support Vector Machine

Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)

Ngày đăng: 28/04/2022, 09:41

HÌNH ẢNH LIÊN QUAN

Lựa chọn thuộc tính có thể dựa vào các mô hình, các chiến lược tìm kiếm, thước đo chất lượng thu ộc tính và ước lượ ng - Một phương pháp trích trọn thuộc tính hiệu quả cho dữ liệu có số chiều lớn
a chọn thuộc tính có thể dựa vào các mô hình, các chiến lược tìm kiếm, thước đo chất lượng thu ộc tính và ước lượ ng (Trang 2)
Phần 2 để kiểm chứng lại xem mô hình đưa ra có phù hợp không.  - Một phương pháp trích trọn thuộc tính hiệu quả cho dữ liệu có số chiều lớn
h ần 2 để kiểm chứng lại xem mô hình đưa ra có phù hợp không. (Trang 3)
Bảng 4.2 Thời gian (phút) trung bình,nhỏ nhất, lớn nhất khi huấn luyện và kiểm tra  RF 20 lần trên Stomach với số cây lần lượt bằng 100,300,500,800,1000 - Một phương pháp trích trọn thuộc tính hiệu quả cho dữ liệu có số chiều lớn
Bảng 4.2 Thời gian (phút) trung bình,nhỏ nhất, lớn nhất khi huấn luyện và kiểm tra RF 20 lần trên Stomach với số cây lần lượt bằng 100,300,500,800,1000 (Trang 4)
Bảng 4.3 Giá trị trung bình, độ lệch chuẩn khi chạy RF 20 lần trên Stomach tối  ưu  với số cây lần  lượt bằng  100,300,500,800,1000 - Một phương pháp trích trọn thuộc tính hiệu quả cho dữ liệu có số chiều lớn
Bảng 4.3 Giá trị trung bình, độ lệch chuẩn khi chạy RF 20 lần trên Stomach tối ưu với số cây lần lượt bằng 100,300,500,800,1000 (Trang 4)
Bảng 4.4 Thời gian trung bình,nhỏ nhất, lớn nhất khi huấn luyện và kiểm tra  RF 20 lần trên Stomach tối ưu với số cây lần lượt bằng 100,300,500,800,1000 - Một phương pháp trích trọn thuộc tính hiệu quả cho dữ liệu có số chiều lớn
Bảng 4.4 Thời gian trung bình,nhỏ nhất, lớn nhất khi huấn luyện và kiểm tra RF 20 lần trên Stomach tối ưu với số cây lần lượt bằng 100,300,500,800,1000 (Trang 4)
Hình 4.2 Biểu đồ so sánh thời gian chạy trung bình của 20 l ần chạy RF  trên bộ dữliệu mới và bộ dữliệu ban đầu vớ i s ố - Một phương pháp trích trọn thuộc tính hiệu quả cho dữ liệu có số chiều lớn
Hình 4.2 Biểu đồ so sánh thời gian chạy trung bình của 20 l ần chạy RF trên bộ dữliệu mới và bộ dữliệu ban đầu vớ i s ố (Trang 5)
Hình 4.1 Biểu đồ so sánh kết quả chạy RF 20 lần trên bộ dữ - Một phương pháp trích trọn thuộc tính hiệu quả cho dữ liệu có số chiều lớn
Hình 4.1 Biểu đồ so sánh kết quả chạy RF 20 lần trên bộ dữ (Trang 5)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w