Skip to content

Constraints and Assumptions

Kyle Daruwalla edited this page Nov 10, 2020 · 2 revisions

Note: This wiki has now been moved to https://github.com/FluxML/ML-Coordination-Tracker/wiki

  1. Learners are synchronous. Each stage and callback runs after the previous one. The Learner goes through a sequence of states
  2. Learner state is defined by loop parameters e.g. epoch, batch; shared objects e.g. model, data; and user objects e.g. history
  3. Callbacks register which states they access and modify. Furthermore, modifications of Learner state go through a wrapper so they can be logged, controlled or otherwise debugged
  4. Even though the Learner is synchronous to the user, it may run Callbacks and stages in parallel. The Callback registration allows the process to be represented as a DAG and the run optimized.
  5. Callbacks my have asynchronous behavior, but may not effect the Learner after they return e.g. Logger with deferred write
Clone this wiki locally