Turik,

Basically we have two main concepts the model and the trainer. Each machine
learning method generates some model which could predict some result based
on learning dataset. This model is just a function and model training is
minimization of loss function, difference between model predictions and
actual values. 

The model trainer is a mechanism for minimization of loss function. Usually
for this purpose uses gradient descent or its variations like SGD.

And here we could use genetic algorithm for minimization of loss function.
Usining genetic algorithm we could find optimal values for neuron weights in
neural network, cluster centers, regression coefficients, etc.

For both contepts we have API: org.apache.ignite.ml.Model and
org.apache.ignite.ml.Trainer. So if we want to use genetic algoritm for
model trainig we should implement specific trainer for each ML algorithms
like lin regression, kmean, decision tree and others.

For example let`s take a look on lin regression. Currently we have OLS
(Ordinary Least Squares) multiple linear regression. For this regression we
will have OLSRegressionModel and at least two possible trainers: analytical
trainer (a solution of matrix equation, analytical solution) and gradient
descent (numerical solution). And also we could implement GA trainer which
will use GA Grid.

NB: this API is currently under development and right now lin regression
doesn't use model and trainer API, we will refactor this algorithm in
nearest future.

Regards,
Yury



--
Sent from: http://apache-ignite-developers.2346864.n4.nabble.com/

Reply via email to