You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

分类模型在无标签数据上预测结果异常的技术问询

问题分析与排查方向

一、数据本身的特性可能是主因

  • 真实分布比训练集极端得多:你训练时的数据集哪怕经过SMOTE处理,原分布里类别1的占比可能都比真实无标签数据高。比如训练集原数据类别1占1%,但真实数据里只有0.006%左右,15万条里刚好就有10个正样本,这时候模型的预测其实是符合真实情况的。
  • 数据分布漂移:真实数据的特征和你训练/测试集的特征分布差得太远。比如你用Z-score归一化时,是基于训练集的均值和方差,但真实数据里某些关键特征的取值范围完全不一样——比如训练时某特征均值是5,真实数据里均值变成20,归一化后数值超出模型学习的范围,自然识别不出正样本。
  • 训练/测试集的采样偏差:你拆分的“未观测数据”其实和训练集是同分布的(比如来自同一批次数据),根本没覆盖到真实数据的场景,导致模型在熟悉的数据上表现好,遇到新分布直接拉胯。

二、模型侧也可能存在问题

  • 分类阈值设置太严:你评估模型时用的是默认的0.5阈值,但类别不平衡下,模型学到的类别1概率普遍偏低。训练/测试集里正样本多,0.5阈值能筛出足够的正样本,但真实数据里正样本的概率大多低于0.5,只有10个刚好达标,所以全是0。试试把阈值降到0.1甚至更低,看看正样本数量会不会上来。
  • SMOTE适配过度:SMOTE生成的合成正样本只贴合了训练集的特征组合,这些组合在真实数据里根本不存在。模型学了一堆“假”的正样本特征,到真实数据里自然找不到匹配的正样本。
  • 模型固有偏置:逻辑回归本身就容易偏向多数类,哪怕做了SMOTE,可能还是没纠正过来;CatBoost虽然对不平衡有优化,但如果训练时的正样本分布和真实差异太大,也会跟着跑偏。

具体排查步骤

  1. 先核对真实数据的特征分布:把真实数据里关键特征的均值、方差、分位数和训练集比一遍,看看是不是有明显的漂移。
  2. 输出模型的预测概率:别只看最终分类结果,把每个样本的类别1概率导出来。如果大部分概率接近0,少数在阈值附近,那就是阈值的问题;如果所有概率都极低,大概率是数据分布的锅。
  3. 复盘训练集的代表性:确认训练集里的类别1样本是不是真的能代表真实场景,有没有标签标错或者采样时只选了容易获取的正样本的情况。
  4. 调整阈值测试:从0.05到0.5试不同的分类阈值,看正样本预测数量的变化,再结合业务需求判断哪种阈值更合理。

内容的提问来源于stack exchange,提问作者Scope

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 16:48:57