想象一下,你走进一家名为“H2O 餐厅”的饭店,后厨里有一台神奇的“全自动做菜机器人”。你不需要懂刀工、火候或调味,只需要把一篮子食材倒进入料口,按下启动键。几个小时后,机器人会自动完成洗菜、切菜、尝试多种菜谱、反复调整火候,最后端出一整桌宴席,并且附上一张“品尝菜单”——每道菜按美味程度从高到低排列,星级评分一目了然。更妙的是,菜单上还有一道“融合菜”,是它把几道高分菜品的优点融在一起做出来的,往往比任何一道单菜都惊艳。H2O AutoML,就是机器学习世界里的这台机器人主厨。你只要提供干净的数据,它就能自动完成特征工程、模型挑选、超参数调优和集成学习,最后交给你一份清清楚楚的模型排行榜,省去了一整条手工建模的漫长流水线。
掌握 H2O AutoML,意味着你可以在几小时内完成过去需要数周的建模工作,把精力从重复的调参中解放出来,专注于业务问题本身——这是现代 AI 从业者不可缺的效率杠杆。
可视化演示
本节配有交互动效(进入视口后自动加载,约 3KB)。
全流程自动化
在 H2O 餐厅的后厨里,机器人主厨最厉害的地方不是某一道菜做得好,而是它一个人包办了整条流水线:洗菜、切菜、试菜、调味、组合、摆盘,一气呵成。过去你要请五位厨师分别负责这些环节,每换一道菜就要重新协调一遍;现在,机器人把所有环节串成一条自动化流水线,你只需要站在出菜口等结果。H2O AutoML 正是这样一位“全流程机器人”。
在传统机器学习项目中,特征工程、模型选择、超参数调优、集成学习往往由数据科学家手工完成。你可能要花几周时间反复做特征筛选、跑十几个模型对比效果、再手动调参,最后还得自己写集成代码。H2O AutoML 把这一整套流程封装为一个自动化引擎:你传入训练数据,它自动完成数据预处理、交叉验证划分、候选模型训练、超参数搜索和集成模型构建,最终产出一份完整排行榜。
从数学角度看,AutoML 的使命是在一个候选模型集合中,找到在验证集上表现最好的那一个。我们把训练数据记为 $D_{train}$,把候选模型的全家桶记为 $\mathcal{F}$,那么 AutoML 求解的问题就是:
回到比喻中,你就是那位坐在餐桌前的客人,把食材交给机器人后就只管等待。洗菜切菜的火候把握、哪道菜更适合今天的食材——这些判断全部由机器人自动完成。全流程自动化,正是 H2O AutoML 让小白也能快速上手建模的核心原因。
- 候选模型集合$\mathcal{F}$ 表示 AutoML 准备尝试的所有算法模型,包括 GBM、随机森林、深度学习、广义线性模型等,以及它们的集成版本。
- 损失评估$\mathcal{L}_{val}\big(\mathcal{M}(D_{train})\big)$ 表示先把某个模型在训练数据上练好,再用验证集计算它的表现好坏。
- 最优选择$\arg\min$ 表示“找到使后面那个值最小的模型”,就像服务员在品尝菜单里挑出评分最高的一道菜。
算法内置池
机器人后厨之所以什么菜都能做,是因为它内置了一整套“菜系库”:有人擅长浓油赤酱的炖菜,有人擅长快速锁鲜的蒸菜,还有人擅长层次丰富的融合料理。面对不同的食材,机器人会从菜系库里挑出合适的做法分别尝试,而不是只用一招打天下。H2O AutoML 也一样,它内部预置了一个丰富的算法池,每次建模都会让这些算法同台竞争。
H2O AutoML 的算法池里主要有五类选手:GBM(梯度提升机) 像一位耐心的雕花师傅,每一刀都修正上一刀的不足;XGBoost 是 GBM 的极速加强版,训练更快、精度常更高;DRF(分布式随机森林) 像一群厨师同时试菜、民主投票;Deep Learning(深度学习网络) 擅长从海量数据中自动挖掘复杂模式;GLM(广义线性模型) 则像一位老派的规则派厨师,简单、稳定、可解释性强。
数学上,这个算法池就是一个模型候选集合,AutoML 会在其中逐一训练并比较:
就像餐厅会保留不同菜系的厨师来应对不同口味的客人,H2O AutoML 保留多样化的算法池,是为了让不同类型的表格数据都能找到最合适的建模方式。线性关系交给 GLM,非线性复杂关系交给 GBM 和深度学习,最终再由集成机制把它们的优势凑在一起。
- 模型池符号$\mathcal{F}$ 代表整个候选算法集合,后面的花括号里列出了五位候选厨师的名字。
- 各种算法函数每个 $f_{\cdot}$ 代表一种具体的机器学习模型,它们都是把输入特征映射到预测结果的函数。
- 集合关系花括号$\{ \cdot \}$表示这些模型构成一个集合,AutoML 会从这个集合中挑选并逐一试验。
超参数搜索
假设机器人做红烧肉时,需要决定放多少糖、炖多久、火开多大。它不会只凭感觉试一次,而是像做科学实验一样,在“甜度-时间-火候”这个三维空间里反复采样,每一组参数都做一小锅试吃,然后根据试吃评分决定下一步往哪个方向调整。H2O AutoML 的超参数搜索,就是这套自动试菜系统。
超参数是模型在训练前就需要设定的“旋钮”,比如树的深度、学习率、神经网络的层数。手调超参数是数据科学家最耗时的工作之一,而 H2O AutoML 提供了两种自动化搜索策略:随机搜索 从预设的参数分布中随机抽取组合,覆盖面广、成本低;网格搜索 则在预设的参数列表上做系统性的穷举,精细但耗时。同时,早停机制 会在验证指标连续多轮不再提升时提前终止训练,避免在无效的参数组合上浪费算力。
从数学角度看,超参数搜索就是在一个参数空间 $\Lambda$ 中,寻找让交叉验证损失最小的参数组合:
回到做菜的比喻,机器人不会固执地把一道菜只做一次,而是会快速试出“甜 3 分、炖 40 分钟、中火”这样的黄金组合。超参数搜索 + 早停的组合,让 H2O AutoML 在有限时间内尽可能逼近最优配置,同时不会把算力浪费在明显没希望的尝试上。
- 超参数空间$\lambda \in \Lambda$ 表示每一组超参数配置(比如树深度、学习率)都属于一个预先定义好的搜索空间。
- 交叉验证损失$\frac{1}{k} \sum_{i=1}^{k} \mathcal{L}_{cv_i}$ 表示把数据切成 k 份,轮流拿一份做验证、其余做训练,最后取 k 次损失的平均值,这样评估更稳。
- 最优参数$\lambda^*$ 表示从所有尝试过的参数组合中挑出平均损失最小的那一组。
集成学习
前面说到,机器人后厨的菜单上总有一道“融合菜”特别惊艳。它的做法是:把几位厨师各自最拿手的菜端上来,请一位经验丰富的总厨品尝每一道菜,然后决定:这道菜多一点、那道菜少一点,最后配成一道综合口感更丰富的料理。机器学习中的 Stacked Ensemble(堆叠集成) 干的就是这件事。
Stacked Ensemble 的训练分两步:先用多种算法分别训练出 K 个基础模型,每个模型都对数据做出自己的预测;然后把这 K 组预测结果作为新的“特征”,训练一个元学习器(通常是 GLM)来学习如何最优地组合它们。这样,最终的预测不是简单地听某一位“厨师”的,而是综合了所有模型的智慧。交叉验证在这个过程中至关重要——基础模型的预测必须来自训练时未见过的数据,才能防止元学习器“作弊”。
数学上,假设第 $k$ 个基础模型的预测是 $\hat{y}_k$,元学习器学到的权重是 $w_k$,那么集成模型的最终预测是:
融合菜之所以常常比单菜更美味,是因为它取长补短:某个模型擅长识别线性规律,另一个擅长捕捉复杂交互,把它们组合起来就能覆盖更全面的模式。Stacked Ensemble 在 H2O AutoML 的排行榜上常年霸榜,正是这种“总厨调配”策略的价值体现。
- 每个模型的预测$\hat{y}_k$ 是第 $k$ 个基础模型对某个样本给出的预测值,相当于每位厨师对这道菜的评分。
- 可学习的权重$w_k$ 表示元学习器分配给第 $k$ 个模型的权重,权重越大说明这个模型越靠谱。
- 加权求和$\sum_{k=1}^{K} w_k \hat{y}_k$ 把所有模型的预测按权重加在一起,得到最终的集成预测。
排行榜机制
当你走进 H2O 餐厅,服务员会递上一份“品尝菜单”,每道菜按评分从高到低排列,旁边标注了星级和试吃师的评语。你不会盲目去点,而是直接看评分最高的那道菜。H2O AutoML 训练结束后,也会生成这样一份榜单——排行榜(Leaderboard),把所有候选模型按验证指标从好到差排得清清楚楚。
排行榜的设计目标,是让模型比较变得透明、公平、可复现。在 AutoML 运行期间,每个候选模型都会在同样的交叉验证框架下训练和评估,然后在同一个验证集上计算指标。对于二分类问题,常用指标是 AUC,它衡量模型把正样本排在负样本前面的能力;对于多分类问题,则常用 LogLoss。用户可以指定 sort_metric 来决定按哪个指标排序。所有模型在同等条件下竞争,谁优谁劣一眼便知。
AUC 的数学定义是一个积分,它计算的是 ROC 曲线下方的面积:
品尝菜单让客人不用尝遍每一道菜就能做出选择,排行榜也让建模者不用逐个手动评估每个模型。更重要的是,排行榜不只是选出一个冠军,它同时记录了所有模型的表现,让你可以客观地看到不同算法之间的差距,也为后续的模型上线决策提供了依据。
- 真正例率$\text{TPR}_k(t)$ 表示第 $k$ 个模型在阈值 $t$ 下正确识别出正样本的比例,也就是“该抓住的坏人抓住了多少”。
- 假正例率$\text{FPR}_k(t)$ 表示同一阈值下把负样本误判为正样本的比例,也就是“误伤的好人有多少”。
- 曲线下面积$\int_{0}^{1} \cdots \, d(\text{FPR})$ 把不同阈值下的表现连成一条 ROC 曲线,并求曲线下方的面积。
易用门槛低
还记得那个只需要按一个按钮的机器人吗?它不需要你懂编程,不需要你告诉它先洗菜还是先切菜,所有内部流程都封装在了一个简洁的接口后面。H2O AutoML 在设计上最迷人的地方,就是这种“一键开火”的极低使用门槛。
在代码层面,使用 H2O AutoML 通常只需要三个步骤:启动 H2O 集群、读取数据、创建 AutoML 实例并调用 train()。你不需要手工编写特征工程代码,不需要手动指定用哪个算法,也不需要自己实现超参数搜索和集成。max_runtime_secs 参数让你用“时间预算”而非“技术细节”来控制建模过程——告诉机器“我给你 5 分钟”,它就会在 5 分钟内尽可能交出最好的结果。
对应的数学表达非常简洁,整个 AutoML 过程就是一个从数据到排行榜的映射:
对小白用户来说,最大的福利就是“开箱即用”:Python 和 R 的 API 都极其简洁,甚至还有可视化界面 H2O Flow,连代码都不用写。就像客人不需要知道厨师怎么颠勺,你也不需要理解每个算法的内部细节——把专业的事交给专业的机器人,你只管验收结果。
- 训练数据与目标$D_{train}$ 和 $y$ 分别是特征数据和目标列,这是你唯一需要认真准备的东西。
- 时间预算$T_{max}$ 表示用户允许 AutoML 运行的最大时长,相当于告诉机器人“这桌菜最多做多久”。
- 输出排行榜$\text{Leaderboard}$ 是 AutoML 返回的结果,包含所有候选模型按指标排序的完整榜单。
模型可解释性
有些餐厅的厨房是开放式的,客人隔着玻璃就能看到厨师每一步在做什么、放了什么食材。H2O AutoML 虽然自动化程度极高,但它同样提供了“透明厨房”:你不仅能得到冠军模型,还能清楚地知道模型为什么做出这样的预测。这个特性在金融、医疗等监管严格的行业里尤其重要。
H2O AutoML 为冠军模型提供三把可解释性的钥匙:变量重要性 告诉你哪些特征对预测影响最大;部分依赖图 展示单个特征在不同取值下如何改变预测结果;SHAP 值(Shapley Additive Explanations) 则能把每个特征对某一条具体预测的贡献精确地分解出来。比如说,模型判定一笔贷款有风险,SHAP 能告诉你:是“负债率过高”贡献了 0.3 的风险分,“收入波动大”贡献了 0.2,“征信查询次数”反而轻微降低了风险分。
SHAP 值的数学定义来自于博弈论中的 Shapley 公平分配思想:每个特征的贡献,等于它在所有特征组合中加入前后预测变化的加权平均:
透明厨房让客人吃得安心,可解释性让企业用模型用得放心。H2O AutoML 并没有因为自动化而牺牲可解释性,它把“能解释”和“效果好”一起打包交付,让数据科学家既能享受自动化的高效,又能在面对业务方质疑时拿出清晰的解释依据。
- 特征子集遍历$S \subseteq N \setminus \{i\}$ 表示遍历所有“不包含特征 $i$”的特征子集,相当于尝试各种配菜组合。
- 边际贡献$f(S \cup \{i\}) - f(S)$ 表示在某个配菜组合中加入特征 $i$ 前后,模型预测的变化量。
- 加权平均$\frac{|S|!\,(|N|-|S|-1)!}{|N|!}$ 是组合数学中的权重系数,保证所有特征的贡献加起来正好等于总预测。
AI 应用场景
银行信贷风控建模
阶段:模型训练与模型评估
解决的问题:传统风控建模需要数据科学家手动完成特征筛选、模型对比和调参,一个项目动辄数周。H2O AutoML 将建模流程压缩到几小时,自动完成候选模型训练与排行榜评估,让风控团队快速拿到可上线的违约预测模型。
具体案例:某银行风控团队将历史贷款数据(还款状态、信用评分、收入水平等)交给 H2O AutoML,以 AUC 作为排序指标,运行 1 小时后从排行榜中选择了 Stacked Ensemble 模型作为线上违约预测模型。相比手工搭建的逻辑回归模型,AUC 从 0.78 提升到 0.84,上线周期从三周缩短到三天。
零售营销响应预测
阶段:特征工程与超参数优化
解决的问题:精准营销需要从海量客户中筛选高响应人群,但客户特征繁多、模型调参费时。H2O AutoML 自动完成特征筛选与超参数搜索,用最低的工程成本帮运营团队快速拿到高精度的响应评分。
具体案例:某电商运营团队使用 H2O AutoML 对 50 万客户的购买行为、浏览记录与优惠券使用历史建模,设置 max_runtime_secs=1800,自动生成营销响应评分并选出最优模型。活动推送的转化率相比此前人工建模提升了 23%。
制造业设备预测性维护
阶段:模型可解释性与决策支持
解决的问题:制造企业需要知道设备何时可能故障,以及哪些传感器指标最为关键。H2O AutoML 的 SHAP 值与变量重要性解释,让维护团队不仅得到预测结果,还能理解预测依据,从而更有信心地调整维护计划。
具体案例:某工厂在关键机床上安装振动、温度、压力传感器,用 H2O AutoML 预测未来 48 小时内的故障风险。SHAP 分析显示“主轴温度”是最大的风险贡献因子,维护团队据此优化了冷却系统巡检频率,非计划停机时间下降了 31%。
Python 演示
import h2ofrom h2o.automl import H2OAutoML # 初始化 H2O 集群h2o.init(max_mem_size="2G") # 读取数据, 请替换为真实文件路径df = h2o.import_file("loan_data.csv") # 目标列转为分类变量df["default"] = df["default"].asfactor() # 按 8:2 切分训练集与测试集train, test = df.split_frame(ratios=[0.8], seed=42) # 创建 AutoML 实例aml = H2OAutoML( max_runtime_secs=300, max_models=20, seed=42, sort_metric="AUC") # 启动自动化建模aml.train(y="default", training_frame=train) # 打印排行榜lb = aml.leaderboardprint(lb.head(10)) # 用冠军模型预测测试集pred = aml.leader.predict(test)print(pred.head()) # 查看变量重要性排名print(aml.leader.varimp()) # 打印冠军模型信息print(aml.leader)
h2o.init(max_mem_size="2G")启动 H2O 分布式计算集群,并限制内存使用上限。df["default"] = df["default"].asfactor()把目标列转成分类变量,告诉 AutoML 这是一个分类任务。H2OAutoML(max_runtime_secs=300, sort_metric="AUC")创建自动建模引擎,限定总运行时间 300 秒,按 AUC 指标排序。aml.train(y="default", training_frame=train)执行自动化训练,内部自动完成特征工程、模型选择、超参数搜索与集成。aml.leaderboard获取排行榜对象,里面包含了所有候选模型的性能对比。aml.leader.predict(test)直接用排行榜冠军模型对测试集做预测。aml.leader.varimp()输出冠军模型的变量重要性排序,帮助解释模型决策依据。
常见误区
误区AutoML 这么强大,什么都能自动做,数据科学家是不是可以直接转行了?我只要把数据丢进去就能拿到模型,那还要算法工程师干什么?
正解AutoML 自动化的是重复性、标准化的工程劳动,比如特征工程、参数搜索、模型对比。但它无法替你定义业务问题、判断数据质量、设计评估指标、处理数据偏见。就像做菜机器人能自动做菜,但决定今天宴请谁、客人什么口味、预算多少的,仍然是那位宴会主人。数据科学家的核心价值正从“做模型”转向“定义问题和解读结果”。
为何常见:AutoML 的宣传往往聚焦“全自动”三个字,容易让人误以为它是 AI 的终结者,而忽略了人的判断在建模流程中的不可替代性。
误区排行榜第一就是最好的模型,直接部署上线就完事了,不用再看其他模型。
正解排行榜的排序基于验证集指标,但真实业务还要考虑推理速度、部署成本、稳定性、可解释性等因素。排行榜第一名可能是精度最高但体积庞大的 Stacked Ensemble,而第二名可能在推理延迟上快 10 倍。就像品尝菜单评分第一的菜可能需要慢炖 6 小时,而评分接近的菜 20 分钟就能上桌,餐厅会综合翻台率来选择。
为何常见:人的直觉总想选“最好”的那个,但生产环境往往需要多维度的权衡,单一指标排名不能代表全部。
误区AutoML 这么智能,那我是不是不需要清洗数据了?直接把原始数据全丢进去,它应该会自己处理一切。
正解H2O AutoML 擅长的是特征工程和模型选择的自动化,但数据质量仍然需要人来保证。数据中的标签错误、严重的样本偏差、特征泄漏等问题,机器无法自动识别,仍然会导致模型效果崩溃。这就像再智能的做菜机器人,也无法把发霉的食材变成佳肴。
为何常见:自动化工具容易给人“全知全能”的错觉,用户往往忽略了数据质量永远是建模的地基这一基本原则。
误区训练过程全自动,那模型一定是个黑盒,我完全无法向老板解释它为什么这么预测。
正解H2O AutoML 为冠军模型提供了完整的可解释性工具:变量重要性、部分依赖图、SHAP 值。你可以精确地说出“因为客户的负债率上升,模型给出的违约风险增加了 0.3”。自动化的是建模流程,不是模型的可解释性。
为何常见:人们容易把“决策过程的自动化”和“决策结果的黑盒化”混为一谈,其实两者是相互独立的维度。
误区AutoML 没什么技术含量,就是把几个现成的库各跑一遍,然后挑个最好的而已。
正解H2O AutoML 内部包含精密的搜索策略、早停机制、交叉验证框架和 Stacked Ensemble 集成方案。它不只是“跑一遍”,而是在有限的算力预算内聪明地分配资源,并通过集成学习把多个模型融合成一个更强的模型。就像机器人做菜不是简单地把菜谱各试一遍,而是会智能调度、组合发挥。
为何常见:AutoML 的接口太简洁,让人低估了它内部的复杂性。“看起来简单”和“实际简单”是两回事。
面试题
Q1. H2O AutoML 的核心目标是什么?
- A.自动化建模全流程并输出模型排行榜← 正确答案
- B.自动化做数据清洗并输出干净数据集
- C.自动化做可视化并输出分析报告图表
- D.自动化做部署上线并输出监控告警表
答案:A。H2O AutoML 的核心是自动化特征工程、模型选择、超参调优与集成,最终输出排行榜。B/C/D 分别对应数据清洗、可视化、部署工具,都不是 AutoML 的核心定位。
Q2. 使用 H2O AutoML 时,用户通常需要准备什么?
- A.一份包含特征和目标列的数据集← 正确答案
- B.精心调优后的模型超参数集合
- C.每个特征的标准化转换系数
- D.最终模型部署所需容器配置
答案:A。H2O AutoML 的设计哲学是“只提供数据即可”,超参数搜索、特征处理和模型选择都由引擎自动完成。用户需要准备的是包含特征和目标列的数据集,而不是超参数或部署配置。
Q3. 以下哪些算法属于 H2O AutoML 的内置候选模型?
- A.GBM 梯度提升机与 DRF 随机森林← 正确答案
- B.DL 深度学习网络与 GLM 广义线性模型← 正确答案
- C.KNN 最近邻算法与朴素贝叶斯模型
- D.XGBoost 极速梯度提升与集成模型← 正确答案
答案:ABD。H2O AutoML 内置 GBM、DRF、Deep Learning、GLM、XGBoost,并自动训练 Stacked Ensemble 参与排行。KNN 与朴素贝叶斯不在默认候选池中,所以 C 不正确。
Q4. H2O AutoML 的早停机制在何时停止训练?
- A.验证集指标连续多轮不再提升时← 正确答案
- B.测试集指标刚好出现回落后
- C.训练集精度达到百分之百时
- D.系统内存使用率达到上限时
答案:A。早停监控验证集指标,若连续多轮无改善就提前终止训练,从而节省算力并缓解过拟合。测试集在训练过程中不应参与任何决策,训练集精度也不能作为停止依据。
Q5. Stacked Ensemble 如何综合多个模型的预测结果?
- A.训练一个元学习器为各模型分配权重← 正确答案
- B.只选择验证集得分最高的模型输出
- C.对所有模型的预测结果做简单取平均
- D.每次随机挑选一个模型的预测输出
答案:A。Stacked Ensemble 先获得各基模型的交叉验证预测,再用元学习器(如 GLM)学习如何最优加权组合。简单平均是 Bagging 的思路,不是 Stacking 的核心;B 和 D 更是与集成思想相悖。
Q6. 关于 H2O AutoML 的排行榜机制,正确的说法是?
- A.排行榜按指定的验证指标为模型排序← 正确答案
- B.排行榜记录每个候选模型的性能得分← 正确答案
- C.排行榜会在训练完成后自动生成结果← 正确答案
- D.排行榜总是只包含一个最佳模型条目
答案:ABC。排行榜包含全部候选模型按指标排序的结果,训练完成后自动生成,方便公平对比。D 错误——排行榜不是只有冠军一个条目,而是记录所有候选模型的表现。
Q7. max_runtime_secs 参数主要限制什么?
- A.整个 AutoML 训练过程的总运行时间← 正确答案
- B.每个候选模型可分配的最大训练时长
- C.数据从本地文件导入所用的时间上限
- D.最终模型在线上预测的最大响应时间
答案:A。max_runtime_secs 用于限制整个 AutoML 搜索过程的最大运行时间,系统会在该预算内自动分配给各个模型和搜索阶段。它不是单个模型的训练时间上限,更与数据导入、线上延迟无关。
Q8. H2O AutoML 排行榜最上方通常是哪一类模型?
- A.Stacked Ensemble 堆叠集成模型← 正确答案
- B.参数最复杂的神经网络模型
- C.随机搜索采样的基础决策树
- D.完全未经训练的哑变量模型
答案:A。由于集成能综合多个基模型的优势,Stacked Ensemble 在 H2O AutoML 排行榜上通常表现最佳、占据首位。参数复杂不等于效果好,决策树单模型和哑变量模型显然无法与集成模型匹敌。
Q9. H2O AutoML 提供哪些可解释性分析工具?
- A.变量重要性用于衡量特征贡献大小← 正确答案
- B.部分依赖图展示特征对预测的边际影响← 正确答案
- C.SHAP 值用于解释单个样本的预测决策← 正确答案
- D.可解释性工具只能用于随机森林模型
答案:ABC。变量重要性、部分依赖图和 SHAP 是 H2O AutoML 提供的三种核心解释工具,适用于多种模型。D 错误——这些工具并不局限于随机森林,深度学习、GBM、GLM 等模型同样支持。
Q10. 下列关于 H2O AutoML 训练过程的说法正确的是?
- A.候选模型在内部交叉验证中独立训练评估← 正确答案
- B.全部模型的训练结果完全无法复现重现
- C.用户必须提前指定选用哪一种具体算法
- D.训练过程的特征工程必须由人工来完成
答案:A。每个候选模型都在交叉验证框架下独立训练和评估,且设置随机种子后结果可复现。H2O AutoML 不要求用户指定算法,特征工程也由系统自动完成,因此 B/C/D 均错误。