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

Keras猫狗分类模型model.predict()输出异常及预测结果全相同问题咨询

猫狗二分类任务问题原因排查

初始模型输出10个负数值的原因

  • 任务与模型结构不匹配:你做的是二分类任务,初始输出层设置10个神经元、采用SparseCategoricalCrossentropy损失都是多分类任务的配置,本身就不可能输出0/1的二分类结果。
  • 输出层未设置激活函数:初始输出层默认用线性激活,输出值可以是任意正负实数,自然会出现10个负数的输出结果。

修改后所有测试样本均预测为猫的原因

  • 训练数据集规模严重不足:总共只有40张训练样本(20张猫、20张狗),完全不足以支撑3层卷积的网络学习到猫狗的有效区分特征,模型无法习得泛化能力,只能输出固定的默认预测结果。
  • 训练与测试阶段预处理逻辑不一致:训练时你用cv2做灰度转换、resize 50*50的处理逻辑,和测试时对三张新图的处理逻辑大概率存在差异,比如resize插值方式不同、像素值归一化范围不匹配(比如训练时将像素值缩至01,测试时仍用0255的原始值输入),会导致测试输入的分布和训练集完全偏离,模型无法正常推理。
  • 类别预测bias问题:你将猫的标签设为0的情况下,模型在学不到有效特征时,会选择输出趋近0的预测值来最小化binary_crossentropy损失,最终表现为所有样本都被判定为猫。
  • 未做数据增强:小样本训练场景下没有加入随机翻转、平移、加噪等数据增强策略,模型完全过拟合了40张训练图,对任何未出现在训练集里的样本(包括新猫狗、鸟类)都无法正确分类,只会输出固定结果。
  • 训练流程异常:要么训练轮次太少模型未收敛,要么学习率设置不合理导致模型没有学到任何有效特征,最终只能输出固定预测值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 22:15:04