• 尽量不需要人的帮助下,对输入进行特征提取,选取适合的机器学习模型对它进行训练
  • 大部分基于超参数搜索技术【从数十或者数百个参数中选取一个合适的参数,媲美人工调参的结果】。

  • Autogluon的设计与大部分的automl设计思路不一样,因为超参数的搜索,通常需要经过数十或者数百次的训练(也就是epoch),autogluon想尽量避免超参数的搜索,可以在相同的时间内训练多个不一样的模型。如果说三个臭皮匠顶一个诸葛亮的话,autogluon可以训练数十个臭皮匠模型,希望可以打败诸葛亮。

AutoGluon如何融合这些模型?

1.stacking(不同算法的集成学习

        在同样的数据上,训练多个不同模型。这些模型可以是简单的树模型(KNN),核方法或者是复杂的神经网络。这些输出最终输入到线性模型里面,最终得到最终的输出。

对这些输出做加权和,这些权重是训练得到的。这就是使用fit函数时,默认使用的模型融合方法,大家可以通过训练打印的信息,获得loadboard这个方法查看具体具体尝试了哪些模型。

2.K-则交叉bagging(同种算法的集成学习)

  •  训练多个同类别的模型【所使用算法是一样的】,bagginig是指使用同类别的模型,他们使用不同的初始化权重,获得不同的数据块的平均,来降低预测的方差。
  • K折交叉bagging源自于K折交叉验证,这里我们用3折交叉验证来举例,我们将数据分成三块,在第一折里,前两块,做训练,最后一块做预测。

最后对三个模型的预测结果取平均得到最终预测结果。

 

最后大家可以阅读autogluon论文来了解更多地的细节。