การเรียนรู้ต้นไม้ตัดสินใจ (Decision Tree Learning) การสร้างองค์ความรู้ในรูปแบบกฎจากต้นไม้เพื่อใช้เป็นเครื่องมือในการตัดสินใจ การเรียนรู้ต้นไม้ตัดสินใจ (Decision Tree Learning) เทคนิคการเรียนรู้ต้นไม้ตัดสินใจ มีดโกนของอ็อคแคม (Occam’s Razor) เอนโทรปี (Entropy) และฟังก์ชันเกน (Gain Function) ตัวอย่างการประยุกต์ใช้ต้นไม้ตัดสินใจในการจำแนกประเภทของตัวอย่าง
การเรียนรู้ต้นไม้ตัดสินใจ ต้นไม้ตัดสินใจ เป็นการเรียนรู้ที่ใช้จำแนกประเภทของตัวอย่าง โดยระบบจะเรียนรู้จากตัวอย่างที่สอนให้ แล้วเก็บความรู้ที่ได้ในรูปแบบของต้นไม้ตัดสินใจ ซึ่งอาจถูกแปลงไปเป็นกฎอีกทีหนึ่ง การเรียนรู้ต้นไม้ตัดสินใจ เป็นวิธีการเรียนรู้ที่นิยมใช้มากใน Machine Learning การเรียนรู้ต้นไม้ตัดสินใจสามารถทนทานต่อสัญญาณรบกวนได้ (ตัวอย่างสอนที่มีข้อผิดพลาด)
การเรียนรู้ต้นไม้ตัดสินใจ (ต่อ) ปัญหาการผึ่งแดด : คนที่ไปผึ่งแดดที่ชายทะเล ทำไมบางคนจึงมีผิวเป็นสีแทน แต่บางคนกลับผิวไหม้ อะไรคือปัจจัยที่ทำให้คนที่ไปผึ่งแดดตามชายทะเลแล้วผิวไหม้หรือไม่ไหม้ โดยดูจากข้อมูลที่สังเกตได้คือ สีผม น้ำหนัก ส่วนสูง และการใช้หรือไม่ใช้โลชัน
การเรียนรู้ต้นไม้ตัดสินใจ (ต่อ) Name Hair Height Weight Lotion Result Sarah blonde average light no sunburned Dana tall yes none Alex brown short Annie Emily red heavy Pete John Katie
การเรียนรู้ต้นไม้ตัดสินใจ (ต่อ) การเรียนรู้แบบง่ายๆที่สามารถนำมาแก้ปัญหาการผึ่งแดดแล้วผิวจะไหม้หรือไม่ไหม้คือ จำตัวอย่างทั้ง 8 ตัวอย่างไว้ ถ้าอยากทราบว่าใครคนไหน ที่จะไปผึ่งแดดที่ชายทะเลแล้วผิวจะไหม้หรือเปล่า การเรียนรู้ต้นไม้ตัดสินใจจะสร้างโมเดลที่ใช้ได้กับลักษณะของคนในรูปแบบอื่นๆ ที่ไม่เคยพบจากตัวอย่างทั้ง 8 ตัวอย่างมาก่อน ทำให้การเรียนรู้แบบนี้เหมาะกับปัญหามากกว่า ก็เพียงแค่นำข้อมูลของคนๆนั้นไป เปรียบเทียบกับตัวอย่างเก่าที่เก็บไว้ทั้ง 8 ตัวอย่าง แต่โอกาสที่ข้อมูลของคนๆนั้นจะตรงกับตัวอย่างที่เก็บไว้ มีความน่าจะเป็นเท่ากับ (8x100)/(3x3x3x2) ≈ 15%
ส่วนประกอบของต้นไม้ตัดสินใจ Node (บัพ) แต่ละ node ในต้นไม้ตัดสินใจใช้แสดง attribute Link (กิ่ง) ที่ต่อกับ node ใช้แสดง value (ค่าที่เป็นไปได้ของ attribute นั้นๆ) Leaf (ใบ) ใช้แสดง class (ประเภทของข้อมูล)
การสร้างต้นไม้ตัดสินใจ การสร้างต้นไม้ตัดสินใจ ทำได้โดยสร้าง node ขึ้นมาทีละ node แล้วนำต้นไม้ที่สร้างได้ไปวัดประสิทธิภาพกับตัวอย่างสอน โดยแบ่งตัวอย่างสอนตาม link ของ node ถ้าในแต่ละ leaf สามารถแบ่งตัวอย่างออกเป็น class เดียวกันหมดก็จะหยุดการสร้างต้นไม้ตัดสินใจ แล้วนำต้นไม้ต้นนั้นมาเป็นโมเดลของปัญหานั้น แต่ถ้าไม่ก็จะสร้าง node ของต้นไม้เพิ่มขึ้นอีก เพื่อให้สามารถแบ่งตัวอย่างที่ leaf ให้เป็น class เดียวกันทั้งหมด หรือมากที่สุดเท่าที่จะทำได้
ตัวอย่างการเรียนรู้ด้วยต้นไม้ตัดสินใจ รูปที่ 1 แสดงการเลือก attribute hair color เป็น node แรก ซึ่งสามารถแยกตัวอย่างได้ในกรณีที่ hair color เป็น red และ brown แต่ในกรณีที่ hair color เป็น blonde ยังไม่สามารถแยกตัวอย่างให้เป็น class เดียวกันได้ รูปที่ 1 การเลือก hair color เป็น node แรกของต้นไม้ตัดสินใจ
ตัวอย่างการเรียนรู้ด้วยต้นไม้ตัดสินใจ (ต่อ) รูปที่ 2 แสดงการเลือก attribute lotion used เป็น node ที่สอง ในกรณีที่ hair color เป็น blonde รูปที่ 2 การเลือก lotion used เป็น node ที่สองของต้นไม้ตัดสินใจ
ตัวอย่างการเรียนรู้ด้วยต้นไม้ตัดสินใจ (ต่อ) ต้นไม้ตัดสินใจที่สอดคล้องกับตัวอย่าง อาจมีได้มากกว่า 1 เช่นต้นไม้ตัดสินใจดังรูปที่ 3 รูปที่ 3 ต้นไม้ตัดสินใจอีกต้นที่สอดคล้องกับตัวอย่าง
การเรียนรู้ต้นไม้ตัดสินใจ (Decision Tree Learning) การสร้างองค์ความรู้ในรูปแบบกฎจากต้นไม้เพื่อใช้เป็นเครื่องมือในการตัดสินใจ การเรียนรู้ต้นไม้ตัดสินใจ (Decision Tree Learning) เทคนิคการเรียนรู้ต้นไม้ตัดสินใจ มีดโกนของอ็อคแคม (Occam’s Razor) เอนโทรปี (Entropy) และฟังก์ชันเกน (Gain Function) ตัวอย่างการประยุกต์ใช้ต้นไม้ตัดสินใจในการจำแนกประเภทของตัวอย่าง
มีดโกนของอ็อคแคม (Occam’s Razor) การหาต้นไม้ตัดสินใจต้นที่เล็กที่สุดไม่ใช่เรื่องง่าย เนื่องจากต้องสร้างต้นไม้ที่เป็นไปได้ทุกรูปแบบ ทำให้ต้องเสียค่าใช้จ่ายในการคำนวณมาก
การเลือก node ทดสอบ หลักในการสร้างต้นไม้ตัดสินใจแบบหนึ่งคือ เลือก node ทดสอบที่แยกตัวอย่างเป็นเซตย่อย โดยทำให้สมาชิกส่วนใหญ่ในแต่ละเซตย่อยเป็น class เดียวกันมากที่สุด Gain Function
การเรียนรู้ต้นไม้ตัดสินใจ (Decision Tree Learning) การสร้างองค์ความรู้ในรูปแบบกฎจากต้นไม้เพื่อใช้เป็นเครื่องมือในการตัดสินใจ การเรียนรู้ต้นไม้ตัดสินใจ (Decision Tree Learning) เทคนิคการเรียนรู้ต้นไม้ตัดสินใจ มีดโกนของอ็อคแคม (Occam’s Razor) เอนโทรปี (Entropy) และฟังก์ชันเกน (Gain Function) ตัวอย่างการประยุกต์ใช้ต้นไม้ตัดสินใจในการจำแนกประเภทของตัวอย่าง
เอนโทรปี (Entropy) - log2 P(ci) เอนโทรปี เป็นฟังก์ชันที่ใช้วัดความคลุมเครือของข้อมูล โดยใช้ความรู้จากทฤษฎีสารสนเทศ (Information Theory) ถ้าให้ชุดข้อมูล S ประกอบด้วยประเภทของตัวอย่าง (class) ที่เป็นไปได้ คือ {c1,c2,…cn} และความน่าจะเป็นที่จะเกิด class ci เท่ากับ P(ci) (โดยที่ i = 1 ถึง n) ทฤษฎีสารสนเทศ : จำนวนบิตที่สั้นที่สุดในการเข้ารหัสข้อมูลที่เป็น class ci สามารถคำนวณได้จากสูตร ค่าเอนโทรปีของชุดข้อมูล S (E(S)) คำนวณได้จากสูตร - log2 P(ci)
เอนโทรปี (Entropy) (ต่อ)
เอนโทรปี (Entropy) (ต่อ) ถ้าเลือกคุณสมบัติ (attribute) X เป็น node โดยที่คุณสมบัติ X มีค่า (value) ที่เป็นไปได้ทั้งหมด n ค่า ซึ่ง node ที่สร้างจากคุณสมบัติ X แบ่งข้อมูลจำนวน S ข้อมูล ออกตามกิ่ง (link) โดยมีจำนวนข้อมูลในแต่ละกิ่งเป็น {s1,s2,…sn} ค่าเอนโทรปีหลังจากแบ่งข้อมูลตามคุณสมบัติ X สามารถคำนวณได้ดังนี้
ฟังก์ชันเกน (Gain Function) ค่าเกนของคุณสมบัติ (attribute) X สามารถคำนวณได้จากการลบค่าเอนโทรปีทั้งหมดของชุดข้อมูล S กับค่าเอนโทรปีที่ได้หลังจากแบ่งข้อมูลด้วยคุณสมบัติ X สามารถคำนวณได้ดังนี้ การเลือก node ทดสอบ
การเรียนรู้ต้นไม้ตัดสินใจ (Decision Tree Learning) การสร้างองค์ความรู้ในรูปแบบกฎจากต้นไม้เพื่อใช้เป็นเครื่องมือในการตัดสินใจ การเรียนรู้ต้นไม้ตัดสินใจ (Decision Tree Learning) เทคนิคการเรียนรู้ต้นไม้ตัดสินใจ มีดโกนของอ็อคแคม (Occam’s Razor) เอนโทรปี (Entropy) และฟังก์ชันเกน (Gain Function) ตัวอย่างการประยุกต์ใช้ต้นไม้ตัดสินใจในการจำแนกประเภทของตัวอย่าง
การสร้างต้นไม้ตัดสินใจโดยใช้ฟังก์ชันเกน Gain(hair) = 0.45 Gain(height) = 0.26 Gain(weight) = 0.01 Gain(lotion) = 0.34
การสร้างต้นไม้ตัดสินใจโดยใช้ฟังก์ชันเกน (ต่อ) Gain(height) = 0.5 Gain(weight) = 0 Gain(lotion) = 1
การเปลี่ยนต้นไม้เป็นกฎ เมื่อเราสร้างต้นไม้ตัดสินใจเสร็จเรียบร้อยแล้ว เราสามารถเปลี่ยนต้นไม้ให้อยู่ในรูปของกฎแบบ “If Then” ได้ โดยแสดงทุกเส้นทางของต้นไม้ เริ่มต้นจาก root node ไปจน leaf node โดยนำค่าภายใน node (attribute) และ link (value) มาไว้ในส่วนของ If ส่วนค่าใน leaf node (class) มาไว้ในส่วนของ Then
การเปลี่ยนต้นไม้เป็นกฎ (ต่อ) If hair color = blonde and lotion used = no Then sunburned Else If hair color = red Then sunburned Else none
ตัวอย่าง Application ที่ใช้การเรียนรู้ต้นไม้ตัดสินใจ No. of Rules Develop (Man Ys) Maintain (Man Ys) Learning Tools MYCIN Medical Diagnosis 400 100 N/A XCON VAX computer configuration 8,000 180 30 GASOIL Hydrocarbon separtation system configuration 2,800 1 0.1 ExpertEase and Extran7 BMT Configuration of fire protection equipment in buildings 30,000 9 2 1st Class and Rulemaster GASOIL และ BMT เป็นระบบผู้เชี่ยวชาญที่สร้างจาก learning tools ของต้นไม้ตัดสินใจ