Khi nào nên chọn SARSA so với Q Learning


18

SARSA và Q Learning đều là các thuật toán học tăng cường hoạt động theo cách tương tự. Sự khác biệt nổi bật nhất là SARSA nằm trong chính sách trong khi Q Learning không có chính sách. Các quy tắc cập nhật như sau:

Học Q:

Q(st,at)Q(st,at)+α[rt+1+γmaxaQ(st+1,a)Q(st,at)]

SARSA:

Q(st,at)Q(st,at)+α[rt+1+γQ(st+1,at+1)Q(st,at)]

trong đó st,atrt là trạng thái, hành động và phần thưởng tại thời điểm bước tγ là một yếu tố giảm giá.

Chúng hầu như trông giống nhau ngoại trừ trong SARSA, chúng tôi thực hiện hành động thực tế và trong Q Learning, chúng tôi thực hiện hành động với phần thưởng cao nhất.

Có bất kỳ thiết lập lý thuyết hoặc thực tế nào trong đó một cái nên thích cái này hơn cái kia không? Tôi có thể thấy rằng việc sử dụng tối đa trong Q Learning có thể tốn kém và thậm chí nhiều hơn trong các không gian hành động liên tục. Nhưng còn gì nữa không?


Trong các không gian hành động liên tục, các phương thức tìm kiếm chính sách trực tiếp như các phương thức gradient chính sách khác nhau thường được sử dụng kể từ khi bạn tìm ra cách duy trì và đánh giá một hàm giá trị rời rạc cho không gian hành động liên tục là không thực tế, đặc biệt là khi không gian hành động có nhiều chiều (vì lời nguyền của chiều ).
HelloGoodbye

Câu trả lời:


27

Chúng hầu như trông giống nhau ngoại trừ trong SARSA, chúng tôi thực hiện hành động thực tế và trong Q Learning, chúng tôi thực hiện hành động với phần thưởng cao nhất.

Trên thực tế, trong cả hai bạn "thực hiện" hành động được tạo đơn thực tế tiếp theo. Trong học tập Q, bạn cập nhật ước tính từ ước tính tối đa cho các hành động tiếp theo có thể, bất kể bạn đã thực hiện hành động nào. Trong khi ở SARSA, bạn cập nhật các ước tính dựa trên và thực hiện hành động tương tự.mộtt+1

Đây có lẽ là ý của bạn khi "lấy" trong câu hỏi, nhưng trong tài liệu, thực hiện một hành động có nghĩa là nó trở thành giá trị của ví dụ và ảnh hưởng đến , .mộttrt+1St+1

Có bất kỳ thiết lập lý thuyết hoặc thực tế nào trong đó một cái nên thích cái này hơn cái kia không?

Học tập Q có những ưu điểm và nhược điểm sau so với SARSA:

  • Q-learning trực tiếp học chính sách tối ưu, trong khi SARSA học chính sách gần như tối ưu trong khi khám phá. Nếu bạn muốn tìm hiểu một chính sách tối ưu khi sử dụng SARSA, thì bạn sẽ cần phải quyết định chiến lược phân rã trong lựa chọn hành động tham lam , có thể trở thành một siêu tham số khó điều chỉnh.εε

  • Học tập Q (và học tập ngoài chính sách nói chung) có phương sai trên mỗi mẫu cao hơn SARSA và do đó có thể gặp phải các vấn đề hội tụ. Điều này trở thành một vấn đề khi đào tạo mạng lưới thần kinh thông qua Q-learning.

  • SARSA sẽ tiếp cận hội tụ cho phép các hình phạt có thể có từ các động thái khám phá, trong khi Q-learning sẽ bỏ qua chúng. Điều đó làm cho SARSA trở nên thận trọng hơn - nếu có nguy cơ phần thưởng tiêu cực lớn gần với con đường tối ưu, Q-learning sẽ có xu hướng kích hoạt phần thưởng đó trong khi khám phá, trong khi SARSA sẽ có xu hướng tránh một con đường tối ưu nguy hiểm và chỉ từ từ học cách sử dụng nó khi các thông số thăm dò được giảm. Vấn đề đồ chơi cổ điển thể hiện hiệu ứng này được gọi là đi bộ trên vách đá .

Trong thực tế, điểm cuối cùng có thể tạo ra sự khác biệt lớn nếu sai lầm là tốn kém - ví dụ: bạn đang đào tạo một robot không phải trong mô phỏng, mà là trong thế giới thực. Bạn có thể thích một thuật toán học tập bảo thủ hơn, tránh rủi ro cao, nếu có thời gian thực và tiền bị đe dọa nếu robot bị hỏng.

Nếu mục tiêu của bạn là đào tạo một tác nhân tối ưu trong mô phỏng, hoặc trong một môi trường có chi phí thấp và lặp nhanh, thì Q-learning là một lựa chọn tốt, do điểm đầu tiên (học trực tiếp chính sách tối ưu). Nếu đại lý của bạn học trực tuyến và bạn quan tâm đến phần thưởng đạt được trong khi học , thì SARSA có thể là lựa chọn tốt hơn.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.