งานวิจัย · arXiv 1707.06347
อัลกอริทึม Proximal Policy Optimization
Proximal Policy Optimization Algorithms
สรุปสามบรรทัด
- 🎯 วิธี policy gradient แบบมาตรฐานใช้ข้อมูลตัวอย่างได้ไม่มีประสิทธิภาพและขาดเสถียรภาพ ขณะที่ Trust Region Policy Optimization (TRPO) มีความซับซ้อนในการคำนวณสูงและต้องพึ่งพาการหาค่าเหมาะที่สุดอันดับสอง (second-order optimization)
- 🔧 นำเสนอ clipped surrogate objective function รูปแบบใหม่ที่ช่วยลงโทษการอัปเดตนโยบายที่ทำให้สัดส่วนความน่าจะเป็นเบี่ยงเบนห่างจาก 1 มากเกินไป ส่งผลให้สามารถทำ stochastic gradient descent แบบ minibatch ได้หลาย epoch
- 📈 ทำผลงานได้เหนือกว่า TRPO, A2C และ ACER ในงานทดสอบ continuous control และเกม Atari 2600 โดยทำคะแนนเฉลี่ยต่อตอน (episodic reward) ได้มากกว่า 4000 ในชุดทดสอบ HalfCheetah-v1
บทคัดย่อ
เราขอนำเสนอกลุ่มวิธี policy gradient แบบใหม่สำหรับการเรียนรู้แบบเสริมกำลัง (reinforcement learning) ซึ่งทำงานสลับกันระหว่างการเก็บข้อมูลจากการมีปฏิสัมพันธ์กับสภาพแวดล้อม และการหาค่าเหมาะที่สุดของฟังก์ชันวัตถุประสงค์แบบ "surrogate" โดยใช้ stochastic gradient ascent ในขณะที่วิธี policy gradient มาตรฐานจะทำการอัปเดตเกรเดียนต์เพียงหนึ่งครั้งต่อตัวอย่างข้อมูลหนึ่งชุด เราได้นำเสนอ objective function รูปแบบใหม่ที่สามารถอัปเดตแบบ minibatch ได้หลาย epoch วิธีการใหม่นี้ซึ่งเราเรียกว่า proximal policy optimization (PPO) ยังคงข้อดีบางประการของ trust region policy optimization (TRPO) ไว้ ทว่านำไปใช้งานจริงได้ง่ายกว่ามาก มีความเป็นสากลมากกว่า และมี sample complexity ที่ดีกว่า (ในเชิงประจักษ์) การทดลองของเราได้ทดสอบ PPO บนชุดงานทดสอบมาตรฐานหลากหลายรูปแบบ ซึ่งรวมถึงการจำลองการเคลื่อนที่ของหุ่นยนต์และการเล่นเกม Atari และเราแสดงให้เห็นว่า PPO ทำผลงานได้เหนือกว่าวิธี online policy gradient อื่นๆ อีกทั้งยังมีความสมดุลอย่างยิ่งระหว่าง sample complexity, ความเรียบง่าย และเวลาการประมวลผลจริง (wall-time)
บทคัดย่อต้นฉบับ (ภาษาอังกฤษ)
We propose a new family of policy gradient methods for reinforcement learning, which alternate between sampling data through interaction with the environment, and optimizing a "surrogate" objective function using stochastic gradient ascent. Whereas standard policy gradient methods perform one gradient update per data sample, we propose a novel objective function that enables multiple epochs of minibatch updates. The new methods, which we call proximal policy optimization (PPO), have some of the benefits of trust region policy optimization (TRPO), but they are much simpler to implement, more general, and have better sample complexity (empirically). Our experiments test PPO on a collection of benchmark tasks, including simulated robotic locomotion and Atari game playing, and we show that PPO outperforms other online policy gradient methods, and overall strikes a favorable balance between sample complexity, simplicity, and wall-time.
คู่มือการอ่าน
ปัญหาและแรงจูงใจ
วิธี policy gradient แบบมาตรฐานจะทำการคำนวณ stochastic gradient descent เพียงก้าวเดียวต่อ trajectory ที่สุ่มมา ทำให้ประสิทธิภาพการใช้ข้อมูลตัวอย่าง (sample efficiency) ต่ำ แม้ว่า Trust Region Policy Optimization (TRPO) จะช่วยแก้ปัญหาความไม่เสถียรได้โดยการบังคับใช้ข้อจำกัดของ Kullback-Leibler (KL) divergence ระหว่างการแจกแจงนโยบายชุดเก่าและชุดใหม่ แต่วิธีนี้จำเป็นต้องคำนวณอนุพันธ์อันดับสอง (Fisher Information Matrix ผ่านอัลกอริทึม conjugate gradient) ส่งผลให้ TRPO มีค่าใช้จ่ายในการคำนวณสูง นำไปประยุกต์ใช้งานได้ยาก และยากต่อการนำไปผสานรวมกับสถาปัตยกรรมที่มีการแชร์พารามิเตอร์ร่วมกันระหว่างโครงข่าย policy และ value หรือโครงข่ายประสาทแบบเกิดซ้ำ (RNNs)
แนวคิดสำคัญ
PPO ยังคงรักษาข้อดีด้านเสถียรภาพของ TRPO ไว้ ในขณะที่อาศัยเพียงการหาค่าเหมาะที่สุดอันดับหนึ่ง (first-order optimization) เท่านั้น ซึ่งทำได้โดยการปรับเปลี่ยนฟังก์ชันวัตถุประสงค์ แทนที่จะบังคับใช้ข้อจำกัดที่เข้มงวดหรือต้องคำนวณอย่างหนักหน่วง:
- Probability Ratio: กำหนดค่าน้ำหนักความสำคัญ โดยที่
- Clipped Surrogate Objective: ป้องกันไม่ให้ มีค่าเบี่ยงเบนห่างจาก 1 มากเกินไป ด้วยการคลิป (clip) สัดส่วนให้อยู่ในช่วง และเลือกใช้ค่าต่ำสุดระหว่างวัตถุประสงค์ที่ถูกคลิปกับที่ไม่ได้คลิป ซึ่งทำหน้าที่เป็นขอบเขตแบบมองโลกในแง่ร้าย (pessimistic bound) เพื่อยับยั้งไม่ให้มีการอัปเดตนโยบายที่เปลี่ยนแปลงมากเกินควร
- Adaptive KL Penalty Alternative: ศึกษาแนวทางทางเลือกที่ปรับค่าสัมประสิทธิ์การลงโทษ KL () ตามระดับการเบี่ยงเบนของ KL divergence ที่วัดได้จริงเทียบกับค่าเป้าหมาย
ระเบียบวิธี (พร้อมสมการสำคัญ)
กำหนดให้ และ เป็นตัวประมาณการของ advantage function ณ ขั้นเวลา โดยวัตถุประสงค์หลักแบบ clipped surrogate objective คือ:
เมื่อทำการหาค่าเหมาะที่สุดให้กับโครงข่ายที่รวม policy และ value function เข้าด้วยกัน (แชร์พารามิเตอร์ร่วมกัน) ฟังก์ชันการสูญเสียรวมจะประกอบด้วย clipped surrogate, squared-error value function loss และ entropy bonus เพื่อส่งเสริมการสำรวจ (exploration):
ค่า Advantage คำนวณได้โดยใช้ Generalized Advantage Estimation (GAE):
โดยที่
ผลการทดลอง (พร้อมตัวเลขสำคัญ)
- Continuous Control Benchmarks: ประเมินบนสภาพแวดล้อมการเคลื่อนที่ของ MuJoCo (เช่น HalfCheetah, Hopper, Walker2d, Humanoid) โดย PPO ที่ใช้ clipped objective () มีประสิทธิภาพเหนือกว่าเวอร์ชัน adaptive KL penalty และเหนือกว่า TRPO ในเกือบทุกโดเมน สำหรับ HalfCheetah-v1 นั้น PPO สามารถทำคะแนนรางวัลต่อตอน (episodic reward) ได้มากกว่า 4000 ภายใน 1 ล้านก้าว ซึ่งสูงกว่า TRPO และ baseline อื่นๆ อย่างชัดเจน
- Hyperparameter Sensitivity: การทดลองทดสอบค่า แสดงให้เห็นว่า ให้ประสิทธิภาพที่ดีและสม่ำเสมอที่สุด
- Atari Games: PPO ทำคะแนนเฉลี่ยต่อตอนได้สูงกว่า A2C ถึง 30 จาก 49 เกม และมีประสิทธิภาพเหนือกว่า ACER ทั้งในแง่ของประสิทธิภาพการใช้ข้อมูลและคะแนนสุดท้ายในหลายเกมที่ท้าทาย
ข้อจำกัดและประเด็นปลายเปิด
- กลไกการคลิปเป็นเพียงขอบเขตล่างแบบศึกษาสำนึก (heuristic lower bound) ที่ไม่ได้มีการรับประกันทางคณิตศาสตร์อย่างเป็นทางการว่าการอัปเดตนโยบายจะอยู่ภายใน trust region อย่างเคร่งครัด
- ประสิทธิภาพยังคงมีความอ่อนไหวต่อไฮเปอร์พารามิเตอร์ของ generalized advantage estimation () รวมถึงกำหนดการของ learning rate
- แม้ว่าประสิทธิภาพการใช้ข้อมูลตัวอย่างจะดีขึ้นกว่าวิธี policy gradient มาตรฐาน แต่ก็ยังต่ำกว่าอัลกอริทึมที่เป็นแบบ off-policy อย่างเต็มรูปแบบ (เช่น Q-learning หรือ DDPG) ในงาน continuous control
คำศัพท์สำคัญ
- Proximal Policy Optimization (PPO)
- กลุ่มอัลกอริทึม policy gradient สำหรับการเรียนรู้แบบเสริมกำลังที่หาค่าเหมาะที่สุดของ clipped surrogate objective โดยใช้ stochastic gradient descent แบบ minibatch หลาย epoch
- Clipped Surrogate Objective
- ฟังก์ชันวัตถุประสงค์ที่จำกัดขอบเขตของสัดส่วนความน่าจะเป็นของนโยบายให้อยู่ภายในช่วง เพื่อป้องกันการอัปเดตที่ทำให้สูญเสียเสถียรภาพ
- Trust Region Policy Optimization (TRPO)
- อัลกอริทึมรุ่นก่อนหน้าที่จำกัดการอัปเดตนโยบายผ่านเงื่อนไขบังคับค่าเฉลี่ย KL-divergence แบบเคร่งครัด ซึ่งแก้ปัญหาโดยใช้วิธีอนุพันธ์อันดับสอง
- Probability Ratio ($r_t(\theta)$)
- สัดส่วนระหว่างความน่าจะเป็นของการกระทำภายใต้นโยบายใหม่ เทียบกับความน่าจะเป็นของการกระทำภายใต้นโยบายพฤติกรรม (นโยบายเดิม):
- Generalized Advantage Estimation (GAE)
- เทคนิคการประมาณค่า advantage ที่กำหนดพารามิเตอร์โดย และ เพื่อสร้างสมดุลระหว่างความแปรปรวน (variance) และความเอนเอียง (bias)
- Adaptive KL Penalty
- สูตรโครงสร้างทางเลือกของ PPO ที่ปรับขนาดตัวคูณลากรองจ์ (Lagrange multiplier) ของ KL divergence แบบไดนามิก หากค่า divergence จากการทดลองจริงเบี่ยงเบนไปจากเกณฑ์เป้าหมาย
- Surrogate Objective
- ฟังก์ชันประมาณการเฉพาะที่ของประสิทธิภาพนโยบายที่คาดหวัง ซึ่งตรงกับวัตถุประสงค์ที่แท้จริงจนถึงอนุพันธ์อันดับหนึ่งรอบๆ พารามิเตอร์ปัจจุบัน
คำถามที่พบบ่อย
เหตุใด PPO จึงต้องเลือกค่าต่ำสุดระหว่างวัตถุประสงค์ที่ถูกคลิปและไม่ได้คลิป?
การเลือกค่าต่ำสุดจะช่วยสร้างขอบเขตล่างแบบมองโลกในแง่ร้าย (pessimistic lower bound) บน surrogate objective เพื่อให้แน่ใจว่าอัลกอริทึมจะไม่สนใจการอัปเดตที่อาจให้ผลตอบแทนเชิงบวกสูงเกินจริงหากสัดส่วนความน่าจะเป็นเบี่ยงเบนออกไปจาก 1 มากจนเกินไป
ข้อได้เปรียบหลักในทางปฏิบัติของ PPO เมื่อเทียบกับ TRPO คืออะไร?
PPO ใช้วิธีการหาค่าเหมาะที่สุดอันดับหนึ่งตามมาตรฐาน (เช่น Adam) แทนที่จะใช้วิธี conjugate gradient อันดับสอง ทำให้ PPO นำไปเขียนโค้ดได้ง่ายกว่า คำนวณได้เร็วกว่าต่อรอบการทำงาน และเข้ากันได้กับสถาปัตยกรรมแบบแชร์พารามิเตอร์
ค่าของพารามิเตอร์การคลิป $\epsilon$ ใดที่ให้ผลลัพธ์ดีที่สุด?
ผู้วิจัยได้ทดสอบค่า ในงานทดสอบการเคลื่อนที่มาตรฐาน และพบว่า ให้ประสิทธิภาพที่ดีที่สุดอย่างสม่ำเสมอ
PPO สามารถนำไปใช้กับสถาปัตยกรรมที่มีการแชร์พารามิเตอร์ระหว่าง policy และ value ได้หรือไม่?
ได้ PPO สามารถรวม clipped surrogate objective, value function squared error loss และ entropy bonus เข้าด้วยกันเป็นค่าสเกลาร์ loss เดียว และหาค่าเหมาะที่สุดผ่านการแพร่ย้อนกลับ (backpropagation)
คำอธิบายในหน้านี้เขียนโดย AI จากงานวิจัยและอาจมีข้อผิดพลาด โปรดอ่านต้นฉบับเพื่อดูรายละเอียด