Caret - การตรวจสอบความถูกต้องแบบข้ามของ K-fold ซ้ำแล้วซ้ำอีกกับการตรวจสอบความถูกต้องแบบข้ามของ K-fold ซ้ำแล้วซ้ำอีกครั้ง


16

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

แนวปฏิบัติที่ดีการปรับพารามิเตอร์อาจทำได้โดยใช้การตรวจสอบความถูกต้องแบบ K-fold แบบซ้อนซึ่งทำหน้าที่ดังต่อไปนี้:

  1. แบ่งการฝึกอบรมที่กำหนดไว้ในชุดย่อย 'K'
  2. ในการทำซ้ำแต่ละครั้งให้นำชุดย่อย 'K ลบ 1' สำหรับการฝึกอบรมแบบจำลองและเก็บชุดย่อย 1 ชุด (ชุด holdout) สำหรับการทดสอบแบบจำลอง
  3. เพิ่มเติมพาร์ติชันการฝึกอบรม 'K ลบ 1' ตั้งค่าเป็นชุดย่อย 'K' และใช้ชุดย่อย 'K ลบ 1' ใหม่และ 'ชุดการตรวจสอบความถูกต้อง' ซ้ำสำหรับการปรับพารามิเตอร์ (การค้นหากริด) พารามิเตอร์ที่ดีที่สุดที่ระบุไว้ในขั้นตอนนี้ใช้สำหรับทดสอบชุดที่มีการพักในขั้นตอนที่ 2

ในทางกลับกันฉันคิดว่าการตรวจสอบความถูกต้องข้าม K-fold ซ้ำอาจทำซ้ำขั้นตอนที่ 1 และ 2 ซ้ำหลายครั้งเราเลือกที่จะค้นหาความแปรปรวนของแบบจำลอง

อย่างไรก็ตามการใช้อัลกอริทึมในคู่มือคาเร็ตดูเหมือนว่าวิธีการ 'repeatcv' อาจทำการตรวจสอบความถูกต้องแบบซ้อนข้าม K-fold เช่นกันนอกเหนือจากการตรวจสอบความถูกต้องแบบไขว้ซ้ำ

อัลกอริทึม caret รถไฟ https://topepo.github.io/caret/training.html

คำถามของฉันคือ:

  1. ความเข้าใจของฉันเกี่ยวกับวิธี caret 'repeatcv' ถูกต้องหรือไม่?
  2. ถ้าไม่ใช่คุณช่วยยกตัวอย่างการใช้การตรวจสอบความถูกต้องแบบซ้อนข้าม K-fold ด้วยวิธี 'repeatcv' โดยใช้แพ็คเกจคาเร็ตได้หรือไม่?

แก้ไข:

มีการอธิบายและเปรียบเทียบกลยุทธ์การตรวจสอบข้ามที่แตกต่างกันในบทความวิธีการนี้

Krstajic D, Buturovic LJ, Leahy DE และโทมัส S : ข้อผิดพลาดที่รอการตรวจสอบเมื่อมีการเลือกและการประเมินการถดถอยและการจัดรูปแบบ วารสาร Cheminformatics 2014 6 (1): 10 ดอย: 10.1186 / 1758-2946-6-10

ฉันสนใจใน“ อัลกอริทึม 2: การตรวจสอบความถูกต้องแบบข้ามกลุ่มที่ซ้ำซ้อน”และ“ อัลกอริทึม 3: การตรวจสอบความถูกต้องข้ามการตรวจสอบกริดแบบค้นหาซ้ำสำหรับการเลือกตัวแปรและการปรับพารามิเตอร์”โดยใช้

คำตอบ:


2

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

การคัดเลือกคุณสมบัติ / พารามิเตอร์

WRaพีพีอีRผมล.เสื้ออีRที่ใช้วิธีการอื่นที่อยู่ห่างไกลจากตัวจําแนกประเภท / รุ่นเพื่อเป็นการลดอคติการเลือกคุณสมบัติ (พารามิเตอร์) ค้นหาการห่อหุ้ม vs การกรองและการตั้งค่าการเลือกระหว่างการเลือกคุณสมบัติ (GJ McLachlan)

D1D2n=50จำนวนการทดสอบที่สำคัญลดลง จนกว่าคุณจะสามารถแก้ปัญหานี้กับข้อมูลของคุณโดยการกำหนดจำนวนเท่าที่เหมาะสมที่จะใช้ระหว่างการเลือกพารามิเตอร์ผลลัพธ์ของคุณอาจถูกสงสัย ดังนั้นคุณจะต้องสร้างวิธี bootstrap-bias เพื่อประเมินความแม่นยำในการทำนายวัตถุบนวัตถุที่ค้างไว้เพื่อทำหน้าที่ของขนาดตัวอย่างที่แตกต่างกันที่ใช้ในการฝึกอบรมแต่ละครั้งเช่นπ=0.1n,0.2n,0,3n,0.4n,0.5n(นั่นคือการเพิ่มขนาดตัวอย่างที่ใช้ระหว่างการเรียนรู้) รวมกับจำนวน CV CV ที่ใช้เช่น 2, 5, 10 เป็นต้น

การเพิ่มประสิทธิภาพ / ลด

ดูเหมือนว่าคุณกำลังแก้ปัญหาการปรับให้เหมาะสมที่สุดหรือย่อเล็กสุดเพื่อการประมาณฟังก์ชั่นเช่น Y=(x1,x2,...,xJ)โดยใช้การถดถอยหรือแบบจำลองการทำนายด้วยพารามิเตอร์ Yมีการปรับสเกลอย่างต่อเนื่อง ให้สิ่งนี้และให้ความจำเป็นในการลดอคติในการทำนายของคุณ (อคติการเลือกความแปรปรวนอคติการรั่วไหลของข้อมูลจากการทดสอบวัตถุไปยังวัตถุการฝึกอบรม ฯลฯ ) คุณอาจมองการใช้ CV ในระหว่างการใช้ การจับกลุ่มอนุภาค (PSO), การเพิ่มประสิทธิภาพฝูงมด (PSO), PSO (ดู Kennedy & Eberhart, 1995) เพิ่มพารามิเตอร์สำหรับการแลกเปลี่ยนข้อมูลทางสังคมและวัฒนธรรมระหว่างอนุภาคในขณะที่พวกเขาบินผ่านพื้นที่พารามิเตอร์ในระหว่างการเรียนรู้ เมื่อคุณคุ้นเคยกับวิธีการจับกลุ่มคุณจะเห็นว่าคุณสามารถเอาชนะอคติจำนวนมากในการกำหนดพารามิเตอร์ สุดท้ายฉันไม่รู้ว่ามีป่าสุ่ม (RF, ดูวิธี Breiman, Journ. ของการเรียนรู้ของเครื่องจักร) สำหรับการประมาณฟังก์ชั่น แต่ถ้ามี

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