Hybrid Intelligent AutoML: Rule-Based + LLM-Guided Reasoning - 100% Automatic
Project description
[TMLR 2026] LLM-FE: Automated Feature Engineering for Tabular Data with LLMs as Evolutionary Optimizers
Official implementation of LLM-FE: Automated Feature Engineering for Tabular Data with LLMs as Evolutionary Optimizers.
📄 Overview
LLM-FE is a novel framework that leverages Large Language Models (LLMs) as evolutionary optimizers to automate feature engineering for tabular datasets. LLM-FE iteratively generates and refines features using structured prompts, selecting high-impact transformations based on model performance. This approach enables the discovery of interpretable and high-quality features, enhancing the performance of various machine learning models across diverse classification and regression tasks.
⚙️ Installation
To run the code, create a conda environment and install the dependencies using requirements.txt:
conda create -n llmfe python=3.11.7
conda activate llmfe
pip install -r requirements.txt
🔧 Usage
In run_llmfe.sh file, set the OPENAI API key under
export API KEY = <ENTER YOUR API KEY>
To run the LLM-FE pipeline on a sample dataset:
bash run_llmfe.sh
✅ Evaluation
-
The generated features for each dataset are stored in the logs under the
samples/folder. -
Install
caafeinto your environment before running the evaluation.conda activate llmfe pip install caafe -
To run the evaluation, open the
evaluation.ipynbnotebook and set thepb_namevariable to the dataset name you want to evaluate (i.e., replace the existing dataset name inpb_namewith your target dataset), then run the notebook cells.
📝 Citation
@article{
abhyankar2026llmfe,
title={{LLM}-{FE}: Automated Feature Engineering for Tabular Data with {LLM}s as Evolutionary Optimizers},
author={Nikhil Abhyankar and Parshin Shojaee and Chandan K. Reddy},
journal={Transactions on Machine Learning Research},
issn={2835-8856},
year={2026},
url={https://openreview.net/forum?id=qvI35hkpOO}
}
📄 License
This repository is licensed under MIT licence.
This work is built on top of other open source projects like FunSearch and LLM-SR. We thank the original contributors of these works for open-sourcing their valuable source codes.
📬 Contact Us
For any questions or issues, you are welcome to open an issue in this repo, or contact us at nikhilsa@vt.edu and parshinshojaee@vt.edu.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file evoreason-1.0.0.tar.gz.
File metadata
- Download URL: evoreason-1.0.0.tar.gz
- Upload date:
- Size: 53.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
786f543f194ad4af86ab8dea4be42e3619172767fa7f83cbb34b04159e95e000
|
|
| MD5 |
77afd1a9202344420a2ac2104b64ad83
|
|
| BLAKE2b-256 |
dc16913ed38cdfec8ec15b6d770608486f6485fe493a855c2bd23173f0d05fd6
|
File details
Details for the file evoreason-1.0.0-py3-none-any.whl.
File metadata
- Download URL: evoreason-1.0.0-py3-none-any.whl
- Upload date:
- Size: 55.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ad797b32f81cf9e45e33acb9417cbc440a0133e73c48d612702a6e4527c5a69e
|
|
| MD5 |
99a5d5b155f44ebcd47c25f27197c208
|
|
| BLAKE2b-256 |
4e09acd56196b970a5b4fc6782987952ac8e96940ea640ff044d1536f29a7088
|