
算法
文章平均质量分 82
余俊晖
余俊晖,NLP炼丹师,目前专注自然语言处理领域研究。曾获得国内外自然语言处理算法竞赛TOP奖项近二十项。在国内外SCI、顶会等发表多篇论文。
展开
-
DeepSeek的多头潜在注意力(MLA)和及其11种KV-Cache技巧演进大总结
可以将 KV 缓存想象成一个智能记事本,我们会在第一次看到每个 token 时记下有关它的重要信息。键(k):可以将其视为一种寻址机制——它有助于确定此标记与未来标记的相关性值(v):可以将其视为当此标记被发现相关时实际使用的信息kxWKk = xW_KkxWK(其中xxx是标记,WKW_KWK是一个学习到的变换)vxWVv = xW_VvxWV(其中WVW_VWV是另一个学习到的变换)原创 2025-03-02 17:30:22 · 432 阅读 · 0 评论 -
DeepSeek-R1训练时采用的GRPO算法数学原理及算法过程浅析
先来简单看下PPO和GRPO的区别:PPO:通过奖励和一个“评判者”模型(critic 模型)评估每个行为的“好坏”(价值),然后小步调整策略,确保改进稳定。GRPO:通过让模型自己生成一组结果(比如回答或行为),比较它们的相对质量(优势),然后优化策略。它的特点是不需要额外的“评判者”模型(critic 模型),直接用组内比较来改进。个人理解记录,供参考。原创 2025-03-02 17:27:55 · 967 阅读 · 0 评论 -
DeepSeek中的多头潜在注意力(MLA)浅尝
MLA是MHA的变体,因此先来看看MHA。原创 2025-02-09 11:06:29 · 1641 阅读 · 0 评论 -
【LLM & 长文本】Infini-attention:高效无限上下文 Transformer
大型语言模型(LLMs)通过在Transformer架构中引入注意力机制而发生了革命性的变化。这些机制通过使模型能够专注于输入序列的关键部分,从根本上改变了模型理解和生成文本的方式。然而,随着模型变得更加复杂并处理越来越长的序列,出现了诸如注意力窗口和二次复杂度等挑战。为了应对这些问题,无限注意力(Infini-Attention)通过将压缩记忆模块整合到标准Transformer注意力机制中,无限注意力克服了这些限制,同时保持了效率。原创 2024-05-21 21:55:56 · 1596 阅读 · 0 评论 -
【LLM】LongRoPE:LLM上下文窗口扩展方法及非官方实现
目前,大多数LLMs的上下文窗口限制在4k个标记左右,这意味着模型在处理超过这个长度的文本时性能会下降。新位置索引的未训练引入了许多灾难性值,导致分布外问题,使得微调难以收敛。微调通常需要相应长度的文本。然而,当前数据集中特别是超过1000k的长文本非常有限。此外,对超长文本进行训练计算成本高昂,需要大量的训练时间和GPU资源。当扩展到极长的上下文窗口时,注意力会变得分散,因为它需要在大量的标记位置上进行分配,这会降低模型在原始短上下文上的性能。原创 2024-03-23 21:10:38 · 2351 阅读 · 0 评论 -
可插拔训练加速trick-Scaling PyTorch Model Training With Minimal Code Changes
可插拔训练加速trick-Scaling PyTorch Model Training With Minimal Code Changes。原创 2023-08-16 20:53:28 · 585 阅读 · 0 评论 -
CCL 2023 电信网络诈骗案件分类评测-第一名方案
文本分类是自然语言处理领域的基础任务,面向电信网络诈骗领域的案件分类对智能化案件分析具有重要意义。本任务目的是对给定案件描述文本进行分类。案件文本包含对案件的整体描述(经过脱敏处理)。具体细节参考第2部分。案件文本内容为案情简述,即为受害人的笔录,由公安部门反诈大数据平台导出。从反诈大数据平台共计导出 13 个类别的数据,去除了“其他类型诈骗”类别,因此最终采用 12 个类别。去除了案件文本中的姓名、出生日期、地址、涉案网址、各类社交账号以及银行卡号码等个人隐私或敏感信息。原创 2023-07-30 09:32:35 · 2739 阅读 · 0 评论 -
CCF大数据与计算智能大赛-基于人工智能的漏洞数据分类冠军方案
本文提出一种多任务文本分类算法,通过共享BERT embedding,设计多任务的损失函数,端到端的解决漏洞数据分类问题。最后通过大量的实验及相关模型优化,最终获得本次大赛冠军。原创 2023-05-17 12:09:38 · 1364 阅读 · 0 评论 -
python输入指定个数的数字,以空格隔开(不完美)
比如这样的一道题:题目描述输入N个(N<=10000)数字,求出这N个数字中的最大值和最小值。每个数字的绝对值不大于1000000。输入描述:输入包括多组测试用例,每组测试用例由一个整数N开头,接下去一行给出N个整数。输出描述:输出包括两个整数,为给定N个数中的最大值与最小值。示例1输入51 2 3 4 533 7 8输出5 18 3先解决这道题:while...原创 2020-04-25 21:42:48 · 10526 阅读 · 0 评论 -
python实现二分查找算法(binary search)
一、原理二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子...转载 2020-04-23 21:01:12 · 380 阅读 · 1 评论 -
快速排序(Python详细注释)
步骤1、从数列中挑出一个元素,称为"基准"(哨兵)(pivot),2、重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分区结束之后,该基准就处于数列的中间位置。这个称为分区(partition)操作。3、递归地(recursive)把小于基准值元素的子数列和大于基准值元素的子数列排序。递归的最底部情形,是数列的大小是零或一...原创 2020-04-21 17:10:16 · 443 阅读 · 0 评论 -
KMP算法(python)
KMP算法(python)(1)暴力搜索算法复杂度:O(m*n)def strMacth(t,p): m,n=len(t),len(p) i,j=0,0 while i<m and j<n: if p[j]==t[i]: j,i=j+1,i+1 else: j,i=0,i-j+...原创 2020-04-04 16:35:42 · 404 阅读 · 0 评论