Để phân lớp mẫu dữ liệu chưa biết, giá trị các thuộc tính của mẫu đượcđưa vào kiểm tra trên cây quyết định.. Trong các thuật toán cơ sở xây dựng cây quyết định chỉ chấp nhận cácthuộc tín
Tổng quan về cây quyết định
Định nghĩa
Cây quyết định là một cây mà mỗi nút của cây là:
- Nút lá hay còn gọi là nút trả lời biểu thị cho một lớp các trường hợp mà nhãn của nó là tên của lớp
Nút không phải là nút lá hay nút trong, mà là nút định phép dùng để kiểm tra các thuộc tính Nhãn của nút này thể hiện tên thuộc tính, và nó có một nhánh nối đến các cây con tương ứng với mỗi kết quả có thể của phép thử Nhãn của nhánh đại diện cho các giá trị của thuộc tính đó, trong khi nút trên cùng được gọi là nút gốc.
Cây quyết định là một công cụ quan trọng trong việc phân lớp mẫu dữ liệu chưa biết Khi kiểm tra các thuộc tính của mẫu, giá trị của chúng sẽ được đưa vào cây quyết định Mỗi mẫu sẽ có một đường đi từ nút gốc đến nút lá, và nút lá sẽ thể hiện giá trị phân lớp dự đoán cho mẫu đó.
Ví dụ 1.1.1: Cây quyết định
Hình 1 2 Ví dụ về cây quyết định
Thiết kế cây quyết định
Trong thế giới thực, dữ liệu thô thường chứa nhiễu do nhiều nguyên nhân như lỗi dữ liệu và số liệu không chính xác Để giảm thiểu hoặc loại bỏ nhiễu, chúng ta cần tiến hành tiền xử lý, hay còn gọi là "làm sạch" dữ liệu Các giai đoạn tiền xử lý không chỉ giúp loại bỏ dữ liệu không hữu ích mà còn biến đổi dữ liệu thô thành thông tin có giá trị hơn Khi áp dụng hiệu quả nhiều bước tiền xử lý, chúng ta có thể cải thiện đáng kể hiệu suất phân lớp dữ liệu.
Các công việc cụ thể của tiền xử lý dữ liệu bao gồm những công việc như:
- Filtering Attributes: Chọn các thuộc tính phù hợp với mô hình
- Filtering samples: Lọc các mẫu (instances, patterns) dữ liệu cho mô hình.
- Transformation: Chuyển đổi dữ liệu cho phù hợp với các mô hình như chuyển đổi dữ liệu từ numeric sang nomial.
Rời rạc hóa dữ liệu là quá trình chuyển đổi dữ liệu liên tục thành dữ liệu rời rạc, cần thiết cho việc áp dụng các thuật toán như ID3 và ADTDA Khi dữ liệu của bạn là dạng liên tục nhưng yêu cầu sử dụng các thuật toán chỉ hoạt động với dữ liệu rời rạc, việc rời rạc hóa sẽ giúp tối ưu hóa hiệu suất và độ chính xác của mô hình.
Cây quyết định được hình thành thông qua quá trình chia nhỏ một tập dữ liệu thành các tập con, với mỗi tập con chủ yếu bao gồm các phần tử thuộc cùng một lớp.
Các nút không phải là nút lá trong cây là những điểm phân nhánh quan trọng Việc phân nhánh tại các nút này được thực hiện dựa trên việc kiểm tra một hoặc nhiều thuộc tính, nhằm xác định cách thức phân chia dữ liệu hiệu quả.
Việc lựa chọn thuộc tính để kiểm tra tại mỗi nút trong cây quyết định là yếu tố quan trọng trong các thuật toán phân lớp Mục tiêu là chọn thuộc tính giúp phân lớp mẫu tốt nhất, do đó cần một tiêu chuẩn đánh giá hiệu quả của việc lựa chọn này Có nhiều tiêu chuẩn đánh giá khác nhau được sử dụng trong quá trình này.
+ Lượng thông tin thu thêm IG (Information Gain, thuật toán ID3 của John Ross Quilan ).
+ Độ phụ thuộc của thuộc tính quyết định vào thuộc tính điều kiện theo nghĩa lí thuyết tập thô của Zdzisław Pawlak
Các tiêu chuẩn trên sẽ được trình bày trong các thuật toán xây dựng cây quyết định ở các phần dưới đây.
1.1.2.4.Tiêu chuẩn dừng Đây là phần quan trọng trong cấu trúc phân lớp của cây quyết định nhằm chia một nút thành các nút con.
Chúng ta sẽ xem xét một số tiêu chuẩn dừng phổ biến trong cây quyết định, bao gồm việc sử dụng tập kiểm tra để đánh giá hiệu suất trong quá trình xây dựng cây Khi phát hiện lỗi, thuật toán sẽ dừng lại Ngoài ra, một phương pháp khác là áp dụng giá trị ngưỡng để quyết định dừng việc chia nút, với các yếu tố như giảm nhiễu, số lượng mẫu trong nút, tỷ lệ mẫu trong nút, hoặc chiều sâu của cây.
Trong quá trình xây dựng cây, chúng ta có thể kiểm soát sự phát triển của cây bằng cách thiết lập số lượng bản tin tối thiểu tại mỗi nút, độ sâu tối đa của cây, và giá trị tối thiểu của thông tin bổ sung cần thu thập.
Sau khi hoàn thành giai đoạn tạo cây, chúng ta có thể áp dụng phương pháp "Độ dài mô tả ngắn nhất" (Minimum Description Length) hoặc giá trị tối thiểu của IG để thực hiện việc tỉa cây Bằng cách chọn giá trị tối thiểu của IG trong giai đoạn tạo cây, chúng ta có thể cho phép cây phát triển sâu hơn, sau đó nâng giá trị này lên để tiến hành tỉa cây một cách hiệu quả.
Phương pháp tổng quát xây dựng cây quyết định
Quá trình xây dựng một cây quyết định cụ thể bắt đầu bằng một nút rỗng bao gồm toàn bộ các đối tượng huấn luyện và làm như sau:
1 Nếu tại nút hiện thời, tất cả các đối tượng huấn luyện đều thuộc vào một lớp nào đó thì cho nút này thành nút lá có tên là nhãn lớp chung của các đối tượng.
2 Trường hợp ngược lại, sử dụng một độ đo, chọn thuộc tính điều kiện phân chia tốt nhất tập mẫu huấn luyện có tại nút.
3 Tạo một lượng nút con của nút hiện thời bằng số các giá trị khác nhau của thuộc tính được chọn Gán cho mỗi nhánh từ nút cha đến nút con một giá trị của thuộc tính rồi phân chia các các đối tượng huấn luyện vào các nút con tương ứng.
4 Nút con t được gọi là thuần nhất, trở thành lá, nếu tất cả các đối tượng mẫu tại đó đều thuộc vào cùng một lớp Lặp lại các bước 1-3 đối với mỗi nút chưa thuần nhất.
Trong các thuật toán xây dựng cây quyết định, chỉ những thuộc tính có giá trị rời rạc mới được chấp nhận trong quá trình phân lớp Điều này bao gồm cả các thuộc tính dùng để dự đoán trong quá trình học và các thuộc tính kiểm tra tại mỗi nút của cây Đối với các thuộc tính có giá trị liên tục, chúng có thể được xử lý bằng cách phân mảnh thành các khoảng giá trị rời rạc.
Việc xây dựng cây quyết định diễn ra theo cách đệ quy từ nút gốc đến các nút lá Tại mỗi nút, nếu điều kiện dừng được thỏa mãn, thuật toán sẽ tạo ra một nút lá và gán giá trị nhãn lớp tương ứng Nếu không, thuật toán sẽ tìm điểm chia tốt nhất dựa trên tiêu chí đã định và phân chia dữ liệu theo điều kiện này.
Sau khi thực hiện phân chia, thuật toán sẽ lặp lại quá trình với tất cả các tập con đã được chia và tiếp tục gọi đệ quy như ở bước đầu tiên, sử dụng các tập con này làm dữ liệu chính.
Trong bước 3, tiêu chuẩn sử dụng lựa chọn thuộc tính được coi là một chỉ số đánh giá độ phù hợp và độ thuần nhất của các thuộc tính, đồng thời cũng là một quy tắc để phân chia tập mẫu huấn luyện.
Ứng dụng cây quyết định trong khai phá dữ liệu
Sau khi xây dựng thành công cây quyết định, chúng ta sẽ sử dụng kết quả từ mô hình này để phân lớp dữ liệu Đây là bước quan trọng trong việc áp dụng mô hình cây quyết định nhằm rút ra các tri thức trong khai phá dữ liệu thông qua phương pháp phân lớp.
1.1.4.1.Xác định lớp của các mẫu mới
Trên cơ sở đã biết giá trị của các thuộc tính của các mẫu X1, X2, …,
Xn ta xác định thuộc tính quyết định (hay phân lớp) Y của đối tượng đó (có thể dùng kỹ thuật này để nhận dạng mẫu, dự báo, …)
Hình 1 3 Mô hình phân lớp các mẫu mới
1.1.4.2.Rút ra các tri thức hay luật từ cây
Mục tiêu chính của khai phá dữ liệu là phát hiện các quy luật và mô hình từ cơ sở dữ liệu Từ những mô hình này, ta có thể rút ra tri thức hoặc quy luật dưới dạng cây hoặc các quy luật "Nếu thì " Hai dạng mô hình này tương đương và có thể chuyển đổi qua lại một cách linh hoạt.
One of the rules derived from the tree in example 1.1.4.2 is Rule 1: If humidity is high and the outlook is rainy, then the decision is false Rule 2 states: If humidity is high and the outlook is sunny, then the decision is also false.
+Luật 3: IF(Humidity: high) AND (Outlook: Overcast) THEN (=> Quyết định: True) …
Từ đây ta sử dụng các luật này để hỗ trợ quá trình ra các quyết định, dự đoán, …
Một số vấn đề khi sử dụng cây quyết định
Trong quá trình học và phân lớp dữ liệu bằng cây quyết định, có một số vấn đề quan trọng cần được giải quyết, bao gồm: xác định độ sâu tối ưu cho cây quyết định, xử lý các thuộc tính liên tục, lựa chọn phương pháp đo lường thích hợp cho thuộc tính, quản lý dữ liệu đào tạo có giá trị thuộc tính bị thiếu, sử dụng các thuộc tính với chi phí khác nhau, và cải thiện hiệu suất tính toán Những vấn đề này sẽ được thảo luận chi tiết trong các thuật toán phân lớp dựa trên cây quyết định.
Hiện tượng cây quyết định thể hiện những đặc trưng riêng của tập dữ liệu đào tạo, dẫn đến độ chính xác cao khi thử nghiệm trên chính tập dữ liệu này Tuy nhiên, khi áp dụng mô hình cho các dữ liệu tương lai khác, độ chính xác không đạt được mức tương tự.
Quá vừa dữ liệu là một thách thức lớn đối với việc học bằng cây quyết định và các phương pháp học máy khác Điều này đặc biệt xảy ra khi số lượng ví dụ trong tập dữ liệu đào tạo quá ít hoặc khi có sự nhiễu trong dữ liệu.
Có hai phương pháp tránh “quá vừa” dữ liệu trong cây quyết định:
1 Dừng phát triển cây sớm hơn bình thường, trước khi đạt tới điểm phân lớp hoàn hảo tập dữ liệu đào tạo Với phương pháp này, một thách thức đặt ra là phải ước lượng chính xác thời điểm dừng phát triển cây.
2 Cho phép cây có thể “quá vừa” dữ liệu, sau đó sẽ cắt, tỉa cây. Mặc dù phương pháp thứ nhất có vẻ trực tiếp hơn, nhưng với phương pháp thứ hai thì cây quyết định được sinh ra được thực nghiệm chứng minh là thành công hơn trong thực tế Hơn nữa việc cắt tỉa cây quyết định còn giúp tổng quát hóa, và cải thiện độ chính xác của mô hình phân lớp Dù thực hiện phương pháp nào thì vấn đề mấu chốt ở đây là tiêu chuẩn nào được sử dụng để xác định kích thước hợp lý của cây cuối cùng.
1.1.5.2.Thao tác với thuộc tính liên tục
Việc thao tác với thuộc tính liên tục trên cây quyết định hoàn toàn không đơn giản như với thuộc tính rời rạc.
Thuộc tính rời rạc có tập giá trị xác định trước, bao gồm các giá trị rời rạc như loại ô tô với các giá trị {xe tải, xe khách, xe con, taxi} Phân chia dữ liệu dựa vào việc kiểm tra giá trị của thuộc tính rời rạc cho phép xác định xem một ví dụ cụ thể có thuộc tập giá trị của thuộc tính đó hay không.
Trong miền X (A), kiểm tra logic đơn giản không yêu cầu nhiều tài nguyên tính toán Đối với thuộc tính liên tục, tập giá trị không được xác định trước, do đó cần sử dụng kiểm tra nhị phân: value (A) ≤ θ Hằng số ngưỡng θ được xác định dựa trên từng giá trị riêng biệt hoặc từng cặp giá trị liền nhau trong tập dữ liệu đào tạo Nếu thuộc tính A có d giá trị phân biệt, cần thực hiện d-1 lần kiểm tra value (A) ≤ θi với i từ 1 đến d-1 để tìm ngưỡng θbest tốt nhất Việc xác định giá trị của θ và tiêu chí tìm θ tốt nhất phụ thuộc vào chiến lược của từng thuật toán; trong thuật toán C4.5, θi được chọn là 19 giá trị trung bình của hai giá trị liền kề trong dãy giá trị đã sắp xếp.
Đánh giá cây quyết định trong lĩnh vực khai phá dữ liệu
1.1.6.1.Sức mạnh của cây quyết định
Cây quyết định có 5 sức mạnh chính sau [5]:
1 Khả năng sinh ra các quy tắc hiểu được Cây quyết định có khả năng sinh ra các quy tắc có thể chuyển đổi được sang dạng tiếng Anh, hoặc các câu lệnh SQL Đây là ưu điểm nổi bật của kỹ thuật này Thậm chí với những tập dữ liệu lớn khiến cho hình dáng cây quyết định lớn và phức tạp, việc đi theo bất cứ đường nào trên cây là dễ dàng theo nghĩa phổ biến và rõ ràng Do vậy sự giải thích cho bất cứ một sự phân lớp hay dự đoán nào đều tương đối minh bạch.
2 Khả năng thực thi trong những lĩnh vực hướng quy tắc Điều này có nghe có vẻ hiển nhiên, nhưng quy tắc quy nạp nói chung và cây quyết định nói riêng là lựa chọn hoàn hảo cho những lĩnh vực thực sự là các quy tắc Rất nhiều lĩnh vực từ di truyền tới các quá trình công nghiệp thực sự chứa các quy tắc ẩn, không rõ ràng do khá phức tạp và tối nghĩa bởi những dữ liệu nhiễu loạn Cây quyết định là một sự lựa chọn tự nhiên khi chúng ta nghi ngờ sự tồn tại của các quy tắc ẩn, không rõ ràng
3 Dễ dàng tính toán trong khi phân lớp Mặc dù như chúng ta đã biết, cây quyết định có thể chứa nhiều định dạng, nhưng trong thực tế, các thuật toán sử dụng để tạo ra cây quyết định thường tạo ra những cây với số phân nhánh thấp và các thử đơn giản tại từng nút Những thử điển hình là: so sánh số, xem xét phần tử của một tập hợp, và các phép nối đơn giản Khi thực thi trên máy tính, những thử này chuyển thành các toán hàm logic và số nguyên là những toán hạng thực thi nhanh và không đắt. Đây là một ưu điểm quan trọng bởi trong môi trường thương mại, các mô hình dự đoán thường được sử dụng để phân lớp hàng triệu thậm trí hàng tỉ bản ghi
4 Khả năng xử lý với cả thuộc tính liên tục và thuộc tính rời rạc. Cây quyết định xử lý “tốt” như nhau với thuộc tính liên tục và thuộc tính rời rạc Tuy rằng với thuộc tính liên tục cần nhiều tài nguyên tính toán hơn Những thuộc tính rời rạc đã từng gây ra những vấn đề với mạng nơ ron nhân tạo và các kỹ thuật thống kê lại thực sự dễ dàng thao tác với các tiêu chuẩn phân chia trên cây quyết định: mỗi nhánh tương ứng với từng phân tách tập dữ 20 liệu theo giá trị của thuộc tính được chọn để phát triển tại nút đó Các thuộc tính liên tục cũng dễ dàng phân chia bằng việc chọn ra một số gọi là ngưỡng trong tập các giá trị đã sắp xếp của thuộc tính đó Sau khi chọn được ngưỡng tốt nhất, tập dữ liệu phân chia theo thử nhị phân của ngưỡng đó.
5 Thể hiện rõ ràng những thuộc tính tốt nhất Các thuật toán xây dựng cây quyết định đưa ra thuộc tính mà phân chia tốt nhất tập dữ liệu đào tạo bắt đầu từ nút gốc của cây Từ đó có thể thấy những thuộc tính nào là quan trọng nhất cho việc dự đoán hay phân lớp
1.1.6.2.Nhược điểm của cây quyết định
Mặc dù cây quyết định có nhiều ưu điểm, nhưng vẫn tồn tại một số điểm yếu Cây quyết định không phù hợp cho các bài toán dự đoán giá trị thuộc tính liên tục như thu nhập, huyết áp hay lãi suất ngân hàng Ngoài ra, cây quyết định cũng gặp khó khăn trong việc xử lý dữ liệu thời gian liên tục nếu không có sự đầu tư công sức để thiết lập biểu diễn dữ liệu theo các mẫu liên tục.
1 Dễ xảy ra lỗi khi có quá nhiều lớp Một số cây quyết định chỉ thao tác với những lớp giá trị nhị phân dạng yes/no hay accept/reject Số khác lại có thể chỉ định các bản ghi vào một số lớp bất kỳ, nhưng dễ xảy ra lỗi khi số ví dụ đào tạo ứng với một lớp là nhỏ Điều này xẩy ra càng nhanh hơn với cây mà có nhiều tầng hay có nhiều nhánh trên một nút.
2 Chi phí tính toán đắt để đào tạo Điều này nghe có vẻ mâu thuẫn với khẳng định ưu điểm của cây quyết định ở trên Nhưng quá trình phát triển cây quyết định đắt về mặt tính toán Vì cây quyết định có rất nhiều nút trong trước khi đi đến lá cuối cùng Tại từng nút, cần tính một độ đo (hay tiêu chuẩn phân chia) trên từng thuộc tính, với thuộc tính liên tục phải thêm thao tác xắp xếp lại tập dữ liệu theo thứ tự giá trị của thuộc tính đó Sau đó mới có thể chọn được một thuộc tính phát triển và tương ứng là một phân chia tốt nhất Một vài thuật toán sử dụng tổ hợp các thuộc tính kết hợp với nhau có trọng số để phát triển cây quyết định Quá trình cắt cụt cây cũng “đắt” vì nhiều cây con ứng cử phải được tạo ra và so sánh.
Thuật toán xây dựng cây quyết định dựa vào Entropy
Tiêu chí chọn thuộc tính phân lớp
Tiêu chí đánh giá điểm chia đóng vai trò quan trọng trong việc phân chia dữ liệu, được coi là tiêu chuẩn “heuristic” Mục tiêu chính là tạo ra các tập con phân chia sao cho chúng trở nên “trong suốt”, tức là tất cả các bộ thuộc về cùng một nhãn.
Thuật toán sử dụng độ đo lượng thông tin thu thêm (IG) để xác định điểm chia, dựa trên lý thuyết thông tin của Claude Shannon Độ đo này được tính toán nhằm tối ưu hóa quá trình phân chia dữ liệu.
Xét bảng quyết định DT = (U, C {d} ), số giá trị (nhãn lớp) có thể của d là k Khi đó Entropy của tập các đối tượng trong DT được định nghĩa bởi:
Lượng thông tin thu thêm (Information Gain - IG) được tính bằng lượng Entropy còn lại sau khi phân hoạch tập các đối tượng trong cây quyết định (DT) theo thuộc tính điều kiện c nào đó Công thức tính IG là P_i log2 P_i, trong đó P_i là tỉ lệ các đối tượng trong DT mang nhãn lớp i.
Entropy(Uv) là một khái niệm quan trọng trong việc đo lường sự không chắc chắn của tập hợp các đối tượng Uv, trong đó Vc đại diện cho các giá trị của thuộc tính c John Ross Quinlan đã áp dụng chỉ số IG(U, c) để lựa chọn thuộc tính phân chia dữ liệu tại mỗi nút trong thuật toán xây dựng cây quyết định ID3 Thuộc tính được chọn sẽ là thuộc tính mang lại lượng thông tin thu được lớn nhất.
Thuật toán ID3
Thuật toán ID3 (Iterative Dichotomiser 3) được phát triển bởi John Ross Quinlan nhằm xây dựng cây quyết định theo phương pháp từ trên xuống (Top-Down) Thuật toán bắt đầu với một tập hợp các đối tượng và thuộc tính của chúng, kiểm tra một thuộc tính tại mỗi nút cây để phân chia tập đối tượng dựa trên kết quả kiểm tra Quá trình này diễn ra đệ quy cho đến khi các đối tượng trong cây con trở nên đồng nhất theo một tiêu chí phân lớp nhất định Nhãn của các nút lá trong cây quyết định tương ứng với các lớp hay dạng giống nhau, trong khi nhãn của các nút không phải lá là tên thuộc tính có giá trị IG (Information Gain) cao nhất IG được tính dựa trên hàm Entropy và là chỉ số quan trọng để xác định thuộc tính nào nên được chọn trong quá trình xây dựng cây quyết định.
Giải mã thuật toán ID3 như sau:
Dữ liệu vào: Bảng quyết định DT = (U, C {d})
Dữ liệu ra: Mô hình cây quyết định
If all samples belong to the same class label, return a leaf node labeled with that class If the set of classes is null, return a leaf node with the most common class label in the dataset Otherwise, determine the best attribute for splitting the data.
//xóa bestAttribute khỏi tập thuộc tính Với mỗi giá trị v bestAttributein Begin
Uv := [U]v ; //Uv là phân hoạch của U theo thuộc tính //bestAttribute có giá trị là v
//Tạo 1 nút con Gắn nút ChildNode vào nhánh v; end end End
Giả mã của hàm getBestAttribute như sau:
Dữ liệu vào: Bảng quyết định DT = (U, C {d})
Dữ liệu ra: Thuộc tính điều kiện tốt nhất
Với mỗi c C in begin tg : = IG(U, c);
// Tính lượng thông tin thu thêm IG(U,c)
If (tg > max IG) then begin maxIG := tg; kq := c; end end return kq;
//Hàm trả về thuộc tính có lượng thông tin thu thêm IG là lớn nhất
Ví dụ về thuật toán ID3
Xét bảng quyết định DT = {U, C {d}} sau đây:
1 overcast true cool high True
2 sunny false mild high false
3 sunny false hot high false
4 overcast false hot normal false
5 sunny true hot low True
6 rainy false mild high false
7 rainy false hot high false
8 rainy false hot normal false
9 overcast true hot low True
10 rainy false mild normal True
11 rainy true hot normal false
12 rainy false hot high false
Bảng 1 dữ liệu huấn luyện
Giải thích cơ sở dữ liệu trong bảng dữ liệu huấn luyện:
Mỗi mẫu thời tiết được biểu diễn bởi các thuộc tính như Outlook (quang cảnh), Temp (nhiệt độ), Humidity (độ ẩm) và Windy (gió) Ngoài ra, còn có một thuộc tính quyết định d (chơi Tennis) với hai giá trị là True và False, tương ứng với việc chơi hoặc không chơi tennis.
Mỗi thuộc tính đều có một tập các giá trị hữu hạn:
The Outlook attribute has three values: Overcast, Rain, and Sunny The Temp attribute includes three options: Hot, Cool, and Mild Humidity can be either High or Normal, while the Windy attribute has two possible values: True and False These values serve as symbols to represent the problem.
Thuật toán xây dựng cây quyết định như sau
Nút lá được khởi tạo với các mẫu từ 1 đến 12, và để xác định điểm chia tối ưu, cần tính toán chỉ số IG cho tất cả các thuộc tính Đầu tiên, Entropy sẽ được tính cho toàn bộ tập huấn luyện U, bao gồm bốn bộ {1, 5, 9, 10} có giá trị thuộc tính nhãn là “TRUE” và tám bộ còn lại.
{2, 3, 4, 6, 7, 8, 11, 12} có thuộc tính nhãn là “FALSE”, do đó:
12 =0.918 Tính IG cho từng thuộc tính:
- Thuộc tính “Outlook” Thuộc tính này có ba giá trị là “Overcast”,
Nhìn vào bảng dữ liệu ta thấy:
Với giá trị “Overcast” có ba bộ {1, 9} có giá trị thuộc tính nhãn là
“TRUE” và có một bộ {4} có nhãn lớp là “FALSE”
Tương tự giá trị “Sunny” có một bộ {5} có nhãn lớp là “TRUE” và có hai bộ {2, 3} có nhãn lớp là “FALSE”;
Với giá trị “Rainy” có một bộ {10} có nhãn lớp “TRUE” và năm bộ {6, 7, 8, 11, 12} có nhãn lớp “FALSE”.
Theo công thức trên, độ đo lượng thông tin thu thêm của thuộc tính
Theo cách tính tương tự như trên, ta tính được:
Thuộc tính "Humidity" có chỉ số IG cao nhất và được chọn làm thuộc tính phân chia Do đó, "Humidity" sẽ là nhãn cho nút gốc, tạo ra ba nhánh với các tên tương ứng.
Hơn nữa nhánh “low” có các mẫu {5, 9} cùng thuộc một lớp “TRUE” nên nút lá được tạo ra với nhãn là “TRUE”.
Kết quả phân chia sẽ là cây quyết định như sau:
Hình 1 4 Cây sau khi chọn thuộc tính Humidity (ID3)
Bước tiếp theo gọi thuật toán đệ quy: ID3(U1, C-{Humidity}, {d})
Đầu tiên, chúng ta tính toán Entropy cho toàn bộ tập huấn luyện trong U1, trong đó có một bộ {1} với thuộc tính nhãn là "TRUE" và năm bộ {2, 3, 6, 7, 12} có thuộc tính nhãn là "FALSE".
- Tiếp theo tính IG cho thuộc tính “Outlook”, thuộc tính này có ba giá trị là “Overcast”, “Sunny” và “Rainy” Nhìn vào bảng dữ liệu:
Với giá trị “Overcast” chỉ có một bộ {1} có giá trị thuộc tính nhãn là “TRUE ”
Tương tự giá trị “Sunny” chỉ có hai bộ {2, 3} đều có nhãn lớp là
Với giá trị “Rainy” chỉ có ba bộ {6, 7, 12} đều có nhãn lớp
Do đó, độ đo lượng thông tin thu thêm của thuộc tính “Outlook” xét trên U 1 là:
- Tương tự ta cũng có:
Ta thấy chỉ số IG của thuộc tính “Outlook”, “Windy”, “Temp” là như nhau, ta có thể chọn bất kỳ thuộc tính nào để phân chia.
Giả sử ta chọn thuộc tính “Outlook” để phân chia Do đó, thuộc tính
“Outlook” làm nhãn cho nút bên trái nối với nhánh “high”
Thuộc tính này có ba giá trị: “Overcast”, “Sunny” và “Rainy”, dẫn đến việc tạo ra ba nhánh mới tương ứng Nhánh “Overcast” có một mẫu {1} với giá trị quyết định là “TRUE”, do đó tạo ra nút lá “TRUE” Nhánh “Sunny” gồm hai mẫu {2, 3} với giá trị quyết định là “FALSE”, tạo ra nút lá “FALSE” Cuối cùng, nhánh “Rainy” có ba mẫu {6, 7, 12} cũng với giá trị quyết định là “FALSE”, dẫn đến nút lá “FALSE”.
Sau khi thực hiện xong thuật toán đệ quy: ID3(U1, C-{Humidity},
{d}), ta có cây như sau:
Hình 1 5 Cây sau khi chọn thuộc tính Outlook (ID3)
Bước tiếp theo gọi thuật toán đệ quy: ID3(U2, C-{ Humidity}, {d}) Tính một cách tương tự như trên ta có:
Ta thấy chỉ số IG của “Temp” là lớn nhất, nên nó được chọn để phân chia
Do đó, thuộc tính “Temp” làm nhãn cho nút bên phải nối với nhánh
Trong U2, thuộc tính này có hai giá trị “hot” và “mild” nên ta tiếp tục tạo thành hai nhánh mới là “hot” và “mild”:
- Với nhánh “hot” gồm ba mẫu {4, 8, 11} và đều có giá trị quyết định là “FALSE” nên ta tạo nút lá là “FALSE”
- Với nhánh “mild” gồm một mẫu {10} và có giá trị quyết định là
“TRUE ” nên tạo nút lá là “TRUE ”
Cây cuối cùng như sau:
Hình 1 6 Cây quyết định (ID3)
Tổng quá thuật toán ID3
Đối với một tập dữ liệu đã được gán nhãn S với n ví dụ thuộc các lớp {c1, c2, , cn}, chỉ số entropy (E) có thể được định nghĩa như trong công thức (1).
Trong nghiên cứu này, S C i được định nghĩa là tập con chứa các ví dụ có giá trị mục tiêu tương ứng với C i Entropy (E) đạt giá trị tối đa khi tất cả các lớp có xác suất xuất hiện đồng đều.
1) Độ tăng thông tin (thu thập được) Để chọn thuộc tính tốt nhất nhằm tách một nút nhất định, ta có thể sử dụng thước đo độ tăng thông tin giả sử là Gain (S, A) của một thuộc tính A, bằng một tập ví dụ S Độ tăng thông tin được định nghĩa trong (2).
Trong đó E(S) là chỉ số entropy của tập dữ liệu S, V(A) là tập tất cả các giá trị của thuộc tính A.
Một tiêu chí phân chia khác có thể được sử dụng là hệ số tăng, được xác định bằng tỷ lệ giữa giá trị độ tăng thông tin Gain(S, A) và giá trị thông tin phân chia SInfo(S, A), như đã nêu trong (3).
Kira và Rendell đã đề xuất thuật toán Relief ban đầu để ước tính chất lượng của các thuộc tính dựa trên sự khác biệt của chúng giữa các ví dụ tương tự Thuật toán này được mô tả qua các bước trong Hình 1.8, trong đó hàm diff được sử dụng để tính toán sự khác biệt giữa giá trị thuộc tính (A) trong hai trường hợp khác nhau, I1 và I2, theo công thức (4): diff (A, I1, I2) = {1 nếu khác nhau, 0 nếu I1[A] = I2[A]}.
Đánh giá mô hình Chương 3: Mô hình cây quyết định áp dụng cho hệ thống tuyển sinh trường đại học 3.1 Tập dữ liệu
Kết quả của mô hình cây quyết định
Mô hình cây quyết định được xây dựng từ các hồ sơ trong tập dữ liệu huấn luyện thông qua công cụ khai thác dữ liệu Orange Bảng 4 trình bày các giá trị của ma trận lỗi, được khởi tạo bằng cách áp dụng cây quyết định lên các tập dữ liệu kiểm định.
Lớp thực Lớp dự đoán Được chấp nhận Bị từ chối Được chấp nhận 12305 1538 13843
Bảng 4 Ma trận lỗi đã được kiểm tra
Giá trị đo Độ chính xác A cc = 12305+6729 29056
Mức ghi nhớ R Được chấp nhận = 12305
Mức chính xác P Được chấpnhận = 12305
Bảng 5 Các thước đo đánh giá mô hình
Công cụ phân loại đề xuất đã đạt được khả năng hạn chế lỗi cao, cải thiện hiệu suất và hiệu quả trong quá trình tuyển sinh, mặc dù mức độ chính xác chỉ ở mức vừa phải Công cụ này giúp lọc các thí sinh ban đầu, cho phép nhân viên tuyển sinh tập trung vào những ứng viên triển vọng hơn, từ đó nâng cao chất lượng lựa chọn Điều này cũng giúp giảm bớt khối lượng công việc cho nhân viên hành chính, cho phép họ thực hiện công việc tuyển chọn tốt hơn Mặc dù có thể bỏ qua một số ứng viên với mức ghi nhớ hơi thấp hơn 1, nhưng điều này không phải lúc nào cũng là vấn đề lớn, vì nhân viên hành chính không thể luôn xác định ứng viên tốt nhất trong số nhiều thí sinh Đối với lớp “Bị từ chối”, công cụ phân loại đạt hiệu quả trên mức trung bình với giá trị khoảng 0,58.
Cây quyết định và các quy tắc rút ra từ cây quyết định
Từ các yếu tố trên ta có thể đưa ra cây quyết định kết quả cuối cùng đối với 1 thí sinh như sau:
Hình 3 1 Cây quyết định kết quả thí sinh ứng tuyển
Cây quyết định mang lại lợi ích lớn nhờ khả năng giải thích dưới dạng tập quy tắc, được hình thành khi đi từ nút gốc đến lá Những quy tắc này cung cấp cái nhìn phân tích rõ ràng về hệ thống, giúp phòng hệ thống tuyển sinh nắm bắt quy trình tổng thể Tập quy tắc suy ra được thể hiện trong bảng 6.
1 IF khu vực= “1007” AND HS Grade = “Giỏi” THEN “Được chấp nhận” (75.7%)
2 IF Khu vực ≠ “1007” AND HS_Grade = “Giỏi” AND Giới tính “Nam” AND Khu vực = “1001” THEN “Được chấp nhận” (74.9%)
3 IF Khu vực ≠ “1007” AND HS Grade = “Giỏi” AND Giới tính = “Nữ”
AND Khu vực # “901” THEN “Bị từ chối” (64.4%)
4 IF Khuvực ≠ “1007” AND HS_Grade = “Giỏi” AND Giới tính “Nữ” AND Khuvực= “901” THEN “Bị từ chối” (85.0%)
5 IF Khuvực ≠ “1007” AND HS Grade ≠ “Giỏi” AND HS Grade ≠
“Khá” THEN “Bị từ chối” (98.9%)
6 IF Khuvực ≠ “1007” AND HS_Grade = “Giỏi” AND Giới tính “Nam” AND Khuvực ≠ “1001 ” THEN “Bị từ chối” (51.1%)
7 IF Khuvực ≠ “1007” AND HS Grade ≠ “Giỏi” AND HS Grade “Khá” THEN “Bị từ chối” (90.5%)
8 IF Khuvực= “1007” AND HS Grade ≠ “Giỏi”AND HS Grade ≠
“Khá” THEN “Bị từ chối” (87.0%)
9 IF Khuvực= “1007” AND HS_Grade ≠ “Giỏi” AND HS_Grade ”Khá” THEN “Bị từ chối” (63.9%)
Bảng 6 Tập quy tắc (luật) từ cây quyết định
Theo bảng 6, mỗi quy tắc có tỷ lệ phần trăm số trường hợp được dự đoán theo quy tắc và lớp tương ứng Đáng chú ý, chỉ có hai quy tắc dẫn đến trạng thái "Được chấp nhận" Quy tắc đầu tiên áp dụng cho thí sinh có mã vùng "1007" (khu vực thành phố Hà Nội) và điểm trung học đạt loại "Giỏi" Quy tắc thứ hai liên quan đến sinh viên.
“Nam” từ vùng có mã “1001” (tức là khu vực lân cận thành phố “Hà Nội”) có điểm “Giỏi” ở trung học.
Sau khi áp dụng các thuật toán quyết định, bộ phận tuyển sinh của trường Đại học Mỏ - Địa chất nên ưu tiên các ứng viên có hộ khẩu gần Hà Nội hoặc các huyện ven đô, thay vì các thí sinh từ các tỉnh xa Lý do là những thí sinh này có xu hướng gắn bó lâu dài với trường, do chi phí sinh hoạt và học tập thấp hơn Do đó, điều kiện tuyển sinh đầu tiên nên dựa vào khu vực cư trú của thí sinh, thay vì chỉ dựa vào điểm số học tập ở bậc phổ thông.