This pull request should remain backwards compatible, but it adds support for using tqdm for displaying progress if it's installed.
The benefit of this is that tqdm plays nice and doesn't swamp stderr. I did a simple test and this reduces the output from 1,330,315 characters written to stderr (over 6185 iterations) to 5,076 characters for a model that is fast to evaluate. I've found that in some simple test cases (especially in Jupyter notebooks) just the I/O of the progress bar can dominate the computational load and this should help reduce that effect.
Feel free to ignore if its not something that you're interested in!
This pull request should remain backwards compatible, but it adds support for using tqdm for displaying progress if it's installed.
The benefit of this is that tqdm plays nice and doesn't swamp stderr. I did a simple test and this reduces the output from 1,330,315 characters written to stderr (over 6185 iterations) to 5,076 characters for a model that is fast to evaluate. I've found that in some simple test cases (especially in Jupyter notebooks) just the I/O of the progress bar can dominate the computational load and this should help reduce that effect.
Feel free to ignore if its not something that you're interested in!