เริ่มใช้ Neural Network กับ RL
เมื่อตาราง Q ใหญ่เกินไป ใช้ neural network แทน
ตาราง Q ใช้ไม่ได้เมื่อ state มีมากเกินไป เช่น CartPole มี 4 ตัวแปรที่เป็นจำนวนจริง จึงมี state ไม่สิ้นสุด
ทางแก้คือใช้ neural network ประมาณ Q(s,a) ซึ่ง generalize ไปยัง state ที่ไม่เคยเห็นได้ NFQ คือความพยายามครั้งแรก: เก็บข้อมูล คำนวณ target, fit network หลายรอบแล้ววนซ้ำ
High-dimensionalstate หนึ่งประกอบด้วยตัวแปรมาก เช่น ภาพ 84×84 pixel
Continuousมีอย่างน้อยหนึ่งตัวแปรที่เป็นค่าใดก็ได้ เช่น มุม 0.0137 rad
องค์ประกอบที่ต้องเลือก
| ส่วน | ทางเลือกที่นิยม |
|---|---|
| จะประมาณค่าอะไร | Q(s,a) สำหรับ action แบบแยก |
| โครงสร้าง network | ป้อน state → ได้ Q ของทุก action พร้อมกัน |
| Target | TD target แบบ Q-learning: r + γ·max Q(s') |
| การสำรวจ | ε-greedy |
| Loss / Optimizer | MSE, Huber · RMSprop, Adam |
2 ปัญหาใหญ่
- ข้อมูลไม่เป็น IID: ประสบการณ์ที่ติดกันมีความสัมพันธ์กัน แต่ optimizer คาดหวังข้อมูล IID
- Target เคลื่อนที่: target คำนวณจาก network ตัวเดียวกันที่กำลังถูกอัปเดต
สิ่งที่ควรจำ
- Deep RL = ทุกอย่างที่เรียนมา + supervised learning สำหรับประมาณค่า
- บทที่ 9 แก้ 2 ปัญหานี้ด้วย replay buffer และ target network
- #DeepRL
- #ReinforcementLearning
- #PythonສຳລັບຄົນLaos
- #AI
- #ບອກຕໍ່ຄວາມຮູ້