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

本地训练的.h5表情识别CNN模型仅输出单一结果,求排查

面部表情识别CNN模型本地训练结果异常排查

我近期跟随YouTube教程训练用于面部表情识别的CNN模型,遇到如下问题:使用本地训练生成的.h5文件时,无论面部表情如何变化,模型始终返回同一结果;但使用教程提供的.h5文件时模型可正常工作,且代码未做任何修改。现将CNN模型配置附上,同时已对比两个.h5文件差异,恳请协助排查问题。

模型配置

model = Sequential()
model.add(Conv2D(64,(3,3),padding = 'same',input_shape = (48,48,1)))
model.add(BatchNormalization()) 
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size = (2,2))) 
model.add(Dropout(0.25))

model.add(Conv2D(128,(5,5),padding = 'same'))
model.add(BatchNormalization()) 
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size = (2,2))) 
model.add(Dropout (0.25))

model.add(Conv2D(512,(3,3),padding = 'same'))
model.add(BatchNormalization()) 
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size = (2,2))) 
model.add(Dropout (0.25))

model.add(Conv2D(512,(3,3), padding='same'))
model.add(BatchNormalization()) 
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2))) 
model.add(Dropout(0.25))

model.add(Flatten())

model.add(Dense(256)) 
model.add(BatchNormalization())
model.add(Activation('relu')) 
model.add(Dropout(0.25))

model.add(Dense(512)) 
model.add(BatchNormalization())
model.add(Activation('relu')) 
model.add(Dropout(0.25))

model.add(Dense(no_of_classes, activation='softmax'))

opt = Adam(lr = 0.0001)
model.compile(optimizer=opt,loss='categorical_crossentropy',
metrics=['accuracy']) 
model.summary()

两个.h5文件差异

本地训练生成的.h5文件大小仅约1.5MB,而教程提供的.h5文件大小约106MB,二者体积差距极大。


排查方向

  • 检查训练完整性:查看训练日志,确认训练是否完成了预设的epoch数,过程中有没有出现崩溃、早停触发过早的情况。如果训练没跑完,模型权重未得到充分更新,会输出固定结果。
  • 验证数据集有效性:确认本地训练数据集的标签是否正确,有没有出现单一类别数据占比极高、标签映射错误的情况。若数据集存在问题,模型会倾向于输出占比最高的类别。
  • 确认模型保存方式:检查训练后模型保存的代码,是否使用了model.save()完整保存结构和权重,而非仅保存结构。体积差距过大说明本地文件大概率未完整保存权重参数。
  • 对齐训练参数:核对no_of_classes是否与教程一致,训练时的batch size、epoch数、学习率等参数是否和教程匹配。参数差异可能导致模型欠拟合,无法学习到有效特征。
  • 统一数据预处理流程:确保推理时的图片预处理(如灰度化、尺寸调整、归一化范围)和训练时完全一致。预处理不一致会导致模型输入异常,输出固定结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 11:15:44