-
Notifications
You must be signed in to change notification settings - Fork 2
Description
I think that parts of the import machinery from ONNXmutable can be made agnostic to both ML framework and model representation (i.e how to describe the DAG).
The basic API to this would look something like this:
model = onnxmodel("model.onnx", nodefun)Where nodefun creates new nodes when given 1) input nodes it has already created and 2) ONNX node parameters in julia format (i.e Arrays instead of TensorProtos and attributes as a Dict).
First question is if this belongs to this package at all?
Next question is if it is helpful or if it will be an inner platform which is harder to understand than just writing it oneself.
To test the latter, I could perhaps make a few toy examples using existing DAG frameworks and post them here. I'm thinking Dagger and MetaGraphs where the first will be an executable model (a Thunk) and the second will just be something which can be plotted using GraphPlots. This could then serve as a basis for documentation should we decide to include it.
The functionality I'm thinking about is basically whats in this file where obviously all AbstractVertexes will be replaced by a parametric type.
Sounds good?