epistasislab/tpot

A Python Automated Machine Learning tool that optimizes machine learning pipelines using genetic programming.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 22 minutes ago
Added to GitGenius on September 6th, 2026
Created on November 3rd, 2015
Open Issues & Pull Requests: 312 (+0)
GitHub issues: Enabled
Number of forks: 1,559
Total Stargazers: 10,051 (+0)
Total Subscribers: 274 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 3.2 hours
Mean response time: 5.8 days
90th percentile: 5.9 days
Tracked items: 22

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 21
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 664 days
Stale 30+ days: 21
Stale 90+ days: 20

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • enhancement (2)
  • bug (1)
  • need contributor (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

TPOT is a Python automated machine learning tool that optimizes machine learning pipelines using genetic programming.

TPOT addresses the challenge of constructing effective machine learning pipelines by automating the process of pipeline design and hyperparameter tuning. Rather than requiring data scientists to manually select preprocessing steps, feature engineering techniques, and model algorithms, TPOT uses genetic programming to evolve pipelines that perform well on a given dataset. The tool treats pipeline construction as an optimization problem where candidate solutions are iteratively refined through selection and variation operators.

TPOT suits practitioners who want to reduce the manual effort involved in pipeline construction or who lack deep expertise in machine learning model selection. It works well for tabular data problems where the goal is to discover effective preprocessing and modeling combinations without extensive trial and error. The tool integrates with scikit-learn, making it accessible to users already familiar with that ecosystem.

The project underwent substantial internal restructuring, with the codebase rewritten from scratch to improve efficiency and performance. The refactored version introduced genetic feature selection, expanded search space definition capabilities, multi-objective optimization support, and a more modular framework for customizing the evolutionary algorithm. Development activity shows ongoing maintenance with regular testing infrastructure in place and continued refinement of the tool's core functionality.