Khi nào các phương pháp Monte Carlo được ưa thích hơn các phương pháp khác biệt theo thời gian?


12

Gần đây tôi đã thực hiện rất nhiều nghiên cứu về Học tập Củng cố. Tôi đã theo dõi Học tập Củng cố của Sutton & Barto : Giới thiệu cho hầu hết những điều này.

Tôi biết Quy trình Quyết định của Markov là gì và cách học lập trình động (DP), Monte Carlo và Sự khác biệt tạm thời (DP) có thể được sử dụng để giải quyết chúng. Các vấn đề tôi đang gặp là tôi không nhìn thấy khi Monte Carlo sẽ là lựa chọn tốt hơn so với TD-learning.

Sự khác biệt chính giữa chúng là TD-learning sử dụng bootstrapping để xấp xỉ hàm giá trị hành động và Monte Carlo sử dụng mức trung bình để thực hiện điều này. Tôi thực sự không thể nghĩ ra một kịch bản khi đây là cách tốt hơn để đi.

Tôi đoán là nó có thể có liên quan đến hiệu suất nhưng tôi không thể tìm thấy bất kỳ nguồn nào có thể chứng minh điều này.

Tôi đang thiếu một cái gì đó hay nói chung là TD-learning là lựa chọn tốt hơn?

Câu trả lời:


8

Vấn đề chính với việc học TD và DP là các cập nhật bước của họ bị sai lệch về các điều kiện ban đầu của các tham số học tập. Quá trình bootstrapping thường cập nhật một hàm hoặc tra cứu Q (s, a) trên giá trị kế tiếp Q (s ', a') bằng cách sử dụng bất kỳ ước tính hiện tại nào ở sau. Rõ ràng khi bắt đầu học những ước tính này không chứa thông tin từ bất kỳ phần thưởng thực tế hoặc chuyển đổi trạng thái nào.

Nếu việc học hoạt động như dự định, thì sự thiên vị sẽ giảm không có triệu chứng qua nhiều lần lặp. Tuy nhiên, sự thiên vị có thể gây ra các vấn đề đáng kể, đặc biệt là đối với các phương pháp ngoài chính sách (ví dụ: Q Learning) và khi sử dụng các hàm xấp xỉ hàm. Sự kết hợp đó rất có khả năng không hội tụ đến mức nó được gọi là bộ ba chết người trong Sutton & Bart.

Các phương pháp kiểm soát Monte Carlo không bị sai lệch này, vì mỗi bản cập nhật được thực hiện bằng cách sử dụng một mẫu thực sự của Q (s, a). Tuy nhiên, phương pháp Monte Carlo có thể bị phương sai cao, điều đó có nghĩa là cần nhiều mẫu hơn để đạt được mức độ học tập tương tự so với TD.

Trong thực tế, học TD dường như học hiệu quả hơn nếu các vấn đề với bộ ba chết người có thể được khắc phục. Các kết quả gần đây sử dụng phát lại kinh nghiệm và các bản sao dự toán "đóng băng" cung cấp các giải pháp giải quyết các vấn đề - ví dụ: đó là cách người học DQN cho các trò chơi Atari được xây dựng.

Ngoài ra còn có một khu vực giữa giữa TD và Monte Carlo. Có thể xây dựng một phương pháp tổng quát kết hợp các quỹ đạo có độ dài khác nhau - từ TD một bước đến hoàn thành các tập chạy ở Monte Carlo - và kết hợp chúng. Biến thể phổ biến nhất của điều này là học TD ( ), trong đó là một tham số từ (học TD một bước hiệu quả) đến (học hiệu quả Monte Carlo, nhưng với một tính năng hay mà nó có thể được sử dụng liên tục các vấn đề). Thông thường, giá trị từ đến làm cho tác nhân học tập hiệu quả nhất - mặc dù giống như nhiều siêu âm, giá trị tốt nhất để sử dụng phụ thuộc vào vấn đề.λ 0 1 0 1λλ0101

Nếu bạn đang sử dụng phương pháp dựa trên giá trị (trái ngược với phương pháp dựa trên chính sách), thì việc học TD thường được sử dụng nhiều hơn trong thực tế hoặc phương pháp kết hợp TD / MC như TD () thậm chí còn tốt hơn.

Xét về "lợi thế thực tế" cho MC? Học tập Monte Carlo về mặt khái niệm đơn giản, mạnh mẽ và dễ thực hiện, mặc dù thường chậm hơn TD. Nói chung tôi sẽ không sử dụng nó cho một công cụ điều khiển học tập (trừ khi vội vàng thực hiện một cái gì đó cho một môi trường đơn giản), nhưng tôi sẽ nghiêm túc xem xét nó để đánh giá chính sách để so sánh nhiều tác nhân - đó là do nó là một biện pháp không thiên vị, đó là quan trọng để thử nghiệm.


Trước hết, cảm ơn câu trả lời. Tôi thấy làm thế nào trong theorie một thuật toán không thiên vị có thể được ưa thích hơn một thuật toán thiên vị. Nhưng xem xét phương sai cao Monte Carlo có thể đưa ra khi bắt đầu đào tạo, tôi không thấy điều này thực sự quan trọng như thế nào. Cả Monte Carlo và TD sẽ bắt đầu với các xấp xỉ không chính xác và từ những gì tôi đã đọc, TD sẽ hội tụ nhanh hơn nhiều. Tôi thực sự không thể tìm ra một lợi thế thực tế khi sử dụng Monte Carlo. ( Có thể tránh được bộ ba chết người )
Anne-dirk

1
@ Anne-dirk Nếu bạn đang sử dụng một phương pháp dựa trên giá trị (như trái ngược với một chính sách dựa trên), sau đó học tập TD được thường được sử dụng nhiều trong thực tế, hoặc một TD / MC phương pháp kết hợp như TD (λ) có thể còn tốt hơn. Tôi không chắc ý của bạn là "lợi thế thực tế"? Học tập Monte Carlo về mặt khái niệm đơn giản, mạnh mẽ và dễ thực hiện. Nói chung, tôi sẽ không sử dụng nó cho một công cụ điều khiển học tập (trừ khi vội vàng thực hiện một cái gì đó cho một môi trường đơn giản), nhưng tôi sẽ nghiêm túc xem xét nó để đánh giá chính sách để so sánh nhiều tác nhân chẳng hạn.
Neil Slater

@Neul Slater Aaaah Tôi thấy ... Đó là loại câu trả lời tôi đang tìm kiếm :) Cảm ơn sự giúp đỡ của bạn!
Anne-dirk

-1

Chủ yếu nó phụ thuộc vào môi trường của bạn.

TD khai thác thuộc tính Markov, tức là các trạng thái trong tương lai của quá trình chỉ dựa vào trạng thái hiện tại và do đó, việc sử dụng TD trong môi trường Markov thường hiệu quả hơn.

MC không khai thác tài sản Markov vì nó dựa trên phần thưởng cho toàn bộ quá trình học tập, vốn tự cho mình vay trong môi trường không phải của Markov.


Tôi không nghĩ rằng điều này là chính xác hoặc, ít nhất, rõ ràng để xem. Tài sản Markov, trong bối cảnh của RL, được liên kết với các tiểu bang. Bạn có thể vui lòng làm rõ lý do tại sao các thuật toán MC sẽ hoạt động tốt hơn khi thuộc tính Markov không được thỏa mãn?
nbro

Để rõ ràng, tôi đã đề cập đến hiệu quả. Nếu bạn có thể khai thác thuộc tính Markov thì TD có lợi vì bạn có thể bắt đầu ở bất kỳ trạng thái nào, thực hiện và hành động và kết quả sẽ luôn giống nhau, do đó bạn có thể tính toán lỗi TD với mức độ chắc chắn cao. Với phi MDP nếu bạn có trạng thái được quan sát một phần thì TD có thể không hiệu quả lắm. Điều đó không có nghĩa là bạn không thể sử dụng TD trong các MDP không, bạn có thể, nhưng nó có thể không hiệu quả và có thể thành công tốt hơn với TD lambda thay vì TD (1).
BigBadMe

"Nếu bạn có thể khai thác thuộc tính Markov thì TD là thuận lợi vì bạn có thể bắt đầu ở bất kỳ trạng thái nhất định nào, thực hiện và hành động và kết quả sẽ luôn giống nhau", nó sẽ giống nhau nếu môi trường mang tính quyết định. Điều này có liên quan gì đến tài sản Markov? Tôi không nhận được yêu cầu của bạn. Bạn đã đọc TD ở đâu sẽ kém hiệu quả hơn MC trong ví dụ POMDP?
nbro

Nó thực sự có mọi thứ để làm với nó là Markov; nếu bạn đang ở trong môi trường Markov thì một khi bạn thiết lập hành động ở trạng thái, nó sẽ dẫn đến 'phần thưởng x - đó sẽ luôn là trường hợp trong môi trường markov, vì vậy bạn không cần phải đánh giá nó và hơn thế nữa - bạn có thể thực hiện các bước lớn hơn và TD cho phép bạn khai thác điều đó. Nhưng nó sẽ không xảy ra trong POMDP bởi vì bạn có thể có cùng một trạng thái, thực hiện cùng một hành động, nhưng kết thúc ở các trạng thái và phần thưởng hoàn toàn khác nhau.
BigBadMe

"Nếu bạn đang ở trong môi trường Markov thì một khi bạn thiết lập hành động ở trạng thái, nó sẽ dẫn đến trạng thái 'với phần thưởng x". Không . Điều này chỉ đúng nếu môi trường mang tính quyết định . Môi trường cũng có thể là ngẫu nhiên . "đó sẽ luôn là trường hợp trong môi trường markov", Không , đây là vấn đề trực giao đối với tài sản Markov.
nbro
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.