Không gian hành động không nhất quán trong học tập củng cố


13

Câu hỏi này liên quan đến Học tập Củng cốkhông gian hành động khác nhau / không nhất quán cho mỗi / một số tiểu bang .

Ý tôi là gì bởi không gian hành động không nhất quán ?

Giả sử bạn có MDP trong đó số lượng hành động khác nhau giữa các trạng thái (ví dụ như trong Hình 1 hoặc Hình 2). Chúng ta có thể biểu thị "không gian hành động không nhất quán" chính thức như

sS:sS:A(s)A(s)ss

Đó là, đối với mọi trạng thái, tồn tại một số trạng thái khác không có cùng một bộ hành động. Trong các hình (1, 2) có một lượng hành động tương đối nhỏ cho mỗi trạng thái. Thay vào đó hãy tưởng tượng trạng thái với số lượng hành động , trong đó 1 \ leq m_s \ leq nn là một số nguyên thực sự lớn. sSms1msnn

Một số MDP

Môi trường

Để hiểu rõ hơn về câu hỏi, đây là một ví dụ về môi trường. Hãy xem Hình 1 và để nó phát nổ thành một biểu đồ chu kỳ có hướng thực sự lớn với một nút nguồn, không gian hành động lớn và một nút đích. Mục tiêu là đi qua một con đường, bắt đầu từ bất kỳ nút bắt đầu nào, sao cho chúng tôi sẽ tối đa hóa phần thưởng mà chúng tôi sẽ chỉ nhận được ở nút mục tiêu. Ở mọi trạng thái, chúng ta có thể gọi hàm lấy trạng thái làm đầu vào và trả về số lượng hành động hợp lệ.M:sA

Xuất khẩu

(1) Một cách tiếp cận ngây thơ cho vấn đề này (được thảo luận ở đâyở đây ) là để xác định các thiết lập hành động bình đẳng cho tất cả các nhà nước, trả lại một phần thưởng âm bất cứ khi nào hành động thực hiện và di chuyển các đại lý vào tình trạng tương tự, do đó, để cho tác nhân "học" những hành động nào là hợp lệ ở mỗi tiểu bang. Cách tiếp cận này có hai nhược điểm rõ ràng:aA(s)

  • Việc học mất nhiều thời gian, đặc biệt là khi các giá trị Q không được cập nhật cho đến khi chấm dứt hoặc một số câu lệnh được thực hiện (như trong phát lại kinh nghiệm )A
  • Chúng tôi biết , tại sao học nó? A

(2) Một cách tiếp cận khác (câu trả lời đầu tiên ở đây , cũng rất giống các đề xuất từ ​​các bài báo như Học tập tăng cường sâu trong Không gian hành động rời rạc lớnDự đoán tuần tự rời rạc cho hành động liên tục cho Deep RL ) thay vào đó là dự đoán một số vô hướng trong không gian liên tục và một số phương pháp ánh xạ nó thành một hành động hợp lệ. Các bài báo đang thảo luận làm thế nào để đối phó với các không gian hành động rời rạc lớn và đường may mô hình được đề xuất cũng là một giải pháp cho vấn đề này.

(3) Một cách tiếp cận khác được đưa ra là, giả sử số lượng bộ hành động khác nhau khá nhỏ, có các hàm , , ..., trả về hành động liên quan đến trạng thái vuông góc đó với hành động hợp lệ. Ei, hành động thực hiện của một trạng thái với 3 số hành động này sẽ được dự đoán bởi . nfθ1fθ2fθnnsargmaxa fθ3(s,a)

Không có cách tiếp cận nào (1, 2 hoặc 3) được tìm thấy trong các bài báo, chỉ là những suy đoán thuần túy. Tôi đã tìm kiếm rất nhiều nhưng không thể tìm thấy các bài báo trực tiếp về vấn đề này. Câu hỏi của tôi là do đó

  1. Có ai biết bất kỳ bài báo liên quan đến chủ đề này?
  2. Là thuật ngữ sai? "Không nhất quán", "Không thường xuyên", "Khác biệt" ...?
  3. Bất cứ ai có một cách tiếp cận khác đáng để đào sâu vào?

Có một vấn đề tương tự, và suy nghĩ trước mắt của tôi là thực hiện một số chuyển đổi vấn đề thành một miền nơi không gian hành động được cố định. Chẳng hạn, nếu tôi đang làm việc trong học tập tích cực, trong đó hành động là chọn một ví dụ từ bộ dữ liệu đào tạo không ghi nhãn (không thay thế), thì có lẽ một công thức khác trong đó hành động là chọn một lớp hoặc điểm trong không gian dữ liệu có thể hoạt động cũng vậy (điều này sẽ có một không gian hành động cố định / tĩnh)
information_interchange

Tôi có cùng một câu hỏi. Câu trả lời tốt nhất tôi đã tìm thấy là bài báo sau: Đại diện hành động học tập để tăng cường học tập
NameVergessen

Làm thế nào về luận án thạc sĩ của bạn? Bạn đã tìm ra phương pháp để giải quyết câu hỏi của bạn hoặc bất cứ điều gì bạn muốn chia sẻ? Tôi tìm thấy các tác phẩm liên quan nhất như được liệt kê dưới đây là không gian hành động lớn.
DongDong Chen

@DongDongChen chúng tôi đã sử dụng một phiên bản sửa đổi của giấy arxiv.org/pdf/1512.07679.pdf , cùng với một bộ giải ILP, hoạt động tốt cho chúng tôi trong luận án. Tuy nhiên, tôi nghĩ rằng phiên bản của chúng tôi rất cụ thể đối với vấn đề của chúng tôi và rất khó để khái quát.
Rikard Olsson

Câu trả lời:


11
  1. Có ai biết bất kỳ bài báo liên quan đến chủ đề này?

Tôi không quen thuộc với bất cứ điều gì ngoài đầu ... Tôi biết rằng phần lớn tài liệu Học tập Củng cố tập trung vào các cài đặt với một không gian hành động cố định (như robot trong đó hành động của bạn xác định cách bạn cố gắng di chuyển / xoay một phần cụ thể của robot hoặc các trò chơi đơn giản mà bạn luôn có cùng một bộ hành động để di chuyển và có thể '' bắn '' hoặc '' sử dụng '', v.v.). Một loại cài đặt phổ biến khác là không gian hành động có thể dễ dàng được xử lý như thể nó luôn giống nhau (bằng cách liệt kê tất cả các hành động mà mọi hành động đều có thể hợp pháp ở một số trạng thái) và lọc ra các hành động bất hợp pháp trong một số bước xử lý hậu kỳ ( ví dụ RL làm việc trong các trò chơi trên bảng).

Vì vậy, ... có thể có một cái gì đó ngoài đó, nhưng nó chắc chắn không phổ biến. Hầu hết mọi người RL muốn liên quan đến kiến ​​thức miền càng ít càng tốt và tôi cho rằng một chức năng tạo ra một tập hợp hành động hợp pháp được đưa ra ở một trạng thái cụ thể rất có thể được coi là kiến ​​thức về miền.

  1. Là thuật ngữ sai? "Không nhất quán", "Không thường xuyên", "Khác biệt" ...?

Tôi sẽ không sử dụng không nhất quán, bởi vì từ đó có thể được hiểu là ngụ ý rằng một cái gì đó sẽ là "sai" hoặc "không xác định". Tôi muốn nói rằng bạn có một bộ hành động thay đổi (bộ hành động thay đổi theo từng trạng thái). Khi tôi tìm kiếm điều đó, dù vậy cũng không có nhiều kết quả ... nhưng tôi nghĩ thuật ngữ đó sẽ hứa hẹn hơn.

  1. Bất cứ ai có một cách tiếp cận khác đáng để đào sâu vào?

Vấn đề bạn mô tả chủ yếu là một vấn đề trong Học tăng cường với gần đúng chức năng, đặc biệt là xấp xỉ chức năng bằng cách sử dụng Mạng thần kinh. Nếu bạn có thể thoát khỏi việc sử dụng các thuật toán RL dạng bảng, vấn đề sẽ biến mất ngay lập tức. Ví dụ: một bảng gồm các giá trị như thường được sử dụng trong các thuật toán dựa trên bảng, giá trị không cần phải chứa các mục nhập cho tất cả các cặp ; Sẽ tốt thôi nếu nó chỉ chứa các mục cho cặp sao cho là hợp pháp trong .Q(s,a)(s,a)(s,a)as

Các không gian hành động biến đổi chủ yếu biến thành một vấn đề trong các cách tiếp cận Deep RL, bởi vì chúng ta thường làm việc với một kiến ​​trúc mạng thần kinh cố định . Một thuật toán DQN kiểu liên quan đến mạng lưới thần kinh mà phải mất vectơ tính năng mô tả trạng thái như đầu vào, và cung cấp ước tính như kết quả đầu ra. Điều này ngay lập tức ngụ ý rằng chúng ta cần một nút đầu ra cho mỗi hành động, điều đó có nghĩa là bạn phải liệt kê tất cả các hành động ... đó là vấn đề của bạn xảy ra. Tương tự, các phương thức gradient chính sách theo truyền thống cũng yêu cầu một nút đầu ra cho mỗi hành động, điều đó một lần nữa có nghĩa là bạn phải có khả năng liệt kê tất cả các hành động trước (khi xác định kiến ​​trúc mạng).sQ(s,a)

Nếu bạn vẫn muốn sử dụng Mạng nơ-ron (hoặc các loại xấp xỉ hàm khác với các loại đầu vào và đầu ra tương tự), chìa khóa để giải quyết vấn đề của bạn (nếu không có gợi ý nào bạn đã liệt kê trong câu hỏi là theo ý thích của bạn) là để nhận ra rằng bạn sẽ phải tìm một cách khác để hình thành đầu vào và đầu ra của mình, như vậy bạn không còn cần phải liệt kê trước tất cả các hành động .

Cách duy nhất tôi có thể nghĩ để làm điều đó thực sự là nếu bạn có thể tính toán các tính năng đầu vào có ý nghĩa cho các cặp hành động trạng thái hoàn chỉnh . Nếu bạn có thể làm điều đó, thì bạn có thể, ví dụ, xây dựng các mạng thần kinh:(s,a)

  • Lấy một vectơ đặc trưng làm đầu vào, mô tả (hy vọng theo một cách nào đó có ý nghĩa) cặp đầy đủ của trạng thái hành độngx(s,a)s a
  • Tạo ước tính duy nhất làm đầu ra cho cặp trạng thái + hành động cụ thể được cung cấp làm đầu vào, thay vì tạo ra nhiều đầu ra.Q^(s,a)

Nếu bạn có thể làm điều đó, sau đó trong bất kỳ trạng thái đã cho bạn có thể chỉ đơn giản là vòng lặp qua tất cả các hành động pháp lý , tính toán ước tính cho họ tất cả ( lưu ý : Bây giờ chúng tôi yêu cầu đi qua mạng thay vì chỉ một lượt như thường được yêu cầu trong các thuật toán kiểu DQN), và nếu không thì tiến hành tương tự như các thuật toán kiểu DQN tiêu chuẩn.sA(s)Q^(s,a)|A(s)|

Rõ ràng yêu cầu phải có các tính năng đầu vào tốt cho các hành động không phải lúc nào cũng được thỏa mãn ... nhưng tôi nghi ngờ có nhiều cách tốt để khắc phục điều đó. Nó rất giống với tình hình với các quốc gia thực sự. Trong RL dạng bảng, chúng tôi liệt kê tất cả các trạng thái (và tất cả các hành động). Với xấp xỉ hàm, chúng ta vẫn thường liệt kê tất cả các hành động, nhưng tránh liệt kê tất cả các trạng thái bằng cách thay thế chúng bằng các vectơ đặc trưng có ý nghĩa (cho phép khái quát hóa giữa các trạng thái). Nếu bạn muốn tránh liệt kê các hành động, bạn sẽ theo một cách rất giống nhau phải có một số cách khái quát hóa qua các hành động, điều đó một lần nữa có nghĩa là bạn cần các tính năng để mô tả các hành động.


2
Đây là phản hồi tuyệt vời và những suy nghĩ thú vị, cảm ơn vì điều đó. Tôi tìm thấy nhiều bài báo liên quan đến "không gian hành động lớn", vấn đề tương tự. Tôi nghĩ rằng bài báo "Dự đoán tuần tự rời rạc về hành động liên tục cho Deep RL" rất thú vị vì nó dự đoán một chuỗi các hành động sử dụng Mạng thần kinh tái phát thay thế, giải quyết vấn đề mạng cố định. Chúng tôi sẽ làm luận án thạc sĩ trong chủ đề này và tôi hy vọng chúng tôi sẽ thu thập thêm thông tin trong vấn đề này.
Rikard Olsson

0

(3) Một cách tiếp cận khác được đưa ra là, giả sử số lượng bộ hành động khác nhau khá nhỏ, có các hàm , , ..., trả về hành động liên quan đến trạng thái vuông góc đó với hành động hợp lệ. Ei, hành động thực hiện của một trạng thái với 3 số hành động này sẽ được dự đoán bởi .nfθ1fθ2fθnnsargmaxa fθ3(s,a)

Nghe có vẻ khá phức tạp và số lượng các bộ hành động khác nhau thường rất cao, ngay cả đối với các trò chơi đơn giản nhất. Hãy tưởng tượng người kiểm tra, bỏ qua các chương trình khuyến mãi và nhảy cho đơn giản và có một số hành động có thể (tốt), nhưng số lượng các hành động khác nhau này cao hơn nhiều. Thật sự rất khó để tính toán có bao nhiêu bộ như vậy có thể có trong một trò chơi thực sự - nó chắc chắn ít hơn , nhưng cũng chắc chắn là quá lớn để thực tế.742=56256

  1. Bất cứ ai có một cách tiếp cận khác đáng để đào sâu vào?

Giả sử số lượng hành động không quá lớn, bạn chỉ cần bỏ qua các hành động không áp dụng trong một trạng thái nhất định. Điều đó khác với học tập - bạn không phải học trả lại giải thưởng tiêu cực cho các hành động bất hợp pháp, bạn chỉ đơn giản là không quan tâm và chọn hành động pháp lý trả lại giải thưởng tốt nhất.


Lưu ý rằng biểu hiện của bạn

sS:sS:A(s)A(s)ss

có thể được đơn giản hóa để

sS:sS:A(s)A(s)

hoặc thậm chí

|A(s)|sS>1

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.