Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reproducibility #25

Open
emiliocoutinho opened this issue Jun 10, 2021 · 3 comments
Open

Reproducibility #25

emiliocoutinho opened this issue Jun 10, 2021 · 3 comments

Comments

@emiliocoutinho
Copy link
Contributor

Dear @levimcclenny,

Have you considered in adapt TensorDiffEq to be deterministic? In the way the code is implemented, we can find two sources of randomness:

  • The function Domain.generate_collocation_points has a random number generation
  • The TensorFlow training procedure (weights initialization and possibility of the use o random batches)

Both sources of randomness can be solved with not much effort. We can define a random state for the first one that can be passed to the function Domain.generate_collocation_points. For the second, we can use the implementation provided on Framework Determinism. I have used the procedures suggested by this code, and the results of TensorFlow are always reproducible (CPU or GPU, serial or distributed).

If you want, I can implement these two features.

Best Regards

@levimcclenny
Copy link
Member

@emiliocoutinho was this still something you were interested in?

@emiliocoutinho
Copy link
Contributor Author

@emiliocoutinho was this still something you were interested in?

Yes, @levimcclenny. I already have this implemented in my code. If you want, I can add this here as well.

@engsbk
Copy link

engsbk commented Mar 4, 2022

I'll be interested to apply this in my code as well. Any suggestions?
Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants