AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


7G显存,训练你自己的DeepSeek-R1

发布日期:2025-02-17 15:02:02 浏览次数: 1726 来源:newtype AI
推荐语

提升传统模型推理能力,实现个人AI分身,微调技术的新突破。

核心内容:
1. DeepSeek微调技术大幅提升模型思考能力
2. 微调门槛降低,小尺寸模型也能实现高精度推理
3. 个人AI分身的应用场景与实践案例

杨芳贤
53A创始人/腾讯云(TVP)最具价值专家


用DeepSeek的方法做微调,可以显著提升传统模型的思考能力。

这是我训练好的模型文件,已经传到Hugging Face上了,大家自取。它是基于Qwen2.5 3B,通过微调加强了数学能力,最后生成了Q4、Q5和Q8三个版本。咱们来对比一下Q4精度的效果。我问一个经典问题:

9.9和9.11这两个数字,哪个更大?

先来看原版的回答。不仅答案错了,而且给的理由也是完全混乱的——什么叫“小数部分相同,唯一的区别在于十分位”,简直胡说八道嘛。

再来看微调版本。这就正常了。整数部分一样,那就比较小数部分。很自然就得出9.9比9.11更大。

这套东西不是我搞出来的,而是Unsloth的成果。他们前些天发了一篇博客,介绍了方法,还给出了代码。简单来说,Unsloth这套东西实现了两点:

第一,微调门槛下降。像1.5B之类的小尺寸模型,只需要7G显存就可以微调。而7B、14B这种,15G显存就OK。也就是说,用消费级的PC就能微调。如果是用云端的算力,像我用Google Colab的T4 GPU,花了一个小时就顺利完成。

第二,模型能力提升。GRPO是一种强化学习算法,是DeepSeek发明并开源出来的。用这套算法和数据集,能够训练出具备更强推理能力和更好可解释性的模型。现在Unsloth把它应用到微调里边,想象空间一下就出来了。举个例子:

私域模型。

一个商业博主,有自己的方法论,也有很多交付案例。他把过往积累下来的东西整理成数据集,包含问题、答案以及解题步骤。然后用Unsloth这套东西去微调,生成3B的模型。最后,把模型文件给到他的用户,不管是免费还是收费都可以。

用户拿到之后,用我上上期介绍的方法在手机上使用。这意味着,用户可以随时随地、不需要联网地跟这位博主的AI分身交流。

对自媒体来说,以前只有在你发视频、发文章的时候,或者你在群里说话的时候,你的粉丝、用户才能接收到你的信息。现在,有了这个方法,他们可以无限制地被你这个IP影响。

之前我分享手机上跑模型的方法,一堆人喷我说没意义、没价值。说句扎心的话:眼界太浅,活该挣不着钱。

哈喽大家好,欢迎来到我的频道。谦虚地说啊,我是国内少数几个能把关于AI的Why和How讲明白的博主。我提供的东西比教程更值钱。记得点一波关注。如果想链接我,就来newtype社群。已经有800多位小伙伴付费加入啦!

回到今天的主题:用强化学习算法,微调模型。

在介绍Unsloth的工具之前,我还是得先把基本概念用一种通俗易懂的方式讲给你们听。可能不是很严谨,但是包懂。

以前搞强化学习,需要准备大量包含解题步骤的高质量数据,以及非常精确、绝对的奖励函数。然后大力出奇迹,硬生生把模型给培训出来。

后来DeepSeek发现,其实不需要那么高的成本,搞得那么费劲——可以把奖励函数弄得更灵活一些嘛。针对每一个问题,它让模型生成一组答案。然后看这一组答案里边,哪个答案相对好一些,从而给出奖励。

传统方法,比较像我们以前在学校里接受的填鸭式教学,靠着记忆力去刷题,想要蒙混过关。但是,这种搞法,知其然而不知其所以然,所以最后还是个渣渣。而DeepSeek的方法则是反复思考解题步骤,最后不仅知其然而且还知其所以然。于是,模型“顿悟”了,学霸诞生了。

如果还是不太明白,那我再打个比方。传统方法训狗,需要明确定义每个动作,并且给每个动作都设计奖励。只有当狗完全按照指令完成动作时,才能获得奖励。

而DeepSeek的方法是,一个动作让狗做三次。在三次当中,相对较好的那一次获得奖励。然后不断重复这个过程。

大家如果有养狗经历就知道,用DeepSeek的这种训练方法,主人轻松,狗子开心,效果也好。

DeepSeek很大方地分享出来之后,Unsloth就拿来用了。不过在使用之前,有一些限制需要跟大家说清楚:

你拿来微调的模型不能太小了,至少也得有1.5B,不然没法正确生成思考标记。这是我选择用3B尺寸的原因,既符合训练的要求,也能在手机上运行。另外,步数至少要300步,奖励才会真正增加。为了达到良好的效果,建议至少训练12个小时。

在官方给的示例当中,用的数据集是GSM8K。它包含了8500个高质量的小学数学文字题。每个问题需要2到8个步骤才能解决。而且,这个数据集里的解题方法是用自然语言编写,而非纯粹的数学表达式。所以,用它来训练,能够提升模型的多步骤数学推理。

类似GSM8K的数据集还有好几个,比如MATH Dataset、MathQA等等。我建议大家先别着急就导入自己的数据集,可以拿这些练练手。因为,换了数据集之后,由于格式不同、特点不同,奖励函数可能需要做相应的调整。

另外,超参数的调整也需要大量实践。比如:

学习率,用来控制模型学习的速度。设得太高,模型可能学得太快,错过最优解;设得太低,模型可能学得太慢,浪费时间。

Batch size,指的是每次喂给模型的数据量。设得太大,可能会导致内存不足;设得太小,可能导致模型学习不稳定。

微调和RAG一样,都是看起来简单,但真要获得好的效果,需要大量调试。而且这东西没法教,只能“干中学”。但是,有门槛是好事。只要跨过去了,就能甩开一大堆人。

所以,我在Google Colab上买了一些计算单元,这段时间会做各种测试。至于数据集,我突然想到,过去一年我在星球里回答了好多好多问题。这些问题都可以做转换,比如让模型帮我批量处理,然后放进数据集里。

通过微调打造AI分身、训练私域模型的想法,在我去年做Llamafile那期视频的时候就出现了。现在可能性越来越大了。


53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

和创始人交个朋友

回到顶部

 

加载中...

扫码咨询