All Projects → zhenlingcn → EvolutionaryForest

zhenlingcn / EvolutionaryForest

Licence: LGPL-3.0 license
An open source python library for automated feature engineering based on Genetic Programming

Programming Languages

python
139335 projects - #7 most used programming language
Jupyter Notebook
11667 projects
Makefile
30231 projects

Projects that are alternatives of or similar to EvolutionaryForest

featuretoolsOnSpark
A simplified version of featuretools for Spark
Stars: ✭ 24 (-57.14%)
Mutual labels:  feature-engineering, automl, automated-machine-learning, automated-feature-engineering
Featuretools
An open source python library for automated feature engineering
Stars: ✭ 5,891 (+10419.64%)
Mutual labels:  feature-engineering, automl, automated-machine-learning, automated-feature-engineering
Tpot
A Python Automated Machine Learning tool that optimizes machine learning pipelines using genetic programming.
Stars: ✭ 8,378 (+14860.71%)
Mutual labels:  feature-engineering, automl, automated-machine-learning
Mljar Supervised
Automated Machine Learning Pipeline with Feature Engineering and Hyper-Parameters Tuning 🚀
Stars: ✭ 961 (+1616.07%)
Mutual labels:  feature-engineering, automl, automated-machine-learning
Nni
An open source AutoML toolkit for automate machine learning lifecycle, including feature engineering, neural architecture search, model compression and hyper-parameter tuning.
Stars: ✭ 10,698 (+19003.57%)
Mutual labels:  feature-engineering, automl, automated-machine-learning
mindware
An efficient open-source AutoML system for automating machine learning lifecycle, including feature engineering, neural architecture search, and hyper-parameter tuning.
Stars: ✭ 34 (-39.29%)
Mutual labels:  feature-engineering, automl, automated-machine-learning
Autodl
Automated Deep Learning without ANY human intervention. 1'st Solution for AutoDL [email protected]
Stars: ✭ 854 (+1425%)
Mutual labels:  feature-engineering, automl, automated-machine-learning
Lightautoml
LAMA - automatic model creation framework
Stars: ✭ 196 (+250%)
Mutual labels:  feature-engineering, automl, automated-machine-learning
Autofeat
Linear Prediction Model with Automated Feature Engineering and Selection Capabilities
Stars: ✭ 178 (+217.86%)
Mutual labels:  feature-engineering, automl, automated-machine-learning
Auto ml
[UNMAINTAINED] Automated machine learning for analytics & production
Stars: ✭ 1,559 (+2683.93%)
Mutual labels:  feature-engineering, automl, automated-machine-learning
FEDOT
Automated modeling and machine learning framework FEDOT
Stars: ✭ 312 (+457.14%)
Mutual labels:  genetic-programming, automl, automated-machine-learning
Transmogrifai
TransmogrifAI (pronounced trăns-mŏgˈrə-fī) is an AutoML library for building modular, reusable, strongly typed machine learning workflows on Apache Spark with minimal hand-tuning
Stars: ✭ 2,084 (+3621.43%)
Mutual labels:  feature-engineering, automl, automated-machine-learning
My Data Competition Experience
本人多次机器学习与大数据竞赛Top5的经验总结,满满的干货,拿好不谢
Stars: ✭ 271 (+383.93%)
Mutual labels:  feature-engineering, automl
Kaggler
Code for Kaggle Data Science Competitions
Stars: ✭ 614 (+996.43%)
Mutual labels:  feature-engineering, automl
AutoTabular
Automatic machine learning for tabular data. ⚡🔥⚡
Stars: ✭ 51 (-8.93%)
Mutual labels:  feature-engineering, automl
Evalml
EvalML is an AutoML library written in python.
Stars: ✭ 145 (+158.93%)
Mutual labels:  feature-engineering, automl
Remixautoml
R package for automation of machine learning, forecasting, feature engineering, model evaluation, model interpretation, data generation, and recommenders.
Stars: ✭ 159 (+183.93%)
Mutual labels:  feature-engineering, automated-machine-learning
Auto viml
Automatically Build Multiple ML Models with a Single Line of Code. Created by Ram Seshadri. Collaborators Welcome. Permission Granted upon Request.
Stars: ✭ 216 (+285.71%)
Mutual labels:  automl, automated-machine-learning
Hyperactive
A hyperparameter optimization and data collection toolbox for convenient and fast prototyping of machine-learning models.
Stars: ✭ 182 (+225%)
Mutual labels:  feature-engineering, automated-machine-learning
Recipe
Automated machine learning (AutoML) with grammar-based genetic programming
Stars: ✭ 42 (-25%)
Mutual labels:  genetic-programming, automl

Evolutionary Forest

Documentation Status Updates

An open source python library for automated feature engineering based on Genetic Programming

Introduction

Feature engineering is a long-standing issue that has plagued machine learning practitioners for many years. Deep learning techniques have significantly reduced the need for manual feature engineering in recent years. However, a critical issue is that the features discovered by deep learning methods are difficult to interpret.

In the domain of interpretable machine learning, genetic programming has demonstrated to be a promising method for automated feature construction, as it can improve the performance of traditional machine learning systems while maintaining similar interpretability. Nonetheless, such a potent method is rarely mentioned by practitioners. We believe that the main reason for this phenomenon is that there is still a lack of a mature package that can automatically build features based on the genetic programming algorithm. As a result, we propose this package with the goal of providing a powerful feature construction tool for enhancing existing state-of-the-art machine learning algorithms, particularly decision-tree based algorithms.

Features

  • A powerful feature construction tool for generating interpretable machine learning features.
  • A reliable machine learning model has powerful performance on the small dataset.

Installation

pip install -U evolutionary_forest

Supported Algorithms

Example

An example of usage:

X, y = load_diabetes(return_X_y=True)
x_train, x_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
r = EvolutionaryForestRegressor(max_height=3, normalize=True, select='AutomaticLexicase',
                                gene_num=10, boost_size=100, n_gen=20, n_pop=200, cross_pb=1,
                                base_learner='Random-DT', verbose=True)
r.fit(x_train, y_train)
print(r2_score(y_test, r.predict(x_test)))

An example of improvements brought about by constructed features:

https://raw.githubusercontent.com/zhenlingcn/EvolutionaryForest/master/docs/constructed_features.png

Documentation

Tutorial: English Version | 中文版本

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

Citation

Please cite our paper if you find it helpful :)

@article{EvolutionaryForest,
    title        = {An Evolutionary Forest for Regression},
    author       = {Zhang, Hengzhe and Zhou, Aimin and Zhang, Hu},
    year         = 2022,
    journal      = {IEEE Transactions on Evolutionary Computation},
    volume       = 26,
    number       = 4,
    pages        = {735--749},
    doi          = {10.1109/TEVC.2021.3136667}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].