What you will learn
How Evolutionary algorithms works
Artificial Neural Networks
How to train a model to play different games
Alternative way to train Artificial Neural networks
Requirements
- Basic Javascript knowledge
Description
Neuroevolution is a powerful approach to machine learning and artificial intelligence that uses evolutionary algorithms to evolve neural networks.
Most neural networks use gradient descent rather than neuroevolution. However, around 2017 researchers at Uber stated they had found that simple structural neuroevolution algorithms were competitive with sophisticated modern industry-standard gradient-descent deep learning algorithms.
Deep Neuroevolution: Genetic Algorithms are a Competitive Alternative for Training Deep Neural Networks for Reinforcement Learning
This course introduces students to the principles of neuroevolution and the techniques used to design and implement neuroevolution algorithms.
The course covers the following topics:
- Introduction to neuroevolution: basic principles and applications
- Evolutionary algorithms: genetic algorithms, genetic programming, and evolutionary strategies
- Neural networks: types, architectures, and training techniques
- Neuroevolution algorithms: evolutionary algorithms applied to neural networks
- Applications of neuroevolution: games, and optimization problems
- Advanced topics: multi-objective neuroevolution, neuroevolution of recurrent neural networks, and deep neuroevolution.
In this project, we have applied GeneticEvolution to multiple games such as self-driving cars, smart caps and flappy bird.
This course is a follow-up to my other course about Artificial Neural Networks from scratch, where I show how to create an ANN from scratch without libraries. In that project, the learning process is done using backpropagation(gradient descent), this project uses a different approach. We will use Evolutionary Algorithm.
By following this course until the end, students will have a solid understanding of the principles of neuroevolution and the ability to design and implement neuroevolution algorithms for a variety of applications.
Who this course is for:
- Web developers curious about deep learning and AI