เหตุใดการเล่นซ้ำประสบการณ์ต้องใช้อัลกอริทึมนอกนโยบาย


12

ในบทความแนะนำ DQN " Playing Atari with Deep Reinforcement Learning " กล่าวถึง:

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

ฉันไม่เข้าใจความหมายของมัน จะเป็นอย่างไรถ้าเราใช้ SARSA และจดจำการกระทำa'ที่เราต้องทำในs'ความทรงจำของเราจากนั้นสุ่มตัวอย่างจากมันแล้วอัปเดต Q เหมือนที่เราทำใน DQN และวิธีการที่นักวิจารณ์ (A3C สำหรับเฉพาะ) สามารถใช้การเล่นซ้ำประสบการณ์ได้หรือไม่ ถ้าไม่ทำไม

คำตอบ:


2

วิธีการตามนโยบายเช่น SARSA คาดว่าการกระทำในทุกรัฐจะถูกเลือกตามนโยบายปัจจุบันของตัวแทนซึ่งมักจะใช้ประโยชน์จากผลตอบแทน

การทำเช่นนั้นนโยบายจะดีขึ้นเมื่อเราอัปเดตนโยบายตามรางวัลล่าสุด โดยเฉพาะอย่างยิ่งพวกเขาจะอัปเดตพารามิเตอร์ของ NN ที่ทำนายค่าของสถานะ / การกระทำบางอย่าง)

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

ค่า Q จะถูกประเมินตามผลตอบแทนในอนาคตที่คุณจะได้รับจากสถานะตามนโยบายตัวแทนปัจจุบัน

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


ขอบคุณ แต่ฉันยังคงไม่เข้าใจสิ่งนี้: ถ้าฉันใช้กฎการอัพเดต TD (0) จดจำการเปลี่ยนแปลง(s, a, r, s')และดึงประสบการณ์นี้ออกมาเพื่อเล่นซ้ำ; ตอนนี้สมมติว่านโยบายปัจจุบันของฉันบอกว่าคุณควรทำa'ต่อs'ไปจากนั้นฉันQ(s, a)จะทำเครื่องหมายว่าควรr + Q(s', a')ทำและลาดลงอย่างช้าๆ ฉันคิดว่าฉันกำลังมีประสบการณ์การเล่นซ้ำตามนโยบาย มีปัญหากับกระบวนการหรือไม่?
DarkZero

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

ดังนั้นฉันจะบอกว่าฉันทำมันนอกนโยบายที่นี่? ในทางทฤษฎีแล้วจะเกิดอะไรขึ้น?
DarkZero

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

1
จนถึงตอนนี้ฉันไม่สามารถเข้าใจว่าทำไมวิธีการตามนโยบายจึงดี วิธีการนอกนโยบายดูเหมือนว่าจะมีอิสระมากขึ้นและสามารถค้นพบนโยบายที่ดีที่สุดได้ด้วยตัวเอง คุณจะช่วยตอบคำตอบstats.stackexchange.com/questions/265354/ ด้วยหรือไม่? ขอบคุณมากสำหรับการอภิปรายทั้งหมด
DarkZero

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