Tại sao Q-learning đánh giá quá cao giá trị hành động?


8

Tôi gặp khó khăn trong việc tìm bất kỳ lời giải thích nào về lý do tại sao Q-learning tiêu chuẩn có xu hướng đánh giá quá cao các giá trị q (được giải quyết bằng cách sử dụng Q-learning kép). Các nguồn duy nhất tôi tìm thấy không thực sự giải thích chính xác lý do tại sao sự đánh giá quá cao này xảy ra.

Ví dụ, bài viết trên Wikipedia về Q-learning nói:

Bởi vì giá trị hành động gần đúng tối đa được sử dụng trong bản cập nhật Q-learning, trong môi trường ồn ào, Q-learning đôi khi có thể đánh giá quá cao các giá trị hành động, làm chậm quá trình học.

Điều đó có nghĩa là gì? Tôi hiểu Q-learning, nhưng không phải ở trên. Tại sao việc sử dụng giá trị q tối đa gây ra sự đánh giá quá cao?

Cảm ơn!

Câu trả lời:


4

Q(s,a)=r+γmaxa[Q(s,a)]

Vì các giá trị Q rất ồn, khi bạn thực hiện tối đa trên tất cả các hành động, có lẽ bạn sẽ nhận được một giá trị được đánh giá quá cao. Hãy nghĩ như thế này, giá trị mong đợi của một con xúc xắc là 3,5, nhưng nếu bạn ném xúc xắc 100 lần và lấy tối đa trên tất cả các lần ném, bạn rất có thể lấy một giá trị lớn hơn 3,5 (nghĩ rằng mọi giá trị hành động có thể có ở trạng thái s trong một cuộn súc sắc).

Nếu tất cả các giá trị được đánh giá quá cao như nhau thì điều này sẽ không có vấn đề gì, vì điều quan trọng là sự khác biệt giữa các giá trị Q. Nhưng nếu sự đánh giá quá cao không đồng nhất, điều này có thể làm chậm việc học (bởi vì bạn sẽ dành thời gian để khám phá những trạng thái mà bạn nghĩ là tốt nhưng không phải).

Giải pháp được đề xuất (Double Q-learning) là sử dụng hai hàm xấp xỉ hàm khác nhau được đào tạo trên các mẫu khác nhau, một để chọn hành động tốt nhất và khác để tính giá trị của hành động này, vì hai hàm xấp xỉ đã thấy các mẫu khác nhau, đó là không chắc rằng họ đánh giá quá cao hành động tương tự.


Tại sao "hai hàm xấp xỉ thấy các mẫu khác nhau" lại giúp ích?
Albert Chen

1
Bởi vì một trong các hàm xấp xỉ có thể thấy các mẫu đánh giá quá cao hành động a1 trong khi các mẫu khác nhìn thấy các mẫu đánh giá quá cao hành động a2. Điều quan trọng là không được đánh giá quá cao hành động tương tự
lgvaz

3

Tôi không quen thuộc lắm với việc học tăng cường, nhưng dòng tiếp theo trong bài viết Wikipedia mà bạn trích dẫn (hiện tại) đề cập đến bài học Double Q-learning (NIPS 2010) . Bản tóm tắt của bài báo đó nói

Những đánh giá quá cao này là kết quả của xu hướng tích cực được đưa ra bởi vì Q-learning sử dụng giá trị hành động tối đa làm giá trị gần đúng cho giá trị hành động dự kiến ​​tối đa.

Cùng nhau, những điều này dường như đang nói rằng khi Q chức năng là trong thực tế ngẫu nhiên, phần thưởng quan sát r^ kết quả từ một cặp hành động nhà nước (s,a) sẽ có một số nhiễu (0 trung bình) liên quan đến chúng, ví dụ: r^=r+ϵ. Sau đó, bởi vìQ được cập nhật dựa trên maxaQold, giá trị tối đa sẽ có xu hướng là sự kết hợp giữa phần thưởng cao và / hoặc thực hiện tiếng ồn dương lớn . Bằng cách giả sử và bỏ qua , giá trị của sẽ có xu hướng vượt quá ước tính.r ϵrmaxr^maxϵQ

(Như đã lưu ý tôi không quen thuộc với lĩnh vực này và chỉ liếc qua Wikipedia và bản tóm tắt ở trên, vì vậy cách giải thích này có thể sai.)


0

Đầu tiên, tôi muốn trích dẫn từ cuốn sách của Sutton và Barto

... Trong các thuật toán này, tối đa trên các giá trị ước tính được sử dụng hoàn toàn như một ước tính của giá trị tối đa, điều này có thể dẫn đến sai lệch dương đáng kể. Để xem tại sao, hãy xem xét một trạng thái duy nhất trong đó có nhiều hành động a có giá trị thực, q (s, a), đều bằng 0 nhưng giá trị ước tính của nó, Q (s, a), không chắc chắn và do đó phân phối một số ở trên và một số dưới không.

Đó là một chút mơ hồ. đây là một ví dụ đơn giản trong đó Q1 (s, X) = Q2 (s, X) = 0, nhưng trong thực tế, các giá trị có thể không chắc chắn.

Q1 (s, A) = 0,1, Q1 (s, B) = 0, Q1 (s, C) = -0.1

Q2 (s, A) = -0.1, Q2 (s, B) = 0.1, Q2 (s, C) = 0

Nếu bạn chỉ tự cập nhật Q1, nó luôn có xu hướng chọn A tại s để cập nhật. Nhưng nếu bạn chọn max_a Q2 (s, a) để cập nhật Q1, thì Q2 có thể bù lại tình huống. Ngoài ra, bạn phải sử dụng Q1 để đào tạo Q2 theo cách khác. Tiếng ồn trong Q2 không phụ thuộc vào Q1 vì Q1 và Q2 được đào tạo sử dụng các tập dữ liệu khác nhau.

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.