Học tăng cường về dữ liệu lịch sử


8

Tôi đang nghiên cứu chính sách tối ưu hóa thông tin liên lạc cho khách hàng (sẽ gửi thông báo nào, gửi bao nhiêu và khi nào gửi). Tôi có dữ liệu lịch sử của các thông báo trong quá khứ được gửi (có dấu thời gian) và màn trình diễn của họ. Đã cố gắng áp dụng RL cho vấn đề này để tìm hiểu chính sách tối ưu. Tuy nhiên, một hạn chế chính ở đây là tôi không có hứng thú tìm hiểu chính sách một cách nhanh chóng vì tôi hiện không kiểm soát các hành động (thông báo nào có thể được gửi cho khách hàng). Tôi có hai câu hỏi:

  1. RL có đúng khung theo các ràng buộc như vậy không?
  2. Làm thế nào chúng ta có thể tìm hiểu chính sách tối ưu ngoại tuyến trong các tình huống như vậy và làm thế nào để chúng ta đánh giá giống nhau?

Câu trả lời:


6
  1. RL có đúng khung theo các ràng buộc như vậy không?

Có vẻ như có thể , nhưng có thể một số chi tiết nhỏ mà bạn chưa đưa ra sẽ làm cho các phương pháp khác khả thi hơn. Ví dụ, nếu các sự kiện thông báo có thể được coi là độc lập nhiều hơn hoặc ít hơn, thì phương pháp học tập có giám sát có thể tốt hơn hoặc ít nhất là thực dụng hơn.

Thực tế hơn, nó không rõ ràng 100% trạng thái, dấu thời gian và lựa chọn hành động của bạn sẽ là gì. Chúng cần được xác định rõ để các phương pháp RL hoạt động. Ngoài ra, bạn muốn có thể xây dựng các trạng thái có (hoặc gần như có) tài sản Markov - về cơ bản là bất cứ điều gì được biết và không ngẫu nhiên về phần thưởng dự kiến ​​và trạng thái tiếp theo đều được nhà nước bảo vệ.

  1. Làm thế nào chúng ta có thể tìm hiểu chính sách tối ưu ngoại tuyến trong các tình huống như vậy

Bạn muốn cả ngoại tuyến (dữ liệu là lịch sử, không phải "trực tiếp") và ngoài chính sách (dữ liệu được tạo bởi một chính sách khác với người bạn muốn đánh giá) người học. Ngoài ra, tôi đoán rằng bạn không biết các chính sách hành vi đã tạo dữ liệu của mình, vì vậy bạn không thể sử dụng lấy mẫu quan trọng .

λ

Điều này không được đảm bảo để hoạt động, vì việc học ngoài chính sách có xu hướng kém ổn định hơn so với chính sách và có thể yêu cầu một số nỗ lực để có được các tham số siêu sẽ hoạt động. Bạn sẽ cần một số lượng mẫu tốt bao gồm các lựa chọn tối ưu hoặc gần tối ưu trên mỗi bước (không nhất thiết phải trong cùng một tập), vì Q-learning dựa vào bootstrapping - về cơ bản sao chép ước tính giá trị từ các lựa chọn hành động ngược về thời gian trước đó để ảnh hưởng mà trước đó nói rằng các đặc vụ thích hành động để hướng tới.

Nếu không gian trạng thái / hành động của bạn đủ nhỏ (khi bạn liệt kê đầy đủ các trạng thái và hành động), bạn có thể thích sử dụng dạng bảng của Q-learning vì điều đó có một số đảm bảo về sự hội tụ. Tuy nhiên, đối với hầu hết các vấn đề thực tế, điều này không thực sự có thể, vì vậy bạn sẽ muốn xem xét các tùy chọn để sử dụng các hàm xấp xỉ.

... và làm thế nào để chúng ta đánh giá giống nhau?

Nếu bạn có thể nhận được các giá trị hành động hội tụ trông giống thực tế từ Q-learning (bằng cách kiểm tra), thì chỉ có 2 cách hợp lý để đánh giá hiệu suất:

  • Bằng cách chạy tác nhân trong một mô phỏng (và có thể tinh chỉnh thêm ở đó) - Tôi không hy vọng điều này là khả thi cho kịch bản của bạn, bởi vì môi trường của bạn bao gồm các quyết định của khách hàng. Tuy nhiên, đây là một bước đệm tốt cho một số tình huống, ví dụ nếu môi trường bị chi phối bởi vật lý thế giới thực cơ bản.

  • Bằng cách chạy tác nhân thực sự, có thể trên một số tập hợp con của khối lượng công việc và so sánh phần thưởng thực tế với phần thưởng dự đoán trong thời gian đủ để thiết lập sự tự tin thống kê.

Bạn cũng có thể chạy khô tác nhân cùng với một nhà điều hành hiện có và nhận phản hồi về việc các đề xuất cho hành động (và dự đoán về phần thưởng) của nó có thực tế không. Đó sẽ là phản hồi chủ quan và khó đánh giá hiệu suất bằng số khi các hành động có thể hoặc không thể được sử dụng. Tuy nhiên, nó sẽ cung cấp cho bạn một chút QA.


1

Câu trả lời ngắn gọn là không.

Bây giờ bạn đã có hành động và hiệu suất lịch sử, đây là một vấn đề học tập có giám sát cổ điển, ánh xạ (hồ sơ khách hàng, hành động) của bạn đến một điểm hiệu suất.

Những lý do dưới đây là lý do tại sao học tập củng cố sẽ là một lựa chọn tồi cho nhiệm vụ của bạn:

  1. Học tăng cường giúp sử dụng dữ liệu rất HIỆU QUẢ, do đó, thông thường nó đòi hỏi loại dữ liệu được cung cấp vô hạn từ giả lập hoặc kinh nghiệm thực tế. Tôi nghĩ cả hai trường hợp này đều không áp dụng cho bạn, vì bạn sẽ không muốn mô hình chưa được đào tạo của mình gửi thông báo ngẫu nhiên cho khách hàng của bạn ở trạng thái đào tạo ban đầu và vấn đề của bạn sẽ được xem xét giải quyết nếu bạn đã có trình giả lập.

  2. Học tăng cường thường được sử dụng để đối phó với các chuỗi hành động dài, và hành động sớm có thể có ảnh hưởng mạnh mẽ đến kết quả cuối cùng, chẳng hạn như trong cờ vua. Trong trường hợp đó, không có phân vùng rõ ràng về phần thưởng cuối cùng nhận được ở cuối mỗi bước hành động của bạn, do đó phương trình Bellman được sử dụng rõ ràng hoặc ngầm trong học tập củng cố để giải quyết vấn đề phân bổ phần thưởng này. Mặt khác, vấn đề của bạn dường như không có tính chất tuần tự này (trừ khi tôi hiểu nhầm hoặc hệ thống của bạn gửi email qua lại với khách hàng) và mỗi mẫu từ dữ liệu của bạn là một IID một bước.


1

Các bài viết này cung cấp một phương pháp được gọi là Lặp lại Q được trang bị cho việc học tăng cường hàng loạt (tức là học một chính sách từ các kinh nghiệm trong quá khứ) https://pdfs.semanticscholar.org / 28 / 01869bd502c7917db8b32b75593addfbcc.p.pdf .pdf

Bạn sẽ cần một chức năng, trạng thái và hành động được xác định rõ ràng.

Để thử nghiệm, tốt nhất là sử dụng nhóm người dùng nhỏ và thử nghiệm A / B liên quan đến số liệu của bạn.

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.