Những hạn chế của giải thuật ID3

Một phần của tài liệu Khai phá dữ liệu với cây quyết định (Trang 44)

- Từ cách nhìn ID3 như là một giải thuật tìm kiếm trong không gian các giả thuyết, ta thấy trong khi tìm kiếm, ID3 chỉ duy trì một giả thuyết hiện tại. Vì vậy, giải thuật này không có khả năng biểu diễn được tất cả các cây quyết định khác nhau có khả năng phân loại đúng dữ liệu hiện có. Hơn nữa, giải thuật thuần ID3 không có khả năng quay lui trong khi tìm kiếm. Vì vậy, nó có thể gặp phải những hạn chế là hội tụ về cực tiểu địa phương.

- Hai là nó dựa vào rất nhiều vào số lượng của những tập hợp dữ liệu đưa vào. Quản lý nhiễu của tập dữ liệu vào là vô cùng quan trọng khi chúng ta ứng dụng giải thuật cây quyết định vào thế giới thực. Ví dụ, khi có sự lẫn tạp trong tập dữ liệu đưa vào hoặc khi số lượng ví dụ đưa vào là quá nhỏ để tạo ra một ví dụ điển hình của hàm mục tiêu đúng. ID3 có thể dẫn đến việc tạo quyết định sai.

Có <1 triệu Doanh thu Lọai dịch vụ Không >3 triệu Loại khách hàng 1..3 triệu Công ty Lọai dịch vụ Cá nhân Có Thường Lọai khách hàng Nhanh Nhanh Không Có Công ty Cá nhân Không Thường Thanh toán Có

Chuyển khoản Tiền mặt

- Ba là giải thuật ID3 là một giải thuật học đơn giản nhưng nó chỉ phù hợp với một lớp các bài toán hay vấn đề có thể biểu diễn bằng ký hiệu. Chính vì vậy, giải thuật này thuộc tiếp cận giải quyết vấn đề dựa trên ký hiệu (symbol based approach). Tập dữ liệu huấn luyện ở đây bao gồm các ví dụ được mô tả bằng các cặp “Thuộc tính – giá trị”, như trong ví dụ về khách hàng trình bày ở trên, đó là „Lọai khách hàng – Công ty‟, hay „Lọai khách hàng – Cá nhân‟,… và mỗi ví dụ đều có một thuộc tính phân loại, ví dụ như „mua phong bì‟, thuộc tính này phải có giá trị rời rạc: có, không. Với mục đích mở rộng phạm vi hoạt động của ID3 cho những thuộc tính có giá trị liên tục (giá trị số) để phù hợp với thế giới thực, ta phải định nghĩa những giá trị rời rạc mới bằng cách đưa ra ngưỡng để phân những giá trị liên tục thành những thuộc tính rời rạc. Chúng ta sẽ chọn một ngưỡng mà có thể tạo ra thu thập thông tin lớn nhất. Bằng việc sắp xếp những giá trị số sau đó xác định ngưỡng. Chúng ta có thể tạo ra một tập hợp những ngưỡng cho phép rồi tính thông tin đạt được với mỗi ngưỡng tối ưu cho việc phân chia. Cụ thể với một giá trị thuộc tính A là giá trị liên tục, giải thuật có thể linh động tạo ra một thuộc tính logic Ac mang giá trị true nếu A < c và false nếu ngược lại. Vấn đề còn lại là lựa chọn giá trị tốt nhất cho ngưỡng c như thế nào.

Ngoài ra, trong ID3 còn có nhiều vấn đề liên quan như làm sao để tránh cho cây quyết định không bị ảnh hưởng quá nhiều (overfitting) vào dữ liệu huấn luyện, để nó có thể tổng quát hơn, phân loại đúng được cho các trường hợp chưa gặp. Có nhiều giải pháp đã được đưa ra như cắt tỉa lại cây quyết định sau khi học, hoặc cắt tỉa các luật sau khi chuyển cây về dạng luật. Một vấn đề khác là trường hợp một vài thuộc tính nào đó có giá trị liên tục, giải quyết các vấn đề này dẫn đến việc sinh ra nhiều thế hệ sau của ID3, một giải thuật nổi bật trong số đó là C4.5.

Một phần của tài liệu Khai phá dữ liệu với cây quyết định (Trang 44)