Th ut toán ID3

Một phần của tài liệu Nghiên cứu kỹ thuật cây quyết định và xây dựng ứng dụng hỗ trợ học sinh trường THPT võ nguyên giáp chọn nghề (Trang 35 - 40)

6. Cấu trúc luận văn

1.3.3.2. Th ut toán ID3

a. Gi i thiệu thu t toán ID3

Giải thuật quy nạp cây ID3 (gọi tắt là ID3) là một giải thuật học đơn giản nhƣng thành công trong nhiệm lĩnh vực. Thuật toán ID3 đƣợc phát triển bởi Quinlan và đƣợc công bố vào cuối thập niên 70 của thế kỷ 20. Sau đó, thuật toán ID3 đƣợc giới thiệu và trình bày trong mục Induction on Decition Trees, Machine Learning năm 1986.

ID3 biểu diễn các khái niệm (concept) ở dạng các cây quyết định (decision tree). Biểu diễn này cho phép chúng ta xác định phân loại của một đối tƣợng bằng cách kiểm tra các giá trị của nó trên một số thuộc tính nào đó.

Giải thuật ID3 là học cây quyết định từ một tập huấn luyện hay còn gọi là dữ liệu rèn luyện (training data), giải thuật có:

 Đầu vào: Tâp huấn luyện, thuộc tính chứa giá trị phân loại của cây, danh sách các thuộc tính dùng kiểm tra tính quyết định của cây. Tập huấn luyện bao gồm các mẫu, mỗi mẫu là một bộ các thuộc tính mô tả một tình huống, hay một đối tƣợng nào đó, và một giá trị phân loại của nó.

 Đầu ra: Cây quyết định có khả năng phân loại đúng đắn các ví dụ trong tập dữ liệu rèn luyện, và hy vọng là phân loại đúng cho cả các ví dụ chƣa gặp trong tƣơng lai.

Giải thuật ID3 xây dựng cây quyết định từ trên xuống

- Entropy: dùng để do tính thuần nhất của một tập dữ liệu. Entropy của một tập S

có n phân lớp đƣợc tính theo công thức:

Entropy(S) = ( log ) 1 2    n i i i p p

Trong đó pi là tỉ lệ các mẫu thuộc lớp i trên tập hợp S các mẫu kiểm tra.  Các trƣờng hợp đặc biệt:

o Nếu tât cả các mẫu thành viên tron tập S đều thuộc cùng một lớp thì Entropy(S) =0.

o Nếu trong tập S có số mẫu phân bố đều nhau vào các lớp thì Entropy(S) =1.

o Các trƣờng hợp còn lại 0< Entropy(S)<1.

- Information Gain (viết tắt là Gain): Gain là đại lƣợng dùng để đo tính hiệu quả

của một thuộc tính đƣợc lựa chọn cho việc phân lớp.

+ Cho tập dữ liệu S gồm có n thuộc tính 𝐴𝑖(𝑖 = 1, 2 … 𝑛) giá trị Information của thuộc tính 𝐴𝑖ký hiệu là 𝐼𝑛𝑓𝑜𝑟𝑚𝑎𝑡𝑖𝑜𝑛 (𝐴𝑖) đƣợc xác định bởi công thức:

𝐼𝑛𝑓𝑜𝑟𝑚𝑎𝑡𝑖𝑜𝑛 (𝐴𝑖) = ∑ 𝑜 𝑛𝑡𝑟𝑜𝑝

+ Giá trị Gain của thuộc tính A trong tập S ký hiệu là Gain (S, A) và đƣợc tính theo công thức sau

𝐺𝑎𝑖𝑛( , 𝐴) = 𝐼𝑛𝑓𝑜𝑟𝑚𝑎𝑡𝑖𝑜𝑛(𝐴) − 𝑛𝑡𝑟𝑜𝑝 (𝐴)

= 𝑛𝑡𝑟𝑜𝑝 ( ) − ∑ | |

| |

𝑛𝑡𝑟𝑜𝑝 ( 𝑣)

Trong đó:

 S là tập hợp ban đầu với thuộc tính A. Các giá trị của v tƣơng ứng là các giá trị của thuộc tính A.

 𝑣 bằng tập hợp con của tập S mà có thuộc tính A mang giá trị v.

 | 𝑣| là số phần tử của tập 𝑣  | | là số phần tử của tập

 Trong quá trình xây dựng cây quyết định theo thuật toán ID3 tại mỗi bƣớc triển khai cây, thuộc tính đƣợc chọn để triển khai là thuộc tính có giá trị Gain lớn nhất.

b. Mã giả thu t toán ID3

Function ID3(Taphuanluyen, DuDoan, Tap_thuoc_tinh) begin

if mọi mẫu trong TapHuanLuyen đều nằm trong cùng một lớp then return một nút lá đƣợc gán nhãn bởi lớp đó

else if Tap_thuoc_tinh là rỗng then

return nút lá đƣợc gán nhãn bởi tuyển của tất cả các lớp trong taphuanluyen

else begin

1. Chọn một thuộc tính P có giá trị Gain lớn nhất, lấy nó làm gốc cho cây hiện tại;

2. Xóa P ra khỏi Tap_thuoc_tinh; 3. Với mỗi giá trị V của P

begin

1. Tạo một nhánh của cây gán nhãn V; 2. Đặt vào phân_vùng_V /* các mẫu trong

3. Gọi

ID3(phân_vùng_V, DuDoan, Tap_thuoc_tinh) Và gắn kết quả vào nhánh V

end end

end

c. Ví dụ minh họa thu t toán ID3

Xét bài toán xem ta đã chọn ngành đúng với tính cách và năng lực của học sinh chƣa. Giải thuật ID3 sẽ học cây quyết định từ tập hợp các ví dụ sau:

Bảng 2.1 Tập huấn luyện chọn ngành

nhomST DiemMh GT ChonLua

cao Gioi yes yes

cao Kha yes yes

cao Tb yes no

cao Gioi no yes

cao Kha no no

cao Tb no no

bt Gioi yes yes

bt Gioi no no

bt Kha yes no

bt Tb yes no

bt Tb no no

bt Kha no no

thap Gioi yes no

thap Kha no no

Tập dữ liệu này bao gồm 14 ví dụ. Mỗi ví dụ là kết quả chọn nghề và sở thích của học sinh gồm các thuộc tính nhomST, DiemMH, GioiTinh; Và đều có một thuộc tính phân loại ChonLua (yes, no). ‗Yes‘ nghĩa là ngành chọn phù hợp với sở thích, năng lực và giới tính, ‗No‘ nghĩa là ngành chọn không phù hợp. Giá trị phân loại ở đây chỉ có hai loại (yes, no). Thuộc tính ‗ChonLua‘ còn đƣợc gọi là thuộc tính đích. Mỗi thuộc tính đều có một tập các giá trị hữu hạn. Thuộc tính NhomST có ba giá trị: cao, bt, thap; DiemMH có ba giá trị: Gioi, Kha, tb; Gt có hai giá trị: yes, no.

Thuộc tính dự đoán S ‗ChonLua‘ có hai giá trị ―yes‖, ―no‖. S1: ChonLua = ―yes‖; S2: ChonLua= ―no‖

 I(S) = I(S1,S2) = I (4,10) = (-4/14)*log2(4/14)-(10/14)*log2(10/14)= 0.8631  Đối với thuộc tính GT có:

 GT= ―yes‖, S11=3, S21=4 có I(S11, S21) = 0.9852  GT= ―no‖, S12=1, S22=6 có I(S11, S21) = 0.5916

Entropy(GT)= 7/14*I(S11, S21) + 7/14*I(S11, S21) =0.7884  Gain(GT)= I (S) − Entropy ( GT) = 0.0746

 Tƣơng tự đối với thuộc tính DiemMH Gain(DiemMH)=0.2585  Gain (nhomST)= 0.1560

Chọn thuộc tính DiemMH làm nút gốc

Loại thuộc tính DiemMH ra khỏi tập thuộc tính, và xét các nút tại các nhánh:

Gioi, kha, tb

 Nhánh Gioi:

Bảng 2.2 Tập huấn luyện nhánh DiemMH chứa giá trị ―Gioi‖

nhomST GTNganh ChonLua

cao yes yes

cao no yes bt yes yes bt no no thap yes no o I(S) = I(S1,S2) = I (3,2) = 0.970950594 o Gain(nhomST) = 0.8281 o Gain(GTNganh) = 0.5710

 Chọn thuộc tính nhomST làm nút gốc, loại thuộc tính nhomST ra khỏi tập thuộc tính và xét

 Nhánh ―cao‖: yes  với ―thap‖: no

 Nhánh ―bt‖: với GTNganh = “yes‖: yes;

 Nhánh kha:

Bảng 2.3 Tập huấn luyện nhánh DiemMH chứa giá trị ―kha‖

nhomST GTNganh ChonLua

cao yes yes

cao no no bt yes no bt no no thap no no o I(S) = I(S1,S2) = I (1,4) = 0.7219 o Gain(nhomST) = 0.5709 o Gain(GTNganh) = 0.3219

 Chọn thuộc tính nhomST làm nút gốc, loại thuộc tính nhomST ra khỏi tập thuộc tính và xét

- Nhánh ―cao‖:

 với GTNganh = “yes‖: yes  với GTNganh = “no‖: no - Nhánh ―bt‖: no

- Nhánh ―thap‖: no  Nhánh tb: no

Ta có cây quyết định nhƣ sau:

Một phần của tài liệu Nghiên cứu kỹ thuật cây quyết định và xây dựng ứng dụng hỗ trợ học sinh trường THPT võ nguyên giáp chọn nghề (Trang 35 - 40)

Tải bản đầy đủ (PDF)

(91 trang)