官方文档请戳这里?:https://epistasislab.github.io/tpot/
现有的大部分博文都是参考官方文档的,还是直接看最正宗的吧,看英文还是需要些耐心的吧,哈哈哈~
0. 概述
它一种基于遗传算法优化机器学习管道(pipeline)的Python自动机器学习工具。
简单来说,就是TPOT可以智能地探索数千个可能的pipeline,为数据集找到最好的pipeline,从而实现机器学习中最乏味的部分。
由上图可知,TPOT可以自动实现阴影部分的特征工作,包含特征选择、特征预处理、特征构建、同时还可以进行模型选择和参数调优。
最主要的是,一旦TPOT完成搜索,TPOT同时还提供Python代码,方便后续修改。(此处如果有疑惑,可以看下下面的栗子很快就明白了)
1. 以IRIS数据集为例,使用TPOT
TPOT的接口,与scikit-learn很类似,熟练使用过scikit-learn的同学可以很快上手。
直接上代码:
# 直接导入即可,此处使用的是分类器
from tpot import TPOTClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
import numpy as np
# 导入数据集,构建训练和测试样本
iris = load_iris()
X_train,X_test,y_train,y_test = train_test_split(iris.data,iris.target,train_size=0.75,test_size=0.25)
# 建模