Teaching a neural network how to drive with behavioral cloning
A self-driving car is a complicated ensemble of hardware and software. The hardware of a normal car is already very complex, usually with thousands of mechanical pieces, and a self-driving car adds many sensors to that. The software is not any simpler, and in fact, rumor has it that already 15 years ago, a world-class carmaker had to take a step back, because the complexity of the software was getting out of control. To give you an idea, a sports car can have more than 50 CPUs!
Clearly, making a self-driving car that is safe and reasonably fast is an incredible challenge, but despite this, we will see how powerful a dozen of lines of code can be. For me, it was an enlightening moment to realize that something so complex as driving could be coded in such a simple way. But I should not have been surprised because, with deep learning, data is more important than the code itself, at least to a certain extent.
We don&apos...