📽️模型复现

使用固定模型

尽管本平台提供了自动化特征工程和自动化机器学习功能,但是有时在进行建模研究时被要求只能使用某个特定的机器学习模型算法,尽管这个算法可能不是在指标上的最优选择。

本平台支持在自动化机器学习环节中指定固定模型进行训练,在新建任务最后的任务配置阶段,高级设置中增加了固定模型的下拉列表,允许用户选择算法模型,系统将根据对指定的算法进行建模和超参调优,如下图:

这个过程不受前面AutoFE自动化特征工程的影响,如果按照默认勾选进行了自动化特征工程,这里指定的模型也是对原始特征和AutoFE衍生后的特征一起进行的训练。

由于用户指定了固定算法,在AutoML自动化特征工程阶段所有的时间预算都会在这个算法下进行调优,省去了搜索其他算法模型的时间,从而在精度上也会有所提升。

复现步骤

如果用户在建模配置中没有选择固定模型进行训练,本平台在这种情况下提供一系列算法对所训练的模型进行复现。用户可以点击高级选项卡中的复现按钮,其步骤主要分为如下三个步骤:

① 下载复现训练数据集。

② 下载复现验证数据集。

③ 选择期望的算法根据复现文档中的步骤提示完成复现流程。

探索记录

本平台在自动化机器学习阶段会搜索很多算法和相应的超参数组合。用户可以点击高级选项卡中的AutoML探索记录。这些记录中体现了不同轮次的算法和对应参数进行复现,同时提供了更多灵活的选择空间,如下图:

XGBoost

经过实验发现,部分模型在不同设备上的复现结果不一致,这主要由于算法本身内部的随机数设置不同,例如XGBoost,以及我们的AutoML受时间预算限制会部分设置提前结束模型训练。这导致复现模型的结果无法完全和本平台一致,但是准确率并不会相差太多,上下浮动不会超过0.2%。

复现步骤

步骤一:下载模型训练集和测试集

(1)选择任务右侧的高级按钮,然后点击下拉框的复现按钮。

(2)根据弹出的提示框按顺序点击。

① 点击下载训练集获取模型训练时的数据(处理过)。

② 点击下载验证集获取模型验证时的数据(处理过)。

③ 点击相应的模型获取模型复现代码,例如:以下使用的是extra_tree的算法模型,则点击extra_tree按钮。

(3)在代码中加载数据。

步骤二:复制模型参数

(1)选择任务右侧的更多按钮,然后点击下拉框的查看模型参数按钮。

(2)复制自动化机器学习参数配置下的参数。

(3)在代码中设置参数。

步骤三:模型复现

在代码中初级始化模型并训练。

步骤四:模型验证

在代码中验证训练的模型。

步骤五:模型保存

在代码中保存训练好的模型。

完整代码

XGB_limitdepth

该算法的复现步骤可以参考XGBoost

RandomForest

经过实验发现,部分模型在不同设备上的复现结果不一致,这主要由于算法本身内部的随机数设置不同,例如XGBoost,以及我们的AutoML受时间预算限制会部分设置提前结束模型训练。这导致复现模型的结果无法完全和本平台一致,但是准确率并不会相差太多,上下浮动不会超过0.2%。

复现步骤

步骤一:下载模型训练集和测试集

(1)选择任务右侧的高级按钮,然后点击下拉框的复现按钮。

(2)根据弹出的提示框按顺序点击。

① 点击下载训练集获取模型训练时的数据(处理过)。

② 点击下载验证集获取模型验证时的数据(处理过)。

③ 点击相应的模型获取模型复现代码,例如:以下使用的是extra_tree的算法模型,则点击extra_tree按钮。

(3)在代码中加载数据。

步骤二:复制模型参数

(1)选择任务右侧的更多按钮,然后点击下拉框的查看模型参数按钮。

(2)复制自动化机器学习参数配置下的参数。

(3)在代码中设置参数。

步骤三:模型复现

在代码中初级始化模型并训练。

步骤四:模型验证

在代码中验证训练的模型。

步骤五:模型保存

在代码中保存训练好的模型。

完整代码

LightGBM

经过实验发现,部分模型在不同设备上的复现结果不一致,这主要由于算法本身内部的随机数设置不同,例如XGBoost,以及我们的AutoML受时间预算限制会部分设置提前结束模型训练。这导致复现模型的结果无法完全和本平台一致,但是准确率并不会相差太多,上下浮动不会超过0.2%。

复现步骤

步骤一:下载模型训练集和测试集

(1)选择任务右侧的高级按钮,然后点击下拉框的复现按钮。

(2)根据弹出的提示框按顺序点击。

① 点击下载训练集获取模型训练时的数据(处理过)。

② 点击下载验证集获取模型验证时的数据(处理过)。

③ 点击相应的模型获取模型复现代码,例如:以下使用的是extra_tree的算法模型,则点击extra_tree按钮。

(3)在代码中加载数据。

步骤二:复制模型参数

(1)选择任务右侧的更多按钮,然后点击下拉框的查看模型参数按钮。

(2)复制自动化机器学习参数配置下的参数。

(3)在代码中设置参数。

步骤三:模型复现

在代码中初级始化模型并训练。

步骤四:模型验证

在代码中验证训练的模型。

步骤五:模型保存

在代码中保存训练好的模型。

完整代码

CatBoost

经过实验发现,部分模型在不同设备上的复现结果不一致,这主要由于算法本身内部的随机数设置不同,例如XGBoost,以及我们的AutoML受时间预算限制会部分设置提前结束模型训练。这导致复现模型的结果无法完全和本平台一致,但是准确率并不会相差太多,上下浮动不会超过0.2%。

复现步骤

步骤一:下载模型训练集和测试集

(1)选择任务右侧的高级按钮,然后点击下拉框的复现按钮。

(2)根据弹出的提示框按顺序点击。

① 点击下载训练集获取模型训练时的数据(处理过)。

② 点击下载验证集获取模型验证时的数据(处理过)。

③ 点击相应的模型获取模型复现代码,例如:以下使用的是extra_tree的算法模型,则点击extra_tree按钮。

(3)在代码中加载数据。

步骤二:复制模型参数

(1)选择任务右侧的更多按钮,然后点击下拉框的查看模型参数按钮。

(2)复制自动化机器学习参数配置下的参数。

(3)在代码中设置参数。

步骤三:模型复现

在代码中初级始化模型并训练。

步骤四:模型验证

在代码中验证训练的模型。

步骤五:模型保存

在代码中保存训练好的模型。

完整代码

ExtraTree

经过实验发现,部分模型在不同设备上的复现结果不一致,这主要由于算法本身内部的随机数设置不同,例如XGBoost,以及我们的AutoML受时间预算限制会部分设置提前结束模型训练。这导致复现模型的结果无法完全和本平台一致,但是准确率并不会相差太多,上下浮动不会超过0.2%。

复现步骤

步骤一:下载模型训练集和测试集

(1)选择任务右侧的高级按钮,然后点击下拉框的复现按钮。

(2)根据弹出的提示框按顺序点击。

① 点击下载训练集获取模型训练时的数据(处理过)。

② 点击下载验证集获取模型验证时的数据(处理过)。

③ 点击相应的模型获取模型复现代码,例如:以下使用的是extra_tree的算法模型,则点击extra_tree按钮。

(3)在代码中加载数据。

步骤二:复制模型参数

(1)选择任务右侧的更多按钮,然后点击下拉框的查看模型参数按钮。

(2)复制自动化机器学习参数配置下的参数。

(3)在代码中设置参数。

步骤三:模型复现

在代码中初级始化模型并训练。

步骤四:模型验证

在代码中验证训练的模型。

步骤五:模型保存

在代码中保存训练好的模型。

完整代码

线性回归

经过实验发现,部分模型在不同设备上的复现结果不一致,这主要由于算法本身内部的随机数设置不同,例如XGBoost,以及我们的AutoML受时间预算限制会部分设置提前结束模型训练。这导致复现模型的结果无法完全和本平台一致,但是准确率并不会相差太多,上下浮动不会超过0.2%。

复现步骤

步骤一:下载模型训练集和测试集

(1)选择任务右侧的高级按钮,然后点击下拉框的复现按钮。

(2)根据弹出的提示框按顺序点击。

① 点击下载训练集获取模型训练时的数据(处理过)。

② 点击下载验证集获取模型验证时的数据(处理过)。

③ 点击相应的模型获取模型复现代码,例如:以下使用的是extra_tree的算法模型,则点击extra_tree按钮。

(3)在代码中加载数据。

步骤二:复制模型参数

(1)选择任务右侧的更多按钮,然后点击下拉框的查看模型参数按钮。

(2)复制自动化机器学习参数配置下的参数。

其中:lrc代表了分类线性模型,lrr代表了回归线性模型。

步骤三:模型复现

在代码中初级始化模型并训练。

步骤四:模型验证

在代码中验证训练的模型。

步骤五:模型保存

在代码中保存训练好的模型。

完整代码

最后更新于

这有帮助吗?