## Uses of Interface
org.apache.ignite.ml.IgniteModel

- Packages that use IgniteModel
  Package | Description
  --- | ---
  org.apache.ignite.ml | Root ML package.
  org.apache.ignite.ml.clustering.gmm | Contains Gauss Mixture Model clustering algorithm (see `GmmModel`).
  org.apache.ignite.ml.clustering.kmeans | Contains kMeans clustering algorithm.
  org.apache.ignite.ml.composition | Contains classes for ensemble of models implementation.
  org.apache.ignite.ml.composition.bagging | Contains bootstrap aggregation (bagging) trainer allowing to combine some other trainers and return a bagged version of them.
  org.apache.ignite.ml.composition.boosting | Contains Gradient Boosting regression and classification abstract classes allowing regressor type selecting in child classes.
  org.apache.ignite.ml.composition.combinators.parallel | Contains parallel combiners (ensembles) of trainers and models.
  org.apache.ignite.ml.composition.combinators.sequential | Contains sequential combinators of trainers and models.
  org.apache.ignite.ml.composition.stacking | Contains classes used for training with stacking technique.
  org.apache.ignite.ml.environment.logging | Package contains several logging strategy realisations.
  org.apache.ignite.ml.inference | Root package for model inference functionality.
  org.apache.ignite.ml.inference.json | Root package for JSON export/import support for all models.
  org.apache.ignite.ml.inference.parser | Root package for model inference parsers.
  org.apache.ignite.ml.knn | Contains main APIs for kNN algorithms.
  org.apache.ignite.ml.knn.ann | Contains main APIs for ANN classification algorithms.
  org.apache.ignite.ml.knn.classification | Contains main APIs for kNN classification algorithms.
  org.apache.ignite.ml.knn.regression | Contains helper classes for kNN regression algorithms.
  org.apache.ignite.ml.multiclass | Contains various multi-classifier models and trainers.
  org.apache.ignite.ml.naivebayes | Contains various naive Bayes classifiers.
  org.apache.ignite.ml.naivebayes.compound | Contains Compound naive Bayes classifier.
  org.apache.ignite.ml.naivebayes.discrete | Contains Bernoulli naive Bayes classifier.
  org.apache.ignite.ml.naivebayes.gaussian | Contains Gaussian naive Bayes classifier.
  org.apache.ignite.ml.nn | Contains neural networks and related classes.
  org.apache.ignite.ml.optimization | Contains implementations of optimization algorithms and related classes.
  org.apache.ignite.ml.pipeline | Contains Pipeline API.
  org.apache.ignite.ml.recommendation | Contains recommendation system framework.
  org.apache.ignite.ml.regressions.linear | Contains various linear regressions.
  org.apache.ignite.ml.regressions.logistic | Contains various logistic regressions.
  org.apache.ignite.ml.selection.cv | Root package for cross-validation algorithms.
  org.apache.ignite.ml.selection.scoring.cursor | Util classes used for score calculation.
  org.apache.ignite.ml.selection.scoring.evaluator | Package for model evaluator classes.
  org.apache.ignite.ml.selection.scoring.evaluator.aggregator | Package contains aggregators for metrics computation.
  org.apache.ignite.ml.svm | Contains main APIs for SVM(support vector machines) algorithms.
  org.apache.ignite.ml.trainers | Contains model trainers.
  org.apache.ignite.ml.tree | Root package for decision trees.
  org.apache.ignite.ml.tree.boosting | Contains implementation of gradient boosting on trees.
  org.apache.ignite.ml.tree.randomforest | Contains random forest implementation classes.
  org.apache.ignite.ml.tree.randomforest.data | Package contains helper data structures for random forest implementation.
  org.apache.ignite.ml.xgboost | Base package for XGBoost model parser, correspondent DTOs and util classes.

- - ### Uses of IgniteModel in org.apache.ignite.ml

    Methods in org.apache.ignite.ml that return IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `default <V1> IgniteModel<V1,V>` | IgniteModel.`andBefore(IgniteFunction<V1,T> before)` Get a composition model of the form `x -> mdl(before(x))`.
    `default <V1> IgniteModel<T,V1>` | IgniteModel.`andThen(IgniteFunction<V,V1> after)` Get a composition model of the form `x -> after(mdl(x))`.
    `default <V1> IgniteModel<T,V1>` | IgniteModel.`andThen(IgniteModel<V,V1> after)` Get a composition model of the form `x -> after(mdl(x))`.
    `default <X,W> IgniteModel<T,X>` | IgniteModel.`combine(IgniteModel<T,W> other, BiFunction<V,W,X> combiner)` Combines this model with other model via specified combiner

    Methods in org.apache.ignite.ml with parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `default <V1> IgniteModel<T,V1>` | IgniteModel.`andThen(IgniteModel<V,V1> after)` Get a composition model of the form `x -> after(mdl(x))`.
    `default <X,W> IgniteModel<T,X>` | IgniteModel.`combine(IgniteModel<T,W> other, BiFunction<V,W,X> combiner)` Combines this model with other model via specified combiner

  - ### Uses of IgniteModel in org.apache.ignite.ml.clustering.gmm

    Classes in org.apache.ignite.ml.clustering.gmm that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `GmmModel` Gaussian Mixture Model.

  - ### Uses of IgniteModel in org.apache.ignite.ml.clustering.kmeans

    Classes in org.apache.ignite.ml.clustering.kmeans with type parameters of type IgniteModel
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `Clusterer<P,M extends IgniteModel>` Base interface for clusterers.

    Subinterfaces of IgniteModel in org.apache.ignite.ml.clustering.kmeans
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `ClusterizationModel<P,V>` Base interface for all clusterization models.

    Classes in org.apache.ignite.ml.clustering.kmeans that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `KMeansModel` This class encapsulates result of clusterization by KMeans algorithm.

  - ### Uses of IgniteModel in org.apache.ignite.ml.composition

    Classes in org.apache.ignite.ml.composition with type parameters of type IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ModelsComposition<M extends IgniteModel<Vector,Double>>` Model consisting of several models and prediction aggregation strategy.

    Classes in org.apache.ignite.ml.composition that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ModelOnFeaturesSubspace` Model trained on a features subspace with mapping from original features space to subspace.
    `class` | `ModelsComposition<M extends IgniteModel<Vector,Double>>` Model consisting of several models and prediction aggregation strategy.

    Methods in org.apache.ignite.ml.composition with type parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `static <I,O,M extends IgniteModel<I,O>,L> DatasetTrainer<IgniteModel<I,O>,L>` | CompositionUtils.`unsafeCoerce(DatasetTrainer<? extends M,L> trainer)` Perform blurring of model type of given trainer to `IgniteModel<I, O>`, where I, O are input and output types of original model.

    Methods in org.apache.ignite.ml.composition that return IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `IgniteModel<Vector,Double>` | ModelOnFeaturesSubspace.`getMdl()` Returns model.

    Methods in org.apache.ignite.ml.composition that return types with arguments of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `List<? extends IgniteModel<Vector,Double>>` | ModelsCompositionFormat.`models()`
    `static <I,O,M extends IgniteModel<I,O>,L> DatasetTrainer<IgniteModel<I,O>,L>` | CompositionUtils.`unsafeCoerce(DatasetTrainer<? extends M,L> trainer)` Perform blurring of model type of given trainer to `IgniteModel<I, O>`, where I, O are input and output types of original model.

    Constructor parameters in org.apache.ignite.ml.composition with type arguments of type IgniteModel
    Constructor and Description
    `ModelsCompositionFormat(List<? extends IgniteModel<Vector,Double>> models, PredictionsAggregator predictionsAggregator)` Creates an instance of ModelsCompositionFormat.

  - ### Uses of IgniteModel in org.apache.ignite.ml.composition.bagging

    Classes in org.apache.ignite.ml.composition.bagging that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `BaggedModel` This class represents model produced by `BaggedTrainer`.

    Constructor parameters in org.apache.ignite.ml.composition.bagging with type arguments of type IgniteModel
    Constructor and Description
    `BaggedTrainer(DatasetTrainer<? extends IgniteModel,L> tr, PredictionsAggregator aggregator, int ensembleSize, double subsampleRatio, int featuresVectorSize, int featureSubspaceDim)` Construct instance of this class with given parameters.

  - ### Uses of IgniteModel in org.apache.ignite.ml.composition.boosting

    Classes in org.apache.ignite.ml.composition.boosting that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `GDBModel` GDB model.

    Fields in org.apache.ignite.ml.composition.boosting with type parameters of type IgniteModel
    Modifier and Type | Field and Description
    --- | ---
    `protected IgniteSupplier<DatasetTrainer<? extends IgniteModel<Vector,Double>,Double>>` | GDBLearningStrategy.`baseMdlTrainerBuilder` Base model trainer builder.

    Methods in org.apache.ignite.ml.composition.boosting that return types with arguments of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `<K,V> List<IgniteModel<Vector,Double>>` | GDBLearningStrategy.`learnModels(DatasetBuilder<K,V> datasetBuilder, Preprocessor<K,V> preprocessor)` Implementation of gradient boosting iterations.
    `<K,V> List<IgniteModel<Vector,Double>>` | GDBLearningStrategy.`update(GDBModel mdlToUpdate, DatasetBuilder<K,V> datasetBuilder, Preprocessor<K,V> preprocessor)` Gets state of model in arguments, compare it with training parameters of trainer and if they are fit then trainer updates model in according to new data and return new model.

    Method parameters in org.apache.ignite.ml.composition.boosting with type arguments of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `GDBLearningStrategy` | GDBLearningStrategy.`withBaseModelTrainerBuilder(IgniteSupplier<DatasetTrainer<? extends IgniteModel<Vector,Double>,Double>> buildBaseMdlTrainer)` Sets base model builder.

    Constructor parameters in org.apache.ignite.ml.composition.boosting with type arguments of type IgniteModel
    Constructor and Description
    `GDBModel(List<? extends IgniteModel<Vector,Double>> models, WeightedPredictionsAggregator predictionsAggregator, IgniteFunction<Double,Double> internalToExternalLblMapping)` Creates an instance of GDBModel.

  - ### Uses of IgniteModel in org.apache.ignite.ml.composition.combinators.parallel

    Classes in org.apache.ignite.ml.composition.combinators.parallel that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ModelsParallelComposition<I,O>` Parallel composition of models.

    Methods in org.apache.ignite.ml.composition.combinators.parallel with type parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `static <I,O,M extends IgniteModel<I,O>,T extends DatasetTrainer<M,L>,L> TrainersParallelComposition<I,O,L>` | TrainersParallelComposition.`of(List<T> trainers)` Create parallel composition of trainers contained in a given list.

    Methods in org.apache.ignite.ml.composition.combinators.parallel that return IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `<K,V> IgniteModel<I,List<O>>` | TrainersParallelComposition.`fitWithInitializedDeployingContext(DatasetBuilder<K,V> datasetBuilder, Preprocessor<K,V> preprocessor)` Trains model based on the specified data.
    `<K,V> IgniteModel<I,List<O>>` | TrainersParallelComposition.`update(IgniteModel<I,List<O>> mdl, DatasetBuilder<K,V> datasetBuilder, Preprocessor<K,V> preprocessor)` Gets state of model in arguments, compare it with training parameters of trainer and if they are fit then trainer updates model in according to new data and return new model.
    `protected <K,V> IgniteModel<I,List<O>>` | TrainersParallelComposition.`updateModel(IgniteModel<I,List<O>> mdl, DatasetBuilder<K,V> datasetBuilder, Preprocessor<K,V> preprocessor)` This method is never called, instead of constructing logic of update from `DatasetTrainer.isUpdateable(IgniteModel)` and `DatasetTrainer.updateModel(IgniteModel, DatasetBuilder, Preprocessor)` in this class we explicitly override update method.

    Methods in org.apache.ignite.ml.composition.combinators.parallel that return types with arguments of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `List<IgniteModel<I,O>>` | ModelsParallelComposition.`submodels()` List of submodels constituting this model.

    Methods in org.apache.ignite.ml.composition.combinators.parallel with parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | TrainersParallelComposition.`isUpdateable(IgniteModel<I,List<O>> mdl)` This method is never called, instead of constructing logic of update from `DatasetTrainer.isUpdateable(M)` and `DatasetTrainer.updateModel(M, org.apache.ignite.ml.dataset.DatasetBuilder<K, V>, org.apache.ignite.ml.preprocessing.Preprocessor<K, V>)` in this class we explicitly override update method.
    `<K,V> IgniteModel<I,List<O>>` | TrainersParallelComposition.`update(IgniteModel<I,List<O>> mdl, DatasetBuilder<K,V> datasetBuilder, Preprocessor<K,V> preprocessor)` Gets state of model in arguments, compare it with training parameters of trainer and if they are fit then trainer updates model in according to new data and return new model.
    `protected <K,V> IgniteModel<I,List<O>>` | TrainersParallelComposition.`updateModel(IgniteModel<I,List<O>> mdl, DatasetBuilder<K,V> datasetBuilder, Preprocessor<K,V> preprocessor)` This method is never called, instead of constructing logic of update from `DatasetTrainer.isUpdateable(IgniteModel)` and `DatasetTrainer.updateModel(IgniteModel, DatasetBuilder, Preprocessor)` in this class we explicitly override update method.

    Constructor parameters in org.apache.ignite.ml.composition.combinators.parallel with type arguments of type IgniteModel
    Constructor and Description
    `ModelsParallelComposition(List<IgniteModel<I,O>> submodels)` Construc an instance of this class from list of submodels.

  - ### Uses of IgniteModel in org.apache.ignite.ml.composition.combinators.sequential

    Classes in org.apache.ignite.ml.composition.combinators.sequential that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ModelsSequentialComposition<I,O1,O2>` Sequential composition of models.

    Fields in org.apache.ignite.ml.composition.combinators.sequential with type parameters of type IgniteModel
    Modifier and Type | Field and Description
    --- | ---
    `protected IgniteBiFunction<Integer,? super IgniteModel<I,O1>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>>` | TrainersSequentialComposition.`datasetMapping` Dataset mapping.

    Methods in org.apache.ignite.ml.composition.combinators.sequential that return IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `IgniteModel<I,O1>` | ModelsSequentialComposition.`firstModel()` Get first model.
    `IgniteModel<O1,O2>` | ModelsSequentialComposition.`secondModel()` Get second model.

    Methods in org.apache.ignite.ml.composition.combinators.sequential that return types with arguments of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `DatasetTrainer<IgniteModel<I,O2>,L>` | TrainersSequentialComposition.`unsafeSimplyTyped()` Performs coersion of this trainer to `DatasetTrainer<IgniteModel<I, O2>, L>`.

    Method parameters in org.apache.ignite.ml.composition.combinators.sequential with type arguments of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `static <I,O,L> TrainersSequentialComposition<I,O,O,L>` | TrainersSequentialComposition.`ofSame(DatasetTrainer<? extends IgniteModel<I,O>,L> tr, IgniteBiFunction<Integer,? super IgniteModel<I,O>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>> datasetMapping, IgniteBiPredicate<Integer,IgniteModel<I,O>> shouldStop, IgniteFunction<O,I> out2In)` Construct sequential composition of same trainers.
    `static <I,O,L> TrainersSequentialComposition<I,O,O,L>` | TrainersSequentialComposition.`ofSame(DatasetTrainer<? extends IgniteModel<I,O>,L> tr, IgniteBiFunction<Integer,? super IgniteModel<I,O>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>> datasetMapping, IgniteBiPredicate<Integer,IgniteModel<I,O>> shouldStop, IgniteFunction<O,I> out2In)` Construct sequential composition of same trainers.
    `static <I,O,L> TrainersSequentialComposition<I,O,O,L>` | TrainersSequentialComposition.`ofSame(DatasetTrainer<? extends IgniteModel<I,O>,L> tr, IgniteBiFunction<Integer,? super IgniteModel<I,O>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>> datasetMapping, IgniteBiPredicate<Integer,IgniteModel<I,O>> shouldStop, IgniteFunction<O,I> out2In)` Construct sequential composition of same trainers.
    `static <I,O> ModelsSequentialComposition<I,O,O>` | ModelsSequentialComposition.`ofSame(List<? extends IgniteModel<I,O>> lst, IgniteFunction<O,I> output2Input)` Get sequential composition of submodels with same type.

    Constructors in org.apache.ignite.ml.composition.combinators.sequential with parameters of type IgniteModel
    Constructor and Description
    `ModelsSequentialComposition(IgniteModel<I,O1> mdl1, IgniteModel<O1,O2> mdl2)` Construct instance of this class from two given models.
    `ModelsSequentialComposition(IgniteModel<I,O1> mdl1, IgniteModel<O1,O2> mdl2)` Construct instance of this class from two given models.

    Constructor parameters in org.apache.ignite.ml.composition.combinators.sequential with type arguments of type IgniteModel
    Constructor and Description
    `TrainersSequentialComposition(DatasetTrainer<? extends IgniteModel<I,O1>,L> tr1, DatasetTrainer<? extends IgniteModel<O1,O2>,L> tr2, IgniteBiFunction<Integer,? super IgniteModel<I,O1>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>> datasetMapping)` Create sequential composition of two trainers.
    `TrainersSequentialComposition(DatasetTrainer<? extends IgniteModel<I,O1>,L> tr1, DatasetTrainer<? extends IgniteModel<O1,O2>,L> tr2, IgniteBiFunction<Integer,? super IgniteModel<I,O1>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>> datasetMapping)` Create sequential composition of two trainers.
    `TrainersSequentialComposition(DatasetTrainer<? extends IgniteModel<I,O1>,L> tr1, DatasetTrainer<? extends IgniteModel<O1,O2>,L> tr2, IgniteBiFunction<Integer,? super IgniteModel<I,O1>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>> datasetMapping)` Create sequential composition of two trainers.
    `TrainersSequentialComposition(DatasetTrainer<? extends IgniteModel<I,O1>,L> tr1, DatasetTrainer<? extends IgniteModel<O1,O2>,L> tr2, IgniteFunction<? super IgniteModel<I,O1>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>> datasetMapping)` Construct sequential composition of given two trainers.
    `TrainersSequentialComposition(DatasetTrainer<? extends IgniteModel<I,O1>,L> tr1, DatasetTrainer<? extends IgniteModel<O1,O2>,L> tr2, IgniteFunction<? super IgniteModel<I,O1>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>> datasetMapping)` Construct sequential composition of given two trainers.
    `TrainersSequentialComposition(DatasetTrainer<? extends IgniteModel<I,O1>,L> tr1, DatasetTrainer<? extends IgniteModel<O1,O2>,L> tr2, IgniteFunction<? super IgniteModel<I,O1>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>> datasetMapping)` Construct sequential composition of given two trainers.

  - ### Uses of IgniteModel in org.apache.ignite.ml.composition.stacking

    Classes in org.apache.ignite.ml.composition.stacking with type parameters of type IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `SimpleStackedDatasetTrainer<I,O,AM extends IgniteModel<I,O>,L>` `DatasetTrainer` with same type of input and output of submodels.
    `class` | `StackedDatasetTrainer<IS,IA,O,AM extends IgniteModel<IA,O>,L>` `DatasetTrainer` encapsulating stacking technique for model training.
    `class` | `StackedModel<IS,IA,O,AM extends IgniteModel<IA,O>>` This is a wrapper for model produced by `StackedDatasetTrainer`.
    `class` | `StackedVectorDatasetTrainer<O,AM extends IgniteModel<Vector,O>,L>` `StackedDatasetTrainer` with `Vector` as submodels input and output.

    Classes in org.apache.ignite.ml.composition.stacking that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `StackedModel<IS,IA,O,AM extends IgniteModel<IA,O>>` This is a wrapper for model produced by `StackedDatasetTrainer`.

    Methods in org.apache.ignite.ml.composition.stacking with type parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `<M1 extends IgniteModel<Matrix,Matrix>> StackedVectorDatasetTrainer<O,AM,L>` | StackedVectorDatasetTrainer.`addMatrix2MatrixTrainer(DatasetTrainer<M1,L> trainer)` Shortcut for adding trainer `Matrix -> Matrix` where this trainer is treated as `Vector -> Vector`, where input `Vector` is turned into `1 x cols` `Matrix` and output is a first row of output `Matrix`.
    `<M1 extends IgniteModel<I,I>> SimpleStackedDatasetTrainer<I,O,AM,L>` | SimpleStackedDatasetTrainer.`addTrainer(DatasetTrainer<M1,L> trainer)` Adds submodel trainer along with converters needed on training and inference stages.
    `<M1 extends IgniteModel<IS,IA>> StackedDatasetTrainer<IS,IA,O,AM,L>` | StackedDatasetTrainer.`addTrainer(DatasetTrainer<M1,L> trainer)` Adds submodel trainer along with converters needed on training and inference stages.
    `<M1 extends IgniteModel<Vector,Vector>> StackedVectorDatasetTrainer<O,AM,L>` | StackedVectorDatasetTrainer.`addTrainer(DatasetTrainer<M1,L> trainer)` Adds submodel trainer along with converters needed on training and inference stages.
    `<M1 extends IgniteModel<Vector,Double>> StackedVectorDatasetTrainer<O,AM,L>` | StackedVectorDatasetTrainer.`addTrainerWithDoubleOutput(DatasetTrainer<M1,L> trainer)` Shortcut for adding trainer `Vector -> Double` where this trainer is treated as `Vector -> Vector`, where output `Vector` is constructed by wrapping double value.

    Constructor parameters in org.apache.ignite.ml.composition.stacking with type arguments of type IgniteModel
    Constructor and Description
    `StackedDatasetTrainer(DatasetTrainer<AM,L> aggregatorTrainer, IgniteBinaryOperator<IA> aggregatingInputMerger, IgniteFunction<IS,IA> submodelInput2AggregatingInputConverter, List<DatasetTrainer<IgniteModel<IS,IA>,L>> submodelsTrainers, IgniteFunction<Vector,IS> vector2SubmodelInputConverter, IgniteFunction<IA,Vector> submodelOutput2VectorConverter)` Create instance of this class.

  - ### Uses of IgniteModel in org.apache.ignite.ml.environment.logging

    Methods in org.apache.ignite.ml.environment.logging that return IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `<K,V> IgniteModel<K,V>` | CustomMLLogger.`log(MLLogger.VerboseLevel verboseLevel, IgniteModel<K,V> mdl)` Log model according to toString method.
    `<K,V> IgniteModel<K,V>` | NoOpLogger.`log(MLLogger.VerboseLevel verboseLevel, IgniteModel<K,V> mdl)` Log model according to toString method.
    `<K,V> IgniteModel<K,V>` | MLLogger.`log(MLLogger.VerboseLevel verboseLevel, IgniteModel<K,V> mdl)` Log model according to toString method.
    `<K,V> IgniteModel<K,V>` | ConsoleLogger.`log(MLLogger.VerboseLevel verboseLevel, IgniteModel<K,V> mdl)` Log model according to toString method.

    Methods in org.apache.ignite.ml.environment.logging with parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `<K,V> IgniteModel<K,V>` | CustomMLLogger.`log(MLLogger.VerboseLevel verboseLevel, IgniteModel<K,V> mdl)` Log model according to toString method.
    `<K,V> IgniteModel<K,V>` | NoOpLogger.`log(MLLogger.VerboseLevel verboseLevel, IgniteModel<K,V> mdl)` Log model according to toString method.
    `<K,V> IgniteModel<K,V>` | MLLogger.`log(MLLogger.VerboseLevel verboseLevel, IgniteModel<K,V> mdl)` Log model according to toString method.
    `<K,V> IgniteModel<K,V>` | ConsoleLogger.`log(MLLogger.VerboseLevel verboseLevel, IgniteModel<K,V> mdl)` Log model according to toString method.

  - ### Uses of IgniteModel in org.apache.ignite.ml.inference

    Methods in org.apache.ignite.ml.inference with parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `static <I extends Serializable,O extends Serializable> void` | IgniteModelStorageUtil.`saveModel(Ignite ignite, IgniteModel<I,O> mdl, String name)` Saved specified model with specified name.

  - ### Uses of IgniteModel in org.apache.ignite.ml.inference.json

    Methods in org.apache.ignite.ml.inference.json that return IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `abstract IgniteModel` | JSONModel.`convert()` Convert JSON string to IgniteModel object.

  - ### Uses of IgniteModel in org.apache.ignite.ml.inference.parser

    Methods in org.apache.ignite.ml.inference.parser that return IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `IgniteModel<I,O>` | IgniteModelParser.`parse(byte[] mdl)` Accepts serialized model represented by byte array, parses it and returns `Model`.

  - ### Uses of IgniteModel in org.apache.ignite.ml.knn

    Classes in org.apache.ignite.ml.knn that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `KNNModel<L>` KNN model build on top of distributed spatial indices.
    `class` | `NNClassificationModel` Common methods and fields for all kNN and aNN models to predict label based on neighbours' labels.

  - ### Uses of IgniteModel in org.apache.ignite.ml.knn.ann

    Classes in org.apache.ignite.ml.knn.ann that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ANNClassificationModel` ANN model to predict labels in multi-class classification task.

  - ### Uses of IgniteModel in org.apache.ignite.ml.knn.classification

    Classes in org.apache.ignite.ml.knn.classification that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `KNNClassificationModel` KNN classification model.

  - ### Uses of IgniteModel in org.apache.ignite.ml.knn.regression

    Classes in org.apache.ignite.ml.knn.regression that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `KNNRegressionModel` KNN regression model.

  - ### Uses of IgniteModel in org.apache.ignite.ml.multiclass

    Classes in org.apache.ignite.ml.multiclass with type parameters of type IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `MultiClassModel<M extends IgniteModel<Vector,Double>>` Base class for multi-classification model for set of classifiers.
    `class` | `OneVsRestTrainer<M extends IgniteModel<Vector,Double>>` This is a common heuristic trainer for multi-class labeled models.

    Classes in org.apache.ignite.ml.multiclass that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `MultiClassModel<M extends IgniteModel<Vector,Double>>` Base class for multi-classification model for set of classifiers.

  - ### Uses of IgniteModel in org.apache.ignite.ml.naivebayes

    Subinterfaces of IgniteModel in org.apache.ignite.ml.naivebayes
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `BayesModel<MODEL extends BayesModel,FEATURES,OUTPUT>` Interface for Bayes Models.

  - ### Uses of IgniteModel in org.apache.ignite.ml.naivebayes.compound

    Classes in org.apache.ignite.ml.naivebayes.compound that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `CompoundNaiveBayesModel` A compound Naive Bayes model which uses a composition of`GaussianNaiveBayesModel` and `DiscreteNaiveBayesModel`.

  - ### Uses of IgniteModel in org.apache.ignite.ml.naivebayes.discrete

    Classes in org.apache.ignite.ml.naivebayes.discrete that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DiscreteNaiveBayesModel` Discrete naive Bayes model which predicts result value `y` belongs to a class `C_k, k in [0..K]` as {@code p(C_k,y) =x_1*p_k1^x *...

  - ### Uses of IgniteModel in org.apache.ignite.ml.naivebayes.gaussian

    Classes in org.apache.ignite.ml.naivebayes.gaussian that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `GaussianNaiveBayesModel` Simple naive Bayes model which predicts result value `y` belongs to a class `C_k, k in [0..K]` as {@code p(C_k,y) = p(C_k)*p(y_1,C_k) *...

  - ### Uses of IgniteModel in org.apache.ignite.ml.nn

    Classes in org.apache.ignite.ml.nn that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `MultilayerPerceptron` Class encapsulating logic of multilayer perceptron.

  - ### Uses of IgniteModel in org.apache.ignite.ml.optimization

    Subinterfaces of IgniteModel in org.apache.ignite.ml.optimization
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `SmoothParametrized<M extends Parametrized<M>>` Interface for models which are smooth functions of their parameters.

  - ### Uses of IgniteModel in org.apache.ignite.ml.pipeline

    Classes in org.apache.ignite.ml.pipeline that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `PipelineMdl<K,V>` Wraps the model produced by `Pipeline`.

    Methods in org.apache.ignite.ml.pipeline that return IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `IgniteModel<Vector,Double>` | PipelineMdl.`getInternalMdl()`

    Methods in org.apache.ignite.ml.pipeline with parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `PipelineMdl<K,V>` | PipelineMdl.`withInternalMdl(IgniteModel<Vector,Double> internalMdl)`

  - ### Uses of IgniteModel in org.apache.ignite.ml.recommendation

    Classes in org.apache.ignite.ml.recommendation that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `RecommendationModel<O extends Serializable,S extends Serializable>` Recommendation model that predicts rating for `ObjectSubjectPair`.

  - ### Uses of IgniteModel in org.apache.ignite.ml.regressions.linear

    Classes in org.apache.ignite.ml.regressions.linear that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `LinearRegressionModel` Simple linear regression model which predicts result value Y as a linear combination of input variables: Y = weights * X + intercept.

  - ### Uses of IgniteModel in org.apache.ignite.ml.regressions.logistic

    Classes in org.apache.ignite.ml.regressions.logistic that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `LogisticRegressionModel` Logistic regression (logit model) is a generalized linear model used for binomial regression.

  - ### Uses of IgniteModel in org.apache.ignite.ml.selection.cv

    Classes in org.apache.ignite.ml.selection.cv with type parameters of type IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractCrossValidation<M extends IgniteModel<Vector,Double>,K,V>` Cross validation score calculator.
    `class` | `CrossValidation<M extends IgniteModel<Vector,Double>,K,V>` Cross validation score calculator.
    `class` | `DebugCrossValidation<M extends IgniteModel<Vector,Double>,K,V>` Cross validation score calculator.

  - ### Uses of IgniteModel in org.apache.ignite.ml.selection.scoring.cursor

    Constructors in org.apache.ignite.ml.selection.scoring.cursor with parameters of type IgniteModel
    Constructor and Description
    `CacheBasedLabelPairCursor(IgniteCache<K,V> upstreamCache, IgniteBiPredicate<K,V> filter, Preprocessor<K,V> preprocessor, IgniteModel<Vector,L> mdl)` Constructs a new instance of cache based truth with prediction cursor.
    `CacheBasedLabelPairCursor(IgniteCache<K,V> upstreamCache, Preprocessor<K,V> preprocessor, IgniteModel<Vector,L> mdl)` Constructs a new instance of cache based truth with prediction cursor.
    `LocalLabelPairCursor(Map<K,V> upstreamMap, IgniteBiPredicate<K,V> filter, Preprocessor<K,V> preprocessor, IgniteModel<Vector,L> mdl)` Constructs a new instance of local truth with prediction cursor.

  - ### Uses of IgniteModel in org.apache.ignite.ml.selection.scoring.evaluator

    Methods in org.apache.ignite.ml.selection.scoring.evaluator with parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `static <K,V> EvaluationResult` | Evaluator.`evaluate(DatasetBuilder<K,V> datasetBuilder, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor, Metric... metrics)` Evaluate model.
    `static <K,V> double` | Evaluator.`evaluate(IgniteCache<K,V> dataCache, IgniteBiPredicate<K,V> filter, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor, Metric metric)` Computes the given metric on the given cache.
    `static <K,V> double` | Evaluator.`evaluate(IgniteCache<K,V> dataCache, IgniteBiPredicate<K,V> filter, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor, MetricName metric)` Computes the given metric on the given cache.
    `static <K,V> double` | Evaluator.`evaluate(IgniteCache<K,V> dataCache, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor, Metric metric)` Computes the given metric on the given cache.
    `static <K,V> double` | Evaluator.`evaluate(IgniteCache<K,V> dataCache, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor, MetricName metric)` Computes the given metric on the given cache.
    `static <K,V> double` | Evaluator.`evaluate(Map<K,V> dataCache, IgniteBiPredicate<K,V> filter, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor, Metric metric)` Computes the given metric on the given cache.
    `static <K,V> double` | Evaluator.`evaluate(Map<K,V> dataCache, IgniteBiPredicate<K,V> filter, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor, MetricName metric)` Computes the given metric on the given cache.
    `static <K,V> double` | Evaluator.`evaluate(Map<K,V> dataCache, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor, Metric metric)` Computes the given metric on the given cache.
    `static <K,V> double` | Evaluator.`evaluate(Map<K,V> dataCache, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor, MetricName metric)` Computes the given metric on the given cache.
    `static <K,V> EvaluationResult` | Evaluator.`evaluateBinaryClassification(IgniteCache<K,V> dataCache, IgniteBiPredicate<K,V> filter, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor)` Evaluate binary classifier by default metrics (see package classification).
    `static <K,V> EvaluationResult` | Evaluator.`evaluateBinaryClassification(IgniteCache<K,V> dataCache, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor)` Evaluate binary classifier by default metrics (see package classification).
    `static <K,V> EvaluationResult` | Evaluator.`evaluateBinaryClassification(Map<K,V> dataCache, IgniteBiPredicate<K,V> filter, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor)` Evaluate binary classifier by default metrics (see package classification).
    `static <K,V> EvaluationResult` | Evaluator.`evaluateBinaryClassification(Map<K,V> dataCache, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor)` Evaluate binary classifier by default metrics (see package classification).
    `static <K,V> EvaluationResult` | Evaluator.`evaluateRegression(IgniteCache<K,V> dataCache, IgniteBiPredicate<K,V> filter, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor)` Evaluate regression by default metrics (see package regression).
    `static <K,V> EvaluationResult` | Evaluator.`evaluateRegression(IgniteCache<K,V> dataCache, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor)` Evaluate regression by default metrics (see package regression).
    `static <K,V> EvaluationResult` | Evaluator.`evaluateRegression(Map<K,V> dataCache, IgniteBiPredicate<K,V> filter, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor)` Evaluate regression by default metrics (see package regression).
    `static <K,V> EvaluationResult` | Evaluator.`evaluateRegression(Map<K,V> dataCache, IgniteModel<Vector,Double> mdl, Preprocessor<K,V> preprocessor)` Evaluate regression by default metrics (see package regression).

  - ### Uses of IgniteModel in org.apache.ignite.ml.selection.scoring.evaluator.aggregator

    Methods in org.apache.ignite.ml.selection.scoring.evaluator.aggregator with parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `void` | RegressionMetricStatsAggregator.`aggregate(IgniteModel<Vector,Double> model, LabeledVector<Double> vector)` Aggregates statistics for metric computation given model and vector with answer.
    `void` | BinaryClassificationPointwiseMetricStatsAggregator.`aggregate(IgniteModel<Vector,L> mdl, LabeledVector<L> vector)` Aggregates statistics for metric computation given model and vector with answer.
    `void` | ClassificationMetricsAggregator.`aggregate(IgniteModel<Vector,L> mdl, LabeledVector<L> vector)` Aggregates statistics for metric computation given model and vector with answer.
    `void` | MetricStatsAggregator.`aggregate(IgniteModel<Vector,L> model, LabeledVector<L> vector)` Aggregates statistics for metric computation given model and vector with answer.

  - ### Uses of IgniteModel in org.apache.ignite.ml.svm

    Classes in org.apache.ignite.ml.svm that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `SVMLinearClassificationModel` Base class for SVM linear classification model.

  - ### Uses of IgniteModel in org.apache.ignite.ml.trainers

    Classes in org.apache.ignite.ml.trainers with type parameters of type IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AdaptableDatasetModel<I,O,IW,OW,M extends IgniteModel<IW,OW>>` Model which is composition of form `before `andThen` inner Mdl `andThen` after`.
    `class` | `AdaptableDatasetTrainer<I,O,IW,OW,M extends IgniteModel<IW,OW>,L>` Type used to adapt input and output types of wrapped `DatasetTrainer`.
    `class` | `DatasetTrainer<M extends IgniteModel,L>` Interface for trainers.
    `class` | `MultiLabelDatasetTrainer<M extends IgniteModel>` Interface for trainers that trains on dataset with multiple label per object.
    `class` | `SingleLabelDatasetTrainer<M extends IgniteModel>` Interface for trainers that trains on dataset with singe label per object.

    Classes in org.apache.ignite.ml.trainers that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AdaptableDatasetModel<I,O,IW,OW,M extends IgniteModel<IW,OW>>` Model which is composition of form `before `andThen` inner Mdl `andThen` after`.

    Methods in org.apache.ignite.ml.trainers with type parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `<O1,M1 extends IgniteModel<O,O1>> TrainersSequentialComposition<I,O,O1,L>` | AdaptableDatasetTrainer.`andThen(DatasetTrainer<M1,L> tr, IgniteFunction<AdaptableDatasetModel<I,O,IW,OW,M>,IgniteFunction<LabeledVector<L>,LabeledVector<L>>> datasetMappingProducer)` Create a `TrainersSequentialComposition` of this trainer and specified trainer.
    `static <M extends IgniteModel<Vector,Double>,L> BaggedTrainer<L>` | TrainerTransformers.`makeBagged(DatasetTrainer<M,L> trainer, int ensembleSize, double subsampleRatio, int featureVectorSize, int featuresSubspaceDim, PredictionsAggregator aggregator)` Add bagging logic to a given trainer.
    `static <I,O,M extends IgniteModel<I,O>,L> AdaptableDatasetTrainer<I,O,I,O,M,L>` | AdaptableDatasetTrainer.`of(DatasetTrainer<M,L> wrapped)` Construct instance of this class from a given `DatasetTrainer`.
    `<M1 extends IgniteModel<IW,OW>> AdaptableDatasetModel<I,O,IW,OW,M1>` | AdaptableDatasetModel.`withInnerModel(M1 mdl)` Create new instance of this class with changed inner model.

    Methods in org.apache.ignite.ml.trainers that return types with arguments of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `static <I,L> DatasetTrainer<IgniteModel<I,I>,L>` | DatasetTrainer.`identityTrainer()` Returns the trainer which returns identity model.

    Methods in org.apache.ignite.ml.trainers with parameters of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `<O1> AdaptableDatasetModel<I,O1,IW,OW,M>` | AdaptableDatasetModel.`andThen(IgniteModel<O,O1> after)` Get a composition model of the form `x -> after(mdl(x))`.

    Method parameters in org.apache.ignite.ml.trainers with type arguments of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `static <L> BaggedTrainer<L>` | TrainerTransformers.`makeBagged(DatasetTrainer<? extends IgniteModel,L> trainer, int ensembleSize, double subsampleRatio, PredictionsAggregator aggregator)` Add bagging logic to a given trainer.

  - ### Uses of IgniteModel in org.apache.ignite.ml.tree

    Classes in org.apache.ignite.ml.tree that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DecisionTreeConditionalNode` Decision tree conditional (non-leaf) node.
    `class` | `DecisionTreeLeafNode` Decision tree leaf node which contains value.
    `class` | `DecisionTreeModel` Base class for decision tree models.
    `class` | `DecisionTreeNode` Base interface for decision tree nodes.

  - ### Uses of IgniteModel in org.apache.ignite.ml.tree.boosting

    Methods in org.apache.ignite.ml.tree.boosting that return types with arguments of type IgniteModel
    Modifier and Type | Method and Description
    --- | ---
    `<K,V> List<IgniteModel<Vector,Double>>` | GDBOnTreesLearningStrategy.`update(GDBModel mdlToUpdate, DatasetBuilder<K,V> datasetBuilder, Preprocessor<K,V> vectorizer)` Gets state of model in arguments, compare it with training parameters of trainer and if they are fit then trainer updates model in according to new data and return new model.

  - ### Uses of IgniteModel in org.apache.ignite.ml.tree.randomforest

    Classes in org.apache.ignite.ml.tree.randomforest that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `RandomForestModel` Random Forest Model class.

  - ### Uses of IgniteModel in org.apache.ignite.ml.tree.randomforest.data

    Classes in org.apache.ignite.ml.tree.randomforest.data that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `RandomForestTreeModel` Tree root class.
    `class` | `TreeNode` Decision tree node class.

  - ### Uses of IgniteModel in org.apache.ignite.ml.xgboost

    Classes in org.apache.ignite.ml.xgboost that implement IgniteModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `XGModelComposition` XGBoost model composition.

${current.year} Copyright © Apache Software Foundation
| Follow @ApacheIgnite
Ignite Database and Caching Platform | : ver. 2.15.0
Release Date | : April 25 2023