GCP AutoML分类模型训练报错:不足50%行成功生成示例如何解决
报错触发原因
Less than 50% of rows successfully generated examples 报错的本质是GCP AutoML在校验训练输入时,识别到可被解析为有效训练样本的行占比低于50%,触发了内置的训练前置拦截规则,结合你描述的不平衡分类、日期拆分的场景,常见诱因如下:
- 日期拆分后训练集标签覆盖不足:按日期拆分后,训练集区间内的标注列空值占比过高,或是不平衡分类中的少数类样本全部集中在验证/测试集的日期区间,导致训练集内有效标注的行占比达不到要求。
- 特征列缺失率过高:超过半数的训练行在指定的输入特征列中存在全量/大部分缺失,AutoML无法为这些行生成可用于训练的特征向量。
- 标签值不符合预设规则:分类标签的类型、枚举值和数据集创建阶段的配置不匹配,比如二分类任务中出现了预设标签之外的取值,对应行被直接丢弃。
- 日期列本身存在异常:日期格式不统一、大量行的日期值为空或重复,导致拆分后训练集的有效行数量严重不足。
对应解决方法
- 校验并调整数据集拆分逻辑:
导出拆分后的训练集子集,统计标注列的非空占比、各分类标签的分布情况,确认训练集覆盖了所有分类标签且标注非空占比不低于70%。如果日期拆分确实导致标签分布失衡,可以调整拆分的日期区间,或是切换为分层拆分模式,保证训练集的标签分布和全量数据集一致。 - 清理无效数据:
统计所有输入特征列的缺失率,删除缺失率超过80%的无效特征;统一标签值的格式与枚举范围,提前过滤掉标签为空、标签值不在预设分类范围内的行,再导入AutoML创建数据集。 - 调整训练校验阈值:
在AutoML训练配置的高级设置中,可适当调低最小有效样本生成比例的校验阈值,最低不要低于30%,阈值过低会导致训练样本质量不足,直接影响最终模型效果。 - 优化日期拆分逻辑:
如果必须保留日期拆分的规则,先对全量数据集按日期排序,过滤掉日期值无效、标注为空、特征全部缺失的行之后,再导入AutoML完成数据集创建与拆分。
内容的提问来源于stack exchange,提问作者Rita
相关产品推荐
相关产品推荐

