Model¶
The Model metadata schema is an extension of the Processing schema tailored to model weights and other data and code artifacts underlying machine learning models - these may be trained on one dataset and evaluated on others, and may be intended to undergo further training iteratively in future versions.
Thus new evaluations and training steps can easily be appended for new model versions. This metadata should be documented for any models that see widespread internal use or public release, in order to facilitate model reuse and document provenance.
Core file¶
Model¶
Description of a machine learning model including architecture, training, and evaluation details
Field |
Type |
Description |
|---|---|---|
|
|
|
|
|
|
|
Code to run the model, possibly including example parameters/data |
|
|
Model architecture / type of model |
|
|
Optional[Software] |
|
|
|
Parameters of model architecture, such as input signature or number of layers. |
|
|
Semantic description of intended use |
|
|
|
|
List[ModelTraining or ModelPretraining] |
|
|
List[ModelEvaluation] |
|
|
|
Model definitions¶
ModelEvaluation¶
Description of model evaluation
Field |
Type |
Description |
|---|---|---|
|
||
|
List[PerformanceMetric] |
|
|
|
(‘Unique name of the processing step.’, ‘ If not provided, the type will be used as the name.’) |
|
||
|
Code used for processing |
|
|
List[Person] |
People responsible for processing |
|
|
Pipeline names must exist in Processing.pipelines |
|
|
|
|
|
|
|
|
Path to processing outputs, if stored. |
|
|
Output parameters |
|
|
|
|
Optional[ResourceUsage] |
ModelPretraining¶
Description of model pretraining
Field |
Type |
Description |
|---|---|---|
|
|
URL for pretrained weights |
ModelTraining¶
Description of model training
Field |
Type |
Description |
|---|---|---|
|
||
|
List[PerformanceMetric] |
Performance on training set |
|
Optional[List[PerformanceMetric]] |
Performance on test data, evaluated during training |
|
|
Approach to cross-validation or Train/test splitting |
|
|
(‘Unique name of the processing step.’, ‘ If not provided, the type will be used as the name.’) |
|
||
|
Code used for processing |
|
|
List[Person] |
People responsible for processing |
|
|
Pipeline names must exist in Processing.pipelines |
|
|
|
|
|
|
|
|
Path to processing outputs, if stored. |
|
|
Output parameters |
|
|
|
|
Optional[ResourceUsage] |
PerformanceMetric¶
Description of a performance metric
Field |
Type |
Description |
|---|---|---|
|
|
|
|
|