làm thế nào để thực hiện một chức năng khen thưởng trong học tập củng cố


18

Trong khi nghiên cứu Học tăng cường, tôi đã bắt gặp nhiều dạng của hàm phần thưởng: , và thậm chí là một hàm phần thưởng chỉ phụ thuộc vào trạng thái hiện tại. Phải nói rằng, tôi nhận ra rằng không dễ để 'tạo ra' hoặc 'xác định' một chức năng phần thưởng.R ( s , a , s )R(s,a)R(s,a,s)

Đây là câu hỏi của tôi:

  1. Có quy định về cách làm cho chức năng phần thưởng?
  2. Có các hình thức khác của chức năng khen thưởng? Ví dụ, một dạng đa thức có lẽ phụ thuộc vào nhà nước?

Câu trả lời:


25

Các chức năng khen thưởng mô tả cách các tác nhân "nên" hành xử. Nói cách khác, họ có nội dung "quy chuẩn", quy định những gì bạn muốn đại lý thực hiện. Ví dụ, một số phần thưởng nhà nước S có thể đại diện cho hương vị của thức ăn. Hoặc có lẽ, (S,một) có thể đại diện cho hành động nếm thức ăn. Vì vậy, trong phạm vi chức năng phần thưởng quyết định động lực của đại lý là gì, vâng, bạn phải làm cho nó thành!

Không có hạn chế tuyệt đối, nhưng nếu chức năng phần thưởng của bạn là "cư xử tốt hơn", nhân viên sẽ học tốt hơn. Thực tế, điều này có nghĩa là tốc độ hội tụ và không bị kẹt trong cực tiểu địa phương. Nhưng thông số kỹ thuật hơn nữa sẽ phụ thuộc mạnh mẽ vào các loại học tăng cường bạn đang sử dụng. Ví dụ, không gian trạng thái / hành động liên tục hay rời rạc? Là thế giới hoặc lựa chọn hành động ngẫu nhiên? Là phần thưởng liên tục được thu hoạch, hoặc chỉ vào cuối?

Một cách để xem vấn đề là hàm phần thưởng xác định độ cứng của vấn đề. Ví dụ, theo truyền thống, chúng tôi có thể chỉ định một trạng thái duy nhất được khen thưởng:

R(S1)= =1
R(S2 ..n)= =0
Trong trường hợp này, vấn đề cần giải quyết là khá khó, so với, giả sử, R(STôi)= =1/Tôi2 , trong đó có độ dốc phần thưởng trên các trạng thái. Đối với các vấn đề khó, chỉ định chi tiết hơn, ví dụ R(S,một) hoặc R(S,một,S') có thể giúp một số thuật toán bằng cách cung cấp những manh mối thêm, nhưng có khả năng tại các chi phí của yêu cầu thăm dò nhiều hơn nữa. Bạn cũng có thể cần bao gồm các chi phí dưới dạng các thuật ngữ phủ định trongR (ví dụ:chi phí năng lượng), để làm cho vấn đề được chỉ định rõ.

Đối với trường hợp không gian trạng thái liên tục, nếu bạn muốn một tác nhân học dễ dàng, chức năng phần thưởng phải liên tụckhác biệt . Vì vậy, đa thức có thể hoạt động tốt cho nhiều thuật toán. Hơn nữa, cố gắng loại bỏ cực tiểu cục bộ. Có một số ví dụ về cách KHÔNG tạo hàm thưởng - như hàm Rastrigin . Đã nói điều này, một số thuật toán RL (ví dụ máy Boltzmann ) có phần mạnh mẽ đối với những thuật toán này.

Nếu bạn đang sử dụng RL để giải quyết vấn đề trong thế giới thực, có lẽ bạn sẽ thấy rằng mặc dù việc tìm kiếm chức năng phần thưởng là phần khó nhất của vấn đề, nhưng nó gắn chặt với cách bạn chỉ định không gian trạng thái . Ví dụ, trong một vấn đề phụ thuộc vào thời gian, khoảng cách đến mục tiêu thường làm cho chức năng phần thưởng kém (ví dụ như trong vấn đề xe leo núi ). Những tình huống như vậy có thể được giải quyết bằng cách sử dụng các không gian trạng thái chiều cao hơn (trạng thái ẩn hoặc dấu vết bộ nhớ) hoặc bằng RL phân cấp.

Ở mức độ trừu tượng, việc học tập không giám sát được cho là làm giảm quy định hiệu suất "đúng và sai". Nhưng chúng ta có thể thấy rằng RL chỉ đơn giản là chuyển trách nhiệm từ giáo viên / nhà phê bình sang chức năng khen thưởng. Có một cách ít vòng tròn hơn để giải quyết vấn đề: đó là suy ra hàm thưởng tốt nhất . Một phương pháp được gọi là RL nghịch đảo hoặc "học tập học việc" , tạo ra một chức năng khen thưởng để tái tạo các hành vi được quan sát. Tìm kiếm chức năng phần thưởng tốt nhất để tái tạo một tập hợp các quan sát cũng có thể được thực hiện bằng phương pháp lý thuyết thông tin MLE, Bayesian hoặc thông tin - nếu bạn tìm kiếm "học tập củng cố ngược".


Xin chào, tại sao vấn đề xe leo núi là vấn đề phụ thuộc thời gian?
Đi MYWay

Tôi cho rằng vấn đề xe leo núi là "phụ thuộc vào thời gian" ở chỗ vấn đề này đòi hỏi mạng phải cung cấp chuỗi lệnh phù hợp hoặc chính sách xác định trình tự. Ý tưởng là nếu bạn chỉ coi "vị trí" là trạng thái của mình, thì vấn đề rất khó giải quyết - bạn cũng cần xem xét vận tốc của mình (hoặc động năng, v.v.). Đó thực sự là tất cả những gì tôi muốn nói, liên quan đến việc lựa chọn không gian trạng thái của bạn một cách khôn ngoan trong các vấn đề phụ thuộc thời gian.
Sanjay Manohar

@SanjayManohar Tôi không nghĩ vấn đề xe leo núi là "phụ thuộc vào thời gian", trừ khi bạn phụ thuộc vào thời gian mà bạn đang nói về việc giới thiệu một chân trời thời gian hữu hạn. Vị trí và vận tốc là đủ.
dùng76284

Tôi nghĩ rằng câu trả lời này trộn lẫn các chức năng phần thưởng và giá trị. Ví dụ, nó nói về "tìm kiếm" một chức năng phần thưởng, có thể là điều bạn làm trong học tập củng cố ngược , nhưng không phải trong RL được sử dụng để kiểm soát. Ngoài ra, nó nói về sự cần thiết của chức năng phần thưởng là liên tục và khác biệt, và điều đó không chỉ không bắt buộc, nó thường không phải là trường hợp. Bạn có nhiều khả năng tìm thấy +1 đơn giản để thành công hoặc cố định -1 mỗi bước thời gian được thực hiện trong tài liệu, hơn là tìm một số heuristic khác biệt được xây dựng cẩn thận.
Neil Slater

Cảm ơn @NeilSlater, bạn đã đúng Tôi có lẽ nên nói "xây dựng" một chức năng phần thưởng thay vì tìm thấy nó. Về "hàm giá trị", tôi thường dành thuật ngữ này cho ánh xạ giá trị trạng thái hoặc giá trị hành động, tức là một hàm mà tác nhân sử dụng để ước tính phần thưởng trong tương lai. Vì vậy, "giá trị" liên quan đến "phần thưởng", nhưng phần thưởng là một phần của vấn đề, chứ không phải thuật toán giải quyết vấn đề. Có lẽ sự nhấn mạnh trong AI đã thể hiện thuật toán học tập của bạn, bằng cách quy định các phần thưởng nhị phân, xa xôi, thưa thớt - nhưng nếu bạn có quyền kiểm soát chức năng phần thưởng, cuộc sống sẽ dễ dàng hơn nếu nó "tốt đẹp".
Sanjay Manohar

4

Thiết kế các chức năng khen thưởng là một vấn đề khó thực sự. Nói chung, các chức năng phần thưởng thưa thớt dễ xác định hơn (ví dụ: nhận +1 nếu bạn thắng trò chơi, khác 0). Tuy nhiên, phần thưởng thưa thớt cũng làm chậm quá trình học vì tác nhân cần phải thực hiện nhiều hành động trước khi nhận được bất kỳ phần thưởng nào. Vấn đề này còn được gọi là vấn đề chuyển nhượng tín dụng .

Thay vào đó sau đó có một bảng đại diện cho phần thưởng, bạn cũng có thể sử dụng các hàm liên tục (chẳng hạn như đa thức). Đây là trường hợp thường khi không gian trạng thái và không gian hành động liên tục thay vì rời rạc.

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.