protoNN: a framework for code-agnostic, interactive prototyping of DNNs

Tracking metadata and injecting parameters


protoNN uses Python type hints to specify which parameters need to be tracked or modified

track.py (Source)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import protonn.parameters

@protonn.parameters.view
def do_something():
    parameter_1 = 42  # type: Observed
    print(parameter_1)

def main():
    do_something()
    protonn.parameters.dump()

Transparent and elastic scheduling of DNN training jobs on modern HPC systems

More features:

  • Monitoring and visualizing model parameters and computational performance statistics.
  • Perform semi-automatic hyperparameter tuning/optimization and architecture search using evolutionary algorithms.
  • A user-defined interactive interface to drive the framework/ design process, not bound to any particular framework.
  • Scaling the functionality and performance of the model as the resources increase.