This AI uses decision tree classifier for predicting possible moves by feeding on input of a 3x3 matrix which is actually the table. It produces a 9x1 result that contains 1 at indices where a move is possible.
From available moves, best move is chosen and that is then given as output. I also used Pygame for giving a real gaming experience to user.
For more detailed info you can check out my project from github