การตรวจสอบความถูกต้องในการเรียนรู้ของเครื่อง: การตรวจสอบความถูกต้องข้าม 4 ประเภท

เผยแพร่แล้ว: 2020-11-30

สารบัญ

บทนำ

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

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

เราต้องการอย่างอื่นนอกเหนือจากเมตริกซึ่งสามารถช่วยให้เราตัดสินใจเกี่ยวกับโมเดลการเรียนรู้ของเครื่องขั้นสุดท้ายซึ่งเราสามารถปรับใช้กับการผลิตได้

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

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

ดังนั้น ปัญหาของเทคนิคการประเมินนี้หรือตัวชี้วัดการประเมินอื่นๆ ก็คือ มันไม่ได้บ่งชี้ว่าแบบจำลองจะทำงานได้ดีเพียงใดกับชุดข้อมูลที่มองไม่เห็น เทคนิคที่ช่วยให้ทราบสิ่งนี้เกี่ยวกับโมเดลของเราเรียกว่า Cross -Validation

ในบทความนี้ เราจะมาทำความรู้จักเพิ่มเติมเกี่ยวกับเทคนิค cross-validation แบบต่างๆ ข้อดีและข้อเสียของแต่ละเทคนิค เริ่มต้นด้วยคำจำกัดความของ Cross-Validation

ข้ามการตรวจสอบ

Cross-Validation เป็นเทคนิคการสุ่มตัวอย่างใหม่ที่ช่วยให้แบบจำลองของเรามั่นใจในประสิทธิภาพและความถูกต้องแม่นยำของข้อมูลที่มองไม่เห็น เป็นวิธีการประเมินโมเดล Machine Learning โดยการฝึกโมเดล Machine Learning อื่นๆ ในชุดย่อยของชุดข้อมูลอินพุตที่มีอยู่ และประเมินบนชุดย่อยของชุดข้อมูล

เรามีเทคนิค Cross-Validation ประเภทต่างๆ แต่มาดูฟังก์ชันพื้นฐานของ Cross-Validation กัน: ขั้นตอนแรกคือการแบ่งชุดข้อมูลที่ล้างออกเป็นพาร์ติชั่น K ที่มีขนาดเท่ากัน

  1. จากนั้น เราต้องถือว่า Fold-1 เป็นการทดสอบในขณะที่ K-1 อีกอันเป็นรถไฟพับและคำนวณคะแนนของการทดสอบ
  2. เราต้องทำซ้ำขั้นตอนที่ 2 สำหรับทุกพับที่ทำการทดสอบในขณะที่เหลือเป็นรถไฟ
  3. ขั้นตอนสุดท้ายคือการนำคะแนนเฉลี่ยของการพับทั้งหมด

อ่าน: โครงการการเรียนรู้ของเครื่องสำหรับผู้เริ่มต้น

ประเภทของการตรวจสอบไขว้

1. วิธีการถือครอง

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

ข้อดี

  1. วิธีนี้ไม่ขึ้นอยู่กับข้อมูลทั้งหมด
  2. วิธีนี้จะต้องเรียกใช้เพียงครั้งเดียว จึงมีค่าใช้จ่ายในการคำนวณที่ต่ำกว่า

ข้อเสีย

  1. ประสิทธิภาพขึ้นอยู่กับความแปรปรวนที่สูงขึ้นเนื่องจากขนาดของข้อมูลมีขนาดเล็กลง

2. K-Fold Cross-Validation

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

ใน K-Fold cross-validation ข้อมูลจะถูกแบ่งออกเป็น k subsets หรือเราสามารถถือเอาเป็น holdout method ซ้ำ k ครั้ง เพื่อที่ว่าในแต่ละครั้ง k subsets ตัวใดตัวหนึ่งจะถูกใช้เป็น validation set และอีกตัว k-1 ส่วนย่อยเป็นชุดฝึก ข้อผิดพลาดจะเฉลี่ยในการทดลองทั้งหมด k ครั้งเพื่อให้ได้ประสิทธิภาพทั้งหมดของแบบจำลองของเรา

เราจะเห็นได้ว่าจุดข้อมูลแต่ละจุดจะอยู่ในชุดตรวจสอบความถูกต้องเพียงครั้งเดียว และจะอยู่ในชุดการฝึกครั้ง k-1 วิธีนี้ช่วยลดความลำเอียงเนื่องจากเราใช้ข้อมูลส่วนใหญ่เพื่อการปรับให้เหมาะสมและลดความแปรปรวนเนื่องจากข้อมูลส่วนใหญ่ยังถูกใช้ในชุดการตรวจสอบความถูกต้อง

ข้อดี

  1. นี้จะช่วยเอาชนะปัญหาของพลังการคำนวณ
  2. โมเดลอาจไม่ได้รับผลกระทบมากนักหากมีค่าผิดปกติในข้อมูล
  3. มันช่วยให้เราเอาชนะปัญหาความแปรปรวนได้

ข้อเสีย

  1. ชุดข้อมูลที่ไม่สมดุลจะส่งผลต่อโมเดลของเรา

3. Stratified K-Fold Cross-Validation

เทคนิค K Fold Cross Validation จะไม่ทำงานตามที่คาดไว้สำหรับชุดข้อมูลที่ไม่สมดุล เมื่อเรามีชุดข้อมูลที่ไม่สมดุล เราจำเป็นต้องเปลี่ยนแปลงเล็กน้อยในเทคนิคการตรวจสอบความถูกต้องไขว้ของ K พับ เพื่อให้แต่ละพับมีชั้นเดียวกันโดยประมาณของตัวอย่างของแต่ละคลาสเอาต์พุตที่เสร็จสมบูรณ์ รูปแบบของการใช้ stratum ใน K Fold Cross Validation นี้เรียกว่า Stratified K Fold Cross Validation

ข้อดี

  1. สามารถปรับปรุงรุ่นต่างๆ ได้โดยใช้การปรับแต่งแบบไฮเปอร์พารามิเตอร์
  2. ช่วยเราเปรียบเทียบรุ่น
  3. ช่วยลดทั้งอคติและความแปรปรวน

4. L eave-P-Out Cross-Validation

ในแนวทางนี้ เราปล่อย p data points ออกจากข้อมูลการฝึกออกจากจุดข้อมูลทั้งหมด n จุด จากนั้นตัวอย่าง np จะถูกใช้เพื่อฝึกโมเดล และใช้จุด p เป็นชุดการตรวจสอบ มีการทำซ้ำสำหรับชุดค่าผสมทั้งหมด จากนั้นจะเฉลี่ยข้อผิดพลาด

ข้อดี

  1. มันมีศูนย์สุ่ม
  2. อคติจะลดลง

ข้อเสีย

  1. วิธีนี้ละเอียดถี่ถ้วนและเป็นไปไม่ได้ในการคำนวณ

อ่านเพิ่มเติม: อาชีพในการเรียนรู้ของเครื่อง

บทสรุป

ในบทความนี้ เราได้เรียนรู้ถึงความสำคัญของ Validation of a Machine Learning Model ใน Data Science Project Life Cycle, ได้รู้ว่าอะไรคือ validation และ cross-validation, สำรวจเทคนิค Cross-Validation ประเภทต่างๆ, ทำความรู้จักบางอย่าง ข้อดีและข้อเสียของเทคนิคเหล่านั้น

หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับแมชชีนเลิร์นนิง โปรดดูที่ IIIT-B & upGrad's PG Diploma in Machine Learning & AI ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีการฝึกอบรมที่เข้มงวดมากกว่า 450 ชั่วโมง กรณีศึกษาและการมอบหมายมากกว่า 30 รายการ IIIT- สถานะศิษย์เก่า B, 5+ โครงการหลักที่ใช้งานได้จริง & ความช่วยเหลือด้านงานกับบริษัทชั้นนำ

จำเป็นต้องมีการตรวจสอบข้ามในแมชชีนเลิร์นนิงอย่างไร

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

การตรวจสอบข้าม k-fold คืออะไร?

ในการเรียนรู้ของเครื่องและการทำเหมืองข้อมูล k-fold cross validation ซึ่งบางครั้งเรียกว่า Leave-one-out cross-validation เป็นรูปแบบหนึ่งของ cross-validation ซึ่งข้อมูลการฝึกอบรมแบ่งออกเป็น k ส่วนย่อยที่เท่ากันโดยประมาณ โดยแต่ละ k- 1 ชุดย่อยที่ใช้เป็นข้อมูลทดสอบ และชุดย่อยที่เหลือใช้เป็นข้อมูลการฝึก K มักจะเป็น 10 หรือ 5 การตรวจสอบข้าม K-fold มีประโยชน์อย่างยิ่งในการเลือกแบบจำลอง เนื่องจากจะลดความแปรปรวนของการประมาณค่าข้อผิดพลาดทั่วไป

ข้อดีของการตรวจสอบข้ามคืออะไร?

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