หยุดการรั่วไหลของข้อมูลตั้งแต่เริ่มต้น
กันข้อมูลจากชุดทดสอบออกจากการฝึก
หยุดการรั่วไหลของข้อมูลตั้งแต่เริ่มต้น เป็นบทเรียน Data Science Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Data Science Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Data Science Academy มีบทเรียนทั้งหมด 4 บทเรียน
ผู้โกงเงียบ ๆ
ข้อมูลรั่วไหล เกิดขึ้นเมื่อข้อมูลจากชุดทดสอบแอบเข้าไปอยู่ในการฝึก คะแนนจึงดูยอดเยี่ยม ก่อนจะพังลงเมื่อใช้งานจริง
เหตุใดจึงหลอกคุณได้
ข้อมูลรั่วไหลเปิดโอกาสให้โมเดลแอบเห็นคำตอบที่ไม่ควรเห็น คะแนนทดสอบจึงกลายเป็น ภาพฝัน ไม่ใช่การคาดการณ์ประสิทธิภาพในอนาคต
ข้อผิดพลาดแบบคลาสสิก
การปรับสเกลหรือเติมค่าบนชุดข้อมูลทั้งหมดก่อนแบ่งข้อมูลทำให้เกิดการรั่วไหล แถวข้อมูลจากชุดทดสอบได้กำหนดสถิติของ การเตรียมข้อมูลล่วงหน้า โดยที่คุณไม่รู้ตัว
ปรับให้เหมาะสมกับข้อมูลฝึกเท่านั้น
ต้องใช้ fit กับตัวแปลงข้อมูลโดยอาศัยข้อมูลฝึกเพียงอย่างเดียวเสมอ เรียนรู้ค่าเฉลี่ย การปรับสเกล หรือค่าที่ใช้เติมจากข้อมูลฝึก ห้ามเรียนรู้จากชุดทดสอบ
scaler.fit(X_train)จากนั้นแปลงข้อมูลทั้งสองชุด
เมื่อปรับให้เหมาะสมกับข้อมูลฝึกแล้ว คุณเพียงใช้ transform กับชุดทดสอบโดยใช้ตัวเลขที่เรียนรู้มา ข้อมูลทดสอบจะถูกปรับรูปแบบ แต่จะไม่ถูกนำมาใช้ในการเรียนรู้
X_train_s = scaler.transform(X_train)
X_test_s = scaler.transform(X_test)ระวังข้อมูลเป้าหมายรั่วไหล
ข้อมูลรั่วไหลอีกชนิดที่สังเกตได้ยากกว่าคือ ข้อมูลเป้าหมายรั่วไหล ซึ่งเกิดจากคุณลักษณะที่แอบเข้ารหัสคำตอบไว้ เช่น ใช้ตัวบ่งชี้การคืนเงินเพื่อทำนายการคืนเงิน
ข้อมูลจากอนาคตก็รั่วไหลได้เช่นกัน
สำหรับข้อมูลตามเวลา การใช้ค่าที่ถูกบันทึกหลังเวลาที่ทำนายจะทำให้ อนาคต รั่วไหลเข้ามา ใช้เฉพาะข้อมูลที่มีอยู่ ณ เวลาตัดสินใจเท่านั้น
ไปป์ไลน์ช่วยปกป้องคุณ
รวมการเตรียมข้อมูลล่วงหน้าและโมเดลไว้ใน ไปป์ไลน์ ไปป์ไลน์จะปรับการแปลงข้อมูลใหม่ในแต่ละส่วนฝึก จึงป้องกันข้อมูลรั่วไหลโดยอัตโนมัติ
from sklearn.pipeline import make_pipeline
pipe = make_pipeline(scaler, model)การตรวจสอบไขว้อย่างปลอดภัย
ส่งไปป์ไลน์ทั้งหมดให้การตรวจสอบไขว้ จากนั้นการปรับสเกลจะเรียนรู้ ภายใน แต่ละส่วนย่อย จึงไม่มีส่วนทดสอบใดเข้ามาเกี่ยวข้องกับการปรับให้เหมาะสม
cross_val_score(pipe, X, y, cv=5)ระวังคะแนนที่สมบูรณ์แบบผิดปกติ
คะแนนที่เกือบสมบูรณ์แบบเป็นสัญญาณเตือน ไม่ใช่ถ้วยรางวัล ปัญหาในโลกจริงมีสัญญาณรบกวน ดังนั้นควร ตรวจสอบ ก่อนฉลอง
กฎทอง
สิ่งใดก็ตามที่เรียนรู้จากข้อมูลต้องเรียนรู้จากข้อมูลฝึกเท่านั้น เก็บชุดข้อมูลทดสอบไว้ ปิดผนึก จนกว่าจะประเมินขั้นสุดท้ายเพียงครั้งเดียว 🔒
ตรวจสอบอย่างรวดเร็ว
คุณปรับสเกลข้อมูล แล้วจะหลีกเลี่ยงข้อมูลรั่วไหลได้อย่างไร
สรุปทบทวน
ข้อมูลรั่วไหลทำให้คะแนนสูงเกินจริงด้วยการนำคำตอบแอบใส่เข้ามา ปรับการแปลงข้อมูลให้เหมาะสมกับข้อมูลฝึกเท่านั้น ใช้ ไปป์ไลน์ และเก็บชุดข้อมูลทดสอบไว้ปิดผนึก 🔒
คำถามที่พบบ่อย
บทเรียน “หยุดการรั่วไหลของข้อมูลตั้งแต่เริ่มต้น” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “หยุดการรั่วไหลของข้อมูลตั้งแต่เริ่มต้น” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Data Science Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Data Science Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “หยุดการรั่วไหลของข้อมูลตั้งแต่เริ่มต้น”
กันข้อมูลจากชุดทดสอบออกจากการฝึก คุณปฏิบัติ Data Science Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Data Science Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Data Science Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “หยุดการรั่วไหลของข้อมูลตั้งแต่เริ่มต้น” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Data Science Academy นี้ได้ไหม
ได้ บทเรียน Data Science Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- เหตุใดจึงต้องกันชุดทดสอบไว้
- ใช้ train_test_split ให้ถูกต้อง
- การตรวจสอบไขว้แบบ K-Fold
- หยุดการรั่วไหลของข้อมูลตั้งแต่เริ่มต้น