心法利器

本栏目主要和大家一起讨论近期自己学习的心得和体会。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有

2023年新的文章合集已经发布,获取方式看这里:又添十万字-CS的陋室2023年文章合集来袭,更有历史文章合集,欢迎下载。

往期回顾

因为很多原因,今年应该是我做的算法最杂的一年了,传统NLP、大模型、RAG、机器学习等多个领域内容基本我都有涉及,同时,很多技术也在今年有了很多革新和进步,因此我想在这里总计一下我的视角下这些算法的情况以及我使用下来的经验感受。具体我就按照下面几个方面来划分,系统总结一下。

今天是第三篇,讨论小模型的生存空间,我分这几个模块聊一下。

  • 定义小模型范围

  • 小模型的优劣势

  • 小模型目前的应用场景

  • 小模型的学习思路

  • 小结

定义小模型的范围

本文所聊的小模型,是指现在意义下具有一定通用生成回复能力的大模型之外的其他的模型,包括BERT系列以及之前的其他模型。大模型出来以后,原本比较精准的各个任务的专属SOTA似乎都有被大模型替代的可能和趋势。

虽说是“小模型”,但我自己其实并不想这么叫,说实话这些技术都不是很久远的技术,有些技术至今仍在迭代,而且大小的边界真挺模糊的,例如qwen模型做小能有0.5b的档位,而这个档位在bert系列中,不少large级别的模型已经达到了,再者在bert刚出来那会,大家要驯服它使用它也要费很多劲,当时也被叫做“大模型”,顶多算是经过大家的大量实践然后被沉淀总结下来的经典方案罢了,起个名字主要方便讨论,降低本文的沟通成本。

小模型的优劣势

聊应用场景之前,我想按照我的理解简单列举小模型系列方案的优势和劣势。

首先是优势:

  • 模型体积小,推理和训练成本低,速度快。

  • 灵活性高,单模型单任务下来也不会很贵。

  • 在有数据训练的情况下,下限不会太低(质量和数量都达标)。

然后是劣势:

  • 依赖数据进行训练,大部分情况不训练基本都达不到可用的水平。

  • 长文本、多信息的场景效果可能不如大模型。

很多直观感觉大模型的效果一般都会比小模型好,但在自己的经验下,在数据充足的微调情况下,大模型的优势似乎并不明显,所以此处并不作为优势,比较鲜明能有优势的只有长文本、多信息之类很复杂的任务下,例如bert-base最大长度只有512,现在来看肯定算很短的。

小模型目前的应用场景

正因为在某些任务下,大模型没法一下子就杀死比赛,所以给了小模型很多的生存空间,我来举几个例子。

小模型虽说需要训练数据,但是一旦训练后就可以逼近甚至超越大模型的效果,因此用大模型+prompt模式做标注,小模型训练的模式我曾在很多地方见到过,用以前的说法应该算是一种“蒸馏”,因为这个概念太过老旧(Hinton在2014年提出的,也就十年前)。最终用于推理的,就是这个轻便的小模型了,不是大模型买不起(可能就是买不起),而是小模型更有性价比。

Agent里面有一个概念叫做“路由”,路由说白了就是根据query或者目前的状态来选择智能体的跳转,在根据query进行跳转的情况下,这事可以很轻易地抽象为一个“文本分类”的问题,既然是文本分类问题了,整个分类场景各种方案都能被尝试,在一些比较简单的问题下,小的分类模型就能简单解决了。

对于一些性能要求很高的场景,尤其是互联网业务,分分钟几百上千上万的qps,大模型的耗时应该是很难顶的,用更扎心的话来说,大模型那叫做不可用,此时小模型甚至是一些规则,才应该是可用的,大模型的耗时一个在模型内部结构的推理,一个在解码,生成的结果文本一旦较长,一两秒就可能造成很大的堵塞,离线可能还好,但是在线服务的难度就很大,小模型一般都在100ms以内,甚至有些可以达到几毫秒,这就非常适合了。

从这些场景内可以看到,小模型在很多场景是非常有用的,因此在现在仍旧需要被纳入选择范围,而且在一定时间内仍将有用武之地。

小模型的学习

正因为小模型仍有用武之地,我们仍然不能放弃大模型的学习。

很多这个领域的新人,往往因为应对校招、面向科研的原因,而忽略了小模型的学习,更多精力聚焦在大模型相关技术上,这个无可厚非,但这不代表就能放弃小模型的学习,这是个通病,这不仅包括小模型本身,还包括一些因为大模型技术流行导致其他相关关键技术被覆盖的问题,例如模型的反向传播原理、损失函数选择、学习率等相关参数的基本概念,在去年类似的题目竟然能考倒不少优秀的同学,是我没想到的。经过一年的沉淀诚然大模型有类似ollama、llama factory之类的工具大大降低我们在训练时候的麻烦事,但不代表这里的东西就应该被忽略。

系统学习和专项学习。对于基础上不扎实,仅通过论文或者博客的方式对技术进行学习的同学,非常建议系统学习,可以是各种形式的课程,也可以是书籍等,对一项知识进行全面完整地学习,经过这种学习,一般就能了解一个系统里的各个部分,不至于出现知识的缺漏;而对于已经有一定基础的同学,在学习的时候则可以通过专项的方式,对该领域的各种方法都进行学习,而非零散地、仅流行的学习模式,面向媒体的学习往往很容易让人浮于表面,潮流是百变的,但技术实践则要求人很全面的能力。

小结

本文是在24年初25年初的这个时间点下,阐述目前小模型的生存空间以及学习建议。小模型在目前的应用空间其实远比想象的大,媒体的宣传和科研的视野往往容易把大家的目光,包括研究者的目光吸引过去,然而在应用层面,我们还是得脚踏实地,综合全面地学习多种技术,从而让自己能应对更多挑战。

有一个小细节,在我写“大模型的应用与训练(心法利器[123] | 24年算法思考-大模型的应用与训练篇)”这一篇时,我其实并没有规划“个人的成长小结”这个篇章,而在“RAG技术论文与实践小结(心法利器[125] | 24年算法思考-RAG技术论文和实践小结)”中,我则加入了,而在今天这篇,我在规划中增加了4个字“打开思路”,是旨在总结自己去年成长的关键词,所谓的“打开思路”就是要求自己在解决问题时提出更多可能的方案从而进行灵活选择,而打开思路的基础,就是持续全面地学习,不拘一格,不拘泥于所谓的“火不火”、“low不low”的学习,十八般武艺皆收入囊中,才能应对各种困难。此处先不展开吧,当做一个小彩蛋罢了,具体等那篇文章再来展开分享。

33c4b78e1a8e412a29220a1cdb6f081f.png

Logo

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!

更多推荐