Tại sao Q-learning không hội tụ khi sử dụng xấp xỉ hàm?


11

Thuật toán Q-learning dạng bảng được đảm bảo để tìm hàm tối ưu , , với các điều kiện sau (điều kiện Robbins-Monro ) về tốc độ học tập được thỏa mãnQQ*

  1. Σtαt(S,một)= =
  2. Σtαt2(S,một)<

trong đó có nghĩa là tốc độ học được sử dụng khi cập nhật giá trị liên kết với trạng thái và hành động tại thời điểm bước , trong đó được coi là đúng, cho tất cả các tiểu bang và hành động .αt(S,một)QSmộtt0αt(S,một)<1Smột

Rõ ràng, với , để hai điều kiện là đúng, tất cả các cặp hành động nhà nước phải được truy cập vô hạn thường xuyên: điều này cũng được nêu trong cuốn sách Học tăng cường: Giới thiệu , ngoài thực tế là điều này nên được biết đến rộng rãi và đó là lý do căn bản đằng sau việc sử dụng chính sách tham gia (hoặc chính sách tương tự) trong quá trình đào tạo.0αt(S,một)<1ε

Một bằng chứng đầy đủ cho thấy -learning tìm thấy chức năng tối ưu có thể được tìm thấy trong bài báo Sự hội tụ của Q-learning: A Simple Proof (của Francisco S. Melo). Anh ta sử dụng các khái niệm như ánh xạ co để xác định hàm tối ưu (xem thêm Toán tử Bellman trong học tăng cường là gì? ), Đây là một điểm cố định của toán tử co này. Ông cũng sử dụng một định lý (số 2) liên quan đến quá trình ngẫu nhiên hội tụ về , đưa ra một vài giả định. (Bằng chứng có thể không dễ thực hiện nếu bạn không phải là người giỏi toán.)QQQ0

Nếu một mạng nơ ron được sử dụng để biểu diễn chức năng , các đảm bảo hội tụ của -learning có còn giữ không? Tại sao (hoặc không) Q-learning hội tụ khi sử dụng xấp xỉ hàm? Có bằng chứng chính thức nào về sự không hội tụ của -learning bằng cách sử dụng xấp xỉ hàm không?QQQ

Tôi đang tìm kiếm các loại câu trả lời khác nhau, từ những câu trả lời trực giác đằng sau sự không hội tụ của -learning khi sử dụng xấp xỉ hàm cho những bằng chứng cung cấp bằng chứng chính thức (hoặc liên kết đến một bài báo với bằng chứng chính thức).Q


2
Câu hỏi tuyệt vời!
John Doucette

Cuốn sách mà bạn tham khảo nói về vấn đề này trong chương 11 để bạn có thể đọc nó. Ngoài ra, tôi không nghĩ có bằng chứng chính thức tại sao điều này xảy ra nhưng có một vài ví dụ cho thấy sự khác biệt ngay cả trong những môi trường đơn giản (ví dụ Tsitsiklis và van Roy).
Brale_

Câu trả lời:


7

Đây là một câu trả lời mô tả trực quan:

Xấp xỉ chức năng có thể được thực hiện với bất kỳ chức năng tham số hóa. Hãy xem xét vấn đề của không gian Q(S,một) trong đó S là các số thực dương, một0 hoặc 1 và hàm Q thực sự là Q(s,0)= =S2Q(S,1)= =2S2 , cho tất cả các tiểu bang. Nếu hàm xấp xỉ của bạn là Q(S,một)= =m*S+n*một+b , tồn tại không có thông số mà có thể phản ánh đúng sự thậtQ chức năng (chúng tôi đang cố gắng để phù hợp với một dòng vào một hàm bậc hai). Do đó, ngay cả khi bạn chọn tốc độ học tập tốt và thường xuyên truy cập tất cả các trạng thái, hàm xấp xỉ của bạn sẽ không bao giờ hội tụ đếnhàmQ thực sự.

Và đây là một chi tiết hơn một chút:

  1. Mạng lưới thần kinh chức năng gần đúng . Một hàm có thể được xấp xỉ ở mức độ lớn hơn hoặc thấp hơn bằng cách sử dụng các đa thức phức tạp hơn hoặc ít hơn để xấp xỉ nó. Nếu bạn đã quen thuộc với xấp xỉ Taylor Series, ý tưởng này có vẻ khá tự nhiên. Nếu không, hãy nghĩ về một hàm như sóng hình sin trong khoảng [0- π/2 ). Bạn có thể ước chừng nó (xấu) với một đường thẳng. Bạn có thể ước chừng nó tốt hơn với một đường cong bậc hai. Bằng cách tăng mức độ của đa thức mà chúng ta sử dụng để xấp xỉ đường cong, chúng ta có thể nhận được một cái gì đó phù hợp với đường cong ngày càng chặt chẽ hơn.
  2. Mạng lưới thần kinh là các hàm xấp xỉ phổ quát . Điều này có nghĩa là, nếu bạn có một chức năng, bạn cũng có thể tạo một mạng lưới thần kinh đủ sâu hoặc rộng đủ để nó có thể xấp xỉ chức năng bạn đã tạo ở mức độ chính xác tùy ý. Tuy nhiên, bất kỳ cấu trúc liên kết mạng cụ thể nào bạn chọn sẽ không thể tìm hiểu tất cả các chức năng, trừ khi nó rộng vô hạn hoặc sâu vô hạn. Điều này tương tự như cách, nếu bạn chọn đúng tham số, một dòng có thể phù hợp với bất kỳ hai điểm nào, nhưng không phải là 3 điểm. Nếu bạn chọn một mạng có chiều rộng hoặc chiều sâu hữu hạn nhất định, tôi luôn có thể xây dựng một chức năng cần thêm một vài nơ-ron để phù hợp.

  3. Giới hạn của Q-learning chỉ giữ khi biểu diễn của hàm Q là chính xác . Để xem tại sao, giả sử rằng bạn đã chọn xấp xỉ hàm Q của mình bằng phép nội suy tuyến tính. Nếu hàm thực có thể có bất kỳ hình dạng nào, thì rõ ràng lỗi trong phép nội suy của chúng ta có thể được tạo ra không giới hạn chỉ bằng cách xây dựng hàm Q giống như hàm XOR và không có thêm thời gian hoặc dữ liệu sẽ cho phép chúng ta giảm lỗi này . Nếu bạn sử dụng một hàm xấp xỉ hàm, và hàm thực sự bạn cố gắng khớp không phảimột cái gì đó mà hàm có thể xấp xỉ tốt tùy ý, thì mô hình của bạn sẽ không hội tụ đúng, ngay cả với tốc độ học tập và tỷ lệ khám phá được lựa chọn tốt. Sử dụng thuật ngữ của lý thuyết học tập tính toán, chúng tôi có thể nói rằng các bằng chứng hội tụ cho Q-learning đã mặc nhiên cho rằng hàm Q thực sự là một thành viên của không gian giả thuyết mà bạn sẽ chọn mô hình của mình.


Chúng ta có thể thấy ở đâu từ bằng chứng tôi đã đề cập rằng "giới hạn của Q-learning chỉ giữ khi biểu diễn của hàm Q là chính xác" là đúng?
nbro

Vì vậy, chúng ta có thể tính gần đúng bất kỳ hàm (hợp lý) nào bằng cách sử dụng một số mạng thần kinh (kiến trúc), nhưng, được cung cấp một kiến ​​trúc mạng thần kinh cố định (mà chúng ta cần chọn khi bắt đầu giai đoạn đào tạo của Q -learning), Q -learning có thể không hội tụ sử dụng rằng kiến trúc cụ thể Z , vì Z có thể không đủ để đại diện cho biểu Q * . ZQQZZQ
nbro

@nbro Bằng chứng không nói rõ điều đó, nhưng nó giả sử đại diện chính xác cho hàm Q (nghĩa là các giá trị chính xác được tính và lưu trữ cho mọi cặp trạng thái / hành động). Đối với không gian trạng thái vô hạn, rõ ràng đại diện chính xác này có thể lớn vô hạn trong trường hợp xấu nhất (ví dụ đơn giản: let Q (s, a) = sth chữ số của pi). Nhận xét thứ hai của bạn tóm tắt nó tốt. Chính thức hơn, nếu giả thuyết thực Q * không phải là một yếu tố của không gian giả thuyết H mà bạn đang chọn một mô hình từ đó, bạn không thể hội tụ đến Q *, ngay cả với thời gian hoặc dữ liệu vô hạn.
John Doucette

4

Theo như tôi biết, vẫn còn một vấn đề mở để có được sự hiểu biết chính thức, rõ ràng về chính xác lý do tại sao / khi chúng ta thiếu sự hội tụ - hoặc tệ hơn, đôi khi là một nguy cơ của sự phân kỳ. Nó thường được quy cho "bộ ba chết người" (xem 11.3 của phiên bản thứ hai của cuốn sách Sutton và Barto), sự kết hợp của:

  1. Hàm gần đúng, VÀ
  2. Bootstrapping (sử dụng ước tính giá trị riêng của chúng tôi trong việc tính toán các mục tiêu đào tạo của chúng tôi, như được thực hiện bởi Q -learning), VÀ
  3. Đào tạo ngoài chính sách ( Q -learning thực sự là ngoài chính sách).

Điều đó chỉ cung cấp cho chúng tôi một mô tả (có thể không đầy đủ) về các trường hợp chúng tôi thiếu sự hội tụ và / hoặc nguy cơ phân kỳ, nhưng vẫn không cho chúng tôi biết lý do tại sao nó xảy ra trong những trường hợp đó.


Câu trả lời của John đã cung cấp trực giác rằng một phần của vấn đề chỉ đơn giản là việc sử dụng xấp xỉ chức năng có thể dễ dàng dẫn đến tình huống mà chức năng approximator của bạn không đủ mạnh mẽ để đại diện cho đúng Q chức năng, có thể luôn là lỗi xấp xỉ mà là không thể để thoát khỏi mà không chuyển sang một hàm xấp xỉ hàm khác.

Cá nhân, tôi nghĩ rằng trực giác này giúp hiểu lý do tại sao thuật toán không thể đảm bảo sự hội tụ cho giải pháp tối ưu, nhưng tôi vẫn trực giác hy vọng nó có thể có khả năng "hội tụ" với một giải pháp "ổn định" nào đó là xấp xỉ tốt nhất có thể các hạn chế vốn có trong biểu diễn chức năng được chọn. Thật vậy, đây là những gì chúng ta quan sát được trong thực tế khi chúng ta chuyển sang đào tạo theo chính sách (ví dụ Sarsa), ít nhất là trong trường hợp với các hàm xấp xỉ hàm tuyến tính.


Q(s,a)(s,a)Q, họ thường cập nhật theo hướng "chính xác". Theo trực giác, điều này có nghĩa là, trong cài đặt dạng bảng, trong kỳ vọng, chúng tôi sẽ từ từ, dần dần sửa chữa bất kỳ sai lầm nào trong bất kỳ mục nào trong sự cô lập, mà không có thể làm hại các mục khác.

Q(s,a)(s,a)Q


maxmax

Q(s,a)

Q(s,a)Q(s,a)+α[maxaQ(s,a)Q(s,a)].

maxaQ(s,a)QQ(s,a)maxaQ(s,a)


Cuối cùng, một bài báo khác (thậm chí gần đây hơn) mà tôi nghi ngờ có liên quan đến câu hỏi này là Chẩn đoán các nút cổ chai trong Thuật toán học hỏi sâu , nhưng thật không may là tôi chưa có thời gian để đọc nó đủ chi tiết và tóm tắt đầy đủ.


1
Nhưng không phải việc sử dụng mạng nơ-ron cũng là do giả định rằng các trạng thái nhất định rất giống nhau? Các trạng thái rất giống nhau (ví dụ: các khung liên tiếp trong trò chơi) thường có các hành động tối ưu rất giống nhau (hoặc giống nhau), vì vậy tôi không chắc rằng lời giải thích trong bài báo đầu tiên là hợp lệ (tôi nên đọc nó để hiểu đầy đủ các điểm chính của chúng).
nbro

1
@nbro Vâng, thường việc khái quát hóa được coi là một lợi thế hơn là một vấn đề chính xác vì lý do đó. Nếu nó hoạt động như "dự định", nó có thể rất mạnh mẽ và tăng tốc độ học tập bởi vì chúng ta chuyển bất cứ điều gì chúng ta học sang các trạng thái tương tự / hành động tương tự, thay vì học cách ly mỗi trạng thái / hành động hơi khác nhau. Nhưng nó cũng có thể dẫn đến các vấn đề, đặc biệt là về lý thuyết mà còn trong thực tế. Nó giống như một "con dao hai lưỡi" tôi cho là vậy.
Dennis Soemers

1
@DennisSoemers Câu trả lời siêu thú vị. Điểm Q-learning không ảo tưởng làm cho rất nhiều ý nghĩa. Tìm hàm Q chính xác có nghĩa là tìm một điểm cố định cho quy tắc cập nhật của bạn, nhưng có vẻ như việc xấp xỉ hàm có thể dẫn đến các cập nhật theo chu kỳ trong Q-learning nếu bạn nghĩ về nó theo cách này.
John Doucette
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.