Tại sao (và khi nào) người ta phải học hàm thưởng từ các mẫu trong học tăng cường?


9

Trong học tập củng cố, chúng tôi có một chức năng khen thưởng thông báo cho các đại lý về các hành động và trạng thái hiện tại của nó đang làm tốt như thế nào. Trong một số những gì thiết lập chung, chức năng phần thưởng là một hàm của ba biến:

  1. Trạng thái hiện tạiS
  2. Hành động hiện tại ở trạng thái hiện tạiπ(s)=a
  3. Trạng thái tiếp theoS

Vì vậy, nó trông giống như:

R(S,a,S)

Câu hỏi của tôi là gì (có lẽ là sự hiểu lầm của tôi), thông thường người sử dụng học tăng cường quyết định phần thưởng là gì. Ví dụ: nó chỉ định 1000 điểm để đạt được mục tiêu hoặc khẳng định -1000 điểm khi đánh sập robot tự trị. Trong các kịch bản này, tôi không rõ lý do tại sao chúng ta sẽ cần các mẫu để tìm hiểu R. R là một ưu tiên được chỉ định và sau đó chúng tôi sử dụng tác nhân của chúng tôi. Đúng? Tuy nhiên, tôi biết tôi đã sai bởi vì trong ghi chú của Andrew Ng, ông nói:

nhập mô tả hình ảnh ở đây

Trường hợp anh ta nói rằng chúng ta không biết rõ chức năng phần thưởng. Điều đó có vẻ kỳ quái với tôi. Tôi biết tôi đã sai và tôi yêu nếu ai đó có thể làm rõ với tôi trong những tình huống nào chúng ta thực sự phải học R từ các mẫu?

(rõ ràng, các xác suất chuyển tiếp phải được học vì người ta không biết môi trường sẽ làm cho tác nhân của chúng ta di chuyển như thế nào).

Câu trả lời:


4

Trong ghi chú của anh ấy, khi bạn phải "ước tính chúng từ dữ liệu", anh ấy không có nghĩa là chức năng phần thưởng . Bạn hiếm khi ước tính chức năng phần thưởng. Bạn thường tìm hiểu hàm giá trị , ước tính phần thưởng ngay lập tức cộng với phần thưởng trong tương lai được chiết khấu theo thời gian (nếu chiết khấu tạm thời bằng 0, thì bạn đang ước tính phần thưởng). Hoặc, bạn có thể tìm hiểu các giá trị Q , là các giá trị được liên kết với các cặp hành động trạng thái.

Tóm lại, chức năng phần thưởng và chức năng chuyển tiếp thực sự được xác định bởi môi trường. Tác nhân học những thứ như hàm chuyển tiếp, giá trị Q và hàm giá trị.


1
Cũng lưu ý rằng đôi khi chúng ta muốn học chức năng phần thưởng (Học tập tăng cường nghịch đảo)
hipoglucido

1

Tôi đồng ý với các câu trả lời khác thông thường, chức năng phần thưởng không được học trực tiếp.

Xác suất chuyển tiếp cũng không phải học. Tác nhân có thể tìm hiểu trực tiếp các giá trị hành động, hoặc thậm chí trực tiếp chính sách, với phương thức gradien chính sách chẳng hạn.

Tuy nhiên, có những kỹ thuật mà phần thưởng và xác suất chuyển tiếp phải được học. Ví dụ, thuật toán dyna-Q (được mô tả trong Sutton & Barto) duy trì một mô hình môi trường. Ở mỗi bước thời gian, tác nhân sử dụng phần thưởng và thông tin trạng thái nhận được từ môi trường để cập nhật các giá trị hành động, giống như trong Q-learning chẳng hạn.

Nhưng nó cũng cập nhật mô hình môi trường của riêng mình và sau đó thực hiện N cập nhật giá trị hành động khác dựa trên mô hình đó. Giả sử là vòng lặp diễn xuất-> mất một thời gian không có giá trị, thời gian mà chúng ta có thể sử dụng tốt bằng cách cải thiện các giá trị hành động với các mẫu mô phỏng.


1

Đây là một câu hỏi hay sâu sắc hơn bất kỳ từ ngữ không chính xác nào trong ghi chú của Andrew. Đúng là trong RL, bạn thường không cần học hàm thưởng R (S, A, S '); bạn cần chỉ định nó như là một phần của thiết lập vấn đề. NHƯNG, có các thuật toán (theo kinh nghiệm của tôi liên quan đến hàm giá trị trạng thái sau quyết định hoặc sau quyết định) yêu cầu phần thưởng mong đợir (S, A) = E [R (S, A, S ') | S, A]. Nói chung, các văn bản tôi đã thấy đưa ra ít nhận xét về điều này và giả sử rằng r (s, a) được biết giống như R (S, A, S ') được biết đến. Nhưng trong một số trường hợp, phần thưởng phụ thuộc vào trạng thái trong tương lai, vì vậy, không có mô hình, bạn cần học kỳ vọng này. Tôi hiện đang làm việc về một vấn đề như vậy trong đó chức năng phần thưởng dự kiến ​​cũng như chức năng giá trị cần phải được học. Lưu ý rằng hầu hết các thuật toán RL KHÔNG yêu cầu chức năng phần thưởng dự kiến, nhưng một số thuật toán thì có. Xem ví dụ như cuộc thảo luận về trang 58 trong Thuật toán học tăng cường của Szepesvari.

Tóm lại, bạn không cần học chức năng phần thưởng, nhưng khi làm việc với các biến trạng thái sau quyết định, bạn có thể cần học chức năng phần thưởng dự kiến . Đây là trường hợp duy nhất mà tôi biết về nơi bạn cần học một chức năng phần thưởng dự kiến, nhưng tôi rất muốn nghe về các trường hợp khác.


0

Trong học tăng cường, tác nhân học hàm giá trị, không phải hàm thưởng. Giá trị của một hành động là tiện ích tổng thể của nó; ví dụ, một hành động có thể mang lại phần thưởng cao, nhưng dẫn đến các trạng thái giá trị thấp, làm cho nó có giá trị thấp.

Điều mà trích dẫn nói là đôi khi thế giới rất phức tạp: một số vấn đề có không gian hành động nhà nước quá lớn để liệt kê, vì vậy chúng tôi không có chức năng xác suất và phần thưởng chuyển tiếp rõ ràng. Trong trường hợp như vậy, tác nhân sẽ phải học một số khái quát về hàm giá trị thực.


0

Tôi nghĩ rằng những ghi chú là hơi khó hiểu. Phần thưởng nên được bạn thiết kế để khuyến khích đại lý RL của bạn tối ưu hóa hành vi bạn muốn xem. Sự chuyển đổi giữa các trạng thái được đưa ra bởi môi trường và thường sẽ được ước tính từ dữ liệu. Tôi nghĩ rằng những gì Andrew đang đề cập đến là một tình huống trong đó từ trạng thái A bạn có thể chuyển sang trạng thái B mà bạn trao phần thưởng x hoặc trạng thái C mà bạn trao phần thưởng y. Nếu trạng thái B và C giống hệt nhau ngoại trừ sự khác biệt về phần thưởng, bạn thường loại bỏ trạng thái B và C và trao cho trạng thái A phần thưởng ước tính từ dữ liệu cho thấy mức độ thường xuyên bạn chuyển sang B hoặc C từ A.

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.