Đề tài Kỹ thuật phân lớp dữ liệu trong khai phá dữ liệu

Kĩ thuật phân lớp dữ liệu trong Khai Phá Dữ Liệu là một trong những vấn đề nguyên cứu mở rộng hiện nay ; tập trung chủ yếu vào thống kê, máy học và mạng nơtrôn . Kĩ thuật phân lớp được đánh giá là một kĩ thuật khai phá dữ liệu được sử dụng rộng rãi nhất với nhiều mở rộng . Sự kết hợp của kỹ thuật phân lớp và cơ sở dữ liệu là một lĩnh vực hứa hẹn bởi vì đáp ứng được một vấn đề hết sức quan trọng của ứng dụng cơ sở dữ liệu đó là tính uyển chuyển cao . Với những ý nghĩa và vai trò hết sức quan trọng của kĩ thuật phân lớp đã nêu ở trên , bài thu hoạch này tập trung nguyên cứu sâu những kĩ thuật phân lớp ,những cách tiếp cận khác nhau đối với kỹ thuật phân lớp cùng với những tìm hiểu và đánh giá những cải tiến của kĩ thuật phân lớp trong thời gian gẩn đây từ những kết quả được đăng tải trên một số báo cáo khoa học tại những hội nghị khoa học quốc tế về Khai Phá Dữ Liệu cũng như việc tìm hiểu và sử dụng kĩ thuật phân lớp trong sản phẩm thương mại Microsoft SQL Server 2000 .

doc43 trang | Chia sẻ: tuandn | Lượt xem: 3000 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Đề tài Kỹ thuật phân lớp dữ liệu trong khai phá dữ liệu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Kỹ thuật phân lớp dữ liệu trong Khai Phá Dữ Liệu Bùi Thanh Hiếu Kĩ thuật phân lớp dữ liệu trong Khai Phá Dữ Liệu là một trong những vấn đề nguyên cứu mở rộng hiện nay ; tập trung chủ yếu vào thống kê, máy học và mạng nơtrôn . Kĩ thuật phân lớp được đánh giá là một kĩ thuật khai phá dữ liệu được sử dụng rộng rãi nhất với nhiều mở rộng . Sự kết hợp của kỹ thuật phân lớp và cơ sở dữ liệu là một lĩnh vực hứa hẹn bởi vì đáp ứng được một vấn đề hết sức quan trọng của ứng dụng cơ sở dữ liệu đó là tính uyển chuyển cao . Với những ý nghĩa và vai trò hết sức quan trọng của kĩ thuật phân lớp đã nêu ở trên , bài thu hoạch này tập trung nguyên cứu sâu những kĩ thuật phân lớp ,những cách tiếp cận khác nhau đối với kỹ thuật phân lớp cùng với những tìm hiểu và đánh giá những cải tiến của kĩ thuật phân lớp trong thời gian gẩn đây từ những kết quả được đăng tải trên một số báo cáo khoa học tại những hội nghị khoa học quốc tế về Khai Phá Dữ Liệu cũng như việc tìm hiểu và sử dụng kĩ thuật phân lớp trong sản phẩm thương mại Microsoft SQL Server 2000 . Bùi Thanh Hiếu Cao học Khóa 1 Giới thiệu về phân lớp : Phân lớp dữ liệu là kĩ thuật dựa trên tập huấn luyện và những giá trị hay hay là nhãn của lớp trong một thuộc tính phân lớp và sử dụng nó trong việc phân lớp dữ liệu mới . Phân lớp cũng là tiên đoán loại lớp của nhãn . Bên cạnh kĩ thuật phân lớp có một hình thức tương tự là kĩ thuật tiên đoán , kĩ thuật tiên đoán khác với phân lớp ở chỗ phân lớp chỉ liên quan đến tiên đoán loại lớp của nhãn còn kĩ thuật tiên đoán mô hình những hàm đánh giá liên tục . Kĩ thuật phân lớp được tiến hành bao gồm 2 bước : Xây dựng mô hình và sử dụng mô hình . Xây dựng mô hình : là mô tả một tập những lớp được định nghĩa trước trong đó : mỗi bộ hoặc mẫu được gán thuộc về một lớp được định nghĩa trước như là được xát định bởi thuộc tính nhãn lớp , tập hợp của những bộ được sử dụng trong việc sử dụng mô hình được gọi là tập huấn luyện . Mô hình được biểu diễn là những luật phân lớp , cây quyết định và những công thức toán học . Sử dụng mô hình : Việc sử dụng mô hình phục vụ cho mục đích phân lớp dữ liệu trong tương lai hoặc phân lớp cho những đối tượng chưa biết đến . Trước khi sử dụng mô hình người ta thường phải đánh giá tính chính xát của mô hình trong đó : nhãn được biết của mẫu kiểm tra được so sánh với kết quả phân lớp của mô hình , độ chính xác là phần trăm của tập hợp mẫu kiểm tra mà phân loại đúng bởi mô hình , tập kiểm tra là độc lập với tập huấn luyện . Phân lớp là một hình thức học được giám sát tức là : tập dữ liệu huấn luyện ( quan sát , thẩm định ...) đi đôi với những nhãn chỉ định lớp quan sát , những dữ liệu mới được phân lớp dựa trên tập huấn luyện . Ngược lại với hình thức học được giám sát là hình thức học không được giám sát lúc đó nhãn lớp của tập dữ liệu huấn luyện là không được biết đến . Phân lớp bằng phương pháp qui nạp cây quyết định : Khái niệm cây quyết định : Cây quyết định là một flow-chart giống cấu trúc cây , nút bên trong biểu thị một kiểm tra trên một thuộc tính , nhánh biểu diễn đầu ra của kiểm tra , nút lá biểu diễn nhãn lớp hoặc sự phân bố của lớp . Việc tạo cây quyết định bao gồm 2 giai đoạn : Tạo cây và tỉa cây . Để tạo cây ở thời điểm bắt đầu tất cả những ví dụ huấn luyện là ở gốc sau đó phân chia ví dụ huấn luyện theo cách đệ qui dựa trên thuộc tính được chọn . Việc tỉa cây là xát định và xóa những nhánh mà có phần tử hỗn loạn hoặc những phần tử nằm ngoài (những phần tử không thể phân vào một lớp nào đó) . Việc sử dụng cây quyết định như sau : Kiểm tra những giá trị thuộc tính của mẫu đối với cây quyết định . Thuật toán qui nạp cây quyết định : Giải thuật cơ bản (giải thuật tham lam) được chia thành các bước như sau: 1. Cây được xây dựng đệ qui từ trên xuống dưới (top-down) và theo cách thức chia để trị (divide-conquer). 2. Ở thời điểm bắt đầu , tất cả những ví dụ huấn luyện ở gốc . 3. Thuộc tính được phân loại ( nếu là giá trị liên tục chúng được rời rạc hóa) 4. Những ví dụ huấn luyện được phân chia đệ qui dựa trên thuộc tính mà nó chọn lựa . 5. Kiểm tra những thuộc tính được chọn dựa trên nền tảng của heristic hoặc của một định lượng thống kê . Điều kiện để dừng việc phân chia : 1.Tất cả những mẫu huấn luyện đối với một node cho trước thuộc về cùng một lớp. 2.Không còn thuộc tính còn lại nào để phân chia tiếp . 3.Không còn mẫu nào còn lại . Độ lợi thông tin (Information Gain) trong cây quyết định : Information gain là đại lượng được sử dụng để chọn lựa thuộc tính với information gain lớn nhất .Giả sử có hai lớp , P và N . Cho tập hợp của những ví dụ S chứa p phần tử của lớp P và n phần tử của lớp N . Khối lượng của thông tin , cần để quyết định nếu những mẫu tùy ý trong S thuộc về P hoặc N được định nghĩa như là : I(p,n) = -[p/(p+n)]log 2 [p/(p+n)] – [n/(p+n)]log 2 [n/(p+n)] Giả sử rằng sử dụng thuộc tính A một tập hợp S được phân hoạch thành những tập hợp {S1,S2,..,Sv} . Nếu Si chứa những mẫu của P và ni mẫu của Ni entropy hoặc thông tin mong đợi cần để phân loại những đối tượng trong cây con Si là : v E(A) = Σ [(pi+ni)/(p+n)] I(pi,ni) i=1 Thông tin nhận được ở nhánh A là : Gain(A) = I(p,n)-E(A) Nội dung giải thuật học cây quyết định cơ bản ID3 : ID3 là một giải thuật học cây quyết định được phát triển bởi Ross Quinlan (1983). Ý tưởng cơ bản của giải thuật ID3 là để xây dựng cây quyết định bằng việc sử dụng một cách tìm kiếm từ trên xuống trên những tập hợp cho trước để kiểm tra mỗi thuộc tính tại mỗi nút của cây . Để chọn ra thuộc tính mà hữu ích nhất cho sự phân loại trên những tập hợp cho trước , chúng ta sẽ đưa ra một hệ đo độ lợi thông tin. Để tìm ra một cách tối ưu để phân loại một tập hợp thông tin , vấn đề đặt ra là chúng ta cần phải làm tối thiểu hóa ( Chẳng hạn, tối thiểu chiều cao của cây). Như vậy chúng ta cần một số chức năng mà có thể đánh giá trường hợp nào nào cho ra một sự phân chia cân bằng nhất . Hệ đo độ lợi thông tin sẽ là hàm như vậy. ID3 ( Learning Sets S, Attributes Sets A, Attributesvalues V) Return Decision Tree. Begin Đầu tiên nạp learning sets , tạo nút gốc cho cây quyết định 'rootNode', thêm learning set S vào trong nút gốc như là tập con của nó. For rootNode, đầu tiên chúng ta tính Entropy(rootNode.subset) If Entropy(rootNode.subset)==0, then rootNode.subset bao gồm records tất cả với cùng giá trị cho cùng giá trị thuộc tính xát định, trả về một nút lá với decision attribute:attribute value; If Entropy(rootNode.subset)!=0, then tính độ lợi thông tin (information gain) cho mỗi thuộc tính trái (chưa được sử dụng để phân chia), tìm thuộc tính A với Maximum(Gain(S,A)). Tạo những nút con của rootNode này và thêm vào rootNode trong cây quyết định. For mỗi con của rootNode, áp dụng ID3(S,A,V) một cách đệ qui cho đến khi đạt được node mà có entropy=0 hay đạt được nút lá. End ID3. Ví dụ : Để mô tả hoạt động của ID3 chúng ta sử dụng ví dụ “Play Tennis”.Sự mô tả tượng trưng thuộc tính như sau: Attribute Possible Values: Outlook sunny, overcast , rain Temperature hot , mild, cood Humidity high,normal Windy true,false Decision n(negative),p(positive) Tập Leaning set cho ví dụ chơi tennis: Outlook Temperature Humidity Windy Decision sunny hot high false n sunny hot high true n overcast hot high false p rain mild high false p rain cool normal false p rain cool normal false n overcast cool normal true p sunny mild high false p sunny mild normal true p rain mild normal false p sunny mild normal true p overcast mild high true p overcast hot normal false p rain mild high true n Giải thuật ID3 thực hiện như sau : Tạo nút gốc( rootNode) , chứa đựng toàn bộ learning set như là những tập hợp con của chúng (subset) sau đó tính : Entropy(rootNode.subset)= -(9/14)log 2 ( 9/14 ) – ( 5/14)log 2 (5/14)= 0.940 Tính toán thông tin nhận được cho mỗi thuộc tính : Gain(S,Windy)= Entropy(S)-(8/14)Entropy(S false) – (6/14)Entropy(S true) = 0.048 Gain(S,Humidity) = 0.151 Gain(S,Temperature) = 0.029 Gain(S,Outlook) = 0.246 Chọn lựa những thuộc tính với thông tin nhận được tối đa , đó chính là sự phân chia theo thuộc tính “outlook” . Áp dụng ID3 cho mỗi nút con của nút gốc này , cho đến khi đạt đến nút lá hoặc nút có entropy = 0. Những thiếu sót của giải thuật ID3: Trường hợp thiếu sót thứ nhất : Một thiếu sót quan trọng của ID3 là không gian phân chia hợp lệ tại một node là cạn kiệt . Một sự phân chia là sự phân hoạch của mỗi trường hợp của không gian mà kết quả đạt được từ việc thử nghiệm tại một node quyết định ID3 và con cháu của nó cho phép sự kiểm tra tại tại một thuộc tính đơn và nhánh trong kết quả cho ra từ sự kiểm tra này. Trường hợp thiếu sót thứ hai : Một thiếu sót mà ID3 mắc phải 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ý sự tạp 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 học cây quyết định vào thế giới thực .Cho 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ó rất nhiều những mở rộng từ giải thuật ID3 cơ bản đã phát triển để áp dụng những luật học cây quyết định vào thế giới thực , như là những post-pruning tree , quản lý những thuộc tính giá trị thực , liên quan đến việc thiếu những thuộc tính , sử dụng những tiêu chuẩn chọn lựa thuộc tính khác hơn thu thập thông tin . Mở rộng qui nạp cây quyết định cơ bản : Việc mở rộng qui nạp cây quyết định được áp dụng cho những thuộc tính giá trị liên tục : Định nghĩa một cách uyển chuyển những thuộc tính giá trị bị rời rạc mà sự phân chia giá trị thuộc tính thành một tập rời rạc của những khoảng . Mở rộng qui nạp cây quyết định cũng được áp dụng cho những giá trị thuộc tính thiếu sót bằng cách : Gán những giá trị thiếu sót bằng giá trị thông thường nhất của thuộc tính hoặc gán khả năng có thể với mỗi giá trị có thể . Việc mở rộng qui nạp cây quyết định cũng được áp dụng cho xây dựng thuộc tính : Tạo những thuộc tính dựa trên những cái đã tồn tại mà chúng thể hiện thưa thớt . Điều này sẽ giúp thu giảm việc phân mảnh , sự lặp lại và việc tạo bản sao . Giải thuật mở rộng C4.5 : C4.5 là sự mở rộng của giải thuật ID3 trên một số khía cạnh sau: Trong việc xây dựng cây quyết định , chúng có thể liên hệ với tranning set mà có những records với những giá trị thuộc tính không được biết đến bởi việc đánh giá việc thu thập thông tin hoặc là tỉ số thu thập thông tin , cho những thuộc tính bằng việc xem xét chỉ những record mà ở đó thuộc tính được định nghĩa . Trong việc sử dụng cây quyết định , chúng ta có thể phân loại những record mà có những giá trị thuộc tính không biết bằng việc ước lượng những kết quả có khả năng sãy ra.Trong ví dụ chơi đánh gôn của chúng ta , nếu chúng ta được đưa một record mới mà outlook là sunny và humidity chưa cho biết , chúng ta sẽ xử lý như sau : Chúng ta di chuyển từ nút gốc Outlook đến nút Humidity theo cung được đánh nhãn là sunny. Ở điểm đó từ lúc chúng ta không biết giá trị của Humidity chúng ta để ý rằng nếu humidity là ở 75 có 2 records , và nếu humidity là lớn hơn 75 có 3 records trong đó có 1 record không hoạt động . Như vậy điều đó có thể đưa ra như câu trả lới cho record khả năng (0.4,06) cho chơi gôn hoặc không chơi gôn. Chúng ta có thể liên hệ đến những giá trị liên tục . Giả sử rằng thuộc tính Ci có tầm giá trị thuộc tính liên tục . Chúng ta sẽ xem xét những giá trị này trong tập learning set . Cho rằng chúng được xắp sếp thứ tự tăng dần A1, A2,..,Am sau đó với mỗi giá trị Ai i=1,2,..,m.Chúng ta chia những records thành những cái có giá trị từ Ci trở lên và bao gồm cả Aj và những cái có những giá trị lớn hơn Aj .Với những lần phân hoạch này chúng ta tính lại giá trị thu thập và tỉ số thu thập và chọn ra phân hoạch có tỉ số thu thập thông tin nhận được tối đa. Trong ví dụ về chơi Golf của chúng ta , đối với humidity T là training set chúng ta sẽ xát định thông tin cho mỗi lần phân chia và tìm được sự phân chia tốt nhất tại 75 . Phạm vi của thuộc tính này trở thành {75}. Chú ý rằng phương pháp này liên quan đến một con số quan trọng của việc tính toán. Thu giảm cây quyết định và những tập luật suy dẫn : Việc xây dựng cây quyết định nhờ vào training set bởi vì cách chúng xây dựng liên quan nghiêm ngặt đến hầu hết các record trong tập huấn luyện .Trong thực tế , để làm như vậy nó có thể là điều hoàn toàn phức tạp. Với những đường đi dài và không đều . Việc thu giảm cây quyết định được thực hiện bằng việc thay thế những cây con thành những nút lá.Sự thay thế này sẽ được thực hiện tại nơi mà luật quyết định được thiết lập nếu tần suất lỗi gây ra trong cây con là lớn hơn trong một nút lá.Cho ví dụ với cây đơn giản như sau: Color red blue Success Failure chứa 2 records thứ nhất là training red success và thứ hai là trainning blue failures và sau đó trong Test Set chúng ta tìm thấy 3 red failures và một blue success , chúng ta có thể xem xét việc thay thế cây con này bằng việc thay thế bằng một node đơn Failure . Sau việc thay thế này chúng ta sẽ còn lại 2 lỗi thay vì 5 lỗi . Winston chỉ ra rằng làm thế nào để sử dụng Fisher's exact test để xát định nếu thuộc tính phân loại là thực sự phụ thuộc vào một thuộc tính không xát định. Nếu điều này không sãy ra thì thuộc tính không xát định không cần phải xuất hiện trong đường đi hiện tại của cây quyết định. Quinlan và Breiman đề nghị những heuristic phức tạp hơn cho việc thu giảm cây quyết định .Một điều dễ dàng làm là có thể dẫn ra một luật từ một cây quyết định : viết ra một luật từ mỗi đường trong cây quyết định đi từ gốc đến lá.Vế trái của luật được xây dựng dễ dàng từ nhãn của những nút và nhãn của những cung. Những luật rút ra có thể được rút gọn như sau: Gọi LHS là LHS của luật Cho LHS’ nhận được bằng cách thu giảm một số điều kiện của LHS. Chúng ta có thể chắc chắn thay thế LHS bằng LHS’ trong luật này nếu tập con của training set thỏa mãn LHS và LHS’ là tương đương. Một luật có thể được thu giảm bằng cách sử dụng metacondition ví dụ như “ không có luật khác có thể áp dụng ”. Giải thuật mở rộng See5/C5.0 : “See5 là một dạng nghệ thuật của hệ thống xây dựng sự phân loại trong dạng thức của những cây quyết định và tập luật .” See5 đã được thiết kế và hoạt động trên cơ sở dữ liệu lớn và sự kết hợp đổi mới như là boosting. Kết quả tạo ra bởi See5 và C5.0 là tương tự nhau . Hoạt động trước đây trên Windows95/98/NT của C5.0 là phần hoạt động của nó trên Unix . See 5 và C5.0 là những công cụ khai khái dữ liệu phức tạp cho những mẫu khai phá dữ liệu mà phát họa ra những loại tập hợp chúng thành những đối tượng phân loại và sử dụng chúng để tiên đoán. Đặc điểm chính của C5.0 là : C5.0 được thiết kế để phân tích những cơ sở dữ lịêu quan trọng chứa đựng hàng ngàn đến hàng trăm ngàn những records.và hàng chục đến hàng trăm số liệu và hoặc tên field . Để tối đa khả năng giải thích , đối tượng phân loại của See5.0 /C5.0 được diễn tả như là cây quyết định hoặc tập của những luật if – then . Dạng thức của nó dễ hiểu hơn so với neutron network . C5.0 dễ dàng sử dụng do đó không được gọi là kiến thức cao cấp của thống kê và máy học . Giải thuật See5/C5.0 là tốt hơn C4.5: C5.0 trong hệ thống Unix và bản sao của nó See5 trong Windows là những phiên bản cao cấp hơn C4.5 trên nhiều khía cạnh quan trọng . Chúng ta sẽ thử so sánh C5.0 và C4.5 trên cùng hệ thống Unix . Về những tập luật (Ruleset):nhanh nhiều hơn và ít tốn bộ nhớ hơn: Cả C5.0 và C4.5 cung cấp sự lựa chọn cho những dạng thức của phân loại – cây quyết định hoặc là những tập luật (ruleset) . Trong nhiều ứng dụng thì tập luật (ruleset) được ưu tiên sử dụng hơn vì chúng đơn giản và dễ hiểu hơn cây quyết định .Nhưng những phương pháp để tìm ra luật trong C4.5 là chậm và chiếm nhiều bộ nhớ.C5.0 thể hiện sự hoàn thiện trong vấn đề tạo ra tập luật và sự cải tiến này là gây ấn tượng mạnh mẽ. Cây quyết định : nhanh hơn và nhỏ hơn : Với cũng những tập dữ liệu (dataset) thì C4.5 và C5.0 sản sinh ra những luật với sự chính xát về dự đoán là như nhau.Sự khác nhau chính yếu là kích cở của cây và thời gian tính toán.Cây của C5.0 là nhỏ hơn và nhanh hơn ở một số yếu tố. Sự nâng lên(Boosting): Dựa trên sự nguyên cứu của Freund và Schapire , đây là sự phát triển mới đầy hấp dẫn mà nó không có sự tương tự nào trong C4.5.Boosting là một kỹ thuật để tạo và kết hợp nhiều những đối tượng phân loại để cải thiện tính chính xát tiên đoán . C5.0 hỗ trợ Booting với một số những dữ liệu số thử nghiệm. Thông thường , C5.0 sẽ mất thời gian lâu hơn để tạo ra những đối tượng phân loại (classifier) . Nhưng những kết quả có thể phân tích định lượng sự tính toán công thêm .Boosting luôn cố gắng để đạt được đỉnh cao nhất của sự chính xát trong tiên đoán yêu cầu phải đạt tới. Đặc biệt khi những đối tượng phân loại không được nâng lên là hoàn toàn chính xát. Những chức năng mới: C5.0 kết hợp nhiều chức năng như là variable misclassfication costs .Trong C4.5 tất cả những lỗi đều được xem như nhau.Nhưng trong những ứng dụng thực tế sẽ có một số lỗi trong quá trình phân loại là nguy hiểm hơn những cái khác .C5.0 chấp nhận một chi phí phân chia đối với mỗi cặp lớp được tiên đoán.Nếu quan điểm này được áp dụng , C5.0 sau đó sẽ xây dựng những đối tượng phân loại để tối thiểu hóa những giá trị phân loại sai được mong đợi hơn là những tần suất lỗi. C5.0 có nhiều kiểu dữ liệu hơn cả những cái đã có trong C4.5 bao gồm cả ngày giờ , thuộc tính giá trị rời rạc được xếp thứ tự và case labels. Thêm vào đó là những giá trị thiếu (missing value) . C5.0 cho phép những giá trị được coi như là không áp dụng được . Hơn nữa , C5.0 cung cấp những điều kiện dễ dàng để định nghĩa những thuộc tính mới như những hàm của những thuộc tính khác. Những ứng dụng khai phá dữ liệu gần đây được hình thức hoá với kích thước lớn hơn , với hàng trăm thậm chí hàng ngàn những thuộc tính .C5.0 có thể tự động lọc những thuộc tính , loại bỏ những cái xuất hiện bên lề trước khi một lớp phân loại được xây dựng. Đối với ứng dụng của loại này , sự phân loại có thể dẫn đến những đối tượng nhỏ hơn và sự tiên đoán chính xát hơn và thậm chí thu giảm được thời gian tạo ra tập luật. C5.0 cũng dễ dàng được sử dụng hơn. Những chọn lựa được đơn giản hóa và mở rộng.- để hỗ trợ sự lấy mẫu và cross-validation , trong lúc đó chương trình C4.5 để tạo ra cây quyết định và tập luật được kết hợp vào một chương trình duy nhất. Phiên bản trên windows See5 đã xây dựng được một giao diện đồ họa thân thiện và thêm vào một số chức năng hỗ trợ khác.Ví dụ Cross-Reference Window làm cho những đối tượng phân loại dễ hiểu hơn bằng việc liên kết những trường hợp đến những phần liên quan đến việc phân loại. Phân lớp với GiniIndex(IBM IntelligenMiner) : Tương tự như đại lượng Gain ở trên IBM đã đưa ra một đại lượng cho việc phân lớp là gini như sau: Nếu một tập dữ liệu T chứa những mẫu từ n lớp, gini index , gini(T) được định nghĩa như sau : trong đó pj là tần số liên quan của lớp j trong T. Nếu một tập hợp dữ liệu T được chia thành 2 tập con T1 và T2 với kích thước tương ứng là N1 và N2 . gini index của dữ liệu chia cắt chứa những ví dụ từ n lớp , gini index gin(T) được định nghĩa như sau: Thuộc tính cung cấp giá trị ginisplit(T) nhỏ nhất được chọn để phân chia nút Thể hiện tri thức theo dạng thức những luật IF-THEN . Trong đó một luật được tạo dựa trên mỗi con đường từ nút gốc đến lá . Mỗi cặp thuộc tính theo một con đường tạo thành một sự kết hợp và nút lá nằm giữ toàn bộ lớp tiên đoán . Những luật tạo ra rất dễ hiểu đối với con người . Tránh việc quá khít (overfitting) trong việc phân lớp : Cây được tạo ra có thể quá khít với dữ liệu huấn luyện . Việc quá khít có thể sãy ra trong những trường hợp sau đây : Quá nhiều những nhánh , một số có thể phản ánh sự dị thường vì những phần tử hỗn loạn (noise) hoặc những phần tử nằm ngoài phân lớp (outlier) . Kết quả nhận được thiếu chính xát đối với những mẫu chưa thấy. Có hai cách tiếp cận để tránh quá khít dữ liệu . Tỉa trước : Dừng sự xây dựng của cây sớm –