Tôi đã triển khai Q-Learning như được mô tả trong,
http://web.cs.swarthmore.edu/~meeden/cs81/s12/ con / MarkStevePaper.pdf
Để khoảng. Q (S, A) Tôi sử dụng 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 các nơ ron hành động (Tất cả các đầu vào được chia tỷ lệ 0-1)
- Đầu ra, đầu ra đơn. Giá trị Q
- N số lớp M ẩn.
- Phương pháp thăm dò ngẫu nhiên 0 <rand () <propExplore
Tại mỗi lần lặp học tập sử dụng công thức sau đây,
Tôi tính giá trị Q-Target sau đó tính toán lỗi bằng cách sử dụng,
error = QTarget - LastQValueReturnedFromNN
và trở lại tuyên truyền lỗi thông qua mạng lưới thần kinh.
Q1, tôi có đang đi đúng hướng không? Tôi đã thấy một số bài báo thực hiện NN với một nơ ron đầu ra cho mỗi hành động.
Câu hỏi 2, Hàm phần thưởng của tôi trả về một số trong khoảng từ -1 đến 1. Có thể trả lại một số từ -1 đến 1 khi chức năng kích hoạt là sigmoid (0 1)
Câu 3, Từ sự hiểu biết của tôi về phương pháp này đã đưa ra đủ các trường hợp đào tạo, nó có nên được cách ly để tìm ra một chính sách tối ưu không? Khi đào tạo cho XOR đôi khi nó học nó sau 2k lần lặp đôi khi nó không học được ngay cả sau 40k 50k lần lặp.