Why not create binary vectors for numbers 0000 to 9999?
That would be an exteremely bad idea. The computation resources required for such intensive task are expensive. This form of data representation is extremely inefficient.
In general, the Adam optimisation algorithm performed much better than Gradient Descent.
Accuracy was most affected by the learning rate as compared to the rest of the parameters.
Adding L2 regularization and Dropout yielded minimal improvements.
Prediction results
The moment we've all been waiting for!
Based on the trained model, we predict the probability for a set of numbers from the evaluation data.
0067 . Wed, 14 Nov 2018. Third Prize
0831 . Sun, 06 Oct 2013. Second Prize
0965 . Wed, 31 Jul 2013. Starter Prize
Version
Predictions
1
Example 0 prediction: first_prize (29.9%)
Example 1 prediction: second_prize ( 0.2%)
Example 2 prediction: starter_prize ( 0.5%)
2
Example 0 prediction: third_prize ( 0.0%)
Example 1 prediction: second_prize ( 0.1%)
Example 2 prediction: starter_prize ( 0.0%)
3
Example 0 prediction: third_prize ( 0.0%)
Example 1 prediction: second_prize ( 0.0%)
Example 2 prediction: starter_prize ( 0.0%)
4
Example 0 prediction: consolation_prize (41.5%)
Example 1 prediction: consolation_prize (41.0%)
Example 2 prediction: consolation_prize (41.4%)
5
Example 0 prediction: starter_prize ( 4.6%)
Example 1 prediction: starter_prize ( 4.6%)
Example 2 prediction: starter_prize ( 4.6%)
6
Example 0 prediction: starter_prize ( 4.5%)
Example 1 prediction: starter_prize ( 4.5%)
Example 2 prediction: starter_prize ( 4.5%)
7
Example 0 prediction: third_prize ( 4.3%)
Example 1 prediction: second_prize (11.7%)
Example 2 prediction: starter_prize ( 0.1%)
8
Example 0 prediction: third_prize ( 0.0%)
Example 1 prediction: second_prize ( 0.3%)
Example 2 prediction: starter_prize ( 0.0%)
9
Example 0 prediction: starter_prize ( 4.6%)
Example 1 prediction: starter_prize ( 4.6%)
Example 2 prediction: starter_prize ( 4.6%)
10
Example 0 prediction: starter_prize ( 6.0%)
Example 1 prediction: starter_prize ( 6.1%)
Example 2 prediction: starter_prize ( 6.0%)
11
Example 0 prediction: starter_prize ( 4.6%)
Example 1 prediction: starter_prize ( 4.6%)
Example 2 prediction: starter_prize ( 4.6%)
12
Example 0 prediction: starter_prize ( 4.6%)
Example 1 prediction: starter_prize ( 4.6%)
Example 2 prediction: starter_prize ( 4.6%)
As you can see, the results were unsurprising.
None of the predictions was satisfactory.
The probability was low even though the corresponding test set accuracy was high.
Models that overfit produced 0% or close to 0% probability as expected.
Conclusion
If you do a quick google search for the terms "4d prediction singapore", you’ll find no shortage of 4d prediction websites.
These predictions are often served with a healthy dose of snake oil.
The draw process, engineered by Singapore Pools includes numerous variables to deter fraud. Trying to predict winning combinations would be a fool's errand.
To make an almost accurate prediction, you have to factor in draw machine configurations and draw ball weights, as well as unseen elements like the force of the jet air, atmospheric noise and gravitational pull.
Punters believe that there are patterns to lottery numbers which can help increase the probability of winning.
As with all things in life, you will start to see patterns by over-analysing any situation.
I have no answers as to how Ms Foyce predicted her winning numbers but it is most likely not through a magical black box algorithm machine.
As many have said, she could have bought the tickets in bulk and posted the winning combinations after the results were announced.
There are many ways to achieve internet notoriety you know?
Wealth gained hastily will dwindle, but whoever gathers little by little will increase it. - (Proverbs 13:11-13)
Disclaimer: I am not a data scientist, neither am I trained in the field of machine learning. Several assumptions were made while training the models. If you are a data scientist, please feel free to chime in on the comments section.