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

模型评估报错:样本数量不一致问题排查与解决

问题原因分析
  • 核心错误是评估时真实标签集与预测结果的样本数量不匹配:Y_test有4705个样本,模型对main_test_scaled的预测结果logreg_main_test有10086个样本,sklearn的评估函数要求两者长度必须完全一致,因此触发报错。
  • 你犯了两个具体错误:
    1. 用错了标签集:拿训练集拆分出的验证集标签Y_test,去评估模型对预留测试集的预测结果,两者根本不是对应关系,应该用预留测试集的真实标签(比如命名为Y_main_test)。
    2. 评估参数传错:第7行f1_score的第二个参数传成了准确率logreg_score_main_test(一个浮点数),而不是预测结果logreg_main_test,就算样本数量问题解决,这里也会报错。
解决办法
  • 替换正确的真实标签集
    找到预留测试集对应的真实标签(假设变量名为Y_main_test),修改评估代码:
    # evaluate
    logreg_score_main_test = accuracy_score(Y_main_test, logreg_main_test)
    f1_val_main_test = f1_score(Y_main_test, logreg_main_test)
    recall_val_main_test = recall_score(Y_main_test, logreg_main_test)
    
  • 验证数据维度一致性
    预测前检查训练集和测试集的特征维度是否匹配,避免预处理出错:
    print("训练集特征维度:", X_train_scaled.shape)
    print("测试集特征维度:", main_test_scaled.shape)
    
    如果维度不一致,说明测试集预处理时遗漏了特征或缩放方式和训练集不统一,需要重新对齐预处理流程。
  • 修正评估参数错误
    确保f1_score和recall_score的第二个参数都是模型的预测结果logreg_main_test,而非准确率数值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 04:39:34