Unfortunately - Jason is right.
100% isnt possible.
95% is about as best it gets. Anything above 95% takes too long to compute, to have the advantage of being right.
What you must remember is: every increment of guaranteed efficiency increases the prediction algorithm in size and running time.
Follow the example:
I have a secret number:
The computer can predict what it is with algorithm (X) in a small time period (T0) and be 95% accurate.
If the guess is incorrect, the computer must guess again. Which takes time T1.
or
The computer can predict what it is with algorithm (Y) in a larger time period (T0 + z), (z is significantly large in size compared to T0 & T1)
and be 98% accurate.
If the guess is incorrect, the computer must guess again. Which takes time T1.
.98(T0 + z) + .2(T0 + z + T1) >= .95(T0) + .5(T0 + T1)
T0 + z + .2(T1) >= T0 + .5(T1)
z > .3T1 (which we have already declared that z is significantly large in size compared to T0 & T1)
There is no performance gain here, actually a loss.