AWS DeepRacer is an exceptional platform for both beginners and experts to learn and master reinforcement learning. Any machine learning enthusiast can participate for free in virtual DeepRacer and compete with other contenders from all around the world.
However, as AWS is a massive platform which deals with everything from performing simple digital activities to deploying machine learning and artificial intelligence, people struggle to get started. Besides, there are numerous services involved in rendering ML applications. Therefore, people get confused in opting for the right services to streamline their workflow.
AWS DeepRacer is one of the best ways to learn machine learning through autonomous driving in virtual as well as the physical world. To know more read through our earlier article about the importance of competing in DeepRacer. Follow the steps mentioned to create an account in AWS before going forward.
Once you setup the account, update your debit or credit card details to get access to the services. On a successful verification from AWS DeepRacer, you will get 10 hours of free training of models every month. However, if you exceed the limit of free credits, you will have to pay as you go. Often beginners struggle to frugally use the free credits, thus with this article, we aim to guide you to effectively learn and master without burning your hard-earned money.
Getting Off The Ground
ML enthusiasts accept the default values and start training while creating the model. The very first training consumes 60 minutes of the free time provided by AWS for the month. And when they evaluate their model, it usually takes around one minute to complete the track, which is a way too behind the leaders who achieve a lap time below ten seconds.
Further, in a quest to improve on the lap timing, they clone the model and tune hyperparameters to train again. Based on the amendments in the hyperparameters, the model when evaluated, more or less delivers similar performance and by now they lose another hour.
So, is there a better approach to go about in AWS DeepRacer? Yes.
Change Action Space Parameters: Instead of directly starting with default values, it is highly recommended to change the action space parameters, the steering and speed of the agent are set too low. Therefore, one should increase the speed to at least by the two-third of its potential. Should you wish, you can keep it at max speed as well to reduce the lap timing significantly. Also, you can increase the steering angle and speed granularity for enhancing the agility of the vehicle.
Hyperparameters: You can accept the default values for hyperparameters and train it for the first time, but again a little tweak will lead your model to perform well. While there is no right value for hyperparameters as every model works differently, you may get a better lap timing if you try to set the values of batch size and epochs about fifty per cent of their range.
Following this would lead you to get a lap time at least half of the time you would get by accepting default values. Further, it will leave you with adequate free credit for experimenting with new values of hyperparameters while decreasing the stop condition. Initially, keep the training time of sixty minutes, but after achieving a lap time of around twenty-five seconds, alter the hyperparameters and train for a shorter period while taking note of the progress.
AWS DeepRacer is a perfect opportunity for learning basic and advanced machine learning through competing in a league. After getting familiar with the basics, one can dive deeper into by analysing the logs of the car/agent to understand its performance in various states thought CloudWatch. And to view the simulation, you can use KinesisVideo and AWS RoboMaker services. This will enable you to make changes in hyperparameters according to the behaviour of the vehicle you witness.