036、小样本场景视觉模型泛化差?迁移学习、冻结策略与数据增强工程实践一、一个让我熬夜三天的调试故事去年接了一个工业质检项目,客户只给了200张PCB板缺陷图片,要求识别六类焊点异常。我一开始信心满满,直接拿ResNet-50在ImageNet预训练权重上finetune,结果验证集准确率卡在62%不动。更诡异的是,模型对“虚焊”和“漏焊”两类几乎完全混淆,输出概率分布像一坨浆糊。我盯着tensorboard上的loss曲线,训练loss降得挺漂亮,验证loss却像心电图一样乱跳。那一刻我意识到:小样本场景下,迁移学习不是“拿来就用”这么简单,冻结策略和数据增强的配合才是真正的工程命门。二、迁移学习的“坑”与“桥”2.1 预训练模型不是万能药很多人以为从ImageNet拿个权重就能解决一切,这是最大的幻觉。工业PCB图像和自然图像的特征分布差异巨大——ImageNet里没有焊点、没有电路走线、没有金手指。预训练模型的前几层虽然能提取边缘、纹理等通用特征,但高层语义特征完全需要重新学习。我踩过的坑:直接解冻所有层训练,batch size设成8(因为显存不够),结果模型在200张图上过拟合到令人发指——训练集准确率98%,验证集55%。后来我打印了每层的梯度范数,发现最后几层梯度爆炸,前面几层梯度几乎为零。这就是典型的“灾难性遗忘”:新数据太少,模型把预训练知识全忘了,只记住了那200张图的噪声。2.2 正确的迁移姿势:分层解冻