Skip to content

Commit

Permalink
Add feature generator category
Browse files Browse the repository at this point in the history
  • Loading branch information
roquelopez committed May 7, 2024
1 parent 98ddbaa commit bf419fd
Show file tree
Hide file tree
Showing 2 changed files with 58 additions and 54 deletions.
11 changes: 6 additions & 5 deletions alpha_automl/resource/base_grammar.bnf
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
S -> CLASSIFICATION_TASK | REGRESSION_TASK | CLUSTERING_TASK | TIME_SERIES_FORECAST_TASK | SEMISUPERVISED_TASK
CLASSIFICATION_TASK -> IMPUTER ENCODERS FEATURE_SCALER FEATURE_SELECTOR CLASSIFIER CLASSIFICATION_ENSEMBLER
REGRESSION_TASK -> IMPUTER ENCODERS FEATURE_SELECTOR FEATURE_SCALER REGRESSOR REGRESSION_ENSEMBLER
CLUSTERING_TASK -> IMPUTER ENCODERS FEATURE_SCALER FEATURE_SELECTOR CLUSTERER
S -> CLASSIFICATION_TASK | REGRESSION_TASK | CLUSTERING_TASK | TIME_SERIES_FORECAST_TASK | SEMISUPERVISED_TASK | NA_TASK
CLASSIFICATION_TASK -> IMPUTER ENCODERS FEATURE_GENERATOR FEATURE_SCALER FEATURE_SELECTOR CLASSIFIER CLASSIFICATION_ENSEMBLER
REGRESSION_TASK -> IMPUTER ENCODERS FEATURE_GENERATOR FEATURE_SCALER FEATURE_SELECTOR REGRESSOR REGRESSION_ENSEMBLER
CLUSTERING_TASK -> IMPUTER ENCODERS FEATURE_GENERATOR FEATURE_SCALER FEATURE_SELECTOR CLUSTERER
TIME_SERIES_FORECAST_TASK -> IMPUTER TIME_SERIES_FORECASTER | REGRESSION_TASK
SEMISUPERVISED_TASK -> IMPUTER ENCODERS FEATURE_SCALER SEMISUPERVISED_CLASSIFIER
SEMISUPERVISED_TASK -> IMPUTER ENCODERS FEATURE_GENERATOR FEATURE_SCALER SEMISUPERVISED_CLASSIFIER
NA_TASK -> CLASSIFICATION_TASK | REGRESSION_TASK | SEMISUPERVISED_TASK
ENCODERS -> TEXT_ENCODER DATETIME_ENCODER CATEGORICAL_ENCODER IMAGE_ENCODER
CLASSIFICATION_ENSEMBLER -> CLASSIFICATION_SINGLE_ENSEMBLER | CLASSIFIER CLASSIFIER CLASSIFICATION_MULTI_ENSEMBLER | E
REGRESSION_ENSEMBLER -> REGRESSION_SINGLE_ENSEMBLER | REGRESSOR REGRESSOR REGRESSION_MULTI_ENSEMBLER | E
SEMISUPERVISED_CLASSIFIER -> CLASSIFIER SEMISUPERVISED_SELFTRAINER | SEMISUPERVISED_LABELPROPAGATOR
IMPUTER -> 'primitive_terminal'
FEATURE_GENERATOR -> 'primitive_terminal' | 'E'
FEATURE_SCALER -> 'primitive_terminal' | 'E'
FEATURE_SELECTOR -> 'primitive_terminal' | 'E'
TEXT_ENCODER -> 'primitive_terminal'
Expand Down
101 changes: 52 additions & 49 deletions alpha_automl/resource/primitives_hierarchy.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,56 @@
{
"IMPUTER": [
"sklearn.impute.SimpleImputer"
],
"CATEGORICAL_ENCODER": [
"sklearn.preprocessing.OneHotEncoder"
],
"DATETIME_ENCODER": [
"sklearn.preprocessing.OrdinalEncoder",
"alpha_automl.builtin_primitives.datetime_encoder.CyclicalFeature",
"alpha_automl.builtin_primitives.datetime_encoder.Datetime64ExpandEncoder",
"alpha_automl.builtin_primitives.datetime_encoder.DummyEncoder"
],
"TEXT_ENCODER": [
"sklearn.feature_extraction.text.CountVectorizer",
"sklearn.feature_extraction.text.TfidfVectorizer"
],
"IMAGE_ENCODER": [
"alpha_automl.builtin_primitives.image_encoder.RGB2GrayTransformer",
"alpha_automl.builtin_primitives.image_encoder.HogTransformer"
],
"FEATURE_GENERATOR": [
"sklearn.preprocessing.PolynomialFeatures"
],
"FEATURE_SCALER": [
"sklearn.preprocessing.MaxAbsScaler",
"sklearn.preprocessing.RobustScaler",
"sklearn.preprocessing.StandardScaler"
],
"FEATURE_SELECTOR": [
"sklearn.feature_selection.GenericUnivariateSelect",
"sklearn.feature_selection.SelectPercentile",
"sklearn.feature_selection.SelectKBest"
],
"COLUMN_TRANSFORMER": [
"sklearn.compose.ColumnTransformer"
],
"CLASSIFICATION_SINGLE_ENSEMBLER": [
"sklearn.ensemble.AdaBoostClassifier",
"sklearn.ensemble.BaggingClassifier"
],
"CLASSIFICATION_MULTI_ENSEMBLER": [
"sklearn.ensemble.StackingClassifier",
"sklearn.ensemble.VotingClassifier"
],
"REGRESSION_SINGLE_ENSEMBLER": [
"sklearn.ensemble.AdaBoostRegressor",
"sklearn.ensemble.BaggingRegressor"
],
"REGRESSION_MULTI_ENSEMBLER": [
"sklearn.ensemble.StackingRegressor",
"sklearn.ensemble.VotingRegressor"
],
"CLASSIFIER": [
"sklearn.discriminant_analysis.LinearDiscriminantAnalysis",
"sklearn.discriminant_analysis.QuadraticDiscriminantAnalysis",
Expand All @@ -22,29 +71,6 @@
"lightgbm.LGBMClassifier",
"catboost.CatBoostClassifier"
],
"CLUSTERER": [
"sklearn.cluster.KMeans",
"sklearn.cluster.AgglomerativeClustering"
],
"DATETIME_ENCODER": [
"sklearn.preprocessing.OrdinalEncoder",
"alpha_automl.builtin_primitives.datetime_encoder.CyclicalFeature",
"alpha_automl.builtin_primitives.datetime_encoder.Datetime64ExpandEncoder",
"alpha_automl.builtin_primitives.datetime_encoder.DummyEncoder"
],
"FEATURE_SCALER": [
"sklearn.preprocessing.MaxAbsScaler",
"sklearn.preprocessing.RobustScaler",
"sklearn.preprocessing.StandardScaler"
],
"FEATURE_SELECTOR": [
"sklearn.feature_selection.GenericUnivariateSelect",
"sklearn.feature_selection.SelectPercentile",
"sklearn.feature_selection.SelectKBest"
],
"IMPUTER": [
"sklearn.impute.SimpleImputer"
],
"REGRESSOR": [
"sklearn.linear_model.ARDRegression",
"sklearn.tree.DecisionTreeRegressor",
Expand Down Expand Up @@ -72,16 +98,9 @@
"lightgbm.LGBMRegressor",
"catboost.CatBoostRegressor"
],
"TEXT_ENCODER": [
"sklearn.feature_extraction.text.CountVectorizer",
"sklearn.feature_extraction.text.TfidfVectorizer"
],
"IMAGE_ENCODER": [
"alpha_automl.builtin_primitives.image_encoder.RGB2GrayTransformer",
"alpha_automl.builtin_primitives.image_encoder.HogTransformer"
],
"COLUMN_TRANSFORMER": [
"sklearn.compose.ColumnTransformer"
"CLUSTERER": [
"sklearn.cluster.KMeans",
"sklearn.cluster.AgglomerativeClustering"
],
"TIME_SERIES_FORECASTER": [
"alpha_automl.builtin_primitives.time_series_forecasting.ArimaEstimator",
Expand All @@ -96,21 +115,5 @@
"SEMISUPERVISED_LABELPROPAGATOR": [
"alpha_automl.builtin_primitives.semisupervised_classifier.SkLabelSpreading",
"alpha_automl.builtin_primitives.semisupervised_classifier.SkLabelPropagation"
],
"CLASSIFICATION_SINGLE_ENSEMBLER": [
"sklearn.ensemble.AdaBoostClassifier",
"sklearn.ensemble.BaggingClassifier"
],
"CLASSIFICATION_MULTI_ENSEMBLER": [
"sklearn.ensemble.StackingClassifier",
"sklearn.ensemble.VotingClassifier"
],
"REGRESSION_SINGLE_ENSEMBLER": [
"sklearn.ensemble.AdaBoostRegressor",
"sklearn.ensemble.BaggingRegressor"
],
"REGRESSION_MULTI_ENSEMBLER": [
"sklearn.ensemble.StackingRegressor",
"sklearn.ensemble.VotingRegressor"
]
}

0 comments on commit bf419fd

Please sign in to comment.