Customize AWS DeepRacer using Amazon SageMaker RL and AWS RoboMaker services
This folder contains a notebook that demonstrates how to customize AWS DeepRacer RL assets for domain adaptation to various track shapes and textures.
deepracer_rl_customized_training_notebook.ipynb: Notebook for training autonomous race car.
Dockerfile: Custom docker based of an Amazon SageMaker default docker. Make sure the Amazon Sagemaker docker file is in the same region as your notebook. Otherwise, you will get an error message.
training_worker.py: Main entrypoint for starting distributed training job
markov/: Helper files for S3 upload/download
presets/default.py: Preset (configuration) for neural network and agent hyperparameters
rewards/default.py: Custom reward function
environments/deepracer_racetrack_env.py: Gym environment file for DeepRacer
actions/model_metadata_10_state.json: JSON file to customize your action space & the speed
lib/: redis configuration file and ppo_head.py customized tensorflow file copied to sagemaker container.
common/: Helper function to build docker files.
How to use the notebook
- Login to your AWS account - SageMaker service (SageMaker Link)
- On the left tab select
Create notebook instance
- Fill up the notebook instance name. In the
Additional Configurationdropdown menu, select at least 25GB. This is because docker gets installed and takes up space. If running into space constraints, please delete all the dockers and re-try.
- Create a new IAM role. Give root permission.
- Select the git repository and clone this repository.
- Then, click create notebook instance button at the button
- This takes like 2 min to create your notebook instance. Then, click on the newly created instance and click on the juypter notebook.
- You will see all the github files and now run
- Run clean AWS Robomaker & Amazon Sagemaker commands in the script only when you are done with training.