摘要: 介绍 (1) 发表:ICLR'24 (2) 背景 现有 benchmarks 已经饱和,无法捕获最先进的语言模型和无法做到的前沿,需要具有挑战性的新 benchmark 来更准确的反映语言模型的现实应用 工作 (1) 数据集构建 该工作从 Github 上流行的 12 个开源 python 库中收集 阅读全文
posted @ 2025-08-06 22:40 绵满 阅读(313) 评论(0) 推荐(0)
摘要: 介绍 (1) 发表:ICSE'24 (2) 背景 APR 任务的这些模型的当前评估仅关注错误所在的单个功能或文件的有限上下文,从而忽略了存储库级上下文中的有价值信息。现有的数据集要么不是在存储库中构建的,例如 Quixbugs,要么无法准确恢复存储库级错误的方案,例如 Defects4J。本文研究了 阅读全文
posted @ 2025-08-06 22:37 绵满 阅读(280) 评论(0) 推荐(0)
摘要: 介绍 (1) 发表 2024-07 ISSTA'24 (2) 背景 对于某些较为复杂的 bug,需要强大的代码理解和推理能力才能解决 方法 (1) 收集阶段 prompt 准备:角色描述+任务描述+思维链启示 思维链收集:prompt 给 LLM 生成思维链,这里的输出是样本的集合,其中样本包括 b 阅读全文
posted @ 2025-04-24 01:21 绵满 阅读(299) 评论(0) 推荐(0)
摘要: 介绍 (1) 发表 2025-02 ICSE'25 (2) 挑战 当前方法的推理目标与 LLM 的训练目标没有对齐。现有 LLM-based 方法通常采用 MLM 的方式预测修复代码(然而尽管模型参数被增大百倍但修复结果甚至没有翻一番,这与其他任务的明确可伸缩性形成对比)。因此本文假设在训练中 <m 阅读全文
posted @ 2025-03-22 23:27 绵满 阅读(89) 评论(0) 推荐(0)
摘要: 介绍 (1) 发表 2023-10 FSE'23 (2) 背景 代码库的其他地方通常可以找到修复补丁,这一假设已经得到证实。同时现有 APR 方法的性能通常收到固定的模型参数的限制 (3) 贡献 我们提出了一种用于 APR 的新型 RAG 补丁生成框架 RAP-Gen。它是一个通用框架,可以轻松地与 阅读全文
posted @ 2025-03-22 15:53 绵满 阅读(92) 评论(0) 推荐(0)
摘要: 介绍 (1) 发表 2023-09 ASE'23 (2) 背景 基于模版的 APR 采用了由人类专家手工制作的维修模式将错误代码片段转变为正确代码片段,被认为是最先进的,大量研究专门用于模版提取方案。然而以前的工作显示出相当数量的错误无法修复,因为相关的错误代码在本地文件中不可用 基于深度学习的技术 阅读全文
posted @ 2025-03-11 00:05 绵满 阅读(305) 评论(0) 推荐(0)
摘要: 介绍 (1) 发表 2024-04 ICSE'24 (2) 挑战 输入长度的限制:现有方法基本都是基于 Transformer 结构,不可避免的限制了输入代码的长度,然后现实世界中的 buggy 代码往往会超过其 token 限制 代码结构的忽略:自然语言具有松散结构的性质,使单词能够以不同的顺序排 阅读全文
posted @ 2025-03-10 23:45 绵满 阅读(320) 评论(0) 推荐(0)
摘要: 介绍 (1) 发表 2024-04 目前仍是预印本 (2) 背景 现有的很多基于 LLM 的 APR 方法针对的是 single-line 或者代 hunk-level 的程序修复,但它们通常依靠语句级别的故障定位技术。然而,人们普遍认为,准确识别陈述级的断层基本上可能是代价高昂的,即要求细粒度的输 阅读全文
posted @ 2025-03-10 00:53 绵满 阅读(308) 评论(0) 推荐(0)
摘要: 子词模型 前置知识 (1)词法知识介绍 语音学是音流无争议的物理学 语音体系假定了一组或多组独特的、分类的单元(音素) 传统上,词素是最小的语义单位(例如\(ate,ly,able\)这种),但如今我们需要讨论比单词粒度更细的模型以处理大量的开放词汇(巨大的、无限的单词空间) 例如:oooooooo 阅读全文
posted @ 2025-03-08 22:48 绵满 阅读(283) 评论(0) 推荐(0)
摘要: 模型回顾 问题:RNN需要经过k步才能对远距离的单词进行交互,例如 这里的was是chef的谓语,二者的关系十分紧密,但是使用线性顺序分析句子会导致如果was和chef的距离较远,它们会难以交互(因为梯度问题) Self Attention 键值对注意力 (1)我们可以将注意力视为在键值存储中执行模 阅读全文
posted @ 2025-03-08 22:45 绵满 阅读(329) 评论(0) 推荐(0)
摘要: 语言模型的解码 △:在讲义中这部分内容是神经机器翻译NMT中,我认为这个适用于所有语言模型所以就单列出来了 (1)贪心解码:每一步都取最可能的单词,用前一步的输出作为下一步的输入(存在问题:有一个预测偏差,会导致后面的生成不可挽回,最终结果不尽人意) (2)穷举解码:顾名思义,尝试计算每一个可能的序 阅读全文
posted @ 2025-03-08 22:43 绵满 阅读(297) 评论(0) 推荐(0)
摘要: LSTM (1)LSTM(Long Short-Term Memory RNNs)是Hochreiter和Schmidhuber在1997年提出的一种RNN,用于解决消失梯度问题 (2)在步骤t中,这里有一个隐藏单元\(h^{(t)}\)和一个记忆单元\(c^{(t)}\) 它们均为长度为n的向量 阅读全文
posted @ 2025-03-08 22:42 绵满 阅读(309) 评论(0) 推荐(0)
摘要: 语言模型定义 (1)语言模型任务是根据给定的单词序列计算下一个单词的概率分布,完成这样的任务的系统就被称作语言模型 (2)也可以认为语言模型是一个为文本分配概率的系统,例如文本 \(x^{(1)},\cdots,x^{(T)}\) 的概率是 n-gram语言模型 (1)一个n-gram是由n个连续单 阅读全文
posted @ 2025-03-08 22:38 绵满 阅读(303) 评论(0) 推荐(0)
摘要: 依存结构 与编译器中的解析树类似,NLP中的解析树是用于分析句子的句法结构。使用的结构主要有两种类型——短语结构和依存结构。短语结构文法使用短语结构语法将词组织成嵌套成分。后面的内容会展开对它做更详细的说明。我们现在关注依存语法。 句子的依存结构展示了单词依赖于另外一个单词 (修饰或者是参数)。词与 阅读全文
posted @ 2025-03-08 22:36 绵满 阅读(396) 评论(0) 推荐(0)
摘要: 词向量评估 词向量内部评估 (1)词向量的内部评估是对一组由如Word2Vec或GloVe生成的词向量在特定的中间子任务 (如词类比) 上的评估。这些子任务通常简单而且计算速度快,从而能够帮助我们理解生成的的词向量。 (2)词类比 一个比较常用的内部评估的方法是词向量的类比。在词向量类比中,给定以下 阅读全文
posted @ 2025-03-08 22:35 绵满 阅读(322) 评论(0) 推荐(0)