หัวข้ออื่นๆ

หน่วยนี้จะตรวจสอบหัวข้อต่อไปนี้

  • การตีความป่าแบบสุ่ม
  • การฝึกป่าแบบสุ่ม
  • ข้อดีและข้อเสียของป่าแบบสุ่ม

การตีความป่าแบบสุ่ม

ป่าแบบสุ่มจะตีความได้ยากกว่าแผนผังการตัดสินใจ ป่าแบบสุ่ม มีต้นไม้สําหรับการตัดสินใจที่ถูกฝึกมาด้วยเสียงที่สุ่มขึ้น ดังนั้น การตัดสินจากโครงสร้างแผนผังการตัดสินใจจึงทําได้ยากขึ้น อย่างไรก็ตาม เราสามารถตีความ โมเดลป่าไม้ได้หลายวิธี

วิธีหนึ่งในการตีความป่าแบบสุ่มคือการฝึกและตีความแผนผังการตัดสินใจโดยใช้อัลกอริทึม CART เนื่องจากทั้งป่าแบบสุ่มและ CART ได้รับการฝึกด้วยอัลกอริทึมหลักเดียวกัน พวกเขาจึง "แชร์มุมมองทั่วโลกเหมือนกันของชุดข้อมูล ตัวเลือกนี้เหมาะสําหรับชุดข้อมูลที่เข้าใจง่าย และเพื่อตีความการตีความโดยรวมของโมเดล

ความสําคัญตัวแปรเป็นอีกวิธีการตีความที่ดี ตัวอย่างเช่น ตารางต่อไปนี้จัดอันดับความสําคัญของตัวแปรต่างๆ สําหรับโมเดลป่าแบบสุ่มที่ได้รับการฝึกบนชุดข้อมูลประชากร (หรือที่เรียกว่าผู้ใหญ่)

ตาราง 8 ความสําคัญของตัวแปร 14 ฟีเจอร์

ฟีเจอร์ คะแนนผลรวม ความแม่นยําลดลงโดยเฉลี่ย ค่าเฉลี่ยลดลงใน AUC ความลึกต่ําสุดเฉลี่ย จํานวนโหนด PR-AUC ลดลงโดยเฉลี่ย จํานวนที่เป็นรูท
ความสัมพันธ์

4203592.6

0.0045

0.0172

4.970

57040

0.0093

1095

การใช้อักษรตัวพิมพ์ใหญ่

3363045.1

0.0199

0.0194

2.852

56468

0.0655

457

สถานภาพสมรส

3128996.3

0.0018

0.0230

6.633

52391

0.0107

750

age

2520658.8

0.0065

0.0074

4.969

356784

0.0033

200

การศึกษา

2015905.4

0.0018

-0.0080

5.266

115751

-0.0129

205

อาชีพ

1939409.3

0.0063

-0.0040

5.017

221935

-0.0060

62

การศึกษา num

1673648.4

0.0023

-0.0066

6.009

58303

-0.0080

197

Fnlwgt

1564189.0

-0.0002

-0.0038

9.969

431987

-0.0049

0

ชั่วโมง_ต่อสัปดาห์

1333976.3

0.0030

0.0007

6.393

206526

-0.0031

20

การสูญเสีย_อักษรตัวพิมพ์ใหญ่

866863.8

0.0060

0.0020

8.076

58531

0.0118

1

ชั้นเรียน

644208.4

0.0025

-0.0019

9.898

132196

-0.0023

0

ประเทศต้นทาง

538841.2

0.0001

-0.0016

9.434

67211

-0.0058

0

เพศ

226049.3

0.0002

0.0002

10.911

37754

-0.0011

13

เชื้อชาติ

168180.9

-0.0006

-0.0004

11.571 คน

42262

-0.0031

0

ดังที่คุณเห็น คําจํากัดความที่แตกต่างกันของความสําคัญในตัวแปรจะมีขนาดไม่เท่ากันและอาจทําให้อันดับของฟีเจอร์แตกต่างกัน

ลําดับความสําคัญของตัวแปรที่มาจากโครงสร้างโมเดล (เช่น ผลรวม คะแนน ค่าเฉลี่ยขั้นต่ํา จํานวนโหนด และตัวเลขเป็นรากในตารางด้านบน) คํานวณในทํานองเดียวกันสําหรับแผนผังการตัดสินใจ (ดูส่วน "Cart | ความสําคัญของตัวแปร&เครื่องหมายคําพูด) และป่าแบบสุ่ม

ความสําคัญในการเปลี่ยนแปลงของตัวแปร (เช่น ค่าเฉลี่ยลดลงใน {accuracy, auc, pr-auc} ในตารางด้านบน) คือการวัดที่สามารถจําลองโมเดลซึ่งสามารถคํานวณบนโมเดลแมชชีนเลิร์นนิงที่มีชุดข้อมูลการตรวจสอบได้ แต่หากใช้ฟอเรสต์แบบสุ่ม คุณจะคํานวณความสําคัญของการเปลี่ยนแปลงลําดับได้ด้วยการใช้ชุดข้อมูลการตรวจสอบแทน

SHAP (SHaley Additive exPlanations) เป็นเมธอดที่เข้าใจง่ายของรูปแบบที่สามารถอธิบายการคาดการณ์แต่ละรายการหรือการตีความที่อิงตามโมเดลได้ (ดู การแปลด้วยคอมพิวเตอร์ที่สามารถตีความได้ โดย Molnar สําหรับบทนําของการแปลความหมายแบบประมาทเลินเล่อ) โดยปกติแล้ว SHAP จะคํานวณราคาได้แต่ใช้อัตราเร่งอย่างมากสําหรับป่าการตัดสินใจ จึงเป็นวิธีที่ดีในการวิเคราะห์พื้นที่การตัดสินใจ

ตัวอย่างการใช้งาน

ในบทเรียนก่อนหน้านี้ เราได้ฝึกแผนผังการตัดสินใจเรื่อง CART ในชุดข้อมูลขนาดเล็กโดยเรียกใช้ tfdf.keras.CartModel หากต้องการฝึกโมเดลป่าแบบสุ่ม เพียงแทนที่ tfdf.keras.CartModel ด้วย tfdf.keras.RandomForestModel:

model = tfdf.keras.RandomForestModel()
model.fit(tf_train_dataset)

ข้อดีและข้อเสีย

ส่วนนี้ประกอบด้วยสรุปข้อดีและข้อเสียของป่าแบบสุ่ม

ข้อดี:

  • ป่าแบบสุ่มก็สนับสนุนฟีเจอร์ตัวเลขและเชิงธรรมชาติอยู่แล้ว เช่น ต้นไม้ตัดสินใจ และมักจะไม่จําเป็นต้องประมวลผลฟีเจอร์ล่วงหน้า
  • เนื่องจากต้นไม้แห่งการตัดสินใจเป็นอิสระต่อกัน ป่าจึงได้รับการฝึกแบบสุ่ม คุณจึงฝึกป่าแบบสุ่มได้อย่างรวดเร็ว
  • ป่าแบบสุ่มมีพารามิเตอร์เริ่มต้นที่มักจะให้ผลลัพธ์ที่ยอดเยี่ยม การปรับแต่งพารามิเตอร์เหล่านั้น มักไม่ค่อยส่งผลกับโมเดล

ข้อเสีย

  • เนื่องจากต้นที่ตัดไม่ได้ถูกตัดแต่ง จึงอาจมีขนาดใหญ่ โมเดลที่มีโหนดมากกว่า 1 ล้านโหนดเป็นเรื่องปกติ ในบางครั้ง (และความเร็วในการสรุป) ของป่าที่สุ่มมาบางครั้งก็อาจเป็นปัญหาได้
  • ป่าแบบสุ่มไม่สามารถเรียนรู้และนําสิ่งที่เป็นตัวแทนภายในมาใช้ซ้ําได้ แต่ละแผนผังการตัดสินใจ (และ Branch ของการตัดสินใจแต่ละแบบ) ต้องเรียนรู้รูปแบบชุดข้อมูลอีกครั้ง ในบางชุดข้อมูล จะเห็นชุดข้อมูลที่ไม่ใช่ตาราง (เช่น รูปภาพ, ข้อความ) ซึ่งอาจทําให้เกิดป่าแบบสุ่มซึ่งได้ผลลัพธ์แย่กว่าวิธีอื่นๆ