Register a Model Definition
Ask AI
Bring a trained model into Corridor as a governed object, whether you built it in a Notebook or trained it outside with your own tooling (scikit-learn, H2O, ONNX, and more). Once registered, it can be simulated, explained, approved, and reused across Policies and other Models. This page walks through the registration form.
What is it?
Section titled “What is it?”The Model page is where you bring a trained model into Corridor as a governed object. Models built inside the platform in a Notebook or trained outside with your own tooling can both be registered. Once registered, they can be simulated, explained, approved, and used downstream.
A registered Model sits one layer above Features and Data Elements in the registry hierarchy:
Benefits of a registered Model
Section titled “Benefits of a registered Model”1. Reproducible scoring
The platform validates the model’s expected inputs against the registered objects you select. Every simulation runs through the same scoring code path that production will use (no drift between “the notebook version” and “the deployed version”).
2. Built-in governance
- Change management and version control: every edit to the Model is captured as a new version.
- Lineage: see exactly which Data Elements and Features feed the Model, and every Policy or downstream Model that consumes it.
- Permissible purpose: tag the Model so it can only be used in approved contexts (for example, restrict an
underwriting-tagged Model from a prospecting Policy). - Approval workflow: submit the Model for review, attach a simulation as evidence, and route it to the right reviewers before it can go live.
3. Explainability and monitoring out of the box
Enable a Model Explainer at registration time and every simulation produces per-prediction contributions or reason codes. Standard Model Quality reports (ROC/AUC, KS, lift, confusion matrix for classification; error distribution for regression) are generated automatically from each simulation.
How to Register
Section titled “How to Register”Follow these steps to register a Model.
Open the Create Form
Section titled “Open the Create Form”
Open the Create Form
Section titled “Open the Create Form”On the Model Studio → Model page, click + New Model.
A name prompt opens first. Enter a descriptive name for the Model (for example, Default Within 18 Months) and confirm to land on the full Model form.
Fill in Attributes
Section titled “Fill in Attributes”
Fill in Attributes
Section titled “Fill in Attributes”Set the Model Type * - the type of prediction, such as Binary Classification, Regression, Time Series, or Multi-class Classification.
Set the Output Type * - the data type of the output (for example, Numerical for a probability, String for a class label).
Fill in the Alias * (the identifier used to reference the model’s output downstream) and the Entity *. See Common Registration Info.
Set the Dependent, the target variable the Model is trained to predict. Optional but recommended, since approval reviewers and downstream reports use it.
Add Inputs
Section titled “Add Inputs”
Add Inputs
Section titled “Add Inputs”In the Input section, search and select the registered objects the Model consumes.
- Inputs can include Data Elements and Features. Models can also consume other Models as inputs (useful for stacked models or ONNX reader models).
- Each input is referenced inside the model definition by its alias.
A Transform is a calculation applied to a model input (a Data Element or Feature) during model execution. It is specific to this Model, unlike a Feature, which is generic and reusable across Models and Policies.
Use one when your model was estimated on a derived value but only the raw input is registered. For example, a model trained on requested_loan_amount_low (1 if requested_loan_amount < 5000, else 0) needs that flag defined as a Transform, since only requested_loan_amount exists in the registry.
Transforms are created on the Transforms page and, once defined for a Model, appear on its details page automatically and are computed as part of model execution.
Fill in the Formula
Section titled “Fill in the Formula”
Fill in the Formula
Section titled “Fill in the Formula”The Formula section is where you provide the model definition.
Define the model. Pick the Model Input Type that matches your model and provide the file or logic:
| Model Input Type | Use when |
|---|---|
| Python Function | The scoring logic is a self-contained Python function. |
| Pickle | The model is a serialized scikit-learn (or compatible) Python object. |
| PMML | The model is exported to PMML by tools like KNIME, R, or SAS. |
| H2O MOJO | The model was built in H2O or H2O Driverless AI. |
| ONNX | The model was exported from Keras, PyTorch, scikit-learn, or another framework supporting ONNX. Requires a two-step setup. |
| Custom | Any other framework (e.g. TensorFlow). You provide the model file, initialization logic, and scoring logic directly. |
Then follow the matching tab below.
- Provide the Python scoring function directly in the editor or upload the file containing it.
- Each input alias from the Input section is passed as a Python value to your function.
- Upload the pickle file.
- If the model’s expected inputs don’t match the inputs you selected in the Input section, resolve the mismatch by adjusting the Input section.
- Upload the
.pmmlfile. - Specify the Output Field:
- For classifiers, the probability column for one of the dependent classes.
- For regression, the predicted value column.
- If a declared input doesn’t match the file’s expected inputs, add or remove inputs in the Input section to resolve the mismatch.
- Upload the MOJO file (H2O or H2O Driverless AI).
- If the inputs don’t match, resolve the mismatch by adjusting the Input section.
ONNX models are registered in two stages, because the raw ONNX output is an array.
Stage 1: Register the raw ONNX model (M1)
- Set Model Type to
Time Seriesso the array output is allowed. - Upload the ONNX file.
- The Output Field is populated by the final layer name from the model build.
Stage 2: Register the output reader (M2)
Register a second Model (typically Binary Classification) whose Input includes M1. The reader reads the array from M1 and returns the element you want (for example, the first element as the probability).
For frameworks not covered above (for example, TensorFlow), provide the following:
- Model File: upload the serialized model file.
- Initialization Logic: code that loads the model object once. Its return value becomes the
modelavailable in the scoring step. - Scoring Logic: code that takes the input aliases plus the initialized
modeland returns the prediction.
Enable the Model Explainer (optional)
Section titled “Enable the Model Explainer (optional)”
Enable the Model Explainer (optional)
Section titled “Enable the Model Explainer (optional)”Once the definition is written, toggle Model Explainer on (below the definition editor) to produce per-prediction contributions or reason codes from each simulation. See Register a Model Explainer for the full walkthrough.
Link Training & Validation Data (optional)
Section titled “Link Training & Validation Data (optional)”
Link Training & Validation Data (optional)
Section titled “Link Training & Validation Data (optional)”Optionally attach the data used to develop the Model, for approvers and reports. For each entry, pick a Type (a registered Dataset or a file Location) and a Label (Train, Validation, and so on). Click Add for more entries.
Fill in Properties and Create
Section titled “Fill in Properties and Create”
Fill in Properties and Create
Section titled “Fill in Properties and Create”Fill in the Properties (Description, Permissible Purpose, Group, and Keywords), then click Create at the bottom right. The Model is saved as a draft and you land on its details page.
What’s Next
Section titled “What’s Next”- Run a Simulation on the Model to validate it on a representative sample.
- Add a Model Explainer to surface per-prediction contributions or reason codes.
- Send the Model for approval so it can be used outside your draft workspace.
- Use the approved Model in a Policy.
Was this page helpful?
Thanks for the feedback.