I have researched machine learning for quite a while and would like to test out my knowledge. So I am trying to use it for lottery number prediction. The goal is not to have 100% correct prediction (which is of course impossible), but to perform better than pure random prediction.
Basically, I have the following data:
[ [3,10,16,19,34,45], [7,14,15,20,28,41], [2,6,18,24,30,37], ... ]
As it can be seen each round six numbers will be drawn and I have made an assumption that these rounds are not independent and that each round is related to its previous round. So I am looking for a prediction algorithm that will try learn about this and output one or more predictions.
This will be a supervised learning for the algorithm. Using the above example data, it will be pre-processed so that it becomes:
[ [[3,10,16,19,34,45], [7,14,15,20,28,41]], [[7,14,15,20,28,41], [2,6,18,24,30,37]], ... ]
Obviously, for each tuple, input is on the left while output is on the right. Also, I have another assumption that the numbers printed on the balls are really just labels, so the algorithm should consider them as categorical rather than numerical attribute. And there is no ordering for these labels, though the data appears sorted numerically in ascending order. So when the algorithm tries to learn from the training data, it should not be affected by the ball ordering in any way.
Finally, after it has been trained, if I input, for example [3,5,6,11,34,42], it should output a list of the algorithm's best guess predictions.
So what is the best prediction algorithm and the recommended programming tool for such task?
EDIT: In theory, current round should be unrelated to previous round. But I still think they do have some correlation (though very little), which is not obvious and hard to explain.