tôi đã thực hiện Q-Learning như mô tả trong,Các câu hỏi về Q-Learning sử dụng Neural Networks
http://web.cs.swarthmore.edu/~meeden/cs81/s12/papers/MarkStevePaper.pdf
Để xấp xỉ. Q (S, A) Tôi sử dụng một cấu trúc mạng thần kinh như sau,
- kích hoạt sigmoid
- đầu vào, số lượng đầu vào + 1 cho tế bào thần kinh Action (Tất cả các đầu vào Scaled 0-1)
- đầu ra, sản lượng duy nhất. Q-Value
- Số N lớp ẩn.
- thăm dò phương pháp ngẫu nhiên 0 < rand() < propExplore
Tại mỗi học lặp bằng cách sử dụng công thức sau,
tôi tính toán một giá trị Q-Target sau đó tính toán một lỗi sử dụng,
error = QTarget - LastQValueReturnedFromNN
và ngược lại truyền bá lỗi h mạng thần kinh.
Q1, Tôi có đi đúng hướng không? Tôi đã thấy một số bài báo thực hiện một NN với một nơron đầu ra cho mỗi hành động.
Q2, chức năng phần thưởng của tôi trả về một con số nằm giữa -1 và 1. Is it ok để trả về một con số nằm giữa -1 và 1 khi chức năng kích hoạt là sigmoid (0 1)
Q3, Từ sự hiểu biết của tôi về phương pháp này cho đủ các trường hợp đào tạo cần được kiểm dịch để tìm ra một chính sách tối ưu? Khi đào tạo cho XOR đôi khi nó học nó sau 2k lặp đi lặp lại đôi khi nó sẽ không tìm hiểu ngay cả sau khi 40k 50k lặp đi lặp lại.
Bạn cũng có thể xem xét việc yêu cầu điều này tại http://datascience.stackexchange.com/ – runDOSrun
Đoán của tôi là câu trả lời là có, có, có, tuy nhiên mạng thần kinh là những con thú phức tạp. Thật dễ dàng để đưa ra các thông số sai, tỷ lệ học tập, số lượng các đơn vị ẩn. Ngược lại, học tập Q dạng bảng là tầm thường để thực hiện và gỡ lỗi. – maxy
@maxy Tabular Q-learning là tầm thường miễn là trạng thái không gian khá nhỏ. – Luke