Stores information about a model.
Input Parameters | Type | Default | Description |
---|---|---|---|
display_name | str | A display name for the model. | |
input_type | fdl.ModelInputType | A ModelInputType object containing the input type of the model. | |
model_task | fdl.ModelTask | A ModelTask object containing the model task. | |
inputs | list | A list of Column objects corresponding to the inputs (features) of the model. | |
outputs | list | A list of Column objects corresponding to the outputs (predictions) of the model. | |
metadata | Optional [list] | None | A list of Column objects corresponding to any metadata fields. |
decisions | Optional [list] | None | A list of Column objects corresponding to any decision fields (post-prediction business decisions). |
targets | Optional [list] | None | A list of Column objects corresponding to the targets (ground truth) of the model. |
framework | Optional [str] | None | A string providing information about the software library and version used to train and run this model. |
description | Optional [str] | None | A description of the model. |
datasets | Optional [list] | None | A list of the dataset IDs used by the model. |
mlflow_params | Optional [fdl.MLFlowParams] | None | A MLFlowParams object containing information about MLFlow parameters. |
model_deployment_params | Optional [fdl.ModelDeploymentParams] | None | A ModelDeploymentParams object containing information about model deployment. |
artifact_status | Optional [fdl.ArtifactStatus] | None | An ArtifactStatus object containing information about the model artifact. |
preferred_explanation_method | Optional [fdl.ExplanationMethod] | None | An ExplanationMethod object that specifies the default explanation algorithm to use for the model. |
custom_explanation_names | Optional [list] | [ ] | A list of names that can be passed to the explanation_name _argument of the optional user-defined _explain_custom method of the model object defined in package.py. |
binary_classification_threshold | Optional [float] | .5 | The threshold used for classifying inferences for binary classifiers. |
ranking_top_k | Optional [int] | 50 | Used only for ranking models. Sets the top k results to take into consideration when computing performance metrics like MAP and NDCG. |
group_by | Optional [str] | None | Used only for ranking models. The column by which to group events for certain performance metrics like MAP and NDCG. |
fall_back | Optional [dict] | None | A dictionary mapping a column name to custom missing value encodings for that column. |
target_class_order | Optional [list] | None | A list denoting the order of classes in the target. This parameter is required in the following cases: - Binary classification tasks: If the target is of type string, you must tell Fiddler which class is considered the positive class for your output column. You need to provide a list with two elements. The 0th element by convention is considered the negative class, and the 1st element is considered the positive class. When your target is boolean, you don't need to specify this argument. By default Fiddler considers True as the positive class. In case your target is numerical, you don't need to specify this argument, by default Fiddler considers the higher of the two possible values as the positive class.- Multi-class classification tasks: You must tell Fiddler which class corresponds to which output by giving an ordered list of classes. This order should be the same as the order of the outputs. - Ranking tasks: If the target is of type string, you must provide a list of all the possible target values in the order of relevance. The first element will be considered as the least relevant grade and the last element from the list will be considered the most relevant grade. In the case your target is numerical, Fiddler considers the smallest value to be the least relevant grade and the biggest value from the list will be considered the most relevant grade. |
**kwargs | Additional arguments to be passed. |
inputs = [
fdl.Column(
name='feature_1',
data_type=fdl.DataType.FLOAT
),
fdl.Column(
name='feature_2',
data_type=fdl.DataType.INTEGER
),
fdl.Column(
name='feature_3',
data_type=fdl.DataType.BOOLEAN
)
]
outputs = [
fdl.Column(
name='output_column',
data_type=fdl.DataType.FLOAT
)
]
targets = [
fdl.Column(
name='target_column',
data_type=fdl.DataType.INTEGER
)
]
model_info = fdl.ModelInfo(
display_name='Example Model',
input_type=fdl.ModelInputType.TABULAR,
model_task=fdl.ModelTask.BINARY_CLASSIFICATION,
inputs=inputs,
outputs=outputs,
targets=targets
)