自动化机器学习(AutoML)可以帮助机器学习管道中的某些关键组件实现自动化。其中机器学习管道包括数据理解、数据工程、特征工程、模型训练、超参数调整、模型监控等。
在这篇文章中,我将分享8个开源的autoML框架:
Auto-SklearnTPOTAuto-ViMLH2OAutoMLAuto-KerasMLBoxHyperoptSklearnAutoGluon1、Auto-SklearnAuto-sklearn是基于scikit-learn软件包构建的开源AutoML库。它为给定的数据集找到最佳性能的模型以及最佳的超参数集。它包括一些特征工程技术,例如单点编码,特征归一化,降维等。该库使用Sklearn估计器来处理分类和回归问题。
Auto-sklearn库适用于中小型数据集,不适用于大型数据集。
安装方法pipinstallautosklearn实用示例
importautosklearn.classificationcls=autosklearn.classification.AutoSklearnClassifier()cls.fit(X_train,y_train)predictions=cls.predict(X_test)2、TPOT
TPOT是开源的pythonAutoML工具,可使用遗传编程来优化机器学习管道。TPOT体系结构的数据流可以在下图中观察到。数据清理不在TPOT体系结构之内,也就是说,处理缺失值,将数据集转换为数值形式应由数据科学家处理。
安装方法pipinstalltpot实用示例
fromtpotimportTPOTClassifierfromsklearn.datasetsimportload_digitsfromsklearn.model_selectionimporttrain_test_splitdigits=load_digits()X_train,X_test,y_train,y_test=train_test_split(digits.data,digits.target,train_size=0.75,test_size=0.25,random_state=42)tpot=TPOTClassifier(generations=5,population_size=50,verbosity=2,random_state=42)tpot.fit(X_train,y_train)print(tpot.score(X_test,y_test))tpot.export(tpot_digits_pipeline.py)链接