public class GAFE
extends java.lang.Object
| Constructor and Description |
|---|
GAFE()
Constructor.
|
GAFE(smile.gap.Selection selection,
int elitism,
smile.gap.Crossover crossover,
double crossoverRate,
double mutationRate)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
smile.gap.BitString[] |
apply(int size,
int generation,
int length,
smile.gap.Fitness<smile.gap.BitString> fitness)
Genetic algorithm based feature selection for classification.
|
static smile.gap.Fitness<smile.gap.BitString> |
fitness(double[][] x,
double[] y,
double[][] testx,
double[] testy,
RegressionMetric metric,
java.util.function.BiFunction<double[][],double[],Regression<double[]>> trainer)
Returns a regression fitness function.
|
static smile.gap.Fitness<smile.gap.BitString> |
fitness(double[][] x,
int[] y,
double[][] testx,
int[] testy,
ClassificationMetric metric,
java.util.function.BiFunction<double[][],int[],Classifier<double[]>> trainer)
Returns a classification fitness measure.
|
static smile.gap.Fitness<smile.gap.BitString> |
fitness(java.lang.String y,
smile.data.DataFrame train,
smile.data.DataFrame test,
ClassificationMetric metric,
java.util.function.BiFunction<smile.data.formula.Formula,smile.data.DataFrame,DataFrameClassifier> trainer)
Returns a classification fitness function.
|
static smile.gap.Fitness<smile.gap.BitString> |
fitness(java.lang.String y,
smile.data.DataFrame train,
smile.data.DataFrame test,
RegressionMetric metric,
java.util.function.BiFunction<smile.data.formula.Formula,smile.data.DataFrame,DataFrameRegression> trainer)
Returns a regression fitness function.
|
public GAFE()
public GAFE(smile.gap.Selection selection,
int elitism,
smile.gap.Crossover crossover,
double crossoverRate,
double mutationRate)
selection - the selection strategy.crossover - the strategy of crossover operation.crossoverRate - the crossover rate.mutationRate - the mutation rate.public smile.gap.BitString[] apply(int size,
int generation,
int length,
smile.gap.Fitness<smile.gap.BitString> fitness)
size - the population size of Genetic Algorithm.generation - the maximum number of iterations.length - the length of bit string, i.e. the number of features.public static smile.gap.Fitness<smile.gap.BitString> fitness(double[][] x,
int[] y,
double[][] testx,
int[] testy,
ClassificationMetric metric,
java.util.function.BiFunction<double[][],int[],Classifier<double[]>> trainer)
x - training samples.y - training labels.testx - testing samples.testy - testing labels.metric - classification metric.trainer - the lambda to train a model.public static smile.gap.Fitness<smile.gap.BitString> fitness(double[][] x,
double[] y,
double[][] testx,
double[] testy,
RegressionMetric metric,
java.util.function.BiFunction<double[][],double[],Regression<double[]>> trainer)
x - training samples.y - training response.testx - testing samples.testy - testing response.metric - classification metric.trainer - the lambda to train a model.public static smile.gap.Fitness<smile.gap.BitString> fitness(java.lang.String y,
smile.data.DataFrame train,
smile.data.DataFrame test,
ClassificationMetric metric,
java.util.function.BiFunction<smile.data.formula.Formula,smile.data.DataFrame,DataFrameClassifier> trainer)
y - the column name of class labels.train - training data.test - testing data.metric - classification metric.trainer - the lambda to train a model.public static smile.gap.Fitness<smile.gap.BitString> fitness(java.lang.String y,
smile.data.DataFrame train,
smile.data.DataFrame test,
RegressionMetric metric,
java.util.function.BiFunction<smile.data.formula.Formula,smile.data.DataFrame,DataFrameRegression> trainer)
y - the column name of response variable.train - training data.test - testing data.metric - classification metric.trainer - the lambda to train a model.