个人域名网站,k网站建设,游仙区专业网站建设价格,商丘网格通1、摩尔定律和伸缩法则
摩尔定律#xff08;Moores law#xff09;是由英特尔#xff08;Intel#xff09;创始人之一戈登摩尔提出的。其内容为#xff1a;集成电路上可容纳的晶体管数目#xff0c;约每隔两年便会增加一倍#xff1b;而经常被引用的“18个月”#xf…1、摩尔定律和伸缩法则
摩尔定律Moores law是由英特尔Intel创始人之一戈登·摩尔提出的。其内容为集成电路上可容纳的晶体管数目约每隔两年便会增加一倍而经常被引用的“18个月”则是由英特尔首席执行官大卫·豪斯David House提出预计18个月会将芯片的性能提高一倍即更多的晶体管使其更快是一种以倍数增长的观测。[1] 然而由于受到晶体管的散热问题、内存带宽瓶劲等问题摩尔定律目前已经走到了物理的极限限制了我们做出更快的芯片。
另一方面OpenAI提出了Scaling Laws[2]其中列举了影响模型性能最大的三个因素计算量、数据集大小、模型参数量。也就是说当其他因素不成为瓶颈时计算量、数据集大小、模型参数量这3个因素中的单个因素指数增加时loss会线性的下降。同时DeepMind的研究也得出来和OpenAI类似的结论[3]。 Scaling Laws for Neural Language Models
根据Scaling Laws模型越大、数据量越大、计算量越大模型效果也越好。因此目前很多LLM都是朝着更多参数、更多训练数据的方向进行scaling。然而随着摩尔定律走到了尽头LLM也不可能做到无限大。那么计算受到限制的时候该如何进一步提升模型的性能呢其中一种方法是MoE。
2、使用MoE进行LLM的scaling
MoEthe mixture of experts model的思想是训练多个神经网络也就是多个experts每个神经网络 (expert) 被指定 (specialize) 应用于数据集的不同部分。对于不同来源的数据有一个managing neural net来判断应该交给哪一个 expert 进行处理。
2.1 GLaM
2022年Google发布了MoE的模型GLaM[4]。GLaM是一个 decoder only 模型支持 in-context learning一共有1.2T的参数量其中有97B是激活的。 GLaM: Efficient Scaling of Language Models with Mixture-of-Experts
GLaM在训练和推理时所需的计算量都远低于GPT3。同时在zero-shot、one-shot 和 few shot 方面GLaM的效果都优于GPT3。
2.2 Expert Choice Routing
GLaM 虽然效果不错但是有负载不均衡问题。也就是说会有一部分 expert 会经常被激活而有一些 expert 很少被激活。
2022年在 NeurIPS上提出了新的 Expert Choice Routing 方法[5]来解决负载不均衡问题。该方法中每个expert 会独立选择 top-k 的tokens 作为输入。每个token都可能会被不同的 expert 选择。一些比较重要的tokens会得到更多的计算资源而不重要的 tokens 得到的计算资源会比较少。 Mixture-of-Experts with Expert Choice Routing
采用 Expert Choice Routing 的模型相比于GLaM在收敛速度方面可以提升2倍 在 step time 上提速20%并且完美解决了负载不均衡问题。8B/64E 的模型有9.8B激活的参数在 SuperGLUE 上效果超过了 T5-11B 的模型。
3、MoE进阶技术
3.1 Brainformers
上述MoE模型在训练速度很慢会成为进一步 scaling 的瓶颈。在 ICML 2023上进一步提出了Brainformers[6]。 Brainformers: Trading Simplicity for Efficiency
为了模型计算更快需要对矩阵乘法进行分解从而减少计算量。同时这些矩阵分解必须不能损害模型的准确性。上图 (a) 中是两种分解矩阵乘法的主要方法分别是从横向分解low-rank和纵向分解multi-expert 。而在图 (b)中可以对 low-rank 和 multi-expert 进行组合、堆叠以实现更有趣且计算效率高的模型架构。
如果在 bottleneck 处插入一个 mixure 层模型看起来就非常像 transformers。如果在 bottleneck 处插入一个 attention layer模型看起来就非常像一个 multi-expert transformers。
作者对不同的参数进行了搜索从而找到了最优的网络模型结果。搜索的空间包括不同的层类型attn、moe、ffn、隐层维度、MoE隐层维度、FFN隐层维度、attention 的 head 数、Gating Fuction、Capacity Factor、Activation Function等。
从搜索空间中采样一组参数构建一个 100M/32E 的模型选择top-K的模型然后进行scaling如1B/64E 、8B/64E。 Brainformers: Trading Simplicity for Efficiency
相比于GLaM可以在收敛速度方面提速2倍在 step time 上提速5倍。
3.2 Lifelong Language Pretraining
其他问题如何进行增量训练同时避免灾难性遗忘。
方法引入新的数据分布时引入新的 experts同时冻结原有的权重并且加入一个regularization loss 避免灾难性遗忘[7]。 Lifelong Language Pretraining with Distribution-Specialized Experts
相比于baselineLifelong-MoE 的灾难性遗忘被显著抑制并且比 dense oracle 的效果还要好。
4、问答及彩蛋
MoE model 的训练有2种方案一种是 train from scratch一种是 dense to sparseGPT4是一个MoE model且大概率是一个 train from scratch 的 MoE model如果 finetune 后的 MoE 效果变差可能是 finetune 没有训好需要增加新的 expertsGoogle 从 NVIDIA 买了 26,000 个 H100 真有钱H100 针对 transformers 训练做了专门的优化主要是卡与卡之间的通讯优化比 A100 提速 10倍左右
参考
摩尔定律-维基百科 https://zh.wikipedia.org/zh-hans/%E6%91%A9%E5%B0%94%E5%AE%9A%E5%BE%8BScaling Laws for Neural Language Models https://arxiv.org/abs/2001.08361Training Compute-Optimal Large Language Models https://arxiv.org/abs/2203.15556GLaM: Efficient Scaling of Language Models with Mixture-of-Experts https://arxiv.org/abs/2112.06905Mixture-of-Experts with Expert Choice Routing https://arxiv.org/abs/2202.09368Brainformers: Trading Simplicity for Efficiency https://arxiv.org/abs/2306.00008Lifelong Language Pretraining with Distribution-Specialized Experts https://arxiv.org/abs/2305.12281