自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 收藏
  • 关注

原创 【大模型论文阅读】2503.01821_On the Power of Context-Enhanced Learning in LLMs

我们提出了一种适用于大型语言模型的新概念——上下文增强学习。它在基于梯度的文本学习基础上,通过在上下文中添加额外数据(不对这些数据计算自回归梯度)来增强效果。这一设定是常规上下文学习(ICL)的基于梯度版本,在近期的一些研究中已有体现。 借助一项多步推理任务,我们在简化场景中证明:当模型具备上下文学习能力时,上下文增强学习的样本效率可能比常规学习高出指数级。从机制层面来看,我们发现上下文增强带来的优势源于更准确的梯度学习信号。我们还通过实验表明,很难检测或恢复训练过程中用于上下文的学习材料。这一点可能对

2025-07-24 17:21:36 668

原创 【Modern C++ Part10】Prefer-scoped-enum-to-unscoped-enums

一般而言,在花括号里面声明的变量名会限制在括号外的可见性。但是这对于`C++98`风格的`enums`中的枚举元素并不成立。枚举元素和包含它的枚举类型同属一个作用域空间,这意味着在这个作用域中不能再有同样名字的定义。

2025-07-12 22:01:33 686

原创 【Modern C++ Part9】Prefer-alias-declarations-to-typedefs

摘要: C++11推荐使用声明别名(alias)而非typedef,尤其在模板编程中更具优势。声明别名可简化复杂类型定义,如函数指针类型。关键区别在于模板场景下:声明别名支持模板化(模板别名),而typedef需要嵌套在模板结构体中。模板别名无需像typedef那样使用::type后缀和typename前缀,代码更简洁。

2025-07-12 22:00:58 387

原创 【大模型推理论文阅读】Enhancing Latent Computation in Transformerswith Latent Tokens

本文提出了一种轻量级方法"潜在标记"(latent tokens),通过将虚拟标记与Transformer架构结合来提升大型语言模型(LLM)的性能。这些潜在标记不具备自然语言可解释性,但可通过注意力机制引导自回归解码过程。该方法与预训练模型无缝集成,采用参数高效微调,在推理阶段灵活应用且几乎不增加架构复杂度。研究针对潜在标记的作用机制提出三个假设(自我提示、辅助信息检索、提升OOD指令遵循能力),并通过合成任务验证了其有效性。实验结果表明,该方法显著优于基线模型,尤其在分布外泛化场景表

2025-07-10 20:51:08 1032

原创 【大模型推理论文阅读】 Thinking Tokens are Information Peaks in LLM Reasoning

大语言推理模型(LRM)在复杂问题解决方面展现出了令人瞩目的能力,但其内部推理机制仍未得到充分理解。在本文中,我们从信息论的角度研究了LRM的推理轨迹。通过追踪中间表征与正确答案之间的互信息(MI)在LRM推理过程中的演变,我们观察到一个有趣的 “MI峰值” 现象:在LRM的推理过程中,特定生成步骤的MI会突然显著增加。我们从理论上分析了这一现象,并表明随着MI的增加,模型预测错误的概率会降低。

2025-07-10 17:28:40 1100

原创 【Modern C++ Part8】Prefer-nullptr-to-0-and-NULL

摘要:在C++中,应优先使用nullptr而非0或NULL表示空指针。0本质是整数类型,而NULL可能是整数或长整型,在重载函数中可能导致调用非预期的版本。nullptr具有std::nullptr_t类型,能隐式转换为任意指针类型,确保正确调用指针重载函数,并提升代码清晰度。在模板编程中,nullptr避免了类型推导错误,而0和NULL可能导致类型不匹配。因此,nullptr是更安全、更明确的选择。

2025-07-09 23:23:44 828

原创 【Modern C++ Part7】_创建对象时使用()和{}的区别

C++11引入了统一的{}初始化语法,旨在解决传统初始化方式的混乱和局限性。{}初始化具有三大优势:通用性(可用于任何初始化场景)、防止隐式类型转换、避免C++的二义性问题。然而,当类包含std::initializer_list构造函数时,{}初始化会强制优先匹配该构造函数,可能引发意外行为。例如,Widget w{10,5.0}可能因类型收窄而被拒绝,或调用非预期的构造函数。尽管存在这些特殊情况,{}初始化仍是更安全、更清晰的选择,尤其在默认构造(Widget w{})和容器初始化(vector<

2025-07-09 23:21:50 727

原创 【Modern C++ Part6】Use-the-explicitly-typed-initializer-idiom-when-auto-deduces-undesired-types

摘要: 条款6指出,当auto推导出非预期类型时应使用显式类型初始化。文中以std::vector<bool>为例,说明其operator[]返回的是std::vector<bool>::reference代理类而非bool&。当使用auto声明变量时,可能意外持有代理类对象而非期望的类型,导致未定义行为(如野指针问题)。解决方案是采用"显式类型初始化原则",即在auto声明时强制转换初始化表达式为期望类型,避免代理类带来的问题。

2025-07-08 15:53:58 739

原创 【Modern C++ Part5】Prefer-auto-to-explicit-type-declarations

摘要:条款5建议优先使用auto而非显式类型声明。auto能自动推导类型,避免未初始化变量、冗长的类型声明和类型截断问题。相比std::function,auto更高效且节省内存。在迭代器和容器操作中,auto能防止类型不匹配的错误。示例显示auto简化了代码,提高了可读性和正确性。

2025-07-08 10:59:26 547

原创 【Modern C++ Part4】Know-how-to-view-deduced-types

对类型推导结果的查看的工具的选择和你在软件开发过程中的相关信息有关系。我们要探讨三种可能:在你编写代码的时候,在编译的时候和在运行的时候得到类型推导的信息。

2025-07-07 19:21:42 887

原创 2507.00432_Does Math Reasoning Improve General LLM Capabilities?Understanding Transferability of LLM

摘要 研究发现,当前数学推理能力突出的语言模型在其他领域的泛化能力存在显著差异。通过对20多个开源推理模型的评估发现,大多数数学任务表现优异的模型无法将能力迁移至科学问答、编程等非数学领域。进一步对照实验表明,强化学习调优的模型(如Qwen3-14B)展现出良好的跨领域泛化能力,而监督微调模型则出现能力遗忘现象。潜在空间分析揭示,监督微调会导致表征和输出的显著偏移,而强化学习能更好地保留通用领域结构。这一发现对当前过度依赖监督微调的推理模型优化策略提出了质疑,建议重新审视训练方法以提升模型的综合推理能力。

2025-07-07 19:19:34 748

原创 Mapreduce 工业界批式计算经验汇总(下)

Hadoop分布式缓存使用方式分为API和命令行两种,支持通过-files分发文件、-archives分发并解压压缩包、-libjars添加jar包到CLASSPATH。在MapReduce任务调试方面,可以通过作业诊断工具查看任务日志,常见问题包括Pipe failed进程退出、模块导入错误、类缺失、OOM内存溢出等。针对不同问题,建议检查文件分发路径、调整内存配置、增加任务数量或修改代码逻辑。特别需要注意的是,DistributedCache在同一节点上的任务会共享缓存文件,不适用于需要独占访问的数据场

2025-07-06 11:46:21 740

原创 Mapreduce 工业界批式计算经验汇总(上)

与map 端类似,这也是溢写的过程,这个过程中如果你设置有Combiner,也是会启用的,然后在磁盘中生成了众多的溢写文件。, 每次溢写会在磁盘上生成一个临时文件 (写之前判断是否有 Combiner), 如果 Mapper 的输出结果真的很大, 有多次这样的溢写发生, 磁盘上相应的就会有多个临时文件存在. 当整个数据处理结束之后开始对磁盘中的临时文件进行 Merge 合并, 因为最终的文件只有一个, 写入磁盘, 并且为这个文件提供了一个索引文件, 以记录每个reduce对应数据的偏移量。

2025-07-06 11:29:16 863

原创 Harris角点检测

文章摘要:本文介绍了一种基于Harris算法的角点检测方法实现。算法首先计算图像在x和y方向的偏导数,然后通过梯度乘积得到IxIx、IxIy和IyIy三个分量。使用3×3高斯模板进行平滑处理后,计算每个像素点的响应值R,并进行阈值处理和非极大值抑制。最终实现可以检测图像中的角点特征,参数alpha和beta分别控制对角点和边缘的敏感性。该方法简单实现但不具有尺度不变性。

2025-07-05 12:09:26 180

原创 【Modern C++ Part3】Understand-decltype

本文讨论了C++中decltype的类型推导机制及其应用。decltype通常返回变量或表达式的确切类型,但在某些情况下会产生意外结果。文章通过示例展示了decltype的基本用法,并重点说明了其在模板函数返回值类型推导中的重要作用。 在C++11中,decltype常用于尾随返回类型,以声明依赖于参数的返回值类型。而C++14引入的decltype(auto)组合解决了模板类型推导中引用被忽略的问题,保留了表达式原有的类型特性。

2025-07-05 12:03:28 901

原创 【Modern C++ Part2】Understand-auto-type-deduction

本文探讨了auto类型推导与模板类型推导的关系,指出两者基本一致,仅在花括号初始化时存在差异。当使用花括号初始化auto变量时,推导类型为std::initializer_list,而模板无法自动推导这种类型。文章详细分析了三种推导情形,并通过代码示例展示了不同初始化方式导致的类型差异,最后强调这是C++11/14中需要特别注意的特性差异。

2025-07-04 11:00:08 629

原创 【Modern C++ Part1】Understand-template-type-deduction

文章摘要 C++模板类型推导是现代C++的重要特性,分为三种情况: 非通用引用或指针:忽略引用部分,保留const属性。 通用引用(T&&):左值推导为左值引用,右值推导为普通类型。 值传递(非引用非指针):忽略引用和const/volatile属性。 auto的类型推导遵循相似的规则,理解模板类型推导有助于编写更高效的代码。

2025-07-04 10:53:23 841

原创 [译] Scaling Monosemanticity_ Extracting Interpretable Features from Claude 3 Sonnet

Anthropic团队成功将稀疏自动编码器(SAE)方法扩展到Claude 3 Sonnet模型,从中提取出高度抽象的多语言、多模态特征。这些特征不仅涵盖名人、城市等具体概念,还涉及代码安全漏洞、偏见、欺骗等潜在安全相关维度。研究证实了线性表示假设在大模型中的适用性,并发现概念频率与所需字典大小存在系统关联。通过缩放定律优化的SAE能够有效分解模型激活,为AI安全研究提供了新工具。值得注意的是,该方法虽然揭示了模型内部与安全相关的特征机制,但这些特征的存在并不直接等同于模型的实际行为倾向。

2025-07-03 17:55:02 883

原创 2401.06102_Patchscopes-A Unifying Framework for Inspecting Hidden Representations of Language Models

本文提出Patchscopes框架,利用大型语言模型(LLM)自身能力解释其内部表征。该框架通过将特定表征"修补"到另一推理过程,结合精心设计的提示词,以自然语言形式解码模型隐藏信息。研究表明,现有基于词汇投影和计算干预的可解释性方法均可视为Patchscopes的特例。新框架不仅克服了传统方法在早期层检测和表达能力方面的局限,还实现了跨模型解释(如用更强模型分析较小模型)和多跳推理错误纠正等新功能。实验验证了该方法在token预测、实体属性解码等任务上的优势,为LLM可解释性研究提供了

2025-07-03 15:07:46 933

原创 What Happened in LLMs Layers when Trained for Fast vs. Slow Thinking_ A Gradient Perspective

本文研究了大型语言模型(LLMs)在训练后不同层级的梯度模式差异,重点关注快速思考(无思维链)与慢速思考(详细思维链)对梯度的影响。研究发现,慢速思考训练带来更稳定的梯度分布和层间一致性,而快速思考导致早期层梯度显著增大且层间差异明显。此外,慢速思考的梯度能有效区分正确与无关推理路径,而这一特性在知识学习任务中并不适用。研究通过奇异值分解分析梯度谱特性,揭示了不同初始模型和数据响应类型对训练动态的影响,为提升LLM训练效率和稳定性提供了新见解。代码和数据已开源。

2025-07-02 14:50:49 909

原创 Redis 笔记

Redis核心应用场景与使用实践 摘要:本文介绍了Redis的五大核心应用场景:缓存系统、排行榜、消息队列、分布式锁和计数器。作为高性能内存数据库,Redis通过其丰富的数据结构(字符串、列表、集合、散列、有序集合)和原子性操作,有效解决了传统数据库在高并发场景下的性能瓶颈。文章详细解析了各数据结构的常用命令,并特别强调了大key问题的危害及检测消除方法。此外,还介绍了Redis事务和Pipeline机制,通过批量操作提升性能。最后提醒开发者注意key命名空间划分,推荐使用冒号或减号作为分隔符。

2025-07-02 10:44:44 1022

原创 LTR入门:从 Ranknet 到 LambdaMart 原理与 lgb 实战

我们的任务是这样的:有一堆搜索引擎拿到的 query,我们标注了他们对购买商品的需求等级,即这个 query 的搜索者有多希望看到搜索结果里出现电商或者直播等内容来满足购买需求,我们希望搞一个 rank 任务来学习这个任务。doc 的特征以数值类特征为主,我们使用 lightgbm 来完成这个任务。

2023-01-09 01:01:51 2360 2

原创 python 性能优化

关于程序优化的第一个准则是“不要优化”,第二个准则是“不要优化那些无关紧要的部分”。

2023-01-03 00:40:18 1197 1

原创 理解 ROC 和 PRC

前两天看到了一篇关于 ROC 的推送文章,突然发现这块上学时的知识已经逐渐开始忘却了,顺便复习一下这部分知识顺手记录下来。

2022-11-24 23:45:35 1770

原创 RL 从敲门到入门

回报(其中R的单步奖励、gamma是折扣系数,表示有多重视未来的收益):价值函数 v:表示一个状态下期望获得的总收益。动作价值函数 q:表示一个状态下采取动作 a 期望获得的总收益。回溯图:贝尔曼方程:策略p(a|s) 和 环境动态特性 p(s’,r|s,a)举例子:其中 s到sa节点是依据策略决定的;sa到s是依据环境决定的。我们要学习的是策略。

2022-11-16 12:07:03 822

原创 分享:互信息在对比学习中的应用

对比学习常见的loss,但是为什么是这样?比如softmax或者lr这样的模型,其问题假设与目标存在清晰的推导关系。即,为什么使用这样的激活,这样的loss函数,最终我们都能在GLM理论中找到依据。正例比较近,负例比较远,那这个呢(refer DGI;2019 ICLR)?

2022-11-13 20:35:31 2839

原创 On the Factory Floor: ML Engineering for Industrial-Scale Ads Recommendation Models笔记

对于工业规模的广告系统来说,广告点击率(CTR)的预测是一个核心问题。广告点击率构成了用户参与的一个重要类别,并经常被用作广告对用户有用性的主要信号。此外,在按点击率收费的广告系统中,广告商按点击率收费,点击率预期直接反馈到价值评估中。因此,对于大多数互联网广告公司来说,点击率模型的开发是一项重大投资。针对这些问题的工程需要许多适合在线学习的机器学习(ML)技术,这些技术远远超出了传统的准确性改进,特别是关于效率、可重复性、校准和信用归属。我们提出了一个部署在谷歌搜索广告CTR模型中的实用技术的案例研究。

2022-11-13 14:04:18 607

原创 Detecting Topic Authoritative Social Media Users: a Multilayer Network Approach

在过去几年中社交媒体和微博网站的迅速普及之后,识别具有影响其他用户选择能力的用户是一项重要的研究课题,因为它可以为许多商业公司提供机会。但是,大多数现有方法都是通过依靠在连接具有不同类型相互关系的用户的网络上计算的中心性度量来检测影响者的。在本文中,我们提出了一种能够利用三层网络对这些用户的内容进行建模的方法,该方法通过利用他们发布的消息的内容来表达对项目的意见,从而找到有影响力的用户。层代表用户,项目和关键字,以及同一层的参与者之间的层内交互。

2022-11-10 00:22:46 190

原创 Generate Label from Click

给定该矩阵的值,我们可以通过计算第(K − 1)行的最大值来找到针对具有K类的分段的最佳净协议。也就是说,对于最优分区L∗,我们有我们将使用动态编程来填充计算 OPT 矩阵。我们定义了另一个二维矩阵B,其中,如果我们在位置i处插入最后一个断点的分段中的新断点,则B [j,i]是净协议的附加收益。对于k> 1,很容易看到对于k = 1,我们有OPT [1,i] = B [0,i]。现在,我们可以使用公式2以自下而上的方式填充矩阵OP T。算法的计算复杂度为O(Kn2)。

2022-11-09 23:59:08 294

原创 python中的装饰器

通过查看它的 func_closure 属性可以看出函数闭包特性。装饰器可以链式使用,但是一定要注意使用顺序。

2022-11-05 00:27:33 384

原创 Perameter estimation for text analyse (下)

潜在Dirichlet分配(LDA)是一种概率生成模型,可用于通过无监督学习来估计多项式观测的性质。关于文本建模,LDA是一种执行所谓的潜在语义分析(LSA)的方法。 LSA背后的直觉是在文本语料库中找到“主题”或“概念”的潜在结构,它捕获了被“单词选择”噪声所掩盖的文本的含义。LSA分析由Deerwester提出,Deerwester凭经验证明文本文档中术语的共现结构可用于恢复这种潜在的主题结构,特别是没有任何背景知识的使用。反过来,文本的潜在主题表示允许对同义词和多义词等语言现象进行建模。这允许信息检索

2022-11-05 00:23:21 597

原创 Parameter estimation for text analysis (上)

我们面临两个推论问题,(1)一组分布参数的估算值 θ 能最好的解释一组观察 X 和(2)在已有观测结果 X 的前提下,得到新观测 x~\tilde xx~ 的概率,即计算 P(x~∣X)P(\tilde x|X)P(x~∣X) 。我们将前一个问题称为估计问题,后一个问题称为预测或回归问题。数据集X可以看作是一个随机变量的独立的、同分布的(i.i.d)序列。参数θ是依赖于你所考虑的分布,对于高斯分布,θ={μ,σ}\theta=\{ \mu, \sigma \}θ={μ,σ}。对于这些数据和参数,贝叶斯统计中

2022-11-05 00:21:59 485

原创 《Effective C++》第三部分:资源管理

所谓资源就是,我们可以向系统申请并使用的东西,但是将来必须归还给系统。说到这类东西,我们最容易想到的就是动态内存了,除此之外还包括文件描述器(file descriptors)、互斥锁(mutex locks)、数据库连接以及网络套接字。另外提到内存,不仅仅是 new 的基本对象,一些 new 出来的对象或者通过工厂方法得到的对象指针都是属于“内存资源”的范畴。

2022-10-17 17:56:07 514

原创 《Effective C++》第二部分:构造、析构、赋值运算

如果你自己没声明,编译器会为你声明拷贝构造函数、拷贝赋值运算符、默认构造函数和一个析构函数,所有这些函数都是 public 且 inline 的。首先对于默认构造函数和析构,编译器生成他们其实主要是为了自己使用。比如类含有虚函数时,自身的虚表要初始化,因此当程序员不写的时候,编译器需要自己弄出一个默认构造函数完成虚表的初始化。(其实在四种情况下编译器会声明默认构造函数,能不声明是编译器是不会干活的,比如当这些函数不会被调用的话,编译器就不会生成。但是这四种情况在这里不细说了,这个属于更高级的东西,我自己也没

2022-10-17 17:03:28 507

原创 《Effective C++》第一部分:让自己习惯C++

C 是一种简单的语言。它真正提供的只有有宏、指针、结构、数组和函数。不管什么问题,C 都靠宏、指针、结构、数组和函数来解决。而 C++不是这样。

2022-10-11 21:39:34 782

原创 Alias Method采样算法

采样的本质是随机现象的模型,根据给定的概率分布,来模拟产生一些随机时间。另一方面,采样得到的样本集也可以看作是是一种非参数模型。即用较少量的样本点(经验分布)来近似总体分布,并刻画总体分布中的不确定性。从这个角度来说,采样其实也是一种信息降维,可以起到简化问题的作用。对当前的数据集进行重采样,可以充分利用已有的数据集,挖掘更多信息,如Bootstrap法和jackknife法,通过对严格不能多次重采样来估计统计量的偏差、方差等。

2022-10-11 21:35:53 480

原创 Weight Initialization in Deep Neural Networks

了解神经网络中不同的权重初始化方法权重和偏置是神经网络的可调参数,在训练阶段,使用梯度下降算法改变它们,以最小化网络的成本函数。然而,在开始训练网络之前,必须对它们进行初始化,这个初始化步骤对网络训练有重要影响。在这篇文章中,我将首先解释weight初始化的重要性,然后讨论可用于此目的的不同方法。

2022-10-09 21:39:28 441

原创 形式语言与自动机基础

这个过程完成之后可以把所有的状态对标记为可区分或不可区分,由于不可区分是一种等价关系,具有传递性,所以不可区分关系可以完成对状态的划分。文法 G 的不含非终结符的句子形式称为 G 生成的句子。由文法 G 生成的语言,记作 L(G),指 G 生成的所有句子的集合。若 G 是一个正则文法, 则存在一个有限自动机nfa,使得:T(M) = L(G)。,这里的最小指的是它是所有接受L(M)的dfa中状态数最少的。定理:设L是正则语言,那么总存在正则表达式r使得L=L®。一些特殊类型的符号串为文法 G=(N,

2022-10-07 11:17:29 842

原创 采样算法小结

区间内进行均匀采样可以说是采样算法的基石,比如说逆变换采样就是针对CDF函数的值域上进行采样,对离散分布的轮盘赌算法同理是一种离散分布的逆变换采样,拒绝采样中判断对于一个采样是否被接受需要均匀采样,等等等等,不一而足。对于高斯分布,可以使用逆变换采样,但是高斯分布的CDF函数不容易表示,所以,一种常用的数学技巧就是使用二维高斯分布转换为极坐标表示,通常可以得到好的形式。上述是实用指数分布进行拒绝采样的过程,实际上有更为高效的针对高斯分布的拒绝采样方法,即Ziggurat方法,作为补充参考。

2022-10-07 11:04:51 1126

原创 Git 原理备忘录

如果你从这里克隆,Git 的 clone 命令会为你自动将其命名为 origin,拉取它的所有数据,创建一个指向它的 master 分支的指针,并且在本地将其命名为 origin/master。你在查看一个经过变基的分支的历史记录时会发现,尽管实际的开发工作是并行的,但它们看上去就像是串行的一样,提交历史是一条直线没有分叉。Git 的分支实质上仅是包含所指对象校验和(长度为 40 的 SHA-1 值字符串)的文件,所以它的创建和销毁都异常高效。而集中式的VCS只是只是取出最新的文件或者快照。

2022-10-01 22:52:33 702

空空如也

空空如也

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

TA关注的人

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