Megh_Bhalerao:

I mean, even if I do not set some random seed, there should be some default random seed according to which my code must run and give same results across different runs. Is there something more to it?


By default the system PRNG is used, if I’m not mistaken, so your code will not be deterministic if you don’t properly seed it manually.
Since you are using 3rd party libraries, such as numpy, I would recommend to also seed them.
Have a look at the Reproducibility docs 2 for more information.