KIMI-VL仅激活3B参数,媲美Qwen2.5VL-72B效果

imgimg

一、KIMI-VL模型架构

img

Kimi-VL 的架构由三个主要部分组成:

  • 本地分辨率视觉编码器(MoonViT)
  • MLP 投影器和
  • MoE 语言模型

1.1 MoonViT(本地分辨率视觉编码器)

  • MoonViT 初始化自 SigLIP-SO-400M,该模型原本使用可学习的固定大小绝对位置嵌入来编码空间信息。
  • 为了更好地适应高分辨率图像,MoonViT 在高度和宽度维度上引入了二维旋转位置嵌入(RoPE),以改善对细粒度位置信息的表示。
  • 这两种位置嵌入方法协同工作,使得 MoonViT 能够高效地处理不同分辨率的图像,并将连续的图像特征传递给 MLP 投影器和 MoE 语言模型。
  • 在处理高分辨率图像时,MoonViT 能够有效地提取图像中的细节信息,例如:在 InfoVQA 数据集上,Kimi-VL 取得了 83.2% 的准确率,这表明 MoonViT 在理解高分辨率图像中的复杂信息方面具有显著优势。

1.2 MLP 投影器

  • 首先,像素洗牌操作对 MoonViT 提取的图像特征进行 2×2 下采样,减少空间维度的同时增加通道维度。
  • 接着,将处理后的特征输入到两层 MLP 中,使其能够与语言模型的嵌入向量进行有效融合,为后续的训练阶段做好准备。
  • 在处理多模态数据时,MLP 投影器能够将图像特征和文本特征有效地结合,使得模型在处理如 BLINK 等多图像理解任务时,能够更好地理解图像之间的关系,取得了 57.3% 的准确率,超越了多个现有的开源 VLM。

1.3 MoE 语言模型

  • 在 MoE 架构中,输入数据被路由器分配到不同的专家模块进行处理。
  • 每个专家模块专注于处理特定的子任务或数据特征,从而实现模型的并行计算和高效推理。
  • 通过这种方式,MoE 语言模型能够在处理大规模数据时保持较低的计算成本和内存占用。
  • 在处理长文本和长视频等长上下文任务时,Kimi-VL 的 MoE 语言模型能够有效地利用其扩展的上下文窗口(128K)来处理复杂的输入。例如,在 LongVideoBench 数据集上,Kimi-VL 取得了 64.5% 的准确率,显示出其在长视频理解方面的强大能力。

二、预训练阶段

Kimi-VL 的预训练过程包括四个阶段,总共消耗了 4.4T 个标记(tokens),这些阶段旨在逐步提升模型的视觉和语言能力,同时保持其计算效率。

2.1 ViT 训练阶段

  • 在这一阶段,MoonViT 作为视觉编码器,通过图像-文本对的训练来建立强大的视觉表示能力。
  • 训练目标包括 SigLIP 损失和交叉熵损失,分别用于对比学习和图像描述生成。
  • 首先,图像和文本编码器通过计算对比损失来学习图像和文本之间的对齐关系,而文本解码器则基于图像编码器的特征进行下一步预测(NTP)。
  • 训练过程中采用了渐进式分辨率采样策略,逐渐允许更大的图像尺寸,以提高模型对不同分辨率图像的适应能力。
  • 在这一阶段,模型能够学习到图像的基本特征和与文本的对应关系。例如,在处理包含建筑物、自然景观等图像时,模型能够生成与图像内容相关的描述性文本,为后续的多模态任务打下基础。

2.2 联合预训练阶段

  • 此阶段将视觉编码器、MLP 投影器和 MoE 语言模型作为一个整体进行联合训练,以增强模型的多模态理解能力。
  • 训练数据包括纯文本数据和多模态数据,通过逐步增加多模态数据的比例,使模型在保持语言能力的同时学习视觉信息。
  • 训练开始时,模型仅使用纯文本数据进行训练,随后逐渐增加多模态数据的比例。通过这种方式,模型能够更好地融合视觉和语言信息,提高其在多模态任务中的性能。
  • 在处理如 MMBench 等多模态基准测试时,模型能够准确地理解图像内容并结合文本信息进行推理,取得了 83.1% 的准确率,显示出其强大的多模态理解能力。

2.3 联合冷却阶段

  • 在这个阶段,模型通过高质量的语言和多模态数据进行进一步训练,以优化其性能。
  • 对于语言部分,采用了合成数据和高质量子集相结合的方法,以提高模型在数学推理、知识问答和代码生成等任务上的表现。
  • 对于多模态部分,通过将学术视觉或视觉-语言数据源转换为问答对,进一步增强模型的视觉理解能力。
  • 通过合成数据和高质量数据的结合,模型能够在保持其语言能力的同时,进一步提升其在多模态任务中的表现。
  • 合成数据的引入使得模型能够接触到更多样化的任务和场景,从而提高其泛化能力。
  • 相关示例:在处理如 MathVista 等数学推理任务时,模型能够准确地理解题目中的数学概念和公式,并结合图像信息进行推理,取得了 68.7% 的准确率,显示出其在数学推理方面的强大能力。

2.4 联合长上下文激活阶段

  • 此阶段将模型的上下文长度从 8K 扩展到 128K,以增强模型对长文本和长视频等长输入的处理能力。通过逐步扩展上下文长度,并在每个子阶段中调整长数据的比例,模型能够有效地学习长上下文理解能力。
  • 在每个子阶段中,模型的上下文长度翻倍,同时调整长数据的比例,以确保模型能够在处理长输入时保持其短上下文能力。
  • 通过这种方式,模型能够更好地处理长文本和长视频等复杂输入。
  • 在处理如 MMLongBench-Doc 等长文档任务时,模型能够准确地理解文档中的内容并回答相关问题,取得了 34.7% 的准确率,显示出其在长文档理解方面的强大能力。

三、后训练阶段

3.1 联合监督微调(SFT)

  • 通过指令驱动的微调,增强模型遵循指令和进行对话的能力。采用 ChatML 格式进行优化,使模型能够更好地理解和生成对话内容。
  • 在微调过程中,模型使用纯文本和视觉-语言 SFT 数据进行训练。监督仅应用于答案和特殊标记,而系统和用户提示则被屏蔽。通过这种方式,模型能够学习到如何根据指令生成准确的回答。
  • 在处理如 ScreenSpot-Pro 等 GUI 接地任务时,模型能够准确地理解屏幕截图中的内容并执行相应的操作,取得了 34.5% 的准确率,显示出其在 GUI 接地方面的强大能力。

3.2 长链推理监督微调

  • 通过长链推理数据对模型进行微调,以增强其在复杂推理任务中的表现。采用提示工程构建高质量的长链推理数据集,使模型能够学习到人类推理的关键步骤。
  • 通过长链推理数据集的训练,模型能够学习到如何进行规划、评估、反思和探索等推理步骤。这些步骤有助于模型在处理复杂任务时生成更详细、更连贯的推理路径。
  • 在处理如 MathVision 等复杂数学推理任务时,Kimi-VL-Thinking(经过长链推理微调的版本)能够生成详细的推理过程,并准确地解决问题,取得了 36.8% 的准确率,显示出其在复杂推理任务中的强大能力。

3.3 强化学习(RL)

  • 通过强化学习进一步提升模型的推理能力。采用在线策略镜像下降算法,使模型能够在训练过程中自主生成结构化的推理路径。
  • 在训练过程中,模型根据奖励模型的反馈不断优化其策略。奖励模型根据模型生成的答案的正确性给予奖励,从而引导模型生成更准确的推理路径。
  • 在处理如 MMMU 等多学科推理任务时,Kimi-VL-Thinking 能够通过强化学习生成更准确的推理路径,取得了 61.7% 的准确率,显示出其在多学科推理任务中的强大能力。

KIMI-VL

  • Kimi-VL,这是一种高效的开源专家混合 (MoE) 视觉语言模型 (VLM),可提供高级多模态推理、长上下文理解和强大的代理功能,同时在其语言解码器 (Kimi-VL-A3B) 中仅激活 2.8B 参数。
  • Kimi-VL 在处理长上下文和清晰感知方面推进了多模态模型的帕累托前沿:配备 128K 扩展上下文窗口,Kimi-VL 可以处理长而多样的输入。
  • 在 LongVideoBench 上取得了令人印象深刻的 64.5 分
  • 在 MMLongBench-Doc 上取得了 35.1 分的令人印象深刻的分数
  • 其原生分辨率视觉编码器 MoonViT 进一步使其能够查看和理解超高分辨率视觉输入,在 InfoVQA 上达到 83.2
  • 在 ScreenSpot-Pro 上达到 34.5,同时在常见的视觉输入和一般任务中保持较低的计算成本。

img

Kimi-VL-Thinking

  • 通过长链思维 (CoT) 监督微调 (SFT) 和强化学习 (RL) 开发,表现出强大的长视距推理能力。
  • 在 MMMU 上获得了 61.7 分,在 MathVision 上获得了 36.8 分,在 MathVista 上获得了 71.3 分,同时保持了紧凑的 2.8B 激活 LLM 参数占用
  • Kimi-VL-A3B-Thinking 凭借有效的长思维能力可以在 MathVision 基准测试中与 30B/70B 前沿开源 VLM 的性能相媲美

img

KIMI-VL实战

from PIL import Image
from transformers import AutoModelForCausalLM, AutoProcessor

model_path = "moonshotai/Kimi-VL-A3B-Thinking"
model = AutoModelForCausalLM.from_pretrained(
    model_path,
    torch_dtype="auto",
    device_map="auto",
    trust_remote_code=True,
)
processor = AutoProcessor.from_pretrained(model_path, trust_remote_code=True)

image_paths = ["./figures/demo1.png", "./figures/demo2.png"]
images = [Image.open(path) for path in image_paths]
messages = [
    {
        "role": "user",
        "content": [
            {"type": "image", "image": image_path} for image_path in image_paths
        ] + [{"type": "text", "text": "Please infer step by step who this manuscript belongs to and what it records"}],
    },
]
text = processor.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt")
inputs = processor(images=images, text=text, return_tensors="pt", padding=True, truncation=True).to(model.device)
generated_ids = model.generate(**inputs, max_new_tokens=2048)
generated_ids_trimmed = [
    out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
response = processor.batch_decode(
    generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
)[0]
print(response)

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值