自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(216)
  • 资源 (3)
  • 收藏
  • 关注

原创 大模型的长度外推(一)

在 Transformer 结构的大模型里(GPT、LLaMA、Qwen 等),输入是通过 位置编码(positional encoding/embedding) 来表示 token 在序列中的位置的。

2025-08-19 11:01:44 12

原创 moe并行

本文简要介绍了目前业界的一些 MOE 并行方案。如果说Transformer结构使得模型突破到上亿参数量,那么稀疏 MoE 结构可以在不显著增加计算成本的情况下,使模型参数量进一步突破,达到上千亿、万亿规模。虽然,1990年左右 MOE 的概念就已经出现了;但是可以预见,MOE 将在通往AGI的道路上扮演越来越重要的角色。

2025-08-18 19:35:58 31

原创 大模型分布式训练常用通信算子

作用:将多个设备上的张量执行一个归约操作(如加法、最大值、平均值),并将结果存储在一个目标设备上。操作: 所有 GPU 进行加法归约(reduce, 如 sum),然后 同步每人一份(all)。All-Reduce 的反操作:先将数据加和(reduce),然后将总结果切分发给各 GPU。作用:将一个大张量(或张量列表)从一个设备分发到多个设备上,每个设备拿到一部分。操作: 先将所有 GPU 的对应位置的数据加和,然后均匀分发切片给各 GPU。像小组每人写了一部分论文,然后大家交换收集后各自合并出完整稿。

2025-07-30 10:58:21 41

原创 为什么加速LLM推断有KV Cache而没有Q Cache?

KV Cache 一般用在做推理的时候,只有在加入Causal Mask时才能使用。比如训练出来的是一个翻译模型,输入为“我很好”,经过text embedding和position embedding之后变成。看作是输入“我很好”经过embedding之后的结果,然后经过线性变换分别生成。从式子上看答案很简单,因为在逐个 token 计算输出的时候当前轮的。KV-Cache减少计算量减少的就是重新计算线性变化的计算量。那么 KV-Cache 节省的计算量是从哪里节省出来的呢?开始进行多头自注意力的计算。

2025-07-05 17:38:54 45

原创 FlexDuo论文阅读

微信公众号、知乎号(同名):李歪理,欢迎大家关注(论文最近更新:2025.5.29)FlexDuo是一种可插拔系统,用于为语音对话系统赋予全双工能力。全双工语音对话系统(Full-Duplex SDS)通过实现实时双向通信,显著提升了人机交互的自然性。然而,现有方法仍面临一系列挑战,例如:由于架构设计高度耦合、状态建模过于简单(仅采用二元状态模型),导致模块无法独立优化,以及上下文噪声干扰问题严重。

2025-06-27 11:09:01 631 1

原创 基于大语言模型(LLM)增强的全双工语音对话系统的对话管理

实现语音对话系统(SDS)中的全双工通信,需要在听、说、思考之间进行实时协调。本文提出了一种语义语音活动检测(VAD)模块,作为对话管理器(DM),以高效管理全双工SDS中的轮次切换。该语义VAD模块是一个轻量级(5亿参数)的大语言模型(LLM),在全双工对话数据上进行微调,能够预测四种控制标记以调节轮次切换和保持状态,区分有意和无意的插话,同时检测查询完成,以处理用户的暂停和犹豫。通过在短时间间隔内处理输入语音,语义VAD实现了实时决策,而核心对话引擎(CDE)仅在生成回复时被激活,从而降低了计算开销。

2025-06-27 10:40:54 1215

原创 全双工口语对话模型综述

全双工语音对话是指系统具备在接收用户语音的同时生成语音输出的能力。这种设计将电信领域的“全双工”概念——即双向、同时通信——扩展应用于对话式人工智能,消除了人工设定的轮流对话限制,支持更自然的对话形式,如语音重叠、插话和中断。一个全双工对话模型的关键特性包括:同时听与说:模型在并行通道中实时处理输入并生成输出。灵活的轮流发言机制:系统能够处理用户的“打断发言”、提供及时的回应反馈(如“嗯”、“我懂了”),并可动态地让出或掌控对话控制权。

2025-06-25 17:28:30 664 1

原创 SALMONN-omni论文阅读

为了实现流畅自然的人机语音交互,目前的全双工对话系统通常采用模块化架构,例如语音活动检测器、中断检测、对话状态预测器或多个 LLM,但这些方案存在误差累积问题,难以处理上下文依赖的“插话”(barge‑in)和回声消除等关键挑战。虽然像 Moshi 这样的系统通过将音频编解码器编码注入单一 LLM 的 token 空间,从而简化了流程,但它们在处理语音输入而非文本时仍导致显著性能退化。

2025-06-17 19:26:26 1130 1

原创 强化学习(十五)Actor-Critic算法

微信公众号、知乎号(同名):李歪理,欢迎大家关注在强化学习(九)策略梯度中,我们讲到了基于策略(Policy Based)的强化学习方法的基本思路,并讨论了蒙特卡罗策略梯度reinforce算法。但是由于该算法需要完整的状态序列,这种采样方式的方差比较大,学习效率也比较低,同时单独对策略函数进行迭代更新,不太容易收敛。我们可以借鉴时序差分学习的思想,使用动态规划方法来提高采样效率,即从状态s开始的总回报可以通过当前动作的即时奖励rsas′和下一个状态s′的值函数来近似估计。

2025-05-30 19:01:27 1015

原创 强化学习(十四)DQN进阶技巧

微信公众号、知乎号(同名):李歪理,欢迎大家关注。

2025-05-30 18:59:53 586

原创 强化学习(十三)DQN

传统的强化学习算法会使用表格的形式存储状态价值函数Vs或动作价值函数Qs,但是这样的方法存在很大的局限性。例如,现实中的强化学习任务所面临的状态空间往往是连续的,存在无穷多个状态,在这种情况下,就不能再使用表格对价值函数进行存储。价值函数近似利用函数直接拟合状态价值函数或动作价值函数,降低了对存储空间的要求,有效地解决了这个问题。为了在连续的状态和动作空间中计算值函数Qπ​sa,我们可以用一个函数Qϕ​sa。

2025-05-29 17:20:20 780

原创 强化学习(十二)PPO

在介绍近端策略优化(proximal policy optimization,PPO) 之前,我们先回顾同策略(On-policy)和异策略(Off-policy)这两种训练方法的区别。在强化学习里面,要学习的是一个智能体。如果要学习的智能体和与环境交互的智能体是相同的,我们称之为同策略。如果要学习的智能体和与环境交互的智能体不是相同的,我们称之为异策略。为什么我们会想要考虑异策略?让我们回忆一下策略梯度。

2025-05-28 14:30:04 1210

原创 强化学习(十一)探索与利用

利用是做出当前信息下的最佳决定,探索则是尝试不同的行为继而收集更多的信息。最好的长期战略通常包含一些牺牲短期利益举措。通过搜集更多或者说足够多的信息使得个体能够达到宏观上的最佳策略。因此探索和利用是一对矛盾。几个基本的探索方法:朴素探索(Naive Exploration): 在贪婪搜索的基础上增加一个Ɛ以实现朴素探索;在贪婪搜索的基础上增加一个Ɛ以实现朴素探索;优先选择当前被认为是最高价值的行为,除非新信息的获取推翻了该行为具有最高价值这一认知;根据当前估计的概率分布采样行为;

2025-05-26 14:33:27 653

原创 强化学习(十)整合学习与规划

本篇主要讲解如何从经历中直接学习模型,如何构建一个模型,如何基于模型来进行“规划”,在此基础上将“学习”和“规划”整合起来形成Dyna算法,详细解释了Dyna算法的流程和特点。依赖于模型,个体可以通过模拟产生一系列虚拟的Episodes,通过使用基于模拟的搜索方法,特别是蒙特卡罗树搜索方法,找到了一条解决诸如围棋等大规模MDP问题的有效可行的算法。

2025-05-23 11:15:30 739

原创 强化学习(九)策略梯度

微信公众号、知乎号(同名):李歪理,欢迎大家关注前一篇主要讲解的是价值函数的近似,然后根据价值函数来制定策略。本篇中策略P(a|s)将从一个概率集合变成策略函数本身π(s,a),通过借助策略相关的目标函数梯度的引导,寻找与目标函数的极值,进而得到最优策略。上一篇主要内容是如何对价值函数进行近似的参数化表达,包括状态价值函数和动作价值函数:Vθ(s)∼Vπ(s)V_{\theta}(s)\sim V^{\pi}(s)Vθ​(s)∼Vπ(s)Qθ(s,a)∼Qπ(s,a)Q_{\theta}(s,a)\sim

2025-05-22 10:49:20 1014

原创 强化学习(八)价值函数的近似表示

微信公众号、知乎号(同名):李歪理,欢迎大家关注通过强化学习的基础理论,只能解决一些中小规模的问题,很多价值函数需要用一张大表来存储,获取某一状态或行为价值的时候通常需要一个查表操作(Table Lookup),这对于那些状态空间或行为空间很大的问题几乎无法求解,而许多实际问题都是这些拥有大量状态和行为空间的问题,因此只掌握强化学习的基础理论,是无法较好的解决实际问题的。在实际应用中,对于状态和行为空间都比较大的情况下,精确获得各种 v(s)v(s)v(s) 和 q(s,a)q(s,a)q(s,a) 几乎是

2025-05-19 21:09:25 791

原创 强化学习(七)时序差分离线控制算法Q-Learning

Q-Learning算法的拓扑图以及价值函数的更新公式如下图所示:首先我们基于状态SSS,用ϵ\epsilonϵ−贪婪法选择到动作AAA,然后执行动作AAA,得到奖励RRR,并进入状态S′S'S′,此时,如果是SARSA,会继续基于状态S′S'S′,用ϵ\epsilonϵ−贪婪法选择A′A'A′,然后来更新价值函数。但是Q-Learning则不同。对于Q-Learning,它基于状态S′S'S′,没有使用ϵ\epsilonϵ−贪婪法选择A′。

2025-05-15 12:43:28 741

原创 强化学习(六)时序差分在线控制算法SARSA

作为SARSA算法的名字本身来说,它实际上是由S,A,R,S,A几个字母组成的。而S,A,R分别代表状态(State),动作(Action),奖励(Reward),这也是我们前面一直在使用的符号。这个流程以及价值函数的更新公式体现在下图:在迭代的时候,我们首先基于ϵ\epsilonϵ-贪婪法在当前状态SSS选择一个动作AAA,这样系统会转到一个新的状态S′S'S′,同时给我们一个即时奖励RRR,在新的状态S′S'S′,我们会基于ϵ\epsilonϵ-贪婪法在状态S′。

2025-05-14 13:33:44 859

原创 强化学习(五)用时序差分法(TD)求解

时序差分法和蒙特卡罗法类似,都是不基于模型的强化学习问题求解方法。所以在上一篇定义的不基于模型的强化学习控制问题和预测问题的定义,在这里仍然适用。预测问题:即给定强化学习的5个要素:状态集SSS, 动作集AAA, 即时奖励RRR,衰减因子γ\gammaγ, 给定策略π\piπ,求解该策略的状态价值函数vπv(\pi)vπ控制问题,也就是求解最优的价值函数和策略。给定强化学习的5个要素:状态集SSS, 动作集AAA, 即时奖励RRR,衰减因子γ\gammaγ。

2025-05-12 11:18:44 773

原创 强化学习(四)用蒙特卡罗法(MC)求解

在动态规划法中,强化学习的两个问题是这样定义的:预测问题,即给定强化学习的6个要素:状态集SSS,动作集AAA, 模型状态转化概率矩阵PPP,即时奖励RRR,衰减因子γ\gammaγ, 给定策略π\piπ,求解该策略的状态价值函数vπv(\pi)vπ控制问题,也就是求解最优的价值函数和策略。给定强化学习的5个要素:状态集SSS, 动作集AAA,模型状态转化概率矩阵PPP,即时奖励RRR,衰减因子γ\gammaγ,求解最优的状态价值函数v∗。

2025-05-09 19:40:14 943

原创 强化学习(三)用动态规划(DP)求解

上一章我们讨论了用马尔科夫假设来简化强化学习模型的复杂度,这一篇我们在马尔科夫假设和贝尔曼方程的基础上讨论使用动态规划(Dynamic Programming, DP)来求解强化学习的问题。

2025-05-08 12:31:52 1076

原创 强化学习(二)马尔科夫决策过程(MDP)

马尔可夫过程(也称为马尔可夫链)是一个元组。

2025-04-29 14:30:05 1326

原创 强化学习(一)模型基础

如果为0,则是贪婪法,即价值只由当前延时奖励决定,如果是1,则所有的后续状态奖励和当前奖励一视同仁。因此我们的价值要综合考虑当前的延时奖励和后续的延时奖励。,这个比率主要用在强化学习训练迭代过程中,由于我们一般会选择使当前轮迭代价值最大的动作,但是这会导致一些较好的但我们没有执行过的动作被错过。当然,在不同的强化学习模型中,会考虑一些其他的模型要素,或者不考虑上述要素的某几个,但是这8个是大多数强化学习模型的基本要素。然后个体可以继续选择下一个合适的动作,然后环境的状态又会变,又有新的奖励值。

2025-04-18 11:20:22 950

原创 分布式训练之序列并行

总的来说,Colossal-AI 的序列并行是为了打破单设备上序列长度的限制。而 Megatron-LM 的序列并行是在显存上面下了功夫,可以用更少的设备去运行大模型。除此之外,从文章细节里面可以看到,部分的计算的冗余被消除了,且重叠了一部分的通信,使得设备可以花更多的时间用于计算上面。虽然,Colossal-AI 和 Megatron-LM 都有序列并行,但是两者解决的问题、方法都不一样。除此之外,在Pytorch中,也已经支持序列并行了。

2025-04-08 10:46:38 86

原创 DAPO算法详解

微信公众号:李歪理。

2025-03-27 21:18:33 635

原创 大模型显存如何估算?

一般会分成两种情况:推理和训练。推理时,我们主要考虑模型权重、KV 缓存和激活显存。而训练相比推理,还需要额外存储优化器状态和梯度,显存需求会更高。

2025-03-12 21:28:27 186

原创 大模型之数值精度

FP16 也叫做 float16,两种叫法是完全一样的,全称是 Half-precision floating-point(半精度浮点数),在 IEEE 754 标准中是叫做 binary16。简单来说是用 16 位二进制来表示的浮点数,来看一下是怎么表示的(以下图都来源于维基百科):其中:所以正常情况下计算公式就是:举一个例子来计算,这个是 FP16(float16) 能表示的最大的正数:同样,这个是 FP16(float16) 能表示的最大的负数:这就是 FP16(float16) 表示的范围

2025-03-10 21:19:10 90

原创 大模型推理之常见问题

具体来说,INT8在相同的内存空间下可以存储更多的数据,从而可以在相同的计算资源下进行更多的并行计算。需要注意的是,推理速度还受到模型大小、输入数据大小、计算操作的复杂度以及硬件设备的性能等因素的影响。一般情况下,GPU在进行深度学习推理任务时具有更高的计算性能,因此大语言模型在GPU上的推理速度通常会比在CPU上更快。综上所述,使用INT8和FP16数据类型可以在大语言模型的推理过程中提高推理速度,但需要根据具体场景和硬件设备的支持情况进行评估和选择。在大语言模型的推理速度上,使用。

2025-03-10 17:42:02 175

原创 大模型推理之vllm

vLLM是一个大模型推理服务框架,声称觉得有意思的东西其实主要是两个,continus batching和PagedAttention。

2025-03-10 10:07:52 211

原创 为什么大模型的损失函数采用交叉熵而不是 MSE?

核心原因因为大模型解决的问题属于多分类问题,最大似然估计跟交叉熵的形式是相同的,所以要采用交叉熵。次要原因是MSE 对预测错误的惩罚不如交叉熵。比如y1时,模型预测为 0, 此时 MSE 的loss 为 1, 而交叉熵 loss 则为无穷大,交叉熵损失的梯度在错误预测时较大,正确预测时较小,能快速调整模型参数;而 MSE 的梯度在预测接近真实值时趋于平缓,容易导致训练后期收敛缓慢。对于回归问题来说,一个通常的假设为数据是服从高斯分布的,此时最大似然估计就等价于最小化 MSE;

2025-03-07 12:38:09 711

原创 强化学习之GRPO

GRPO是PPO的优化版本,专门设计用于数学推理任务。关键创新:不使用价值模型,而是用群体奖励基线计算优势函数。优势:计算更高效、收敛更稳定、适用于数学和语言任务。在DeepSeekMath-RL上的成功应用:帮助模型取得了最先进的数学推理能力,超越所有开源对手。GRPO的成功表明,强化学习方法可以在数学推理中大幅提高模型表现,而不需要庞大的计算资源,这是LLM优化的重要突破。

2025-03-03 15:14:18 1501

原创 常见的蒸馏技术

其主要的想法是:学生模型通过模仿教师模型来获得和教师模型相当的精度,关键问题是如何将教师模型的知识迁移到学生模型。是教师模型的 logits 输出,在训练学生模型时,需对学生模型的输出应用与教师模型相同的温度调整,随后通过一个损失函数来评估学生模型输出与教师模型输出之间的差异。通过这种训练方式,学生模型不仅能够汲取教师模型的知识,还能保持良好的对真实标签的拟合能力,进而在实际应用中展现出优异的性能。通过最小化这个损失函数,学生模型可以逐渐学习到教师模型的概率分布,从而获得教师模型的知识。

2025-02-28 13:33:09 180

原创 强化学习之KTO

在前景理论中,人类的效用函数由两个部分组成:价值函数(value function)和加权函数(weighting function)。论文关注的主要是价值函数,它描述了相对某一参考点的结果对人类的主观价值的影响。公式如下:zz0​α0α1α≃0.88λλ1λ≃2.25看收益区域z≥z0​时的函数:计算二阶导数:由于0α1,所以α−10,因此dz2d2v​0,说明函数是凹的(concave)。zvz看损失区域zz0​。

2025-02-25 13:42:04 811

原创 大模型幻觉

在语言模型的背景下,幻觉指的是一本正经的胡说八道:看似流畅自然的表述,实则不符合事实或者是错误的。幻觉现象的存在严重影响LLM应用的可靠性,本文将探讨大型语言模型(LLMs)的幻觉问题,以及解决幻觉现象的一些常见方法。

2025-02-20 19:03:05 129

原创 强化学习之PPO原理与源码解读

智能体(Agent)与环境(Environment)状态空间S:S即为State,指环境中所有可能状态的集合动作空间A:A即为Action,指智能体所有可能动作的集合奖励R:R即为Reward,指智能体在环境的某一状态下所获得的奖励。在ttt时刻,环境的状态为StS_tSt​,达到这一状态所获得的奖励为RtR_tRt​智能体观测到StS_tSt​与RtR_tRt​,采取相应动作AtA_tAt​智能体采取AtA_tAt​后,环境状态变为St1。

2025-02-19 19:28:58 137

原创 强化学习之DPO

基于人类反馈的强化学习(RLHF) 是一个复杂且不稳定的过程,拟合一个反映人类偏好的奖励模型,然后使用强化学习对大语言模型进行微调,以最大限度地提高估计奖励,同时又不能偏离原始模型太远。这涉及训练多个 LM,并在训练循环中从 LM 采样,从而产生大量的计算成本。本文作者提出了直接偏好优化(DPO)算法,它稳定、高效且计算量轻,无需拟合奖励模型,也无需在微调期间从LM采样或执行显著的超参数调整。实验表明,DPO 可以微调 LMs,使其与人类偏好保持一致,与现有方法一样或更好。

2025-02-19 10:53:01 194

原创 强化学习之RLHF

强化学习(Reinforcement Learning,RL)研究的问题是智能体(Agent)与环境(Environment)交互的问题,其目标是使智能体在复杂且不确定的环境中最大化奖励(Reward)。强化学习基本框 架如图所示,主要由两部分组成:智能体和环境。在强化学习过程中,智能体与环境不断交互。智能体在环境中获取某个状态后,会根据该状态输出一个动作(Action),也称为决策(Decision)。动作会在环境中执行,环境会根据智能体采取的动作,给出下一个状态以及当前动作所带来的奖 励。

2025-02-14 13:36:18 63

原创 RAG的基本概念

在检索阶段,既可以从根节点向下进行遍历,也可以直接利用根节点的信息。

2025-02-14 09:52:34 73

原创 大模型参数高效微调之总结

增加额外参数,如:Prefix Tuning、Prompt Tuning、Adapter Tuning及其变体。选取一部分参数更新,如:BitFit。引入重参数化,如:LoRA、AdaLoRA、QLoRA。混合高效微调,如:MAM Adapter、UniPELT。并比较了不同的高效微调方法之间的差异;同时,还指出当前大多数高效微调方法存在的一些问题并给出了最佳实践。

2025-02-12 16:16:08 518

原创 大模型参数高效微调之lora

神经网络包含很多全连接层,其借助于矩阵乘法得以实现,然而,很多全连接层的权重矩阵都是满秩的。当针对特定任务进行微调后,(intrinsic rank),因此,论文的作者认为。

2025-02-12 15:50:59 300

nyc_taxi.csv

纽约地区从2014年7月1日到2015年1月31日的出租车需求

2021-01-26

time_series_anomaly_detection.zip

时间序列异常的公开数据集,内有异常和正常的标注。内含五个不同的数据集,包括环境温度异常检测、cpu使用率的异常检测、请求延迟系统故障检测、机器温度异常检测和纽约出租车数量异常检测。

2021-04-14

SMO_web.zip

用smo算法实现参数的求解,内有高斯核函数, 还有本人自己写的注释

2019-07-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除