Algorithm

Algorithm custom resource

An Algorithm describes a machine learning algorithm and its hyperparameters. This resource is used internally by the Modela data plane to sample algorithms relevant to the current task type (i.e. classification, regression, etc) that will be trained on the cluster.

Algorithms can be accessed by selecting the Algorithms section when viewing the details of an ML Framework. All Algorithms are included as part of the Modela Helm Charts and should not be changed by the user.

Examples

Random Forest Regressor, SGD Classifier, Logistic Regression Classifier

Relationships to Other Resources

An Algorithm is part of a MLFramework

Algorithm API Reference

Algorithm define the metadata about a machine learning algorithm.

Name Type Description Required
apiVersion string catalog.modela.ai/v1alpha1 true
kind string Algorithm true
metadata object Refer to the Kubernetes API documentation for the fields of the `metadata` field. true
spec object AlgorithmSpec describes the attributes of an machine learning algorithm
true

Algorithm.spec

↩ Parent

AlgorithmSpec describes the attributes of an machine learning algorithm

Name Type Description Required
categoricalParameters []object CategoricalParameters is the list of categorical hyper parameters ranges
false
description string Description is the description of the algorithm

Default:
false
floatParameters []object FloatParameters is the list of float hyper parameters ranges
false
frameworkName string FrameworkName is a reference to library
false
integerParameters []object IntegerParameters is the list of integer hyper parameter ranges.
false
sparse boolean Sparse indicate if this algorithm can deal with sparse data

Default: false
false
task enum Task is the machine learning task (binary classification / regression)

Enum: binary-classification, multi-classification, multi-label-classification, forecasting, regression, clustering, recommendation, outlier-detection, novelty-detection, topic-modeling, video-action-recognition, video-classification, video-object-tracking, image-classification, image-multi-classification, image-object-detection, image-segmentation, auto, text-ner, text-classification, text-summarization, text-qa, text-sentiment-analysis, text-generation, text-code-generation, text-translation, text-lang-detection, text-grammer-correction, text-paraphrasing, text-intent-classification, text-semantic-similarity, text-keyword-extraction, text-pos, text-tokenization, text-lemma, unknown
false
url string URL is a url to the html page describing the algorithm

Default:
false

Algorithm.spec.categoricalParameters[index]

↩ Parent

CategoricalParameter contain the specification of an categorical hyper parameter

Name Type Description Required
defaultValue string DefaultValue if the default categorical value
false
enums []string Enums defines the list of values
false
name string Name is the name of the hyper parameter
false

Algorithm.spec.floatParameters[index]

↩ Parent

FloatParameter contain the specification of an float hyper parameter

Name Type Description Required
defaultValue number Default float value
false
log boolean Log specify if this hyper paramer is logartimic
false
max number Max is the maximum value
false
min number Min is the minimum value
false
name string Name is the name of the hyper parameter
false

Algorithm.spec.integerParameters[index]

↩ Parent

IntParameter contain the specification of an integer hyper parameter

Name Type Description Required
defaultValue integer DefaultValue is the default value of the parameter

Format: int32
false
max integer Max is the maximum value of the hyper parameter range

Format: int32
false
min integer Min is the minimum value of the hyper parameter range

Format: int32
false
name string Name is the name of the hyper parameter
false
type enum Type is the datatype of the parameter

Enum: boolean, datetime, number, categorical, ordinal, text, json, number-list, categorical-list, text-list
false