🚀 DQN 智能體玩轉 BreakoutNoFrameskip-v4
本項目是一個經過訓練的 DQN 智能體,它藉助 stable-baselines3 庫 和 RL Zoo 來玩 BreakoutNoFrameskip-v4 遊戲。RL Zoo 是一個用於 Stable Baselines3 強化學習智能體的訓練框架,包含超參數優化和預訓練智能體。
🚀 快速開始
模型指標
屬性 |
詳情 |
模型類型 |
DQN |
訓練數據 |
BreakoutNoFrameskip-v4 |
平均獎勵 |
359.00 +/- 44.32 |
模型使用(藉助 SB3 RL Zoo)
RL Zoo: https://github.com/DLR-RM/rl-baselines3-zoo
SB3: https://github.com/DLR-RM/stable-baselines3
SB3 Contrib: https://github.com/Stable-Baselines-Team/stable-baselines3-contrib
# 下載模型並保存到 logs/ 文件夾
python -m rl_zoo3.load_from_hub --algo dqn --env BreakoutNoFrameskip-v4 -orga sb3 -f logs/
python enjoy.py --algo dqn --env BreakoutNoFrameskip-v4 -f logs/
模型訓練(藉助 RL Zoo)
python train.py --algo dqn --env BreakoutNoFrameskip-v4 -f logs/
# 上傳模型並生成視頻(如果可行)
python -m rl_zoo3.push_to_hub --algo dqn --env BreakoutNoFrameskip-v4 -f logs/ -orga sb3
💻 使用示例
基礎用法
python -m rl_zoo3.load_from_hub --algo dqn --env BreakoutNoFrameskip-v4 -orga sb3 -f logs/
python enjoy.py --algo dqn --env BreakoutNoFrameskip-v4 -f logs/
高級用法
python train.py --algo dqn --env BreakoutNoFrameskip-v4 -f logs/
python -m rl_zoo3.push_to_hub --algo dqn --env BreakoutNoFrameskip-v4 -f logs/ -orga sb3
🔧 技術細節
超參數設置
OrderedDict([('batch_size', 32),
('buffer_size', 10000),
('env_wrapper',
['stable_baselines3.common.atari_wrappers.AtariWrapper']),
('exploration_final_eps', 0.01),
('exploration_fraction', 0.1),
('frame_stack', 4),
('gradient_steps', 1),
('learning_rate', 0.0001),
('learning_starts', 100000),
('n_timesteps', 10000000.0),
('optimize_memory_usage', True),
('policy', 'CnnPolicy'),
('target_update_interval', 1000),
('train_freq', 4),
('normalize', False)])