ชุดทดสอบและชุดการตรวจสอบความถูกต้องไขว้มีวัตถุประสงค์ที่แตกต่างกัน หากคุณทิ้งอันใดอันหนึ่งคุณจะเสียประโยชน์:
คุณไม่สามารถใช้ชุดการตรวจสอบความถูกต้องไขว้กันเพื่อวัดประสิทธิภาพของแบบจำลองของคุณได้อย่างถูกต้องเนื่องจากคุณจะปรับผลลัพธ์ของคุณอย่างรอบคอบเพื่อให้ได้ตัวชี้วัดที่ดีที่สุดเท่าที่จะเป็นไปได้ ผลการตรวจสอบข้ามจึงมีแนวโน้มที่จะมองในแง่ดีเกินไป
ด้วยเหตุผลเดียวกันคุณไม่สามารถวางชุดการตรวจสอบความถูกต้องไขว้และใช้ชุดทดสอบเพื่อเลือกพารามิเตอร์ไฮเปอร์ได้เพราะคุณรับประกันได้ว่าจะประเมินค่าสูงเกินไปว่าแบบจำลองของคุณดีแค่ไหน ในโลกอุดมคติคุณใช้ชุดทดสอบเพียงครั้งเดียวหรือใช้ชุดทดสอบแบบ "เป็นกลาง" เพื่อเปรียบเทียบการทดลองที่แตกต่างกัน
หากคุณข้ามการตรวจสอบหารูปแบบที่ดีที่สุดแล้วเพิ่มในข้อมูลการทดสอบในการฝึกอบรมเป็นไปได้ (และในบางสถานการณ์อาจเป็นไปได้ค่อนข้างมาก) แบบจำลองของคุณจะได้รับการปรับปรุง อย่างไรก็ตามคุณไม่มีทางที่จะแน่ใจได้ว่าสิ่งนั้นได้เกิดขึ้นจริงและแม้ว่ามันจะเป็นเช่นนั้นคุณก็ไม่มีการประเมินที่เป็นกลางเกี่ยวกับประสิทธิภาพของการทำงานใหม่
จากการเป็นพยานการแข่งขัน Kaggle หลายครั้งประสบการณ์ของฉันก็คือการปรับไปสู่การทดสอบที่กำหนดโดยการใช้งานเกินจริงเป็นเรื่องจริงและส่งผลกระทบต่อการแข่งขันเหล่านั้นอย่างมาก มักจะมีกลุ่มของคู่แข่งที่ปีนบอร์ดผู้นำของสาธารณะและเลือกแบบจำลองที่ดีที่สุดในการทดสอบ (กระดานผู้นำสาธารณะนั้นเป็นชุดทดสอบที่มีประสิทธิภาพ) ในขณะที่ยังไม่ได้ผ่านการตรวจสอบที่สมบูรณ์ . . คู่แข่งเหล่านี้หล่นลงกระดานผู้นำเมื่อมีการแนะนำชุดทดสอบใหม่ในตอนท้าย
วิธีการหนึ่งที่สมเหตุสมผลคือการใช้ข้อมูลซ้ำอีกครั้ง (รถไฟ + cv) เพื่อฝึกอบรมใหม่โดยใช้ไฮเปอร์ params ที่คุณพบก่อนการทดสอบ ด้วยวิธีนี้คุณจะได้รับการฝึกอบรมกับข้อมูลมากขึ้นและคุณยังคงได้รับการวัดประสิทธิภาพที่เป็นอิสระในตอนท้าย
หากคุณต้องการที่จะได้รับเพิ่มเติมจากการตรวจสอบข้ามวิธีปกติคือK-พับการตรวจสอบข้าม กลอุบายทั่วไปในการแข่งขัน Kaggle คือการใช้การตรวจสอบความถูกต้องของ k-fold และแทนที่จะรวมข้อมูลเข้าไปในชุดฝึกอบรมที่มีขนาดใหญ่กว่า (รถไฟ + cv) เพื่อรวบรวมหรือรวบรวมผลลัพธ์ cv ให้เป็นเมตาดาต้าโมเดล
สุดท้ายให้ตรวจสอบว่าการแยกของคุณสำหรับการตรวจสอบความถูกต้องและการทดสอบนั้นแข็งแกร่งเมื่อเทียบกับความสัมพันธ์ที่เป็นไปได้ภายในชุดข้อมูลของคุณ