กลับไปหน้าบทความ

อ่าน 20 นาที

ป่าสุ่ม

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

ป่าสุ่ม

ป่าสุ่มหรือป่าตัดสินใจแบบสุ่มเป็น วิธี การเรียนรู้แบบกลุ่มสำหรับการจำแนกการถดถอย และงานอื่นๆ ที่ทำงานโดยการสร้าง ต้นไม้ตัดสินใจจำนวนมากในระหว่างการฝึกอบรม สำหรับงานจำแนก ผลลัพธ์ของป่าสุ่มคือคลาสที่เลือกโดยต้นไม้ส่วนใหญ่ สำหรับงานถดถอย ผลลัพธ์คือค่าเฉลี่ยของการคาดการณ์ของต้นไม้[ 1 ] [ 2 ]ป่าสุ่มแก้ไขนิสัยของต้นไม้ตัดสินใจที่มักจะเกิดการโอเวอร์ฟิตกับชุดข้อมูลการฝึกอบรม [ 3 ] : 587–588

อัลกอริทึมแรกสำหรับป่าตัดสินใจแบบสุ่มถูกสร้างขึ้นในปี 1995 โดยTin Kam Ho [ 1 ]โดยใช้วิธีการพื้นที่ย่อยแบบสุ่ม[ 2 ]ซึ่งในสูตรของ Ho เป็นวิธีหนึ่งในการนำแนวทางการจำแนกแบบสุ่มมาใช้ในการจัดประเภทที่เสนอโดย Eugene Kleinberg [ 4 ] [ 5 ] [ 6 ]

ส่วนขยายของอัลกอริธึมได้รับการพัฒนาโดยLeo Breiman [ 7 ]และAdele Cutler [ 8 ] ซึ่งจดทะเบียน[ 9 ] "Random Forests" เป็นเครื่องหมายการค้าในปี 2006 (ณ ปี 2019 เป็นของMinitab, Inc. ) [ 10 ]ส่วนขยายนี้รวมแนวคิด " bagging " ของ Breiman และการเลือกคุณลักษณะแบบสุ่ม ซึ่งแนะนำครั้งแรกโดย Ho [ 1 ]และต่อมาโดย Amit และGeman [ 11 ] อย่างอิสระ เพื่อสร้างชุดของต้นไม้ตัดสินใจที่มีความแปรปรวนที่ควบคุมได้

ประวัติศาสตร์

วิธีการทั่วไปของป่าตัดสินใจแบบสุ่มได้รับการเสนอครั้งแรกโดย Salzberg และ Heath ในปี 1993 [ 12 ]ด้วยวิธีการที่ใช้อัลกอริทึมต้นไม้ตัดสินใจแบบสุ่มเพื่อสร้างต้นไม้หลายต้นแล้วรวมเข้าด้วยกันโดยใช้การลงคะแนนเสียงข้างมาก แนวคิดนี้ได้รับการพัฒนาเพิ่มเติมโดย Ho ในปี 1995 [ 1 ] Ho ได้พิสูจน์ว่าป่าของต้นไม้ที่แยกด้วยระนาบเฉียงสามารถเพิ่มความแม่นยำได้เมื่อเติบโตขึ้นโดยไม่ได้รับผลกระทบจากการฝึกฝนมากเกินไป ตราบใดที่ป่าถูกจำกัดแบบสุ่มให้มีความไวต่อมิติคุณลักษณะ ที่เลือกไว้เท่านั้น งานวิจัยต่อมาในแนวทางเดียวกัน[ 2 ]สรุปได้ว่าวิธีการแยกอื่นๆ มีพฤติกรรมคล้ายกัน ตราบใดที่ถูกบังคับแบบสุ่มให้ไม่ไวต่อมิติคุณลักษณะบางอย่าง ข้อสังเกตนี้ที่ว่าตัวจำแนกที่ซับซ้อนกว่า (ป่าที่ใหญ่กว่า) จะมีความแม่นยำมากขึ้นเกือบจะเป็นแบบโมโนโทนิกนั้นตรงกันข้ามกับความเชื่อทั่วไปที่ว่าความซับซ้อนของตัวจำแนกสามารถเติบโตได้ถึงระดับความแม่นยำระดับหนึ่งเท่านั้นก่อนที่จะได้รับผลกระทบจากการโอเวอร์ฟิตติ้ง คำอธิบายเกี่ยวกับความต้านทานต่อการฝึกฝนมากเกินไปของวิธีการป่าสามารถพบได้ในทฤษฎีการจำแนกแบบสุ่มของ Kleinberg [ 4 ] [ 5 ] [ 6 ]

การพัฒนาแนวคิดป่าสุ่มของ Breiman ในช่วงแรกได้รับอิทธิพลจากงานของ Amit และ Geman [ 11 ]ซึ่งได้นำเสนอแนวคิดของการค้นหาชุดย่อยแบบสุ่มของการตัดสินใจที่มีอยู่เมื่อแยกโหนด ในบริบทของการสร้างต้นไม้ ต้นเดียว แนวคิดของการเลือกพื้นที่ย่อยแบบสุ่มจาก Ho [ 2 ]ก็มีอิทธิพลต่อการออกแบบป่าสุ่มเช่นกัน วิธีนี้สร้างป่าของต้นไม้ และแนะนำความแปรปรวนระหว่างต้นไม้โดยการฉายข้อมูลการฝึกอบรมลงในพื้นที่ย่อย ที่เลือกแบบสุ่ม ก่อนที่จะปรับต้นไม้แต่ละต้นหรือแต่ละโหนด สุดท้าย แนวคิดของการเพิ่มประสิทธิภาพโหนดแบบสุ่ม ซึ่งการตัดสินใจที่แต่ละโหนดถูกเลือกโดยกระบวนการแบบสุ่ม แทนที่จะเป็นการเพิ่มประสิทธิภาพแบบกำหนด ได้รับการนำเสนอครั้งแรกโดยThomas G. Dietterich [ 13 ]

การแนะนำป่าสุ่มอย่างถูกต้องเกิดขึ้นในบทความของLeo Breiman [ 7 ] ซึ่งกลายเป็นหนึ่งในบทความที่มีการอ้างอิงมากที่สุดในโลก[ 14 ] บทความ นี้อธิบายวิธีการสร้างป่าของต้นไม้ที่ไม่สัมพันธ์กันโดยใช้ ขั้นตอนคล้าย CARTร่วมกับการเพิ่มประสิทธิภาพโหนดแบบสุ่มและการทำ Baggingนอกจากนี้ บทความนี้ยังรวมส่วนประกอบหลายอย่าง ทั้งที่ทราบกันอยู่แล้วและที่เป็นสิ่งใหม่ ซึ่งเป็นพื้นฐานของการปฏิบัติป่าสุ่มในปัจจุบัน โดยเฉพาะอย่างยิ่ง:

  1. ใช้ค่าความคลาดเคลื่อนนอกกลุ่มตัวอย่าง (out-of-bag error)เป็นตัวประมาณค่าความคลาดเคลื่อนในการวางนัยทั่วไป (generalization error )
  2. การวัดความสำคัญของตัวแปรผ่านการเรียงสับเปลี่ยน

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

อัลกอริทึม

เบื้องต้น: การเรียนรู้แผนผังการตัดสินใจ

ต้นไม้ตัดสินใจเป็นวิธีการที่นิยมใช้สำหรับงานการเรียนรู้ของเครื่องต่างๆ การเรียนรู้แบบต้นไม้เกือบจะเป็น "ขั้นตอนสำเร็จรูปสำหรับการทำเหมืองข้อมูล" ดังที่Hastie และคณะ กล่าวไว้ "เพราะมันไม่เปลี่ยนแปลงภายใต้การปรับขนาดและการแปลงค่าคุณลักษณะต่างๆ มีความทนทานต่อการรวมคุณลักษณะที่ไม่เกี่ยวข้อง และสร้างแบบจำลองที่ตรวจสอบได้ อย่างไรก็ตาม มันมักจะไม่แม่นยำ" [ 3 ] : 352

โดยเฉพาะอย่างยิ่ง ต้นไม้ที่เติบโตลึกมากมักจะเรียนรู้รูปแบบที่ไม่สม่ำเสมออย่างมาก: พวกมันจะโอเวอร์ฟิตกับชุดข้อมูลฝึกฝน กล่าวคือ มีอคติต่ำ แต่มีความแปรปรวนสูงมากป่าสุ่มเป็นวิธีการเฉลี่ยต้นไม้ตัดสินใจเชิงลึกหลายต้น ซึ่งได้รับการฝึกฝนบนส่วนต่างๆ ของชุดข้อมูลฝึกฝนเดียวกัน โดยมีเป้าหมายเพื่อลดความแปรปรวน[ 3 ] : 587–588 ซึ่งมาพร้อมกับข้อเสียคืออคติที่เพิ่มขึ้นเล็กน้อยและความสามารถในการตีความที่ลดลงบ้าง แต่โดยทั่วไปแล้วจะช่วยเพิ่มประสิทธิภาพในแบบจำลองสุดท้ายได้อย่างมาก

การบรรจุ

ภาพประกอบแสดงขั้นตอนการฝึกโมเดล Random Forest ชุดข้อมูลสำหรับการฝึก (ในกรณีนี้มี 250 แถวและ 100 คอลัมน์) จะถูกสุ่มเลือกแบบสุ่มโดยมีการแทนที่จำนวนnครั้ง จากนั้นจะทำการฝึกต้นไม้ตัดสินใจในแต่ละตัวอย่าง สุดท้าย เพื่อการทำนาย ผลลัพธ์จากต้นไม้ตัดสินใจทั้งnต้นจะถูกนำมารวมกันเพื่อสร้างการตัดสินใจขั้นสุดท้าย

อัลกอริทึมการฝึกฝนสำหรับ Random Forests ใช้เทคนิคทั่วไปของการรวมแบบบูตสแตรปหรือ Bagging กับตัวเรียนรู้ต้นไม้ โดยกำหนดชุดข้อมูลฝึกฝนX = x 1 , ..., x nที่มีคำตอบY = y 1 , ..., y nการ Bagging ซ้ำๆ ( Bครั้ง) จะเลือกตัวอย่างแบบสุ่มโดยมีการแทนที่จากชุดข้อมูลฝึกฝน และสร้างต้นไม้ให้กับตัวอย่างเหล่านี้:

สำหรับb = 1, ..., B :
  1. เลือกตัวอย่าง ฝึกฝน nตัวอย่างจากXและY โดยให้มีการแทนที่ เรียกตัวอย่างเหล่านี้ว่าX bและY b
  2. ฝึกต้นไม้จำแนกประเภทหรือต้นไม้ถดถอยf bบนX b , Y b

หลังจากฝึกฝนเสร็จแล้ว สามารถทำนายค่าตัวอย่างที่ไม่เคยเห็นมาก่อนx'ได้โดยการหาค่าเฉลี่ยของการทำนายจากต้นไม้การถดถอยแต่ละต้นบนx' :

หรือโดยการใช้เสียงข้างมากในกรณีของแผนผังจำแนกประเภท

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

นอกจากนี้ ยังสามารถประมาณความไม่แน่นอนของการทำนายได้โดยใช้ค่าเบี่ยงเบนมาตรฐานของการทำนายจากต้นไม้การถดถอยแต่ละต้นบนx′ :

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

ข้อผิดพลาดในการฝึกฝนและการทดสอบมีแนวโน้มที่จะคงที่หลังจากที่ได้สร้างแบบจำลองต้นไม้ไปแล้วจำนวนหนึ่ง

จากการจัดกลุ่มข้อมูลไปจนถึงป่าสุ่ม

ขั้นตอนข้างต้นอธิบายอัลกอริทึม bagging ดั้งเดิมสำหรับต้นไม้ ป่าสุ่มยังรวมถึงรูปแบบ bagging อีกประเภทหนึ่งด้วย: พวกมันใช้อัลกอริทึมการเรียนรู้ต้นไม้ที่ดัดแปลงซึ่งเลือกชุดย่อยแบบสุ่มของคุณลักษณะ ในแต่ละการแยกผู้สมัครในกระบวนการเรียนรู้ กระบวนการนี้บางครั้งเรียกว่า "feature bagging" เหตุผลในการทำเช่นนี้คือความสัมพันธ์ของต้นไม้ในตัวอย่างบูตสแตรปทั่วไป: หากคุณลักษณะหนึ่งหรือสองสามคุณลักษณะเป็นตัวทำนายที่แข็งแกร่งมากสำหรับตัวแปรตอบสนอง (เอาต์พุตเป้าหมาย) คุณลักษณะเหล่านี้จะถูกเลือกใน ต้นไม้ B จำนวนมาก ทำให้พวกมันมีความสัมพันธ์กัน การวิเคราะห์ว่า bagging และการฉายภาพพื้นที่ย่อยแบบสุ่มมีส่วนช่วยในการเพิ่มความแม่นยำภายใต้เงื่อนไขต่างๆ อย่างไรนั้นได้มาจาก Ho [ 16 ]

โดยทั่วไป สำหรับปัญหาการจำแนกประเภทที่มีคุณลักษณะ(ปัดลง) จะใช้คุณลักษณะในแต่ละการแบ่ง[ 3 ] : 592 สำหรับปัญหาการถดถอย ผู้คิดค้นแนะนำให้ใช้คุณลักษณะ(ปัดลง) โดยมีขนาดโหนดขั้นต่ำ 5 เป็นค่าเริ่มต้น[ 3 ] : 592 ในทางปฏิบัติ ควรปรับแต่งค่าที่ดีที่สุดสำหรับพารามิเตอร์เหล่านี้ตามแต่ละกรณีไปสำหรับแต่ละปัญหา[ 3 ] : 592

ExtraTrees

การเพิ่มขั้นตอนการสุ่มอีกขั้นหนึ่งจะทำให้ได้ต้นไม้ที่มีการสุ่มอย่างมากหรือ ExtraTrees เช่นเดียวกับป่าสุ่มทั่วไป ต้นไม้เหล่านี้เป็นการรวมกันของต้นไม้แต่ละต้น แต่มีความแตกต่างหลักสองประการคือ (1) ต้นไม้แต่ละต้นได้รับการฝึกฝนโดยใช้ตัวอย่างการเรียนรู้ทั้งหมด (แทนที่จะใช้ตัวอย่างบูตสแตรป) และ (2) การแบ่งจากบนลงล่างจะถูกสุ่ม: สำหรับแต่ละคุณลักษณะที่กำลังพิจารณา จะมีการเลือกจุดตัด แบบสุ่ม จำนวนหนึ่ง แทนที่จะคำนวณ จุดตัด ที่เหมาะสมที่สุด ในระดับท้องถิ่น (โดยพิจารณาจาก เช่นการเพิ่มขึ้นของข้อมูลหรือความไม่บริสุทธิ์ของ Gini ) ค่าต่างๆ จะถูกเลือกจากการกระจายแบบเอกรูปภายในช่วงเชิงประจักษ์ของคุณลักษณะ (ในชุดการฝึกฝนของต้นไม้) จากนั้น จากการแบ่งที่เลือกแบบสุ่มทั้งหมด การแบ่งที่ให้คะแนนสูงสุดจะถูกเลือกเพื่อแบ่งโหนด

เช่นเดียวกับป่าสุ่มทั่วไป จำนวนฟีเจอร์ที่เลือกแบบสุ่มที่จะนำมาพิจารณาในแต่ละโหนดสามารถระบุได้ ค่าเริ่มต้นสำหรับพารามิเตอร์นี้คือสำหรับการจำแนกประเภทและสำหรับการถดถอย โดยที่คือจำนวนฟีเจอร์ในโมเดล[ 17 ]

ป่าสุ่มสำหรับข้อมูลมิติสูง

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

  • การกรองเบื้องต้น: กำจัดคุณสมบัติที่เป็นเพียงสัญญาณรบกวนเป็นส่วนใหญ่[ 18 ] [ 19 ]
  • Enriched Random Forest (ERF): ใช้การสุ่มตัวอย่างแบบถ่วงน้ำหนักแทนการสุ่มตัวอย่างแบบง่ายที่แต่ละโหนดของแต่ละต้นไม้ โดยให้น้ำหนักมากขึ้นกับคุณลักษณะที่ดูเหมือนจะมีข้อมูลมากกว่า[ 20 ] [ 21 ] [ 22 ]
  • ป่าสุ่มแบบถ่วงน้ำหนักต้นไม้ (TWRF): ให้ความสำคัญกับต้นไม้ที่แม่นยำกว่า[ 23 ] [ 24 ]

คุณสมบัติ

ความสำคัญของตัวแปร

ป่าสุ่มสามารถใช้จัดอันดับความสำคัญของตัวแปรในปัญหาการถดถอยหรือการจำแนกประเภทได้อย่างเป็นธรรมชาติ เทคนิคต่อไปนี้ได้รับการอธิบายไว้ในเอกสารต้นฉบับของ Breiman [ 7 ]และถูกนำไปใช้ในแพ็คเกจR [ 8 ]randomForest

ความสำคัญของการเรียงสับเปลี่ยน

ในการวัดความสำคัญของฟีเจอร์ในชุดข้อมูลขั้นแรกจะทำการฝึกโมเดล Random Forest กับข้อมูลนั้น ในระหว่างการฝึกค่าความคลาดเคลื่อนแบบ Out-of-Bagสำหรับแต่ละจุดข้อมูลจะถูกบันทึกและหาค่าเฉลี่ยตลอดทั้ง Random Forest (หากไม่ได้ใช้ Bagging ในระหว่างการฝึก เราสามารถคำนวณค่าความคลาดเคลื่อนบนชุดข้อมูลทดสอบอิสระแทนได้)

หลังจากฝึกฝนเสร็จแล้ว ค่าของคุณลักษณะจะถูกสลับตำแหน่งในตัวอย่างนอกกลุ่ม (out-of-bag samples) และคำนวณค่าความคลาดเคลื่อนนอกกลุ่มอีกครั้งบนชุดข้อมูลที่ถูกสลับตำแหน่งนี้ ความสำคัญของคุณลักษณะจะถูกคำนวณโดยการหาค่าเฉลี่ยของความแตกต่างในค่าความคลาดเคลื่อนนอกกลุ่มก่อนและหลังการสลับตำแหน่งในทุกต้นไม้ คะแนนจะถูกปรับให้เป็นมาตรฐานโดยใช้ค่าเบี่ยงเบนมาตรฐานของความแตกต่างเหล่านี้

คุณลักษณะที่สร้างค่าสูงสำหรับคะแนนนี้จะถูกจัดอันดับให้มีความสำคัญมากกว่าคุณลักษณะที่สร้างค่าต่ำ คำจำกัดความทางสถิติของการวัดความสำคัญของตัวแปรได้รับการกำหนดและวิเคราะห์โดย Zhu et al. [ 25 ]

วิธีการกำหนดความสำคัญของตัวแปรแบบนี้มีข้อเสียอยู่บ้าง:

  • เมื่อคุณลักษณะมีจำนวนค่าที่แตกต่างกัน ป่าสุ่มจะให้ความสำคัญกับคุณลักษณะที่มีค่ามากกว่า วิธีแก้ปัญหานี้ได้แก่การเรียงสับเปลี่ยนบางส่วน[ 26 ] [ 27 ] [ 28 ]และต้นไม้ที่ไม่เอนเอียงที่เติบโต[ 29 ] [ 30 ]
  • หากข้อมูลประกอบด้วยกลุ่มคุณลักษณะที่สัมพันธ์กันซึ่งมีความเกี่ยวข้องคล้ายคลึงกัน กลุ่มขนาดเล็กจะได้รับความนิยมมากกว่ากลุ่มขนาดใหญ่[ 31 ]
  • หากมีคุณลักษณะที่เรียงตัวกัน ขั้นตอนนี้อาจไม่สามารถระบุคุณลักษณะที่สำคัญได้ วิธีแก้ปัญหาคือการสลับกลุ่มคุณลักษณะที่สัมพันธ์กันเข้าด้วยกัน[ 32 ]

ค่าเฉลี่ยการลดลงของความสำคัญของลักษณะสิ่งเจือปน

แนวทางนี้ในการพิจารณาความสำคัญของฟีเจอร์สำหรับป่าสุ่มจะถือว่าตัวแปรที่ลดความไม่บริสุทธิ์ลงอย่างมากในระหว่างการแบ่งเป็นสิ่งสำคัญ[ 33 ]มีการอธิบายไว้ในหนังสือClassification and Regression Treesโดย Leo Breiman [ 34 ]และเป็นการใช้งานเริ่มต้นในscikit learnR คำจำกัดความคือ: โดยที่

  • เป็นคุณสมบัติ
  • คือจำนวนต้นไม้ในป่า
  • คือต้นไม้
  • คือสัดส่วนของตัวอย่างที่ไปถึงโหนด
  • คือการเปลี่ยนแปลงของสิ่งเจือปนในต้นไม้ที่โหนด

ในการวัดปริมาณสิ่งเจือปนในตัวอย่างที่อยู่ในโหนดใดโหนดหนึ่ง สามารถใช้สถิติต่อไปนี้ได้:

จากนั้นจึงคำนวณค่าความสำคัญที่ปรับให้เป็นมาตรฐานโดยการปรับค่าความสำคัญของฟีเจอร์ทั้งหมดให้เป็นมาตรฐาน เพื่อให้ผลรวมของค่าความสำคัญของฟีเจอร์ที่ปรับให้เป็นมาตรฐานมีค่าเท่ากับ 1

การscikit learnใช้งานเริ่มต้นอาจรายงานความสำคัญของฟีเจอร์ที่ทำให้เข้าใจผิดได้: [ 32 ]

  • มันให้ความสำคัญกับคุณลักษณะที่มีจำนวนสมาชิกสูง
  • โดยใช้สถิติการฝึกอบรม ดังนั้นจึงไม่สะท้อนถึงประโยชน์ของฟีเจอร์สำหรับการคาดการณ์บนชุดทดสอบ[ 35 ]

ความสัมพันธ์กับเพื่อนบ้านที่ใกล้ที่สุด

ความสัมพันธ์ระหว่างป่าสุ่มและอัลกอริทึมเพื่อนบ้านใกล้ที่สุดk ตัว ( k -NN) ได้รับการชี้ให้เห็นโดย Lin และ Jeon ในปี 2545 [ 36 ]ทั้งสองสามารถมองได้ว่าเป็นแผนการเพื่อนบ้านแบบถ่วงน้ำหนัก ที่เรียกว่า แบบจำลองเหล่านี้สร้างขึ้นจากชุดฝึกอบรมที่ทำการคาดการณ์สำหรับจุดใหม่x'โดยพิจารณาจาก "บริเวณใกล้เคียง" ของจุด ซึ่งกำหนดเป็นทางการโดยฟังก์ชันน้ำหนักW : ในที่นี้คือน้ำหนักที่ไม่เป็นลบของจุดฝึกอบรมที่iเมื่อเทียบกับจุดใหม่x'ในต้นไม้เดียวกัน สำหรับx' ใดๆ น้ำหนักสำหรับจุดต้องรวมกันได้ 1 ฟังก์ชันน้ำหนักมีดังนี้:

  • ในk -NN ค่าx iจะเท่ากับ 1 ในkจุดที่อยู่ใกล้x' มากที่สุด และจะเป็นศูนย์ในกรณีอื่น ๆ
  • ในต้นไม้ถ้าx iเป็นหนึ่งในk'จุดที่อยู่ในใบเดียวกันกับx'และจะเป็นศูนย์ในกรณีอื่น ๆ

เนื่องจากป่าจำลองจะหาค่าเฉลี่ยของการทำนายจากชุด ต้นไม้ mต้นที่มีฟังก์ชันน้ำหนักเฉพาะตัวดังนั้นการทำนายของมันจึงเป็น

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

การเรียนรู้แบบไม่มีผู้กำกับดูแล

ในการสร้างตัวทำนายแบบสุ่มป่า (random forest predictors) จะนำไปสู่การวัดความไม่เหมือนกันระหว่างการสังเกตโดยธรรมชาติ เราสามารถกำหนดความไม่เหมือนกันระหว่างข้อมูลที่ไม่มีป้ายกำกับได้ในลักษณะเดียวกัน โดยการฝึกป่าให้แยกแยะข้อมูล "ที่สังเกตได้" ดั้งเดิมออกจากข้อมูลสังเคราะห์ที่สร้างขึ้นอย่างเหมาะสมซึ่งดึงมาจากการแจกแจงอ้างอิง[ 7 ] [ 37 ]ความไม่เหมือนกันของป่าแบบสุ่มมีความน่าสนใจเพราะสามารถจัดการกับประเภทตัวแปรแบบผสมได้ดีมาก ไม่เปลี่ยนแปลงไปตามการแปลงแบบโมโนโทนิกของตัวแปรอินพุต และมีความทนทานต่อการสังเกตที่ผิดปกติ ความไม่เหมือนกันของป่าแบบสุ่มสามารถจัดการกับตัวแปรแบบกึ่งต่อเนื่องจำนวนมากได้อย่างง่ายดายเนื่องจากการเลือกตัวแปรโดยธรรมชาติ ตัวอย่างเช่น ความไม่เหมือนกันของป่าแบบสุ่ม "Addcl 1" จะถ่วงน้ำหนักการมีส่วนร่วมของแต่ละตัวแปรตามความสัมพันธ์กับตัวแปรอื่น ความไม่เหมือนกันของป่าแบบสุ่มถูกนำไปใช้ในแอปพลิเคชันที่หลากหลาย เช่น การค้นหากลุ่มผู้ป่วยตามข้อมูลเครื่องหมายเนื้อเยื่อ[ 38 ]

ตัวแปร

แทนที่จะใช้ต้นไม้ตัดสินใจ โมเดลเชิงเส้นได้รับการเสนอและประเมินเป็นตัวประมาณค่าพื้นฐานในป่าสุ่ม โดยเฉพาะอย่างยิ่งการถดถอยโลจิสติกแบบหลายตัวเลือกและตัวจำแนกแบบเบย์แบบง่าย[ 39 ] [ 40 ] [ 41 ]ในกรณีที่ความสัมพันธ์ระหว่างตัวทำนายและตัวแปรเป้าหมายเป็นเชิงเส้น ตัวเรียนรู้พื้นฐานอาจมีความแม่นยำสูงเท่ากับตัวเรียนรู้แบบกลุ่ม[ 42 ] [ 39 ]

ป่าสุ่มเคอร์เนล

ในการเรียนรู้ของเครื่อง Kernel Random Forests (KeRF) สร้างความเชื่อมโยงระหว่าง Random Forests กับKernel Methodsโดยการปรับเปลี่ยนคำจำกัดความเล็กน้อย Random Forests สามารถเขียนใหม่เป็นKernel Methodsซึ่งตีความได้ง่ายกว่าและวิเคราะห์ได้ง่ายกว่า[ 43 ]

ประวัติศาสตร์

Leo Breiman [ 44 ]เป็นคนแรกที่สังเกตเห็นความเชื่อมโยงระหว่าง random forest และวิธีการเคอร์เนลเขาชี้ให้เห็นว่า random forest ที่ฝึกฝนโดยใช้ เวกเตอร์สุ่ม iidในการสร้างต้นไม้เทียบเท่ากับเคอร์เนลที่กระทำบนขอบจริง Lin และ Jeon [ 45 ]ได้สร้างความเชื่อมโยงระหว่าง random forest และ adaptive nearest neighbor ซึ่งหมายความว่า random forest สามารถมองได้ว่าเป็นค่าประมาณเคอร์เนลแบบปรับตัว Davies และ Ghahramani [ 46 ]เสนอ Kernel Random Forest (KeRF) และแสดงให้เห็นว่ามันสามารถทำงานได้ดีกว่าวิธีการเคอร์เนลที่ทันสมัยที่สุดในทางปฏิบัติ Scornet [ 43 ]เป็นคนแรกที่กำหนดค่าประมาณ KeRF และให้ความเชื่อมโยงที่ชัดเจนระหว่างค่าประมาณ KeRF และ random forest เขายังให้สูตรที่ชัดเจนสำหรับเคอร์เนลโดยอิงจาก centered random forest [ 47 ]และ uniform random forest [ 48 ]ซึ่งเป็นแบบจำลอง random forest ที่ง่ายขึ้นสองแบบ เขาตั้งชื่อ KeRF ทั้งสองนี้ว่า Centered KeRF และ Uniform KeRF และพิสูจน์ขอบเขตบนของอัตราความสอดคล้องของพวกมัน

สัญลักษณ์และคำจำกัดความ

ข้อมูลเบื้องต้น: ป่าศูนย์กลาง

Centered forest [ 47 ]เป็นแบบจำลองที่เรียบง่ายกว่าของ random forest ดั้งเดิมของ Breiman ซึ่งเลือกแอตทริบิวต์อย่างสม่ำเสมอจากแอตทริบิวต์ทั้งหมด และทำการแบ่งที่จุดศูนย์กลางของเซลล์ตามแอตทริบิวต์ที่เลือกไว้ล่วงหน้า อัลกอริทึมจะหยุดเมื่อสร้างต้นไม้ไบนารีแบบสมบูรณ์ระดับ โดยที่เป็นพารามิเตอร์ของอัลกอริทึม

ป่าสม่ำเสมอ

Uniform forest [ 48 ]เป็นอีกรูปแบบหนึ่งที่เรียบง่ายกว่าของ random forest ดั้งเดิมของ Breiman ซึ่งเลือกคุณลักษณะหนึ่งในบรรดาคุณลักษณะทั้งหมดอย่างสม่ำเสมอ และทำการแบ่งที่จุดซึ่งวาดอย่างสม่ำเสมอที่ด้านข้างของเซลล์ ตามคุณลักษณะที่เลือกไว้ล่วงหน้า

จาก Random Forest ไปสู่ ​​KeRF

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

ดังนั้น การประมาณค่าป่าสุ่มจึงเป็นไปตามเงื่อนไขสำหรับทุกค่า ป่าการถดถอยสุ่มมีการหาค่าเฉลี่ยสองระดับ ระดับแรกคือค่าเฉลี่ยของตัวอย่างในเซลล์เป้าหมายของต้นไม้ จากนั้นจึงหาค่าเฉลี่ยของต้นไม้ทั้งหมด ดังนั้น การมีส่วนร่วมของการสังเกตที่อยู่ในเซลล์ที่มีความหนาแน่นของจุดข้อมูลสูงจึงน้อยกว่าการมีส่วนร่วมของการสังเกตที่อยู่ในเซลล์ที่มีประชากรน้อยกว่า เพื่อปรับปรุงวิธีการป่าสุ่มและชดเชยการประมาณค่าผิดพลาด Scornet [ 43 ]ได้กำหนด KeRF โดย ที่เท่ากับค่าเฉลี่ยของค่า 's ที่อยู่ในเซลล์ที่มีในป่า หากเรากำหนดฟังก์ชันการเชื่อมต่อของป่าจำกัดเป็น นั่นคือ สัดส่วนของเซลล์ที่ใช้ร่วมกันระหว่างและแล้วเกือบจะแน่นอนว่าเราจะมีซึ่งกำหนด KeRF

เคอาร์เอฟแบบศูนย์กลาง

การสร้าง Centered KeRF ในระดับนั้นเหมือนกับการสร้าง Centered Forest ยกเว้นว่าการทำนายจะทำโดยฟังก์ชันเคอร์เนลหรือฟังก์ชันการเชื่อมต่อที่เกี่ยวข้อง

เครื่องแบบ KeRF

Uniform KeRF ถูกสร้างขึ้นในลักษณะเดียวกับ Uniform Forest ยกเว้นว่าการทำนายจะทำโดยฟังก์ชันเคอร์เนลหรือฟังก์ชันการเชื่อมต่อที่เกี่ยวข้อง

คุณสมบัติ

ความสัมพันธ์ระหว่าง KeRF และ Random Forest

ผลการทำนายจาก KeRF และ Random Forest จะใกล้เคียงกัน หากควบคุมจำนวนจุดในแต่ละเซลล์:

สมมติว่ามีลำดับอยู่ซึ่งโดยส่วนใหญ่แล้ว แล้วโดยส่วนใหญ่แล้ว

ความสัมพันธ์ระหว่าง KeRF อนันต์และป่าสุ่มอนันต์

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

สมมติว่ามีลำดับอยู่ซึ่งเกือบจะแน่นอนว่า

ดังนั้นแทบจะแน่นอนว่า

ผลลัพธ์ที่สอดคล้องกัน

สมมติว่าโดยที่เป็นสัญญาณรบกวนเกาส์เซียนแบบศูนย์กลาง ซึ่งเป็นอิสระจากโดยมีความแปรปรวนจำกัดยิ่งไปกว่านั้นมีการกระจายแบบสม่ำเสมอบนและเป็นลิปชิตซ์ Scornet [ 43 ]ได้พิสูจน์ขอบเขตบนของอัตราความสอดคล้องสำหรับ KeRF แบบศูนย์กลางและ KeRF แบบสม่ำเสมอ

ความสม่ำเสมอของ KeRF ศูนย์กลาง

หากกำหนดให้และมีค่าคงที่ อยู่ค่าหนึ่งซึ่งสำหรับทุกค่า .

ความสม่ำเสมอของ KeRF ที่เป็นเอกภาพ

หากกำหนดให้และมีค่าคงที่อยู่ค่าหนึ่งซึ่ง ทำให้

ข้อเสีย

แม้ว่าป่าสุ่มมักจะให้ความแม่นยำสูงกว่าต้นไม้ตัดสินใจต้นเดียว แต่ก็ต้องแลกมาด้วยความสามารถในการตีความ โดยธรรมชาติ ของต้นไม้ตัดสินใจ ต้นไม้ตัดสินใจเป็นหนึ่งในตระกูลโมเดลการเรียนรู้ของเครื่องที่มีความสามารถในการตีความได้ง่าย เช่นเดียวกับโมเดลเชิงเส้น โมเดล ตามกฎและ โมเดลตาม ความสนใจความสามารถในการตีความนี้เป็นหนึ่งในข้อได้เปรียบหลักของต้นไม้ตัดสินใจ ช่วยให้นักพัฒนาสามารถยืนยันได้ว่าโมเดลได้เรียนรู้ข้อมูลที่สมจริงจากข้อมูล และช่วยให้ผู้ใช้ปลายทางมีความเชื่อมั่นในการตัดสินใจของโมเดล[ 39 ] [ 3 ]ตัวอย่างเช่น การติดตามเส้นทางที่ต้นไม้ตัดสินใจใช้ในการตัดสินใจนั้นค่อนข้างง่าย แต่การติดตามเส้นทางของต้นไม้หลายสิบหรือหลายร้อยต้นนั้นยากกว่ามาก เพื่อให้ได้ทั้งประสิทธิภาพและความสามารถในการตีความ เทคนิคการบีบอัดโมเดลบางอย่างช่วยให้สามารถแปลงป่าสุ่มเป็นต้นไม้ตัดสินใจ "เกิดใหม่" ขั้นต่ำที่สร้างฟังก์ชันการตัดสินใจเดียวกันได้อย่างแม่นยำ[ 39 ] [ 49 ] [ 50 ]

ข้อจำกัดอีกประการหนึ่งของป่าสุ่มคือ หากคุณลักษณะมีความสัมพันธ์เชิงเส้นกับเป้าหมาย ป่าสุ่มอาจไม่เพิ่มความแม่นยำของตัวเรียนรู้พื้นฐาน[ 39 ] [ 42 ]เช่นเดียวกับในปัญหาที่มีตัวแปรเชิงหมวดหมู่หลายตัว[ 51 ]

ดูเพิ่มเติม

อ่านเพิ่มเติม

  • Prinzie A, Poel D (2007). "การจำแนกประเภทหลายคลาสแบบสุ่ม: การขยายผลของ Random Forests ไปสู่ ​​Random MNL และ Random NB" . การประยุกต์ใช้ฐานข้อมูลและระบบผู้เชี่ยวชาญ . บันทึกการบรรยายในวิทยาการคอมพิวเตอร์ . เล่มที่ 4653. หน้า 349. doi : 10.1007/978-3-540-74469-6_35 . ISBN 978-3-540-74467-2.
  • Denisko D, Hoffman MM (กุมภาพันธ์ 2018). "การจำแนกและการปฏิสัมพันธ์ในป่าสุ่ม" . Proceedings of the National Academy of Sciences of the United States of America . 115 (8): 1690– 1692. Bibcode : 2018PNAS..115.1690D . doi : 10.1073/pnas.1800256115 . PMC  5828645 . PMID  29440440 .
  • Hajjem, Ahlem; Bellavance, François; Larocque, Denis (2014-06-03). "ป่าสุ่มแบบผสมสำหรับข้อมูลแบบคลัสเตอร์"วารสารการคำนวณทางสถิติและการจำลอง 84 ( 6): 1313– 1328. doi : 10.1080/00949655.2012.741599 . ISSN  0094-9655 .
  • คำอธิบายเกี่ยวกับตัวจำแนกประเภท Random Forests (จากเว็บไซต์ของ Leo Breiman)
  • Liaw, Andy & Wiener, Matthew "การจำแนกและการถดถอยโดยใช้ randomForest" R News (2002) เล่ม 2/3 หน้า 18 (การอภิปรายเกี่ยวกับการใช้แพ็กเกจ random forest สำหรับR )
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Random_forest&oldid=1359218845#Variants "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ ป่าสุ่ม

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

ประวัติศาสตร์

วิธีการทั่วไปของป่าตัดสินใจแบบสุ่มได้รับการเสนอครั้งแรกโดย Salzberg และ Heath ในปี 1993 [ 12 ] ด้วยวิธีการที่ใช้อัลกอริทึมต้นไม้ตัดสินใจแบบสุ่มเพื่อสร้างต้นไม้หลายต้นแล้วรวมเข้าด้วยกันโดยใช้การลงคะแนนเสียงข้างมาก แนวคิดนี้ได้รับการพัฒนาเพิ่มเติมโดย Ho ในปี...

เบื้องต้น: การเรียนรู้แผนผังการตัดสินใจ

ต้นไม้ตัดสินใจเป็นวิธีการที่นิยมใช้สำหรับงานการเรียนรู้ของเครื่องต่างๆ การเรียนรู้แบบต้นไม้เกือบจะเป็น "ขั้นตอนสำเร็จรูปสำหรับการทำเหมืองข้อมูล" ดังที่ Hastie และคณะ กล่าวไว้ "เพราะมันไม่เปลี่ยนแปลงภายใต้การปรับขนาดและการแปลงค่าคุณลักษณะต่างๆ...

การบรรจุ

อัลกอริทึมการฝึกฝนสำหรับ Random Forests ใช้เทคนิคทั่วไปของการ รวมแบบบูตสแตรป หรือ Bagging กับตัวเรียนรู้ต้นไม้ โดยกำหนดชุดข้อมูลฝึกฝน X = x 1 , ..., x n ที่มีคำตอบ Y = y 1 , ...