ยินดีต้อนรับสู่การประชัน: Decision Trees ปะทะ Linear Models!
สวัสดีครับ! คุณได้เรียนรู้แล้วว่า Linear Regression ทำงานอย่างไร และ Decision Trees แบ่งข้อมูลออกเป็นกิ่งก้านสาขาได้อย่างไร ทีนี้มาถึงคำถามสำคัญ: เราควรเลือกใช้โมเดลตัวไหนดีล่ะ?
ในบทนี้ เราจะมาเปรียบเทียบสองยักษ์ใหญ่ตัวนี้กันครับ ไม่มีโมเดลไหนที่ "สมบูรณ์แบบ" และชนะทุกสถานการณ์เสมอไป แต่ละตัวจะดีหรือไม่ขึ้นอยู่กับข้อมูลที่คุณกำลังทำอยู่ครับ เมื่ออ่านโน้ตชุดนี้จบ คุณจะรู้วิธีเลือกเครื่องมือให้เหมาะสมกับงานอย่างแน่นอน ซึ่งจะช่วยให้คุณเก็บคะแนนเพิ่มได้ในข้อสอบ Exam SRM ครับ!
1. แนวคิดหลัก: เส้นตรง ปะทะ กล่องสี่เหลี่ยม
เพื่อให้เข้าใจว่าโมเดลไหนดีกว่ากัน เราต้องดูว่าแต่ละโมเดล "มอง" โลกอย่างไรก่อน ไม่ต้องกังวลถ้ารู้สึกว่ามันดูเป็นนามธรรมในช่วงแรก เรามาใช้ภาพเปรียบเทียบง่ายๆ กันครับ
Linear Models
Linear model (เช่น Linear Regression) ตั้งสมมติฐานว่าความสัมพันธ์ระหว่างตัวแปรต้น (Predictors) และผลลัพธ์ (Outcome) เป็นเส้นตรง (หรือระนาบแบนในมิติที่สูงขึ้น) โดยใช้สูตรดังนี้:
\( Y = \beta_0 + \beta_1X_1 + \beta_2X_2 + ... + \epsilon \)
Decision Trees
Decision tree ไม่สนใจเรื่องเส้นตรงครับ แต่มันใช้วิธีแบ่ง (Partition) ข้อมูลออกเป็น พื้นที่รูปสี่เหลี่ยม โดยมองหา "จุดตัด" เพื่อจัดกลุ่มข้อมูลที่มีลักษณะคล้ายกันไว้ด้วยกัน สูตรของมันจะดูเหมือนชุดคำสั่ง "ถ้า...แล้ว..." มากกว่า:
\( f(X) = \sum_{m=1}^M c_m \cdot I(X \in R_m) \)
ช่วงเปรียบเทียบ: ลองจินตนาการว่าคุณกำลังแบ่งสวนออกเป็น "โซนดอกไม้" และ "โซนผัก"
- Linear Model ก็เหมือนการลากรั้วยาวๆ เป็นเส้นตรงเส้นเดียวผ่านกลางสวน
- Decision Tree ก็เหมือนการสร้างกล่องสี่เหลี่ยมเล็กๆ หลายๆ กล่องเพื่อกั้นแยกพืชแต่ละชนิดออกจากกัน
ข้อสรุปสำคัญ:
หากความสัมพันธ์ที่แท้จริงในธรรมชาติเป็นแบบ เส้นตรง (Linear) โมเดล Linear จะทำงานได้ดีกว่า แต่ถ้าความสัมพันธ์มีความ ซับซ้อนและไม่เป็นเส้นตรง (Non-linear) โมเดล Tree มักจะเป็นฝ่ายชนะครับ
2. โมเดลไหนเจิดจรัสตอนไหน?
มาดูสถานการณ์เฉพาะที่โมเดลหนึ่งอาจดีกว่าอีกโมเดลหนึ่งกันครับ นี่เป็นหัวข้อที่ออกสอบบ่อยมากในเชิงทฤษฎี!
สถานการณ์ A: ความสัมพันธ์แบบเส้นตรง
ลองนึกภาพว่าข้อมูลของคุณเรียงตัวเป็นเส้นทแยงมุมที่สวยงาม Linear model สามารถจับความสัมพันธ์นี้ได้แม่นยำด้วยความชันเพียงค่าเดียว ในขณะที่ Decision tree จะเจอปัญหา เพราะต้นไม้แบ่งข้อมูลได้แค่แนวนอนหรือแนวตั้งเท่านั้น (axis-parallel splits) มันจึงต้องใช้วิธีสร้างรูปแบบ "ขั้นบันได" เพื่อพยายามเลียนแบบเส้นทแยงมุม ซึ่งวิธีนี้ไม่มีประสิทธิภาพและมักจะแม่นยำน้อยกว่าครับ
สถานการณ์ B: ความสัมพันธ์ที่ไม่ใช่เส้นตรง
ลองนึกภาพว่าข้อมูลถูกแบ่งออกเป็น "กลุ่มๆ" หรือมีความสัมพันธ์ที่ซับซ้อน (เช่น ยาชนิดหนึ่งจะได้ผลเฉพาะกับคนที่อายุเกิน 50 ปี AND มีความดันโลหิตสูงเท่านั้น) Linear model อาจพลาดจุดนี้ไปหากคุณไม่ได้เพิ่ม interaction term เข้าไปเองด้วยตนเอง แต่ Decision tree จะค้นหา ความสัมพันธ์เชิงโต้ตอบ (Interactions) เหล่านี้ได้โดยอัตโนมัติด้วยการแบ่งที่อายุ แล้วค่อยแบ่งต่อที่ความดันโลหิตครับ
สรุปสั้นๆ ในกรอบ:
- Linear Model ชนะเมื่อ: ความสัมพันธ์เป็นแบบบวกเพิ่มและเป็นเส้นตรง
- Decision Tree ชนะเมื่อ: มีการโต้ตอบกันระหว่างตัวแปร (Interactions) ที่ซับซ้อนในระดับสูง
3. ข้อดีและข้อเสีย: การเปรียบเทียบแบบเคียงข้าง
เมื่อคุณเตรียมตัวสอบ SRM การมี "สรุปย่อ" เกี่ยวกับข้อดีข้อเสียของทั้งสองวิธีนี้จะช่วยได้มากครับ
Decision Trees
ข้อดี:
1. การตีความ (Interpretability): ต้นไม้ขนาดเล็กนั้นอธิบายให้คนทั่วไปเข้าใจได้ง่ายมาก (ง่ายกว่าค่าสัมประสิทธิ์ของ Linear regression เสียอีก!)
2. ความเป็นธรรมชาติ: มันสะท้อนวิธีการตัดสินใจของมนุษย์จริงๆ
3. ข้อมูลเชิงคุณภาพ (Categorical Data): รับมือกับตัวแปรกลุ่มได้ง่ายโดยไม่จำเป็นต้องสร้าง "dummy variables" (ขึ้นอยู่กับการเขียนโปรแกรมด้วย)
4. การมองเห็นภาพ: คุณสามารถวาดโมเดลออกมาเป็นผังงาน (Flow chart) ได้เลย
ข้อเสีย:
1. ความแปรปรวนสูง (High Variance): นี่คือจุดสำคัญ! การเปลี่ยนข้อมูลเพียงเล็กน้อยอาจทำให้ได้ต้นไม้ที่เปลี่ยนไปจากเดิมโดยสิ้นเชิง
2. ความแม่นยำในการทำนาย: ต้นไม้เดี่ยวๆ มักจะทำนายได้ไม่แม่นยำเท่า Linear model หรือวิธีที่ซับซ้อนกว่าอย่าง "Ensemble methods" (เช่น Random Forests)
3. ขาดความต่อเนื่อง: เนื่องจากมันแบ่งเป็นขั้นๆ หรือเป็นกล่อง มันจึงทำนายการเปลี่ยนแปลงที่ค่อยเป็นค่อยไปหรือต่อเนื่องได้ไม่ดีนัก
Linear Models
ข้อดี:
1. ความเสถียร (Stability): โดยทั่วไปมีความแปรปรวนต่ำกว่าต้นไม้เดี่ยว
2. การอนุมานทางสถิติ (Statistical Inference): คำนวณค่า p-value และช่วงความเชื่อมั่น (Confidence intervals) ได้ง่ายกว่า เพื่อดูว่าตัวแปรไหนมีนัยสำคัญทางสถิติ
3. ประสิทธิภาพ: หากโลกนี้เป็นเส้นตรง นี่คือเครื่องมือที่ทรงพลังที่สุดที่คุณมีครับ
ข้อเสีย:
1. ความแข็งตัว (Rigid): มันสมมติว่าโลกเป็นเส้นตรง ซึ่งมักจะเป็นการมองข้ามความจริงไป
2. ภาระงาน: คุณต้องหาและเพิ่ม "interaction terms" (เช่น \( X_1 \times X_2 \)) เข้าไปด้วยตัวเอง หากคุณคิดว่าตัวแปรมีผลต่อกัน
ข้อสรุปสำคัญ:
Decision trees มีความ ยืดหยุ่นสูงแต่ไม่เสถียร (High Variance) ส่วน Linear models มีความ แข็งตัวแต่เสถียร (Low Variance แต่เสี่ยงต่อ High Bias หากโมเดลนั้นเรียบง่ายเกินไป)
4. ข้อผิดพลาดที่ต้องระวัง
"เดี๋ยวสิ ต้นไม้ไม่ดีกว่าเสมอไปเหรอเพราะมันดูทันสมัยกว่า?"
ข้อผิดพลาด: การทึกทักเอาว่า "ซับซ้อนกว่า" แปลว่า "ดีกว่า" หากความสัมพันธ์ที่แท้จริงเป็นเส้นตรง ต้นไม้จะเกิดการ Overfit (เก็บข้อมูลสัญญาณรบกวนมากเกินไป) และให้ผลลัพธ์ที่แย่เมื่อเจอข้อมูลชุดใหม่ครับ
"ต้นไม้สามารถทำนายค่าที่อยู่นอกเหนือช่วงของข้อมูลที่ใช้สอน (Training data) ได้ไหม?"
ข้อผิดพลาด: การคิดว่าต้นไม้สามารถทำนายค่าแบบ Extrapolate ได้ จริงๆ แล้ว Regression tree ทำนายได้แค่ ค่าเฉลี่ย ของข้อมูลในจุดนั้น (Leaf node) ดังนั้นมันจึงไม่มีทางทำนายค่าที่สูงกว่าค่าสูงสุดที่เคยเห็นในตอนฝึกฝนได้เลยครับ
คุณรู้หรือไม่?
ในโลกของการทำงานจริง นักวิทยาศาสตร์ข้อมูลมักสร้างทั้งสองโมเดลและนำมาเปรียบเทียบกันด้วยค่า Test Mean Squared Error (MSE) โมเดลไหนที่มีค่า Error ต่ำกว่าในชุดทดสอบ ก็มักจะเป็นโมเดลที่ถูกเลือกใช้งานจริงครับ!
5. เช็คลิสต์สรุปสำหรับห้องสอบ
หากคุณเจอคำถามให้เปรียบเทียบสองโมเดลนี้ ให้จำ "กฎเหล็ก" เหล่านี้ไว้ครับ:
- การตีความ: ต้นไม้ชนะ (ถ้าต้นไม้มีขนาดเล็ก)
- การจัดการความสัมพันธ์ที่ไม่เป็นเส้นตรง: ต้นไม้ชนะ
- การจัดการข้อมูลที่เป็นเส้นตรง: Linear models ชนะ
- ความแปรปรวน: ต้นไม้มี ความแปรปรวนสูงกว่า (เสถียรน้อยกว่า)
- พลังในการทำนาย: ต้นไม้เดี่ยวๆ มักจะ อ่อนกว่า Linear model แต่ถ้าใช้หลายต้นรวมกัน (Ensemble) อย่าง Bagging หรือ Boosting (ซึ่งอยู่ในบทอื่น) จะถือว่าทรงพลังมากครับ
คำส่งท้ายถึงคุณ:
อย่าให้สูตรต่างๆ ทำให้คุณกลัวไปเลยครับ! แค่จำภาพเปรียบเทียบ "เส้นตรง ปะทะ กล่อง" ไว้ในหัวก็พอ ถ้าคุณเห็นภาพว่าแต่ละโมเดล "เฉือน" ข้อมูลอย่างไร คุณก็จะตอบคำถามเชิงทฤษฎีที่ SOA จะถามเกี่ยวกับบทนี้ได้เกือบทุกข้อแน่นอน คุณทำได้อยู่แล้ว!