我是靠谱客的博主 笨笨冬日,最近开发中收集的这篇文章主要介绍预训练是什么?预训练和直接训练的区别?个人理解,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

        一个劲说预训练模型,所以说到底什么是预训练模型?真让人头大!

         本文就以最简单的视角切入,以一个例子让你明白预训练到底是什么?它和我们平时最常说的直接训练的区别又是什么?

个人理解

        假设有一个任务:现在有个紧急比赛,需要让我们的小baby在一个月内学会跑步!

 直接训练方式:

        我之前什么都没教过他,直接让他学会怎么跑步。那他还要自己摸索怎么爬,怎么站立?这两步学会了才能学跑步。这是我们正常的学习思维。但是他本身就是一个小baby,让它自己摸索爬和站立的过程是非常长的。等他学完这两步比赛都结束了!

         我们知道训练一个神经网络要学习的东西其实就是一个合适的参数。那直接训练方式表现在模型参数上,就是我随机初始化所有的模型参数,然后模型从0开始学习针对当前这个任务的合适参数。

预训练方式:

        在任务出现之前,我就已经先教会他怎么爬、怎么站立了。现在比赛来了,我只需让它在之前的基础上随便学学都能很快学会。而且耗时要大大缩短!

         预训练方式表现在模型参数上,就是我之前已经拿一个合适的任务(这个任务可能是和很多任务有共同之处的任务)提前训练好了所有的模型参数(预训练)。我们不需要再从0开始训练所有参数了,但是针对我们目前这个任务,有些参数可能不合适,我们只需要在当前参数的基础上稍加修改(微调)就可以得到比较好的效果,这样学习时间必然会大大减小。而且,由于预训练过程和我们当前的任务不是同时进行的,所以可以提前花很长时间把几千亿乃至万万亿参数(现在应该还没)提前预训练好,以求和更多的具体任务都有重合,从而只需要我们微调就可以在各项任务达到不错的效果。

        预训练就像“我们读了新华字典、牛津字典后,再让我们解释一个某个字”一样神奇~

 

最后

以上就是笨笨冬日为你收集整理的预训练是什么?预训练和直接训练的区别?个人理解的全部内容,希望文章能够帮你解决预训练是什么?预训练和直接训练的区别?个人理解所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部