Я читал этот блог о Deep Q-Learning .
1- В разделе блога The input
я хотел узнать, как мы подаем 4 неподвижных кадра / снимка экрана из игры, которые представляют состояние ввода, в сеть Policy? Будут ли все 4 кадра подаваться в одном сплющенном тензоре (где заканчивается одно изображение, начинается следующее, образуя непрерывный входной ряд в одном тензоре)? Или они будут по отдельности подаваться один за другим в сеть?
2- Для предварительной обработки изображений мы избегаем использования этапа Max-pooling? Насколько я понимаю, этот процесс устраняет необходимость в пространственном / позиционном распознавании при распознавании изображения. В то время как в обычной Conv-Net это важно для распознавания функций изображения независимо от того, где они появляются в пространстве и на расстоянии (поэтому мы используем максимальный пул). В Q-learning для игр важное значение имеет пространство / положение различных элементов на изображении. Поэтому мы исключаем использование Max-pooling со стадии предварительной обработки. Это правильно?
3- Может ли кто-нибудь порекомендовать хороший ресурс для реализации глубокого Q-обучения, написанный с нуля (на Python), то есть без использования готовых библиотек, таких как PyTorch, Keras и Scikit-learn .. и т. д. для игры, где для ввода состояний требуются фреймы изображений из игры. Я думаю, что реализация этой модели с нуля дает лучший контроль над настройкой и точной настройкой гиперпараметров. Или лучше использовать готовую библиотеку? Любая реализация кода была бы очень полезной.
Большое спасибо заранее.