Artificial_Curiosity icon indicating copy to clipboard operation
Artificial_Curiosity copied to clipboard

Adaptive Reinforcement Learning of curious AI basketball agents

Artificial Curiosity

Adaptive Reinforcement Learning of curious AI basketball agents

A machine learning project of learning NBA shots success ratio based on 410,000 records of NBA players shots stats.

The project implements various ML techniques in order to create a "Curious" AI agent, which learns success ratios and implements the knowledge in exploration-exploitaition game simulation enviroment.

Part 1 - Bayesian Inference and Information Gain

After an EDA stage and preprocessing of shots data into categorical features we implemented a bayesian inference algorithm and evaluated the feature selection with Expected Information Gain criteria.

Part 2 - Neural Network Learning and Optimization

Manual Neural Network implementation with numpy and SGD method. This part required new preprocess methods (to continuous features) and network structure optimization by improving prediction AUC to 70%.

Extra:

  • Genetic algorithm optimization

    Implementation of a genetic algorithm for network structure optimization.

  • Random Forest, SVM and PCA methods

    Benchmarks methods for accuracy estimation and feature selection.

Part 3 - Curiosity Loop with Adaptive Reinforcement Learning

Implementaion of a Curosity Loop, using Actor-Critic Method and Bayesian Inference.

The Curiosity Loop:

A "new-born" AI agent takes shots from different positions and learns the success of each shot, while trying to both learn the environment and score as much as possible.

Project Presentation:

Link to project presentation (pdf) presentation

More Links: