การทำให้เป็นปกติในภาษาอังกฤษธรรมดาคืออะไร


74

แตกต่างจากบทความอื่น ๆ ฉันพบรายการวิกิพีเดียสำหรับเรื่องนี้อ่านไม่ได้สำหรับคนที่ไม่ใช่คณิตศาสตร์ (เช่นฉัน)

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

คุณสามารถอธิบายวิธีการทำให้เป็นมาตรฐานได้ง่ายหรือไม่?

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

รุ่น 1 - ราคาสูงขึ้นเมื่อ:

  • exp_moving_avg (ราคา, ช่วงเวลา = 50)> exp_moving_avg (ราคา, ช่วงเวลา = 200)

รุ่น 2 - ราคาสูงขึ้นเมื่อ:

  • ราคา [n] <ราคา [n-1] 10 ครั้งติดต่อกัน
  • exp_moving_avg (ราคา, ระยะเวลา = 200) เพิ่มขึ้น

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


7
ตัวอย่างคือการถดถอยสันซึ่งเป็น OLS ที่มีข้อ จำกัด ในผลรวมของสัมประสิทธิ์กำลังสอง สิ่งนี้จะทำให้มีอคติในแบบจำลอง แต่จะลดความแปรปรวนของสัมประสิทธิ์ซึ่งบางครั้งก็สำคัญ LASSO เป็นวิธีการอื่นที่เกี่ยวข้อง แต่วางข้อ จำกัด L1 กับขนาดของสัมประสิทธิ์ มันมีข้อได้เปรียบของการลดค่าสัมประสิทธิ์ สิ่งนี้มีประโยชน์สำหรับสถานการณ์ p >> n การทำให้เป็นปกติในทางใดทางหนึ่งหมายถึง "ลดขนาด" โมเดลเพื่อหลีกเลี่ยงการปรับตัวมากเกินไป (และเพื่อลดความแปรปรวนค่าสัมประสิทธิ์) ซึ่งมักจะปรับปรุงประสิทธิภาพการทำนายของโมเดล
HairyBeast

2
@H รี่Beastคุณควรแสดงความคิดเห็นที่ดีของคุณเป็นคำตอบ ถ้าเป็นไปได้ลองเพิ่มตัวอย่างเพื่อให้ OP สามารถเข้าใจว่ามันแปลปัญหาได้อย่างไร
chl

1
@ FairyBeast ดังนั้นฉันสามารถพูดได้ว่าการทำให้เป็นมาตรฐานเป็นเพียงวิธีที่จะนำแนวคิดของการแลกเปลี่ยนความเอนเอียงไปมา ?
อะโวคาโด

ผมพบว่าวิดีโอนี้เป็นประโยชน์มากโดยเฉพาะอย่างยิ่งในการแสดงผลในรูปแบบที่แตกต่างกันของ Lp กู: youtube.com/watch?v=sO4ZirJh9ds
Anm

การทำให้เป็นมาตรฐานคือการจัดการกับ overfit ในรูปแบบที่เรียนรู้ พยายามอธิบายเป็นภาษาอังกฤษธรรมดาและมองเห็นได้ ต่อไปนี้คือลิงก์ไปยังบทความmedium.com/@vamsi149/…
solver149

คำตอบ:


57

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

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

เพื่อทำให้ปกติคุณต้องการ 2 สิ่ง:

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

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

อีกทางเลือกหนึ่งในการใช้การทดสอบการตรวจสอบความถูกต้อง (cross-) คือการใช้ Bayesian Priors หรือวิธีการอื่น ๆ เพื่อลงโทษความซับซ้อนหรือความไม่ราบรื่น แต่สิ่งเหล่านี้ต้องการความซับซ้อนและความรู้ทางสถิติที่มากขึ้น


2
+1 จากฉัน ฉันชอบที่คำตอบนี้จะเริ่มต้นที่จุดเริ่มต้นและเพื่อง่ายต่อการเข้าใจ ...
แอนดรู

2
การทำให้เป็นกฎจริงๆเคยใช้เพื่อลดการ underfitting หรือไม่? จากประสบการณ์ของฉันมีการใช้การทำให้เป็นมาตรฐานในแบบจำลองที่ซับซ้อน / ละเอียดอ่อนเพื่อลดความซับซ้อน / ความไว แต่ไม่เคยใช้แบบจำลองแบบง่าย / ไม่รู้สึก
Richard Hardy

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

26

สมมติว่าคุณทำการเรียนรู้ผ่านการลดความเสี่ยงเชิงประจักษ์

อย่างแม่นยำมากขึ้น:

  • คุณมีฟังก์ชั่นการสูญเสียที่ไม่เป็นลบซึ่งแสดงว่าการทำนายของคุณแย่แค่ไหนL(actual value, predicted value)
  • คุณต้องการให้พอดีกับแบบจำลองของคุณในแบบที่การคาดการณ์ของมันลดค่าเฉลี่ยของฟังก์ชันการสูญเสียคำนวณเฉพาะข้อมูลการฝึกอบรม (เฉพาะข้อมูลที่คุณมี)

จากนั้นจุดมุ่งหมายของกระบวนการเรียนรู้คือการหา (วิธีนี้เรียกว่าความเสี่ยงจากการทดลอง ลด)Model=argminL(actual,predicted(Model))

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

เพื่อหลีกเลี่ยงการ overfitting คำถูกนำเข้าสู่ฟังก์ชั่นเป้าหมาย: Model=argminL(actual,predicted(Model))+λR(Model)

โดยปกติแล้วคำนี้เรียกเก็บค่าปรับพิเศษสำหรับรุ่นที่ซับซ้อน ตัวอย่างเช่นในโมเดลที่มีสัมประสิทธิ์ขนาดใหญ่ (การทำให้เป็นมาตรฐาน L2, = ผลรวมของกำลังสองของสัมประสิทธิ์) หรือมากถ้าสัมประสิทธิ์ไม่เป็นศูนย์ (การทำให้เป็นมาตรฐาน L1, การทำให้เป็นมาตรฐาน = ผลรวมของสัมประสิทธิ์สัมบูรณ์) หากเราฝึกอบรมต้นไม้ตัดสินใจอาจเป็นความลึกได้R R RR(Model)RRR

อีกมุมมองหนึ่งคือแนะนำความรู้ก่อนหน้านี้ของเราเกี่ยวกับรูปแบบของโมเดลที่ดีที่สุด ("มันไม่มีค่าสัมประสิทธิ์มากเกินไป", "มันเกือบจะเป็นมุมฉากกับ ")ˉ aRa¯


12

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

อย่างไรก็ตามคุณกำลังถามคำถามที่ถูกต้อง ตัวอย่างเช่นใน Support Vector Machines "ความเรียบง่าย" นี้มาจากการทำลายความสัมพันธ์ในทิศทางของ "ระยะห่างสูงสุด" ระยะขอบนี้เป็นสิ่งที่สามารถกำหนดได้อย่างชัดเจนในแง่ของปัญหา มีรากศัพท์เรขาคณิตที่ดีมากในการเป็นบทความในวิกิพีเดีย SVM ปรากฎว่าระยะเวลาการทำให้เป็นปกตินั้นอย่างน้อยก็คือ "ซอสลับ" ของ SVM

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


1

เทคนิคการทำให้เป็นมาตรฐานเป็นเทคนิคที่นำมาใช้กับโมเดลการเรียนรู้ของเครื่องซึ่งทำให้ขอบเขตการตัดสินใจ / รูปแบบการติดตั้งราบรื่นขึ้น เทคนิคเหล่านั้นช่วยป้องกันการ overfitting

ตัวอย่าง: L1, L2, Dropout, น้ำหนักลดลงในโครงข่ายประสาทเทียม พารามิเตอร์ใน SVMsC


0

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

การหลีกเลี่ยงที่มากเกินไปโดยการ จำกัด ค่าสัมบูรณ์ของพารามิเตอร์ในแบบจำลองนี้สามารถทำได้โดยการเพิ่มคำลงในฟังก์ชันต้นทุนที่กำหนดบทลงโทษตามขนาดของพารามิเตอร์แบบจำลอง ถ้าขนาดถูกวัดในบรรทัดฐาน L1 สิ่งนี้เรียกว่า "การทำให้เป็นมาตรฐาน L1" (และมักจะส่งผลให้แบบจำลองกระจัดกระจาย) หากมีการวัดในเกณฑ์ปกติ L2 นี้จะเรียกว่า "การทำให้เป็นมาตรฐาน L2" และอื่น ๆ

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