การออกกลางคันเป็นหลักทำให้เกิดความแปรปรวนมากขึ้นอีกเล็กน้อย ในการตั้งค่าการเรียนรู้ภายใต้การดูแลนี่มักจะช่วยลดการ overfitting (แม้ว่าฉันเชื่อว่ามีการออกกลางคันก็เริ่มน้อยลงแล้ว .. แฟชั่นในไม่กี่ปีที่ผ่านมามากกว่าในช่วงไม่กี่ปีก่อนหน้านั้นฉันไม่แน่ใจ 100% สาขาที่เชี่ยวชาญ)
ในการเสริมแรงการเรียนรู้ความแปรปรวนเพิ่มเติมไม่ใช่สิ่งที่เรากำลังมองหา มีความแปรปรวนจำนวนมากในสัญญาณการเรียนรู้ที่เราได้รับและความแปรปรวนนี้มีแนวโน้มที่จะเป็นประเด็นสำคัญสำหรับการเรียนรู้ที่มีเสถียรภาพและ / หรือความเร็วในการเรียนรู้ ตัวอย่างเช่น:
- การสุ่มเลือกการกระทำนำไปสู่ความแปรปรวนของผลตอบแทนที่เราสังเกตได้
- อาจมีการสุ่มตัวอย่างให้กับสภาพแวดล้อมเองซึ่งนำไปสู่ความแปรปรวนเพิ่มเติมในการสังเกตของเรา (สภาพแวดล้อมบางอย่างไม่เป็นระเบียบ)
- ซึ่งแตกต่างจากการตั้งค่าการเรียนรู้ภายใต้การดูแลในการเรียนรู้การเสริมแรงเรามักจะใช้การคาดการณ์ของเราเองเป็นส่วนหนึ่งของฟังก์ชั่นการสูญเสีย / สัญญาณการฝึกอบรมของเรา ตัวอย่างเช่นในการเรียนรู้ที่แตกต่างชั่วคราว (เช่น Q-learning / DQN) เป้าหมายที่เราอัปเดตไปสู่หน้าตาเป็นอย่างไรr +สูงสุดa'คำถาม(s',a'). ในระยะนั้นเท่านั้นRเป็นการสังเกตพื้นจริง (เช่นที่เราจะใช้ในการเรียนรู้แบบมีผู้สอน) และคำอื่น ๆ คือการทำนายของเราเอง ในระหว่างกระบวนการเรียนรู้ส่วนหลัง (การทำนายของเราเอง) กำลังเปลี่ยนแปลงตลอดเวลา นี่เป็นปัญหา " เป้าหมายที่เคลื่อนไหว " ซึ่งสามารถดูได้ว่าเป็นความแปรปรวนเพิ่มเติมในสัญญาณการเรียนรู้ของเรา
ส่วนสำคัญของอัลกอริธึม Deep RL (โดยที่กระบวนการฝึกอบรมของเราปรากฏออกมาเพื่อทำให้เกิดความมั่นคงและพังทลาย) ได้รับการปรับแต่งให้เหมาะสมเพื่อลดความแปรปรวนดังกล่าว ตัวอย่างเช่น Target Networks ใน DQN ถูกนำมาใช้โดยเฉพาะเพื่อลดปัญหาการเคลื่อนย้ายเป้าหมาย จากมุมมองนี้ไม่น่าแปลกใจที่ถ้าเราเพิ่มความแปรปรวนที่ประดิษฐ์ขึ้นด้วยวิธีการอื่นอีกครั้ง (เช่นการออกกลางคัน) การทำเช่นนี้จะส่งผลกระทบต่อประสิทธิภาพการเรียนรู้ / ทำให้เกิดความมั่นคง
มีกลไกอื่น ๆ ที่จะลองและจัดการกับการสวมใส่เกินได้ไหม? หรือในตัวอย่าง RL หลายเรื่องไม่สำคัญ เช่นอาจมีเพียงวิธีเดียวที่แท้จริงในการทำคะแนนสูงสุดในเกม 'breakout' ดังนั้นคุณอาจจะเรียนรู้อย่างแน่นอนและไม่จำเป็นต้องพูดคุยกัน?
ในการวิจัยการเรียนรู้การเสริมแรงในปัจจุบัน (ลึก) ปัจจุบันการมีน้ำหนักเกินไม่ได้ถูกมองว่าเป็นปัญหา การวิจัย RL ส่วนใหญ่ประกอบด้วยการฝึกอบรมในสภาพแวดล้อมเดียว (ตัวอย่างเช่น Cartpole หรือ Breakout หรือระดับหนึ่งโดยเฉพาะใน Pacman หรือการนำทางในเขาวงกตที่เฉพาะเจาะจง ฯลฯ ) และทำการประเมินประสิทธิภาพตลอดเวลาในระหว่างกระบวนการเรียนรู้หรือการประเมิน ประสิทธิภาพการทำงานหลังจากเช่นกระบวนการเรียนรู้ในสภาพแวดล้อมเดียวกัน
ถ้าเราจะเปรียบเทียบว่าการประเมินวิธีการที่จะสิ่งที่เกิดขึ้นในการเรียนรู้ภายใต้การดูแล ... เรามีพื้นการประเมินผลการปฏิบัติงานในชุดฝึกอบรม * ในการเรียนรู้แบบมีผู้สอนสิ่งนี้จะไม่เป็นที่ยอมรับอย่างแน่นอน แต่ใน RL นั้นถือว่าเป็นสิ่งที่ยอมรับได้และมีกฎมากกว่าข้อยกเว้น บางคนบอกว่านี่เป็นเพียงปัญหาในการวิจัย RL ปัจจุบันสิ่งที่ต้องเปลี่ยน อาจเป็นที่ถกเถียงกันอยู่ว่าไม่จำเป็นต้องเป็นปัญหา หากเราสามารถฝึกอบรมตัวแทนได้อย่างแม่นยำในสภาพแวดล้อมเดียวกันกับที่เราต้องการนำไปใช้ในภายหลัง ... ดีแล้วปัญหาที่เกิดขึ้นกับตัวแทนเกินสภาพแวดล้อมนั้นคืออะไร
ดังนั้นเมื่อเรากำลังใช้วิธีการประเมินผลที่อธิบายข้างต้นแน่นอนเราจะ overfitting กับสภาพแวดล้อมหนึ่งที่เฉพาะเจาะจง แต่overfitting เป็นสิ่งที่ดีมากกว่าตามที่ดีที่จะเกณฑ์การประเมินของเรา เป็นที่ชัดเจนว่าวิธีการนี้ไม่ได้นำไปสู่ตัวแทนที่สามารถพูดคุยได้ดี หากคุณฝึกตัวแทนเพื่อนำทางในเขาวงกตหนึ่งโดยเฉพาะมันอาจจะไม่สามารถนำทางเขาวงกตที่แตกต่างกันหลังจากการฝึกอบรม
* หมายเหตุ:ความจริงแล้วในความเห็นของฉันนั้นมีความเหมาะสมยิ่งกว่าที่เราเป็นจริงเล็กน้อย "ประเมินผลชุดฝึกอบรม" ใน RL ดูตัวอย่างเช่นทวีตที่ดีของทวีตนี้: https://twitter.com/nanjiang_cs/status/1049682399980908544
ฉันได้สร้างสภาพแวดล้อมที่จำลองราคาสกุลเงินและตัวแทนง่าย ๆ โดยใช้ DQN ที่พยายามเรียนรู้เวลาที่จะซื้อและขาย ฝึกมันมากกว่าหนึ่งล้าน timesteps นำมาจากชุดของข้อมูลที่เฉพาะเจาะจงซึ่งประกอบด้วยข้อมูลราคา 5 นาทีหนึ่งเดือนที่ดูเหมือนว่าจะมีค่าเกินจำนวนมาก ถ้าฉันประเมินเอเจนต์และโมเดลเทียบกับมูลค่าข้อมูลของเดือนอื่น ๆ ดังนั้นฟังดูเหมือนการโอเวอร์คลาสสิกแบบดั้งเดิม
โปรดทราบว่าวิธีการประเมินของคุณอธิบายไว้ที่นี่แน่นอนไม่เหมาะกับวิธีการประเมิน "ทั่วไป" อีกต่อไป คุณมีปัญหาเกี่ยวกับแนวความคิดดริฟท์ที่มีความไม่มั่นคงในสภาพแวดล้อม ซึ่งหมายความว่าการ overfitting อาจเป็นปัญหาสำหรับคุณ
ถึงกระนั้นฉันไม่แน่ใจว่าการออกกลางคันจะช่วยได้หรือไม่ ก่อนอื่นคุณต้องแน่ใจว่ามีวิธีการติดตามเวลา / เดือนในข้อมูลที่คุณป้อนอย่างน้อยที่สุดคุณจะมีโอกาสเรียนรู้นโยบายที่ปรับตัวเองเมื่อเวลาผ่านไป หากคุณมีขอบเขตที่ชัดเจนและชัดเจนระหว่าง "ขั้นตอนการฝึกอบรม" และ "ขั้นตอนการประเมิน" และคุณรู้ว่าแนวความคิดเกิดขึ้นในขอบเขตนั้น (คุณรู้ว่าสภาพแวดล้อมของคุณทำงานแตกต่างกันในขั้นตอนการฝึกอบรมจากขั้นตอนการประเมิน) ... จริงๆแล้วไม่มีความหวังมากในการเรียนรู้นโยบายจากประสบการณ์ในช่วงการฝึกอบรมที่ยังคงทำงานได้ดีในขั้นตอนการประเมิน ฉันสงสัยว่าคุณจะต้องกำจัดขอบเขตที่ชัดเจนและมั่นคงนั้น คุณ' ฉันต้องการให้การเรียนรู้ตลอดช่วงการประเมินเช่นกัน สิ่งนี้ทำให้อัลกอริทึมการเรียนรู้ของคุณรวบรวมประสบการณ์จริงในสภาพแวดล้อมที่เปลี่ยนแปลงและปรับให้เข้ากับมัน