คณิตศาสตร์ที่อยู่เบื้องหลังการจำแนกและต้นไม้การถดถอย


14

ใครช่วยอธิบายคณิตศาสตร์บางส่วนที่อยู่ในการจัดประเภทในรถเข็นได้บ้าง ฉันกำลังมองหาที่จะเข้าใจว่าสองขั้นตอนหลักเกิดขึ้นได้อย่างไร เช่นฉันฝึกตัวแยกประเภท CART บนชุดข้อมูลและใช้ชุดข้อมูลการทดสอบเพื่อทำเครื่องหมายประสิทธิภาพการทำนาย แต่:

  1. รากแรกของต้นไม้ถูกเลือกอย่างไร

  2. ทำไมแต่ละสาขาจึงเกิดขึ้น?

ชุดข้อมูลของฉันเป็นระเบียน 400,000 รายการที่มี 15 คอลัมน์และ 23 คลาสที่ได้รับความถูกต้อง 100% จากเมทริกซ์ความสับสนฉันใช้การข้ามค่าช่วงเวลา 10 เท่าของชุดข้อมูล ฉันจะยิ่งใหญ่จริง ๆ ถ้าใครสามารถช่วยอธิบายขั้นตอนของการจัดประเภทรถเข็นได้

คำตอบ:


24

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

Tl={tT:t(A)x}

และ

Tr={tT:t(A)>x}

ในทำนองเดียวกันคุณลักษณะหมวดหมู่สามารถนำมาใช้เพื่อกระตุ้นแยกตามค่าของมัน ตัวอย่างเช่นถ้าแต่ละสาขาและสามารถชักนำโดยการทดสอบb_iBB={b1,,bk}iB=bi

ขั้นตอนการแบ่งของอัลกอริทึมแบบเรียกซ้ำเพื่อชักจูงต้นไม้การตัดสินใจคำนึงถึงการแยกที่เป็นไปได้ทั้งหมดสำหรับแต่ละคุณลักษณะและพยายามหาสิ่งที่ดีที่สุดตามการวัดคุณภาพที่เลือก: เกณฑ์การแยก หากชุดข้อมูลของคุณถูกชักนำในรูปแบบดังต่อไปนี้

A1,,Am,C

โดยที่เป็นคุณลักษณะและเป็นคลาสเป้าหมายการแยกตัวเลือกของผู้สมัครทั้งหมดจะถูกสร้างและประเมินโดยเกณฑ์การแยก แยกตามคุณลักษณะอย่างต่อเนื่องและหมวดหมู่ที่สร้างขึ้นตามที่อธิบายไว้ข้างต้น การเลือกการแยกที่ดีที่สุดมักจะดำเนินการโดยมาตรการที่ไม่บริสุทธิ์ สารเจือปนของโหนดผู้ปกครองจะต้องมีการลดลงที่แยก ปล่อยให้เป็นรอยแยกที่เกิดขึ้นในชุดของระเบียนซึ่งเป็นเกณฑ์การแยกที่ใช้ในการวัดสิ่งเจือปนคือ:AjC(E1,E2,,Ek)EI()

Δ=I(E)i=1k|Ei||E|I(Ei)

มาตรการปนเปื้อนมาตรฐานคือเอนโทรปีของแชนนอนหรือดัชนีจินี โดยเฉพาะอย่างยิ่งรถเข็นใช้ดัชนี Gini ที่กำหนดไว้สำหรับชุดดังต่อไปนี้ ให้เป็นเศษส่วนของเร็กคอร์ดในของคลาสแล้ว โดยที่คือจำนวนคลาสEpjEcj

pj=|{tE:t[C]=cj}||E|
Gini(E)=1j=1Qpj2
Q

มันจะนำไปสู่การปนเปื้อน 0 เมื่อบันทึกทั้งหมดเป็นของชั้นเดียวกัน

ตัวอย่างเช่นสมมติว่าเรามีชุดคลาสไบนารีของเรคคอร์ดที่การแจกแจงคลาสคือ - ต่อไปนี้เป็นตัวแยกที่ดีสำหรับT(1/2,1/2)T

ดีมาก

การกระจายความน่าจะเป็นของระเบียนในเป็นและ 'หนึ่งคือ(0,1)สมมติว่าและมีขนาดเท่ากันดังนั้น1/2 เราจะเห็นว่าTl(1,0)Tr(0,1)TlTr|Tl|/|T|=|Tr|/|T|=1/2Δ

Δ=11/221/2200=1/2

Δแยกไม่ดี

Δ=11/221/221/2(1(3/4)2(1/4)2)1/2(1(1/4)2(3/4)2)=1/21/2(3/8)1/2(3/8)=1/8

การแยกแรกจะถูกเลือกเป็นการแยกที่ดีที่สุดจากนั้นอัลกอริธึมจะดำเนินการในลักษณะวนซ้ำ

มันง่ายต่อการจำแนกอินสแตนซ์ใหม่ด้วยแผนผังการตัดสินใจในความเป็นจริงมันก็เพียงพอที่จะติดตามเส้นทางจากโหนดรูตไปยังลีฟ เร็กคอร์ดถูกจัดประเภทด้วยคลาสส่วนใหญ่ของใบไม้ที่ถึง

สมมติว่าเราต้องการจัดตารางในรูปนี้

ชุดข้อมูลสองชุด

A,B,CCAB

แผนผังการตัดสินใจที่ชักนำที่เป็นไปได้อาจเป็นดังต่อไปนี้ ป้อนคำอธิบายรูปภาพที่นี่

เป็นที่ชัดเจนว่าสแควร์บันทึกจะถูกจัดประเภทตามต้นไม้การตัดสินใจเป็นวงกลมเนื่องจากบันทึกนั้นอยู่บนใบไม้ที่มีป้ายกำกับที่มีวงกลม

ในตัวอย่างของเล่นนี้ความแม่นยำในชุดการฝึกอบรมคือ 100% เพราะไม่มีการบันทึกผิดต้นไม้ ในการแสดงกราฟิกของชุดการฝึกอบรมด้านบนเราสามารถเห็นขอบเขต (เส้นประสีเทา) ที่ต้นไม้ใช้เพื่อจำแนกอินสแตนซ์ใหม่

มีวรรณคดีมากมายบนต้นไม้ตัดสินใจฉันต้องการเพียงแค่เขียนบทแนะนำสั้น ๆ การติดตั้งที่มีชื่อเสียงอีกตัวหนึ่งคือ C4.5


1
ไดอะแกรมที่ยอดเยี่ยม!
Cam.Davidson.Pilon

ขอขอบคุณโชคไม่ดีที่ดูเหมือนว่าบรรณาธิการไม่สนับสนุนการอัปโหลดในรูปแบบ PDF พวกมันเป็นเวกเตอร์
Simone

2

ฉันไม่ใช่ผู้เชี่ยวชาญเกี่ยวกับรถเข็น แต่คุณสามารถลองหนังสือ"องค์ประกอบของการเรียนรู้เชิงสถิติ"ซึ่งสามารถใช้งานออนไลน์ได้อย่างอิสระ (ดูบทที่ 9 สำหรับรถเข็น) ฉันเชื่อว่าหนังสือเล่มนี้เขียนโดยหนึ่งในผู้สร้างอัลกอริทึม CART (ฟรีดแมน)


นั่นช่วยได้มาก! +1 พบคนบ้าคลั่ง!
G Gr

@GarrithGraham ไม่มีปัญหาฉันคิดว่าหนังสือฟรีเล่มนี้เป็น "ความลับที่รู้จักกันดี"
Bitwise
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.