模型微调

王英
• 阅读 4254

什么是预训练模型

  • 预训练模型就是已经用数据集训练好了的模型
  • 现在我们常用的预训练模型,比如:VGG16/19,Resnet等模型,并且已经用大型数据集来做训练,如:Imagenet,得到训练好的模型参数

什么情况下使用微调

  • 手头的数据集类型和预训练模型的数据集内容相似,因为不同数据集模型提取的特征不同,所以相应的参数训练后也是不同的
  • 数据集内容相似,但是数据量太少
  • 计算资源不够
  • 自己创建的模型正确率较低

为什么要微调

  • 用大型数据集训练后的模型,具备提取浅层基础特征和深层抽象特征的能力

模型微调

  • 浅层卷积层提取基础特征,比如:边缘,轮廓等基础特征
  • 深层卷积层提取抽象特征,比如:整个脸型
  • 全连接层根据特征组合进行评分分类

不做微调:

  • 从头开始训练模型,需要大量的数据,计算时间和计算资源
  • 存在模型不收敛,参数不够优化,准确率低,模型泛化能力低,容易过拟合等风险

做微调,可以一定程度上缓解上述存在的问题。

模型微调注意事项

  • 通常是截断预训练好网络的最后一层(softmax层),用我们自己的softmax层进行替换。如:Imagenet上预训练好的网络输出是1000个类别,我们的实际项目输出类别是10项,则可以进行上述替换。然后,我们在网络上运行预先训练的权重,确保执行交叉验证。
  • 使用较小学习率来训练网络。由于我们预计预先训练网络的权重相对于随机初始化的权重已经相当不错,我们不想过快的扭曲它们,通常做法是使初始学习率比从头开始训练的初始学习率小10倍
  • 如果手头数据集数量过少,我们可以只训练最后一层,如果数据集数量中等,我们可以冻结预训练网络的前几层权重。因为网络的前几层提取的是基础特征,如:边缘,轮廓。我们希望保持这些权重不变,让我们的网络更专注于学习后续深层中特定于数据集的特征

不同数据集下使用微调

  • 数据集少,但内容相似度高。这种情况下,我们修改最后几层或者softmax层的输出类别
  • 数据集少,内容相似度低。这种情况下,我们冻结预训练网络的初始层(比如K层),然后训练剩余的N-K层。因为数据集内容相似度低,因此我们需要对较高层进行重新训练
  • 数据集大,但内容相似度低。这种情况下,需要根据自己的数据从头开始训练神经网络
  • 数据量大,内容相似度高。这种情况下,十分理想了,预训练模型也是最有效的。使用模型的最好方法是保留模型的结构和初始权重,然后,我们可以使用预先训练的模型中的权重来重新训练该模型。
点赞
收藏
评论区
推荐文章
Stella981 Stella981
3年前
Pytorch固定部分参数(只训练部分层)
在迁移学习中我们经常会用到预训练模型,并在预训练模型的基础上添加额外层。训练时先将预训练层参数固定,只训练额外添加的部分。完了之后再全部训练微调。在pytorch固定部分参数训练时需要在优化器中施加过滤。!(https://oscimg.oschina.net/oscnet/c2e82d04a39a6ac7a0edc7e41e7bbad219a
Stella981 Stella981
3年前
PaddlePaddle预训练模型大合集,还有官方使用说明书
PaddlePaddle在不断增加官方支持的模型的同时,也在关注预训练模型的丰富度。在过去的版本中,我们已经发布了目标检测FasterRCNN、MobileNetSSD、PyramidBox和场景文字识别CRNNCTC、OCRAttention共计5个预训练模型。近期,在图像分类领域我们一口气发布了四个系列共十个预训练模型,丰富扩充了预训练模
数据堂 数据堂
1年前
大模型数据集:突破边界,探索未来
一、引言随着人工智能技术的快速发展,大型预训练模型如GPT4、BERT等在自然语言处理领域取得了显著的成功。这些大模型背后的关键之一是庞大的数据集,为模型提供了丰富的知识和信息。本文将探讨大模型数据集的突破边界以及未来发展趋势。二、大模型数据集的突破边界数
数据堂 数据堂
1年前
大模型数据集:构建、挑战与未来发展
一、引言随着深度学习技术的迅速发展,大型预训练模型如GPT4、BERT等在自然语言处理领域取得了显著的成果。这些大模型的表现得益于其背后庞大的数据集,这些数据集为模型提供了丰富的知识和信息。本文将探讨大模型数据集的构建、面临的挑战以及未来的发展趋势。二、大
数据堂 数据堂
1年前
大模型数据集:探索新维度,引领AI变革
一、引言在人工智能(AI)的快速发展中,大型预训练模型如GPT、BERT等已经取得了令人瞩目的成果。这些大模型的背后,离不开规模庞大、质量优良的数据集的支撑。本文将从不同的角度来探讨大模型数据集的新维度,以及它们如何引领AI的变革。二、大模型数据集的新维度
高耸入云 高耸入云
1年前
成为AI大模型工程师/产品经理,成就丰盛人生
500多名学员正在参加近屿智能OJAC举办的第五期AIGC星辰大海:大模型工程师和产品专家深度训练营。AIGC星辰大海:大模型工程师和产品专家深度训练营秉持“实战导向,项目驱动”的教学理念,从预训练、数据清洗、数据标注、微调大模型到增量预训练以及开发软硬件
高耸入云 高耸入云
1年前
如何做Bert模型的fine-tuning?近屿智能OJAC带你一探究竟
📖更多AI资讯请👉🏾选择合适的预训练模型:从预训练的BERT模型开始,例如Google提供的BERTbase或BERTlarge。这些模型已经在大量文本数据上进行过预训练了,我们如何对BERT模型进行finetuning呢?准备和预处理数据:集针对特
数据堂 数据堂
2个月前
数据上新 | 全新高质量训练数据集重磅发布
数据堂全新发布多语种大模型预训练数据集、多模态大模型数据集、语音识别与计算机视觉训练数据集,全面助力企业打造更高精度、更强泛化能力的AI模型,轻松应对全球用户多样化的语言与应用场景需求,为智能升级提供坚实数据支撑。
数据堂 数据堂
1年前
大模型数据集:构建、挑战与未来趋势
一、引言随着深度学习技术的快速发展,大型预训练模型如GPT4、BERT等在各个领域取得了显著的成功。这些大模型背后的关键之一是庞大的数据集,为模型提供了丰富的知识和信息。本文将探讨大模型数据集的构建、面临的挑战以及未来发展趋势。二、大模型数据集的构建收集数