迁移学习transfer learning与微调fineTune的区别?一看就懂


正如题目所言,我一直认为迁移学习transfer learning和finetune是一个东西,但是直到我看了一篇博文(见参考博文),讲解了两者的区别(也许是对的也许是错的),仁者见仁智者见智吧,反正就算说是这两者不太一样,其实也没差多远就是了。

迁移学习和微调的区别

什么是迁移学习

即一种学习对另一种学习的影响,它广泛地存在于知识、技能、态度和行为规范的学习中。任何一种学习都要受到学习者已有知识经验、技能、态度等的影响,只要有学习,就有迁移。迁移是学习的继续和巩固,又是提高和深化学习的条件,学习与迁移不可分割。
换句话说,对于一个具体的深度学习训练任务,如:人脸识别,训练数据当然是用人脸库啦,你会觉得是废话,但是,呵呵,要是你的人脸库不够大怎么办?要是你没钱买数据怎么办?而且,你又没有足够的时间收集一个足够大的人脸库怎么办?这个时候,你可以试试迁移学习(transfer learning),用别人已经训练好的Imagenet的模型来做。
这句话的要点就是:我想训练一个模型但是没有足够的数据库,这时候要使用别人已经训练好的模型,这个模型其实相当于一个已经学习到的数据库,把这个模型加入都自己的网络中,从某种角度来看就扩大了自己的数据库,而且节省了大量的计算力

更深刻的认识

  1. 迁移学习是把已经学习到的知识,应用到其他领域上,比如通用的语音模型迁移到某个人的语音模型上。

例如利用ImageNet数据集上训练好的Inception-V3模型来解决一个新的图像分类问题,可以保留训练好的Inception-v3模型中的所有卷积层的参数。只替换最后一层全连接层,在最后这一层全连接层之前的网络,也就是我们导入的别人的模型,叫做瓶颈层,而将新的图像通过训练好的卷积神经网络直到瓶颈层的过程可以看成对图像进行特征提取的过程,瓶颈输出再通过一个单层的全连接层神经网络可以很好的分类预测,所以有理由相信,瓶颈层的输出的节点向量可以被成为任何图像的更加精炼且表达能力更强的特征向量。
(如果不知道什么是Inception-v3的可以看讲解GoogleNet的Inception从v1到v4的演变
2, finetune的意思是:我们假设在Resnet101后面加上一个全连接层,然后我们锁住前面Resnet的参数,不参加梯度更新,然后只更新最后一个全连接层的参数。当全连接层的loss足够小的时候,再释放所有的参数一起训练。这样Resnet的参数也会微微调整,这就是finetune;迁移学习就不再训练之前的网络,而是把之前网络的输出的特征看作为我们自己网络的输入特征而已,而不再是一个要训练的网络的概念


总结

1, 迁移学习是认为别人的Resnet,googlenet这些输出的是特征,是图像的特征。我们自己建立分类模型,对着1000个特征进行处理即可
2, finetune是把别人的模型的已经训练好的参数,作为我们的初始化参数,这样,收敛速度快,而且需要的计算力也小。

参考博文:
迁移学习(transfer learning)和微调(fine-tune)的几点认识
迁移学习和fine的区别

公众号回复【下载】有精选的免费机器学习学习资料。 公众号每天会更新一个机器学习、深度学习的小知识,都是面试官会问的知识点哦~

  • 【机器学习的基础数学(PDF)】
  • 【竞赛中的大数据处理流程(PDF)】
  • 【如何做大数据的基础特征工程(PDF)】
  • 【自然语言处理NLP的应用实践大合集(PDF)】
  • 【python入门级教材(400页PDF)】

公众号每天会更新一个机器学习、深度学习的小知识,都是面试官会问的知识点哦~

在这里插入图片描述

  • 17
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值