DeepSeek创新优化
一、架构优化
在transformer架构中,DeepSeek引入混合专家模型MixtureofExperts(MoE) ,对传统 Transformer 进行一定改造。MoE(混合专家模型) 通过引入多个专家和动态门控机制,实现了大模型参数的高效利用和扩展,包括设计高效的专家路由(gating)机制和负载均衡方案。这些改造在理论上可以提升模型对不同任务或语境的专业化处理能力,有助于在面对复杂问题时调用更匹配的子模型进行推理。
1.DeepSeek
采用了专家混合模型(MoE)架构,通过动态路由,例如 Top2 路由,在 MoE 框架中,首先在动态学习过程中实现非显式预分类。将不同的输入动态分配给专门的专家模块。其次针对每个 token 选取得分最高的两个专家来分担任务,从而改善负载均衡,生成的结果进行模型融合,让输出的有效性更好。这种模块化设计能让每个专家网络专注于某个领域或类型的任务,在推理过程中能更有针对性地调用专业知识,引入TopK路由门控、负载均衡损失(防止专家退化),或结合MoE与稠密层的混合架构。如何设计高效的路由机制、平衡专家负载以及解决专家间的协同问题是一个难点。
2.GPT 模型
采用的是端到端的密集型 Transformer 架构,没有显式的专家分工。目前大多数主流语言模型依然采用的是密集型 Transformer 架构。没有显式地将生成任务划分给不同的专家模块。虽然模块化设计是一个有趣且有潜力的研究方向,但如何高效地整合不同专家的输出、确保生成内容的一致性和连贯性,仍然存在较大挑战。
二、稀疏注意力机制
虽然还是使用自注意力机制,但是不再像 ChatGPT一样,基于固定长度的上下文窗口进行自注意力计算, 而是仅计算局部区域或关键token、或分块处理(如将长文本分段)优化计算效率。使用了轴向注意力、滑动窗口等技术方法。结合MoE,可能通过路由机制过滤无关上下文。
稀疏注意力(Sparse Attention)是对传统Transformer中全连接注意力机制的优化,是一种优化自注意力计算的方法。在传统 Transformer 的自注意力中,每个查询(query)都需要与所有键(key)进行相似度计算,这导致时间和内存复杂度均为 O(n2),(其中 n 是序列长度)。而稀疏注意力机制则只选取序列中“重要”或“相关”的一部分位置进行计算,从而大大减少了计算量和内存需求。常见的实现方式包括局部注意力(只计算固定窗口内的相似度)、间隔注意力(类似空洞卷积的思想)以及随机或基于内容的采样策略等。这样,长序列处理时计算复杂度可以从二次级降低到接近线性或 O(n∙k)(k 为每个位置实际计算的邻域数)。 分段计算虽然能够降低计算成本,但也可能带来信息丢失或全局依赖不足的问题。如何在局部计算和全局信息整合之间做出权衡,是设计此类机制时必须考虑的难题。
虽然分段计算能够降低复杂度,但如何在局部计算的同时确保全局语境的捕获,是设计这类机制时需要重点解决的问题。局部计算容易引入信息碎片化的问题,需要额外设计信息交互机制以弥补全局依赖的不足
三、推理能力优化
1.实现推理能力的方法
推理能力是AI的重要特征,涉及从已有信息中得出新结论的能力。大语言模型的“推理”本质上是统计模式与语言结构的涌现现象,而非真正理解人类逻辑理论(如三段论、假言推理)。深层网络通过逐层抽象和变换,逐步提取高阶逻辑模式,使模型能够隐式学习推理路径,AI模型的推理主要依赖于以下几种方法:
1)统计推理:通过分析数据并建立统计模型,从数据中推断出潜在的模式和关系。模型通过海量文本(书籍、对话、学术论文等)学习语言中的逻辑关联,例如因果词(“因为…所以”)、条件句式(“如果…则”)和反驳结构(“然而”“但是”)。
2) 逻辑推理:基于形式逻辑和规则,通过逻辑推导得出结论。这种推理方式关注命题之间的关系,能够处理复杂的逻辑问题,例如三段论和假言推理等。
3)强化学习:通过与环境互动进行学习,利用奖励机制优化决策过程。
4) 自学推理:一些研究者正在探索让AI模型通过自身的推理过程进行学习,而不是依赖大量标注的数据。这种方法利用强化学习技术,使模型能够从成功和失败中总结经验,从而提升其推理能力。
在推理能力方面,GPT模型通过结合多种技术实现了显著的进步,并在实际应用中展现出多样化的创新。以下从技术基础、创新应用及对DoT方法的分析三个层面展开详细说明:
1) 隐式模式学习:
模型从数据中识别逻辑表达的模式,例如“A→B”常伴随结果B的描述,或反驳场景中的对立观点。通过预测下一个词的任务(如“完形填空”),模型被迫学习上下文中的逻辑连贯性。
2)思维链(ChainofThought, CoT)与指令微调:
CoT:通过展示分步推理的示例(如“首先…其次…因此…”),模型学会生成类似结构化的输出。指令微调:使用包含明确推理步骤的高质量数据(如数学解题过程)训练模型,强化其分解问题的能力。
3. 增强方法:
自一致性(SelfConsistency):生成多个推理路径后投票选择最优解。 知识增强:结合外部知识库(如维基百科)补充逻辑链条中的缺失信息。
2.GPT推理能力
主要通过全局自注意力(在固定长度内)和深层次网络堆叠中“自然”演化而来,并辅以链式思考(Chain of Thought,CoT)提示以及基于人类反馈的强化学习细调(RLHF) 等技术进行微调。
3,创新优化
DeepSeek R1 及其实验版本 DeepSeek-R1-Zero 在推理方法上展现出创新,主要体现在以下几个方面:
1.纯强化学习 (RL) 的推理能力:DeepSeek-R1-Zero 证明了仅通过强化学习,无需监督微调 (SFT),大模型也能具备强大的推理能力。这与常见的 LLM 训练模式(预训练 + 大规模 SFT)形成对比,减少了对大量标签数据集的依赖,使模型能以自主方式 “边做边学”。
2.多阶段训练流程:DeepSeek-R1 引入了多阶段训练流程,在强化学习之前整合了冷启动数据,确保了高复杂度任务的坚实基础。这个流程包括使用少量优质长链思维 (CoT) 数据进行微调作为冷启动,然后进行大规模强化学习,并引入语言一致性奖励
3.自发涌现的“思考能力”:R1-Zero 模型在 RL 过程中自发学会了重新评估其初始回答,并为问题分配更多的思考时间,这种“反思”的特性有助于解决大模型幻觉问题. 模型在推理过程中突然意识到可以“重新评估”之前的步骤,并尝试用一种新的方法来解题,说明模型初步掌握了人类思维的推理能力。
4.通过规则奖励指导推理:推理数据遵循 DeepSeek-R1-Zero 方法,利用基于规则的奖励指导数学、代码和逻辑推理,一般数据使用奖励模型捕捉复杂场景中的人类偏好
5.推理能力的蒸馏:DeepSeek-R1 探索了如何将大模型学到的推理模式蒸馏到小模型中,使小模型在推理任务上表现出色。
6.组相对策略优化算法 (GRPO): R1-Zero 模型在 RL 过程中延续了 DeepSeek-V3 组相对策略优化算法(GRPO),通过组内奖励对比优化策略,而不需要额外的判别器。
7.成本效益:DeepSeek-R1 通过减少监督微调 (SFT) 步骤来降低训练成本. 同时,其推理成本也相对较低。
四、训练策略
目前主流的训练流程(预训练 → 超级vised FineTuning → RLHF)。
1.蒸馏
大语言模型(LLM)的预训练主要依靠大规模无监督学习,在完成预训练后再通过蒸馏使模型更高效或更适合特定场景。 用于模型压缩或迁移知识的阶段。若DeepSeek使用蒸馏,可能是在特定领域微调阶段(如用专家模型指导通用模型)。
2.强化学习
强化学习细调(RLHF)多用于对齐人类偏好(如生成安全性、有用性),而非单纯“标注迭代”。需区分预训练(无监督)、监督微调(SFT)、强化学习(RLHF)三阶段,明确各阶段目标。利用强化学习(尤其是结合人类反馈的 RLHF)对模型进行微调,是目前提升生成模型对齐度和响应质量的重要方法。这一过程能够帮助模型更好地符合用户期望,并在一定程度上改善逻辑推理和回答准确性。
RLHF 的过程涉及大量的人类反馈数据收集、奖励模型训练以及策略优化,并不是简单地对一些高质量数据进行标注后反复迭代。这一流程既复杂又精细,需要大量工程实践和细致调优。
3.获取优质训练语料
通过账号向某些比较好的大语言模型问问题,将这些问题和回答作为prompt再来微调模型,学习回答问题的分布,这样解决了LLM训练的语料质量问题。
五、编程语言
DeepSeek 在编程上使用英伟达的 PTX (Parallel Thread Execution) 汇编语言进行优化,这种做法绕过了英伟达的 CUDA 框架。
好处是细粒度优化 PTX 允许进行细粒度的优化,例如寄存器分配和线程/线程束级别的调整。更高的硬件效率 DeepSeek V3 通过使用 PTX 语言,针对自身需求修改流式多处理器,提升硬件效率。潜在的国产 GPU 兼容性 绕过 CUDA 可能是为未来兼容国产 GPU 芯片做准备。 这种做法可能使 DeepSeek 能够支持华为昇腾等其他硬件生态。
虽然使用 PTX 能够实现极致优化,但它编程复杂且难以维护,通常只有顶尖的量化公司才会这样做。
CUDA(Compute Unified Device Architecture)是英伟达推出的一种并行计算平台和编程模型,允许开发者使用英伟达的 GPU 进行通用计算(GPGPU),提供了 C/C++ 扩展,使得开发者可以编写 GPU 加速的程序,并附带了丰富的库(如 cuBLAS、cuDNN)和工具链(如编译器、调试器)。帮助开发者在熟悉的编程环境中利用 GPU 的强大并行计算能力。通过 CUDA 框架,开发者无需直接操作 GPU 底层硬件即可实现高效并行运算。CUDA 封装了底层硬件细节,使得跨平台(在 CUDA 兼容的 GPU 上)开发成为可能。
因此,CUDA 为 GPU 加速计算提供了一个高层次、易用且高效的编程环境,已被广泛应用于科学计算、深度学习、图像处理等领域。编程适配度语言主要是 C/C++,同时也有 Fortran 和 Python(通过第三方库和高级框架)的支持。
六、模型效果比较
在中文的语境下DeepSeek在处理一般的工作中和ChatGPT o1水平相当,在深度的逻辑思考上面甚至表现得更为出色。和ChatGPT o3相比较一般的生成内容还是差不多,但是对于物理实在和物理定律的理解在这些方面不如o3.总体来说,DeepSeek 的能力和ChatGPT o1 相当,但是比o3还是要差一些。
以下是自己测试的时候得到的结果,仅代表个人观点。
现在爆火的DeepSeek,对其做了一个简单的测试,对其问了一个简单的问题,使用了四种模型。ChatGPT DeepSeek、perplexity 和豆包。问的是和DeepSeek 相关的六个技术性问题。
一、普通模型(非深度思考)的测试
ChatGPT-4o >豆包 > DeepSeek > perplexity
二、深度推理,只对有这个功能的两个模型进行了测试,使用的是相同的问题
DeepSeek R1 > ChatGPT o1
Deepseek R1 给出了非常详细的内容,而ChatGPT o1 带着很多猜测,不过技术路线还是基本上是OK的.或许Deepseek 在检索上面有做更好的效果,或许使用了RAG. 但是毕竟问的是和自己相关的问题,所以是否这个也会比ChatGPT o1 天然占优势?
使用手写的同一篇内容,请几个模型识别并求解
1.OCR功能 ChatGPT明显要好于DeepSeed
2.在做数学题和提供数学模型方法中,让人非常吃惊,ChatGPT 4o 不论是效率还是理解的精准度都好于 有做深度思考的 o1
3.在DeepSeed 得到正确的输入后,效果还是很好,而且给出的人口模型的思路也相当不错,还贴心的给除了Python的代码
DeepSeed一个非常值得关注的模型,期待其采用的架构和训练方法为 LLM 提供一个新的赛道和路径