量化,参数分不清?玩转本地大模型这样选

引言

想在本地玩转大语言模型(简称:LLM),但面对各种大模型,参数,量化等,应该如何选择呢?别担心,让我们用熟悉的图片相关的参数,来揭开它们的神秘面纱。

本文需要你了解图片的一些前置知识:

  1. 在相机拍摄的时候,有一个格式叫RAW格式,这个格式存储的照片比较大,一般会有40M一张。
  2. 我们存照片的时候,也会存jpg格式,这种格式比较小,一张照片可能也就3M左右
  3. 图片像素:图片的最小构成单位,2000万像素是我们熟悉的说法,就表示这个图片上有2000万个像素点。
  4. 图片分辨率:一张图片的分辨率越高,图片越清晰;分辨率越低,图片越模糊。

大语言模型的“像素”:参数

什么是参数?

  • 定义:模型中需要学习的变量,这个决定了模型的结果。
  • 类比解释:线性回归的系数,通过最小二乘法解出来的X值,当然LLM中的参数复杂性远远超过线性回归,但你在理解的时候,把它简单地当最小二乘计算出的参数也可以。

参数量的大小代表什么?

  • 类比到图片中,就跟图片的分辨率一样,像素点越多,细节越丰富。而RAW格式的照片,像素点很高。
  • 欣赏两张不同分辨率的图片,可以看到分辨率越高,图像越清晰。同理,当模型的参数量越大时,模型掌握的东西就越多,输出的质量也越高。
基本算是原图了
这张分辨率降至上一张图片的1/4,可以看到锯齿很明显。

不同参数量模型的适用场景

  • 大参数量模型:72B以上的模型,效果更好,但是需要更多的资源。就像图片一样,高分辨率的图片,要在好的显示器,显示效果好的机器上才能有好的观感。
  • 小参数量模型:32B及以下的模型,适用于资源有限的设备,速度快,但效果会差一些。像以前低分辨率的电视在低分辨率的设备上就比较友好。

大语言模型的“压缩”:量化

什么是量化?

  • 定义:一个动作,这个动作降低模型参数的精度,减少模型大小,从而加速模型的推理,注意这里的量化不是量化投资的量化。
  • 类比:这就像我们拿到了压缩照片,仍然可以看清楚图片,但如果放大到细节可能才有丢失。通过压缩,一张图片存RAW是50M,存JPG只要5M的话,那么就省了10倍空间,但显示的效果一般不会差10倍。

量化的原理

  • 量化:其实就是把数值进行压缩,重新映射。比如把32位小数,通过四舍五入缩成16位小数表示。如果是Q8量化,则代表将原来的数据映射到一个区间,0-255之间。
  • 量化的副作用:量化会带来信息损失,影响模型效果。

量化等级(Q8,Q4,Q2,Q1)

等级解释

  • Q8:相对较高的精度,信息损失较小,模型效果一般比原始模型效果差3-15%
  • Q4:常用的量化等级,在精度与大小之间算是相对平衡。
  • Q2与Q1:非常低的精度,模型大幅减小,效果下降非常快,不推荐。这个我们在Hugging Face网站上下载模型的时候,关于量化的等级,每个模型也会有一些介绍,基本都不推荐Q1和Q2的模型。因为Q1模型的参数基本就是0和1类似的两个整数值,而Q2只有4个整数值。

等级图片演示

正常图片灰度降级模拟

这里演示的思路是,先将一张彩色照片使用加权平均变成灰度照片->此时有256个灰度,可以理解成是Q8->逐步降级至2级灰度即Q1。

00016_2914668719.png

quantized_animation.gif

像素块量化模拟
  • 1024X1024的图片,每4个像素组成1个宽度,共计256个宽度,每一组宽度的RGB这三个数值都相等。逐步通过量化的方法,只剩下2种颜色。 【放上色阶那种Q8降至Q1的图片】

再给一个动图来观察一下效果:

quantized_animationc2b15f4902dc52e6.gif

总结

  • 一般情况下,模型的参数类似图像的分辨率,越大越好;
  • 量化的选择,最好是选择Q4及以上的模型。
  • 一般16G显存跑14B的Q4即可

本文的图片全部由AI生成。如有雷同,纯属巧合。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇