这是什么
一份中文编写、按考点组织、持续更新的大模型算法岗面试题库。
和"把别人的面经搬过来"不同,这里的每道题都按同一套结构写:先给一句话答案,再拆为什么,最后给面试官会追问什么。题目不考背诵,考的是你能不能把权衡讲清楚。
举个真题:长上下文模型(Gemini 1.5 Pro 1M token)能取代 RAG 吗?
面试官不想听"能"或"不能"。他想听你从 成本、时效、可溯源 三个维度拆开讲——拆得出维度,就是高分。
这份题库的不同之处
| 常见面经仓库 | 本仓库 |
|---|
| 组织方式 | 按文章 / 按公司 | 按考点,每题带难度 ⭐ ⭐⭐ ⭐⭐⭐ |
| 答案形态 | 大段概念复述 | 一句话答案 + 深度拆解 + 避坑指南 |
| 题目取向 | 名词解释、背诵题 | "为什么""怎么权衡""怎么落地" |
| 技术时效 | 停更在某个时间点 | 跟到 2026 年的真高频:Harness Engineering、Loop Engineering、GraphRAG、MCP |
| 参与方式 | 只能看 | Issue 提新题 / PR 修答案,每条都看 |
适合谁
- 🎯 正在准备 大模型算法岗、AI Agent 岗 面试的同学(校招 / 社招 / 转岗都适用)
- 🔄 从 CV、NLP、后端 转 AIGC 的工程师——先补主干,再看方向
- 🧑💼 需要出题的 面试官——题目已按难度分层,可直接取用
- 📚 想系统梳理一遍大模型知识图谱的人
🗂️ 目录导航
| 模块 | 题量 | 已完成内容 | 直达 |
|---|
| 大模型 RAG | 160 | 40 题逐题详解 | 进入 → |
| 大模型 Agent | 100 | 24 题逐题详解 | 进入 → |
| 强化学习后训练(RLHF / PPO / DPO / GRPO) | 120 | 40 题逐题详解 + 作答要点 | 进入 → |
| Hermes Agent 专题 | 100 | 22 题逐题详解 + 作答要点 | 进入 → |
| Loop Engineering | 100 | 100 题作答要点 | 进入 → |
| 知识图谱 GraphRAG | 100 | 100 题作答要点 | 进入 → |
| 目标检测与机器视觉 | 100 | 100 题作答要点 | 进入 → |
| 经典专题(30+) | 数百考点 | 专题题单 + 逐专题答案入口 | 进入 → |
经典专题包含哪些方向?(点击展开)
大模型基础面 · 进阶面 · 微调 · LangChain · RAG · PEFT · 推理 · 增量预训练 · 评测 · 强化学习 · 训练集 · 显存优化 · 分布式训练 · Agent · 位置编码 · Tokenizer · 推理加速 · 幻觉 · 模型对比 · CoT · 数据泄露 · MoE · 蒸馏 · 软硬件配置 · Token 与参数 · 多模态 · NLP · KV Cache · 角色扮演 · Chat o1 · DeepSeek-R1 · 推理大模型 · Kimi 1.5 · MCP · 上下文工程 · Qwen3
每个专题都配了对应的答案目录,点进专题里的"点击查看答案"即可。
已开源的逐题详解,直接看这里(126 题)
🚀 怎么刷效率最高
第一步:先扫 ⭐ 题,建立主干。
从 RAG 核心概念 和 Agent 基础 入手,每天 20 题,两周过一遍。这一步只求"见过",不求背熟。
第二步:练"讲",别练"看"。
对着 ⭐⭐ 高频题,合上屏幕自己讲一分钟,再对照答案查漏。面试考的是表达,不是记忆力。
第三步:用 ⭐⭐⭐ 场景题做模拟面试。
拿 Loop Engineering、GraphRAG、目标检测 里的开放题自己出方案、讲权衡——这些题每题都写了「考察点 / 得分项」,正好用来给自己打分。
按岗位选路线:
🧭 题目长什么样
每道题都是同一套三段结构,方便你直接搬进自己的答题模板:
【⭐⭐】为什么说"RAG 70% 的效果由分块决定"?
💡 考察点:是否理解分块对召回质量的决定性影响,而不是只会调 chunk_size
🎯 得分项:能说清 分块 → 召回 → 生成 的传导链路;能给出具体 chunk 大小区间
✅ 作答要点:分块决定了检索单元的信息完整度。切碎了语义断裂,切大了噪声淹没……
🗓️ 更新计划
| 状态 | 内容 |
|---|
| ✅ 已完成 | RAG 40 题、Agent 24 题、RL 后训练 40 题、Hermes 22 题 逐题详解 |
| ✅ 已完成 | Loop Engineering / GraphRAG / 目标检测 各 100 题「考察点 + 得分项 + 作答要点」 |
| ✅ 已完成 | RAG 进阶篇与实战篇(41-160 题)逐题详解补齐 |
| ✅ 已完成 | Agent 工具系统、多 Agent 协作章节详解 |
| 📌 计划中 | 面经投稿真实面试复盘、大厂题库整理、季度高频考点变化 |
大模型这行变化快,本仓库会持续跟。想第一时间拿到更新,可以关注公众号(见文末)。
🤝 参与共建
内容靠大家,欢迎以任何方式参与:
- 提出问题 / 补充新题 → 提 Issue
- 修正答案、改错别字、补链接 → 提 Pull Request,哪怕只改一个字
- 分享真实面经 → 在 Issue 里按「公司 / 岗位 / 轮次 / 题目 / 复盘」写下来,我会整理进仓库
- 发现题目过时或有争议 → 直接说出来,标注依据即可
具体的提交规范见 CONTRIBUTING.md。每一条 Issue 和 PR 我都会看,有贡献的伙伴会出现在更新说明里。
⭐ 觉得有用?
如果这份题库帮到了你的面试准备,点一个 Star 就是最大的支持——它能让更多正在准备面试的人搜到这份内容,也能让我知道该继续投入。
也欢迎把它转给身边正在准备大模型面试的朋友。
📮 持续更新的地方
题库的完整答案、更新最快的部分,放在公众号和知识星球的《大模型面试宝典》专栏:
- 公众号:关于NLP那些你不知道的事 —— 回复「大模型」领取高频考点 PDF
- 知识星球「大模型面试宝典」 —— 实战篇 / 场景题的完整解析与更新
⚠️ 声明
- 本仓库内容由作者根据一线面试与工程实践整理,免费开源,欢迎转载分享(请附仓库链接)。
- 部分进阶题标注「可参考最新论文」,个别说法(如"RAG 70% 效果由分块决定")属业内流传经验,暂无严格论文出处,请以批判视角看待。
- 若发现错误,欢迎提 Issue 纠错——被指出错误并修正,比不出错更重要。
介绍
- 问题
- 作为一名 scholar,你是否和我一样,在刚入门 NLP 时,对于陌生领域有种无从下手,心存畏惧?
- 作为一名 scholar,你是否还在发愁如何找好的论文?
- 作为一名 scholar,你是否还在为 自己 的 英文阅读 能力跟不上 很烦恼?
- 作为一名 scholar,你是否还在为 看到 一篇好paper,但是复现不出 code 而心累?
- 作为一名 scholar,你是否还在为 有Good idea,Outstanding Experimental results,Beautiful Chinese manuscript,结果 Bad English manuscript, Poor Journal 而奔溃?
- 作为一名 scholar,你是否在为搞科研没人交流而自闭?
- 当你看到这一篇文档,你将不在为这些问题而烦恼,因为我们为你准备了一整套免费的从 论文查找->论文翻译->论文理解->相关代码搜索->写英文稿->科研学术交流 的路径。
NLP 学习篇
经典会议论文研读篇
- ACL2020
- 【关于 CHECKLIST】 那些你不知道的事
- 阅读理由:ACL2020 best paper ,利用 软件工程 的 思想 思考 深度学习
- 动机:针对 train-val-test 分割方法 评估 模型性能容易出现 不全面、偏向性、可解性差问题;
- 方法:提出了一种模型无关和任务无关的测试方法checklist,它使用三种不同的测试类型来测试模型的独立性。
- 效果:checklist揭示了大型软件公司开发的商业系统中的关键缺陷,表明它是对当前实践的补充好吧。测试使用 checklist 创建的模型可以应用于任何模型,这样就可以很容易地将其纳入当前的基准测试或评估中管道。
理论学习篇
经典论文研读篇
【关于 LLMs 】 那些的你不知道的事
- 【关于Transformer】 那些的你不知道的事
- 为什么要有 Transformer?
- Transformer 作用是什么?
- Transformer 整体结构怎么样?
- Transformer-encoder 结构怎么样?
- Transformer-decoder 结构怎么样?
- 传统 attention 是什么?
- self-attention 长怎么样?
- self-attention 如何解决长距离依赖问题?
- self-attention 如何并行化?
- multi-head attention 怎么解?
- 为什么要 加入 position embedding ?
- 为什么要 加入 残差模块?
- Layer normalization。Normalization 是什么?
- 什么是 Mask?
- Transformer 存在问题?
- Transformer 怎么 Coding?
-
【关于 Longformer】 那些的你不知道的事
- 论文:Longformer: The Long-Document Transformer
- 发表会议:naacl2021
- 论文地址:https://arxiv.org/abs/2004.05150
- github:https://github.com/allenai/longformer
- 动机:
- 基于传统Transformer的模型,因为 每一个token都要与其他所有token进行交互,其self-attention的点积计算量都是 O(n^2) ,(其中 n 为输入序列长度),因此对于长序列的处理存在内存瓶颈(self-attention的计算可以并行化,所以时间复杂度仍然是 O(n) )。这也是传统Transformer模型把输入长度限制在512个token以内的原因之一。
- 在面对超过长度限制的长文档时,往往需要进行切片、截断或者抽取重要片段等处理,这种做法 导致不同的text span之间无法进行交互,因而必然存在大量information loss,既繁琐又破坏了原始文本的完整性。
- 通过添加一些其他机制来加强这种text span之间的交互。但这种新增机制实现起来通常比较复杂,而且往往是task-specific的,通用性不强
- 论文方法
- 对于每一个token,只对固定窗口大小的附近token计算local attention,并结合具体任务,计算少量的global attention。该方法的优点包括:
- 复杂度低,将attention机制的复杂度降至 O(n)
- 通用性强,可用于各类文档级任务
- 部署容易,作者在cuda内核上直接实现了Longformer的attention pattern,并提供了开源代码。
-
【关于 Transformer-XL】 那些的你不知道的事
- 动机
- RNN:主要面临梯度消失或爆炸(gradient vanishing and explosion),解决方法集中在优化方法、初始化策略、辅助记忆单元的研究上。
- vanilla Transformer:最长建模长度是固定的,无法捕捉更长依赖关系;等长输入序列的获取通常没有遵循句子或语义边界(出于高效考虑,往往就是将文本按长度一段段截取,而没有采用padding机制),可能造成上下文碎片化(context fragmentation)。
- 方法
- 引入循环机制(Reccurrence,让上一segment的隐含状态可以传递到下一个segment):将循环(recurrence)概念引入了深度自注意力网络。不再从头计算每个新segment的隐藏状态,而是复用从之前segments中获得的隐藏状态。被复用的隐藏状态视为当前segment的memory,而当前的segment为segments之间建立了循环连接(recurrent connection)。因此,超长依赖性建模成为了可能,因为信息可以通过循环连接来传播。
- 提出一种新的相对位置编码方法,避免绝对位置编码在循环机制下的时序错乱:从之前的segment传递信息也可以解决上下文碎片化的问题。更重要的是,本文展示了使用相对位置而不是用绝对位置进行编码的必要性,这样做可以在不造成时间混乱(temporal confusion)的情况下,实现状态的复用。因此,作为额外的技术贡献,文本引入了简单但有效的相对位置编码公式,它可以泛化至比在训练过程中观察到的长度更长的注意力长度。
-
【关于 Linformer 】 那些你不知道的事
-
【关于 Performer 】 那些你不知道的事 【推荐阅读】
- 阅读理由:Transformer 作者 Krzysztof Choromanski 针对 Transformer 问题的重新思考与改进
- 动机:Transformer 有着巨大的内存和算力需求,因为它构造了一个注意力矩阵,需求与输入呈平方关系;
- 思路:使用一个高效的(线性)广义注意力框架(generalized attention framework),允许基于不同相似性度量(核)的一类广泛的注意力机制。
- 优点:该方法在保持线性空间和时间复杂度的同时准确率也很有保证,也可以应用到独立的 softmax 运算。此外,该方法还可以和可逆层等其他技术进行互操作。
-
A Survey on Long Text Modeling with Transformers
- 【关于 Efficient Transformers: A Survey】 那些你不知道的事
- 一、摘要
- 二、Transformer 介绍
- 三、Efficient Transformers
- 3.1 Fixed patterns(FP)
- 3.1.1 Fixed patterns(FP) 介绍
- 3.1.2 Fixed patterns(FP) 类别
- 3.2 Combination of Patterns (CP)
- 3.2.1 Combination of Patterns (CP) 介绍
- 3.2.2 Combination of Patterns (CP) 类别
- 3.2.3 Fixed patterns(FP) vs 多Combination of Patterns (CP)
- 3.3 Learnable Patterns (LP)
- 3.3.1 Learnable Patterns (LP) 介绍
- 3.3.2 Learnable Patterns (LP) 类别
- 3.3.3 Learnable Patterns (LP) 优点
- 3.4 Memory
- 3.4.1 Memory 介绍
- 3.4.2 Memory 类别
- 3.5 Low-Rank 方法
- 3.5.1 Low-Rank 方法 介绍
- 3.5.2 Low-Rank 方法 类别
- 3.6 Kernels 方法
- 3.6.1 Kernels 方法 介绍
- 3.6.2 Kernels 方法 代表
- 3.7 Recurrence 方法
- 3.7.1 Recurrence 方法 介绍
- 3.7.2 Kernels 方法 代表
- 四、Transformer 变体 介绍
- 4.1 引言
- 4.2 Memory Compressed Transformer
- 4.3 Image Transformer
- 4.4 Set Transformer
- 4.5 Sparse Transformer
- 4.6 Axial Transformer
- 4.7 Longformer
- 4.8 Extended Transformer Construction (ETC)(2020)
- 4.9 BigBird(2020)
- 4.10 Routing Transformer
- 4.11 Reformer(2020)
- 4.12 Sinkhorn Transformers
- 4.13 Linformer
- 4.14 Linear Transformer
- 4.15 Performer(2020)
- 4.16 Synthesizer models(2020)
- 4.17 Transformer-XL(2020)
- 4.18 Compressive Transformers
- 五、总结
【关于 预训练模型】 那些的你不知道的事
【关于 Tuning】 那些的你不知道的事
【关于 Prompt】 那些的你不知道的事
- 【关于 OpenPrompt 】 那些的你不知道的事
- OpenPrompt: An Open-source Framework for Prompt-learning
- 论文链接:https://arxiv.org/abs/2111.01998
- 论文 github 地址:https://github.com/thunlp/OpenPrompt
- 动机:
- 目前还没有提出 Prompt-learning 的标准实施框架,大多数现有的 Prompt-learning 代码库,往往是不规范的,只为特定场景提供有限的实现;
- 由于在 Prompt-learning 中需要考虑许多细节,如模板策略、初始化策略和口语化策略等,从业者在快速调整所需的提示学习方法以适应其应用方面面临着障碍。
- OpenPrompt 特点
- OpenPrompt是一个便于研究的框架,它具有高效、模块化和可扩展性,其可组合性允许在一个统一的范式中自由组合不同的PLM、任务格式和提示模块;
- 用户可以方便地部署 Prompt-learning 框架,并评估它们在不同的NLP任务上的泛化性,不受限制
【关于 Prompt For NER】 那些的你不知道的事
- 【关于 templateNER】 那些你不知道的事
- 【关于 LightNER】 那些你不知道的事
- 论文名称:LightNER: A Lightweight Generative Framework with Prompt-guided Attention for Low-resource NER
- 会议:
- 论文链接:https://arxiv.org/pdf/2109.00720.pdf
- 论文 github 地址:
- 论文动机
- 传统的 NER 方法:
- 方法:在BERT的顶层加classifier来做token-level的分类;
- 存在问题:低资源场景下泛化性不强。在低资源场景中,即target domain上的带标注数据比较有限的时候,source domain和target domain的label可能会不同,没法共享一个classifier,对target domain上unseen class的泛化性并不好
- 低资源的NER传统方法:
- 方法:基于度量学习的方式
- 存在问题:因为在test set上执行预测的时候是依靠相似度度量,不涉及到模型参数更新,所以需要source domain和target domain具有相似的pattern,这样就会导致在cross-domain的问题上表现不好。
- template-based NER:
- 方法:迭代所有可能的span,然后对每个span构造一个template去预测
- 存在问题:复杂度高,同时也需要设计template
- 论文方法:
- BARTNER的框架:
- 输入:一个句子;
- 输出是:实体的序列;
- 每个实体包括:实体span在输入句子中的start index,end index,以及实体类型(tag,实际也是index);
- 在decoder端,输出的hidden state与输入序列的编码以及tag序列的编码做点积+softmax,转换为在输入句子词表+tag词表中的概率分布。
- Semantic-aware Answer Space:实际就是说NER中很多实体类型比较复杂,是由多个单词组合而成的,比如:return_date.month_name。因此,针对这个tag,把他分解成单个word进行编码,然后加权得到tag的表示,这个权重也是学出来的。
- Prompt-guided Attention:实际就是使用soft prompt,是在encoder和decoder的每层的attention部分加入key和value的可微调参数,其他都是固定的。
- 【关于 UIE 】 那些你不知道的事
- 研究动机
- 论文贡献
- 设计了一种结构化抽取语言(Structural Extraction Language, SEL),它能够将四种信息抽取任务的不同结构统一描述,使得模型的输出结构针对不同任务都是一致的。
- 由于模型可以做多个任务,所以需要一种方式去指导模型做指定的任务,因此作者设计了结构化模式指导器(Structural Schema Instructor, SSI),其实这就是一种prompt。
- 由于模型的输出都是符合SEL语法的结构化信息,而目前常用的生成式预训练模型如T5、BART都是以生成自然语言为主,若直接采用这种预训练模型会影响到模型性能,因此作者专门针对text to structure的结构来预训练了一个大模型
- 【关于 USM 】 那些你不知道的事
- 论文:Universal Information Extraction as Unified Semantic Matching
- 会议:AAAI2023
- 论文地址:https://arxiv.org/abs/2301.03282
- 动机:
- 传统的信息抽取方法:需要针对特定的任务进行模型设计和数据标注,使得难以推广到新的模式中,极大限制了IE系统的使用;
- UIE 由于Seq2Seq的生成模型的黑盒特性,导致无法判断跨任务或跨模式的迁移在什么情况下会成功or失败
- 思路:提出了一种统一的语义匹配框架——USM,它联合编码提取模式和输入文本,并行统一提取子结构,并根据需要对目标结构进行可控解码。
-
【关于 PL-Marker 】 那些你不知道的事
- 论文名称:《Packed Levitated Marker for Entity and Relation Extraction》
- 会议:ACL2022
- 论文地址:https://arxiv.org/abs/2109.06067v4
- 源码地址:https://github.com/thunlp/PL-Marker
- 动机:现有作品的一个主要限制是它们忽略了span(对)之间的相互关系。
- 论文工作:提出了一种新的span表示方法,称为 Packed Levitated Markers (PL-Marker):
- 通过战略性地在编码器中 packing the markers 来考虑span(对)之间的相互关系。
- 提出了一种 neighborhood-oriented packing strategy ,该策略综合考虑了邻域span,以更好地建模实体边界信息。
- 对于那些更复杂的span对分类任务,我们设计了一种面向主题的 packs 策略,将每个主题及其所有对象 packs ,以模拟同一主题span对之间的相互关系。实验结果表明,通过增强标记特征,
- 论文结果:在六个 NER 基准上推进了基线,并且在 ACE04 和 ACE05 上比之前的最先进模型更快地获得了 4.1%-4.3% 的严格关系 F1 改进.
-
【关于 PURE】 那些你不知道的事 【强烈推荐】
- 论文:A Frustratingly Easy Approach for Joint Entity and Relation Extraction
- 阅读理由:反直觉!陈丹琦用pipeline方式刷新关系抽取SOTA
- 方法:建立两个 encoders,并独立训练:
- encoder 1:entity model
- 方法:建立在 span-level representations 上
- encoder 2:relation model:只依赖于实体模型作为输入特征
- 方法:builds on contextual representations specific to a given pair of span
- 优点:
- 很简单,但我们发现这种流水线方法非常简单有效;
- 使用同样的预先训练的编码器,我们的模型在三个标准基准(ACE04,ACE05,SciERC)上优于所有以前的联合模型;
- 问题讨论:
- Q1、关系抽取最care什么?
- Q2、共享编码 VS 独立编码 哪家强?
- 解答:由于两个任务各自是不同的输入形式,并且需要不同的特征去进行实体和关系预测,也就是说:使用单独的编码器确实可以学习更好的特定任务特征。
- Q3:误差传播不可避免?还是不存在?
- 解答:并不认为误差传播问题不存在或无法解决,而需要探索更好的解决方案来解决此问题
- Q4:Effect of Cross-sentence Context
-
【关于 PRGC】 那些你不知道的事
- 论文:PRGC: Potential Relation and Global Correspondence Based JointRelational Triple Extraction
- 来源:ACL 2021
- 论文地址:https://arxiv.org/pdf/2106.09895
- 开源代码:https://github.com/hy-struggle/PRGC
- 动机:从非结构化文本中联合提取实体和关系是信息提取中的一项关键任务。最近的方法取得了可观的性能,但仍然存在一些固有的局限性:
- 关系预测的冗余:TPLinker 为了避免曝光偏差,它利用了相当复杂的解码器,导致了稀疏的标签,关系冗余;
- span-based 的提取泛化性差和效率低下;
- 论文方法:
- 从新颖的角度将该任务分解为三个子任务:
- Relation Judgement;
- Entity Extraction;
- Subject-object Alignment;
- 然后提出了一个基于 Potential Relation and Global Correspondence (PRGC) 的联合关系三重提取框架:
- Potential Relation Prediction:给定一个句子,模型先预测一个可能存在关系的子集,以及得到一个全局矩阵;
- Relation-Specific Sequence Tagging:然后执行序列标注,标注存在的主体客体,以处理 subjects and object 之间的重叠问题;
- Global Correspondence:枚举所有实体对,由全局矩阵裁剪;
- 实验结果:PRGC 以更高的效率在公共基准测试中实现了最先进的性能,并在重叠三元组的复杂场景中提供了一致的性能增益
-
【关于 PFN】 那些你不知道的事
- 论文名称:PFN:A Partition Filter Network for Joint Entity and Relation Extraction
- 会议:EMNLP2021
- 论文地址:https://arxiv.org/abs/2108.12202v8
- 源码地址:https://github.com/Coopercoppers/PFN
- 动机:
- 在联合实体和关系提取中,现有工作要么顺序编码任务特定的特征,导致任务间特征交互的不平衡,即后来提取的特征与先提取的特征没有直接联系。
- 或者它们以并行方式编码实体特征和关系特征,这意味着每个任务的特征表示学习在很大程度上是相互独立的,除了输入共享。
- 论文方法:提出了一个分区过滤网络来适当地模拟任务之间的双向交互,
- 其中特征编码被分解为两个步骤:分区和过滤。
- 在我们的编码器中,我们利用两个门:实体门和关系门,将神经元分割成两个任务分区和一个共享分区。
- 共享分区代表对两个任务都有价值的任务间信息,并在两个任务之间均匀共享,以确保正确的双向交互。
- 任务分区代表任务内信息,并通过两个门的共同努力形成,确保任务特定特征的编码相互依赖。
- 论文实验:在六个公共数据集上的实验结果表明,我们的模型比以前的方法表现得更好。此外,与之前的工作所声称的相反,我们的辅助实验表明关系预测对命名实体预测的贡献是不可忽略的。
-
【关于 实体关系联合抽取】那些你不知道的事
- pipeline 方法
- 思路:先命名实体识别( NER) , 在 关系抽取(RE)
- 问题:
- 忽略两任务间的相关性
- 误差传递。NER 的误差会影响 RE 的性能
- end2end 方法
- 解决问题:实体识别、关系分类
- 思路:
- 实体识别
- BIOES 方法:提升召回?和文中出现的关系相关的实体召回
- 嵌套实体识别方法:解决实体之间有嵌套关系问题
- 头尾指针方法:和关系分类强相关?和关系相关的实体召回
- copyre方法
- 关系分类:
- 思路:判断 【实体识别】步骤所抽取出的实体对在句子中的关系
- 方法:
- 方法1:1. 先预测头实体,2. 再预测关系、尾实体
- 方法2:1. 根据预测的头、尾实体预测关系
- 方法3:1. 先找关系,再找实体 copyre
- 需要解决的问题:
- 关系重叠
- 关系间的交互
- 论文介绍
- 【paper 1】Joint entity recognition and relation extraction as a multi-head selection problem
- 【paper 2】Joint Extraction of Entities and Relations Based on a Novel Decomposition Strategy[ACL2017]
- 【paper 3】GraphRel:Modeling Text as Relational Graphs for Joint Entity and Relation Extraction [ACL2019]
- 【paper 4】CopyMTL: Copy Mechanism for Joint Extraction of Entities and Relations with Multi-Task Learning [AAAI2020]
- 【paper 5】Span-based Joint Entity and Relation Extraction with Transformer Pre-training [ECAI 2020]
- 【paper 6】A Novel Cascade Binary Tagging Framework for Relational Triple Extraction[ACL2020]
- 【paper 7】END-TO-END NAMED ENTITY RECOGNITION AND RELATION EXTRACTION USING PRE-TRAINED LANGUAGE MODELS
-
Incremental Joint Extraction of Entity Mentions and Relations
-
【关于 Joint NER】那些你不知道的事
- 论文名称:Joint Extraction of Entities and Relations Based on a Novel Decomposition Strategy
-
【关于 GraphRel】 那些的你不知道的事
- 论文名称:论文名称:GraphRel: Modeling Text as Relational Graphs for Joint Entity and Relation Extraction
- 动机
- 想要自动提取特征的联合模型
- 通过堆叠Bi-LSTM语句编码器和GCN (Kipf和Welling, 2017)依赖树编码器来自动学习特征
- 用以考虑线性和依赖结构
- 类似于Miwa和Bansal(2016)(一样是堆叠的)
- 方法
- 每个句子使用Bi-LSTM进行自动特征学习
- 提取的隐藏特征由连续实体标记器和最短依赖路径关系分类器共享
- 问题
- 然而,在为联合实体识别和关系提取引入共享参数时:
- 它们仍然必须将标记者预测的实体提及通过管道连接起来
- 形成关系分类器的提及对
- 考虑重叠关系
- 如何考虑关系之间的相互作用
- 2nd-phase relation-weighted GCN
- 重叠关系(常见)
- 情况
- 两个三元组的实体对重合
- 两个三元组都有某个实体mention
- 推断
- 方法:
- 学习特征
- 通过堆叠Bi-LSTM语句编码器和GCN (Kipf和Welling, 2017)依赖树编码器来自动学习特征
- 第一阶段的预测
- GraphRel标记实体提及词,预测连接提及词的关系三元组
- 用关系权重的边建立一个新的全连接图(中间图)
- 指导:关系损失和实体损失
- 第二阶段的GCN
- 通过对这个中间图的操作
- 考虑实体之间的交互作用和可能重叠的关系
- 对每条边进行最终分类
- 在第二阶段,基于第一阶段预测的关系,我们为每个关系构建完整的关系图,并在每个图上应用GCN来整合每个关系的信息,进一步考虑实体与关系之间的相互作用。
-
【关于 关系抽取 之 HBT】 那些的你不知道的事
- 论文名称:A Novel Hierarchical Binary Tagging Framework for Relational Triple Extraction
- 论文会议:ACL 2020
- keras4bert 版本:https://github.com/bojone/lic2020_baselines 【苏神 Lic2020 baseline】
- pytorch 版本:https://github.com/powerycy/Lic2020- 【逸神 pytorch 复现版本】
- 动机:
- pipeline approach
- 思路
- 实体抽取:利用一个命名实体识别模型 识别句子中的所有实体;
- 关系分类:利用 一个关系分类模型 对每个实体对执行关系分类。 【这一步其实可以理解为文本分类任务,但是和文本分类任务的区别在于,关系分类不仅需要学习句子信息,还要知道 实体对在 句子中 位置信息】
- 问题
- 误差传递问题:由于 该方法将 实体-关系联合抽取任务 分成 实体抽取+关系分类 两个任务处理,所以 实体抽取任务的错误无法在后期阶段进行纠正,因此这种方法容易遭受错误传播问题;
- feature-based models and neural network-based models
- 思路
- 通过用学习表示替换人工构建的特征,基于神经网络的模型在三重提取任务中取得了相当大的成功。
- 问题
- 大多数现有方法无法正确处理句子包含多个相互重叠的关系三元组的情况。
- 基于Seq2Seq模型 and GCN
- 思路:
- 提出了具有复制机制以提取三元组的序列到序列(Seq2Seq)模型。 他们基于Seq2Seq模型,进一步研究了提取顺序的影响,并通过强化学习获得了很大的改进。
- 问题:
- 过多 negative examples:在所有提取的实体对中,很多都不形成有效关系,从而产生了太多的negative examples;
- EPO(Entity Pair Overlap) 问题:当同一实体参与多个关系时,分类器可能会感到困惑。 没有足够的训练样例的情况下,分类器就很难准确指出实体参与的关系;
- 方式:实现了一个不受重叠三元组问题困扰的HBT标注框架(Hierarchical Binary Tagging Framework)来解决RTE任务;论文并不是学习关系分类器f(s,o)→r,而是学习关系特定的标记器fr(s)→o;每个标记器都可以识别特定关系下给定 subject 的可能 object(s)。 或不返回任何 object,表示给定的主题和关系没有 triple。
- 核心思想:把关系(Relation)建模为将头实体(Subject)映射到尾实体(Object)的函数,而不是将其视为实体对上的标签。
- 思路:
- 首先,我们确定句子中所有可能的 subjects;
- 然后针对每个subjects,我们应用特定于关系的标记器来同时识别所有可能的 relations 和相应的 objects。
- 结构:
- BERT Encoder层:使用 Bert 做 Encoder,其实就是 用 Bert 做 Embedding 层使用。
- Hierarchical Decoder层
- Subject tagger 层:用于 提取 Subject;
- Relation-Specific Object Taggers 层:由一系列relation-specific object taggers(之所以这里是多个taggers是因为有多个可能的relation);
-
【关于 kNN-NER】 那些你不知道的事
- 论文名称:<kNN-NER: Named Entity Recognition with Nearest Neighbor Search >
- 会议:
- 论文地址:https://arxiv.org/pdf/2203.17103.pdf
- 论文代码:https://github.com/ShannonAI/KNN-NER
- 动机:在推理阶段,加入kNN机制,以一种集成的思路来做NER,的确是一种较为简洁的方式提升识别效果。
- 论文方法:
- 在训练阶段,按正常的序列任务训练一个常规的NER模型;
- 在推理阶段,由常规模型预测一个分布+由kNN检索出来的一个分布,两个分布融合作为最终的预测分布,从而达到提高NER识别效果。
- 实验结果:
- kNN-NER框架在处理长尾数据(long-tail)及小样数据(few-shot)问题上,比常规的NER模型表现更好,而这也正是业务场景容易遇到的问题。
- 在对比的baseline下,加入kNN机制都有提升,在Weibo数据集上最高达1.23个点提升,还是很明显的。
- 在训练集5%的情况,kNN-NER对比常规序列模型有近2个点的提升,说明论文在小样本学习上表现更好。
-
【关于 Label Semantics for Few Shot NER】 那些你不知道的事 【推荐理由:ACL2022 SOTA】
- 论文名称:Label Semantics for Few Shot Named Entity Recognition
- 会议:ACL2022
- 论文地址:https://arxiv.org/abs/2203.08985
- 动机:命名实体识别的少数镜头学习问题。
- 论文方法:
- 利用标签名称中的语义信息作为为模型提供额外信号和丰富先验的一种方式;
- 提出了一种由两个 BERT 编码器组成的神经架构:
- 一个用于编码文档及其标记;
- 一个用于以自然语言格式对每个标签进行编码。
- 我们的模型学习将第一个编码器计算的命名实体的表示与第二个编码器计算的标签表示相匹配。
- 实验结果:标签语义信号被证明可以在多个少数镜头 NER 基准测试中支持改进的最先进的结果,并在标准基准测试中提供同等性能。我们的模型在资源匮乏的环境中特别有效。
-
【关于 命名实体识别 之 W2NER 】 那些你不知道的事
- 论文:Unified Named Entity Recognition as Word-Word Relation Classification
- 会议:AAAI 2022
- 论文地址:https://arxiv.org/pdf/2112.10070.pdf
- 代码:https://github.com/ljynlp/w2ner
- 动机:
- 如何 构建解决非嵌套,嵌套,不连续实体的统一框架?
- span-based 只关注边界识别
- Seq2Seq 可能会受到暴露偏差的影响
- 论文方法:
- 通过将统一的 NER 建模为 word-word relation classification(W2NER)
- 该架构通过使用 Next-Neighboring-Word (NNW) 和 Tail-Head-Word-* (THW-*) 关系有效地建模实体词之间的相邻关系,解决了统一 NER 的内核瓶颈。
- 基于 W2NER 方案,我们开发了一个神经框架,其中统一的 NER 被建模为单词对的 2D 网格。
- 然后,我们提出了多粒度 2D 卷积,以更好地细化网格表示。
- 最后,使用一个共同预测器来充分推理词-词关系。
- 实验:在 14 个广泛使用的基准数据集上进行了广泛的实验,用于非嵌套,嵌套,不连续实体的 NER(8 个英文和 6 个中文数据集),其中我们的模型击败了所有当前表现最好的基线,推动了最先进的性能- 统一NER的mances
-
【关于 Few-Shot Named Entity Recognition】 那些你不知道的事
- 论文名称:Few-Shot Named Entity Recognition: A Comprehensive Study
- 将 few shot learning 应用于 NER 领域中需要面临的三个核心问题
- How to adapt meta-learning such as prototype-based methods for few-shot NER? (如何将元学习方法作为 prototype-based 的方法应用到 few-shot NER 领域中?)
- How to leverage freely-available web data as noisy supervised pre-training data?(如何利用大量免费可用的网页数据构造出 noisy supervised 方法中的预训练数据?)
- How to leverage unlabeled in-domain sentences in a semi-supervised manner?(如何在半监督的范式中利用好 in-domain 的无标注数据?)
-
【关于 AutoNER】 那些你不知道的事
- 论文名称:Learning Named Entity Tagger using Domain-Specific Dictionary
- 会议: EMNLP2018
- 论文地址:https://arxiv.org/abs/1809.03599
- 项目地址:https://github.com/shangjingbo1226/AutoNER
- 论文动机:
- 基于机器学习的命名实体识别方法:需要 手工标注特征;
- 基于深度学习的命名实体识别方法:需要大量标准数据;
- 远程监督(结合外部词典)标注数据:生成的嘈杂标签对学习
- 论文方法:提出了两种神经模型,以适应字典中嘈杂的远程监督:
- 首先,在传统的序列标记框架下,我们提出了一个修改后的模糊 CRF 层来处理具有多个可能标签的标记。
- 在确定远程监督中嘈杂标签的性质后,我们超越了传统框架,提出了一种新颖、更有效的神经模型 AutoNER,该模型具有新的 Tie or Break 方案。
- 讨论了如何改进远程监督以获得更好的 NER 性能。
- 实验结果:在三个基准数据集上进行的大量实验表明,仅使用字典而不需要额外的人力时,AutoNER 实现了最佳性能,并通过最先进的监督基准提供了具有竞争力的结果。
-
【关于 Continual Learning for NER】那些你不知道的事
-
【关于 NER数据存在漏标问题】那些你不知道的事
- 一、摘要
- 二、为什么 数据会存在漏标?
- 三、什么是 带噪学习
- 四、NER 数据漏标问题所带来后果?
- 五、NER 性能下降 原因是什么?
- 六、论文所提出的方法是什么?
- 七、数据漏标,会导致NER指标下降有多严重?
- 八、对「未标注实体问题」的解决方案有哪些?
- 九、如何降噪:改变标注框架+负采样?
- 9.1 第一步:改变标注框架
- 9.2 第二步:负采样
- 十、负样本采样,效果如何?
-
【关于 LEX-BERT】 那些你不知道的事【强烈推荐】
- 推荐理由:在 query 中 引入 标签信息的方法,秒杀 Flat NER,登上 2021 年 Chinese NER SOTA。
- 论文名称:《Lex-BERT: Enhancing BERT based NER with lexicons》
- 动机:尽管它在NER任务中的表现令人印象深刻,但最近已经证明,添加词汇信息可以显著提高下游性能。然而,没有任何工作在不引入额外结构的情况下将单词信息纳入BERT。在我们的工作中,我们提出了词法BERT(lex-bert),这是一种在基于BERT的NER模型中更方便的词汇借用方法
- 方法:
- LEX-BERT V1:Lex BERT的第一个版本通过在单词的左右两侧插入特殊标记来识别句子中单词的 span。特殊标记不仅可以标记单词的起始位置和结束位置,还可以为句子提供实体类型信息
- LEX-BERT V2:对于在句子中加宽的单词,我们没有在句子中单词的周围插入起始和结束标记,而是在句子的末尾附加一个标记[x]。请注意,我们将标记的位置嵌入与单词的起始标记绑定
-
【关于 嵌套命名实体识别(Nested NER)】那些你不知道的事
- 【关于 Biaffine Ner 】 那些你不知道的事
- 动机:NER 研究 关注于 扁平化NER,而忽略了 实体嵌套问题;
- 方法: 在本文中,我们使用基于图的依存关系解析中的思想,以通过 biaffine model 为模型提供全局的输入视图。 biaffine model 对句子中的开始标记和结束标记对进行评分,我们使用该标记来探索所有跨度,以便该模型能够准确地预测命名实体。
- 工作介绍:在这项工作中,我们将NER重新确定为开始和结束索引的任务,并为这些对定义的范围分配类别。我们的系统在多层BiLSTM之上使用biaffine模型,将分数分配给句子中所有可能的跨度。此后,我们不用构建依赖关系树,而是根据候选树的分数对它们进行排序,然后返回符合 Flat 或 Nested NER约束的排名最高的树 span;
- 实验结果:我们根据三个嵌套的NER基准(ACE 2004,ACE 2005,GENIA)和五个扁平的NER语料库(CONLL 2002(荷兰语,西班牙语),CONLL 2003(英语,德语)和ONTONOTES)对系统进行了评估。结果表明,我们的系统在所有三个嵌套的NER语料库和所有五个平坦的NER语料库上均取得了SoTA结果,与以前的SoTA相比,实际收益高达2.2%的绝对百分比。
- 【关于 Biaffine 代码解析】 那些你不知道的事
- 摘要
- 一、数据处理模块
- 1.1 原始数据格式
- 1.2 数据预处理模块 data_pre()
- 1.2.1 数据预处理 主 函数
- 1.2.2 训练数据加载 load_data(file_path)
- 1.2.3 数据编码 encoder(sentence, argument)
- 1.3 数据转化为 MyDataset 对象
- 1.4 构建 数据 迭代器
- 1.5 最后数据构建格式
- 二、模型构建 模块
- 2.1 主题框架介绍
- 2.2 embedding layer
- 2.2 BiLSTM
- 2.3 FFNN
- 2.4 biaffine model
- 2.5 冲突解决
- 2.6 损失函数
- 三、学习率衰减 模块
- 四、loss 损失函数定义
- 4.1 span_loss 损失函数定义
- 4.2 focal_loss 损失函数定义
- 四、模型训练
- 【关于 命名实体识别 之 GlobalPointer 】 那些你不知道的事
- 博客:【GlobalPointer:用统一的方式处理嵌套和非嵌套NER】
- 代码:https://github.com/bojone/GlobalPointer
- 动机:
- 在做实体识别或者阅读理解时,一般是用两个模块分别识别实体的首和尾;存在问题:出现 训练和预测时的不一致问题
- 论文方法:
- GlobalPointer是基于内积的token-pair识别模块,它可以用于NER场景,因为对于NER来说我们只需要把每一类实体的“(首, 尾)”这样的token-pair识别出来就行了。
- 结论:
- 利用全局归一化的思路来进行命名实体识别(NER),可以无差别地识别嵌套实体和非嵌套实体,在非嵌套(Flat NER)的情形下它能取得媲美CRF的效果,而在嵌套(Nested NER)情形它也有不错的效果。还有,在理论上,GlobalPointer的设计思想就比CRF更合理;而在实践上,它训练的时候不需要像CRF那样递归计算分母,预测的时候也不需要动态规划,是完全并行的,理想情况下时间复杂度是 O(1)。
- 【关于 命名实体识别 之 Efficient GlobalPointer 】 那些你不知道的事
-
【关于 NER trick】 那些你不知道的事
-
【关于TENER】 那些你不知道的事
- 论文名称:TENER: Adapting Transformer Encoder for Name Entity Recognition
- 动机:
-
- Transformer 能够解决长距离依赖问题;
-
- Transformer 能够并行化;
-
- 然而,Transformer 在 NER 任务上面效果不好。
- 方法:
- 第一是经验发现。 引入:相对位置编码
- 第二是经验发现。 香草变压器的注意力分布是缩放且平滑的。 但是对于NER,因为并非所有单词都需要参加,所以很少注意是合适的。 给定一个当前单词,只需几个上下文单词就足以判断其标签。 平稳的注意力可能包括一些嘈杂的信息。 因此,我们放弃了点生产注意力的比例因子,而使用了无比例且敏锐的注意力。
-
【关于DynamicArchitecture】 那些你不知道的事
- 介绍:Dynamic Architecture范式通常需要设计相应结构以融入词汇信息。
- 论文:
- 【关于 LatticeLSTM 】那些你不知道的事
- 想法:在 char-based 的 LSTM 中引入词汇信息
- 做法:
- 根据大量语料生成词典;
- 若当前字符与前面的字符无法组成词典中词汇,则按 LSTM 的方法更新记忆状态;
- 若当前字符与前面的字符组成词典中词汇,从最新词汇中提取信息,联合更新记忆状态;
- 存在问题:
- 计算性能低下,导致其不能充分利用GPU进行并行化。究其原因主要是每个字符之间的增加word cell(看作节点)数目不一致;
- 信息损失:
- 1)每个字符只能获取以它为结尾的词汇信息,对于其之前的词汇信息也没有持续记忆。如对于「大」,并无法获得‘inside’的「长江大桥」信息。
- 2)由于RNN特性,采取BiLSTM时其前向和后向的词汇信息不能共享,导致 Lattice LSTM 无法有效处理词汇信息冲突问题
- 可迁移性差:只适配于LSTM,不具备向其他网络迁移的特性。
- 【关于 LR-CNN 】那些你不知道的事
- 动机
- 词信息引入问题;
- lattice LSTM 问题:
- 基于 RNN 结构方法不能充分利用 GPU 并行计算资源;
- 很难处理被合并到词典中的潜在单词之间的冲突:
- 方法:
- Lexicon-Based CNNs:采取CNN对字符特征进行编码,感受野大小为2提取bi-gram特征,堆叠多层获得multi-gram信息;同时采取注意力机制融入词汇信息(word embed);
- Refining Networks with Lexicon Rethinking:由于上述提到的词汇信息冲突问题,LR-CNN采取rethinking机制增加feedback layer来调整词汇信息的权值:具体地,将高层特征作为输入通过注意力模块调节每一层词汇特征分布,利用这种方式来利用高级语义来完善嵌入单词的权重并解决潜在单词之间的冲突。
- 【关于 CGN 】那些你不知道的事
- 动机
- 中文命名实体识别中,词边界 问题;
- 如何 引入 词边界信息:
- pipeline:CWS -> NER
- CWS 和 NER 联合学习
- 利用 词典 自动构建
- 优点:比 CWS 标注数据 更容易获得
- 问题:
- 第一个挑战是整合自我匹配的词汇词;
- 举例:“北京机场” (Beijing Airport) and “机场” (Airport) are the self-matched words of the character “机” (airplane)
- 第二个挑战是直接整合最接近的上下文词汇词;
- 举例:by directly using the semantic knowledge of the nearest contextual words “离开” (leave), an “I-PER” tag can be predicted instead of an “I-ORG” tag, since “希尔顿” (Hilton Hotels) cannot be taken as the subject of the verb “离开”
- 论文思路:
- character-based Collaborative Graph:
- encoding layer:
- 句子信息:
- s1:将 char 表示为 embedding;
- s2:利用 biLSTM 捕获 上下文信息
- lexical words 信息:
- s1:将 lexical word 表示为 embedding;
- 合并 contextual representation 和 word embeddings
- a graph layer:
- Containing graph (C-graph):
- 思路:字与字之间无连接,词与其inside的字之间有连接;
- 目的:帮助 字符 捕获 self-matched lexical words 的边界和语义信息
- Transition graph (T-graph):
- 思路:相邻字符相连接,词与其前后字符连接;
- 目的:帮助 字符 捕获 相邻 上下文 lexical 词 的 语义信息
- Lattice graph (L-graph):
- 思路:通相邻字符相连接,词与其开始结束字符相连;
- 目的:融合 lexical knowledge
- GAT:
- 操作:针对三种图,使用Graph Attention Network(GAN)来进行编码。最终每个图的输出
-
其中 $G_k$ 为第k个图的GAN表示,因为是基于字符级的序列标注,所以解码时只关注字符,因此从矩阵中取出前n行作为最终的图编码层的输出。
- a fusion layer:
- 目的:融合 三种 graphs 中不同 的 lexical 知识
- a decoding layer:
- 【关于 LGN 】那些你不知道的事
- 动机:
- 在 char-base Chinese NER 中,同一个字符可能属于多个 lexicon word,存在 overlapping ambiguity 问题
- 举例(如下图)
- 字符[流] 可以 匹配词汇 [河流] 和 [流经] 两个词汇信息,但是 Lattice LSTM 只能利用 [河流];
- Lattice LSTM这种RNN结构仅仅依靠前一步的信息输入,而不是利用全局信息
- 举例
- 字符 [度]只能看到前序信息,不能充分利用 [印度河] 信息,从而造成标注冲突问题
- Ma等人于2014年提出,想解决overlapping across strings的问题,需要引入「整个句子中的上下文」以及「来自高层的信息」;然而,现有的基于RNN的序列模型,不能让字符收到序列方向上 remain characters 的信息;
- 方法:
- Graph Construction and Aggregation
- Graph Construction
- Local Aggregation
- Global Aggregation
- Recurrent-based Update Module
- 【关于 FLAT】 那些你不知道的事
- 动机
- 方法一:设计一个动态框架,能够兼容词汇输入;
- 代表模型:
- Lattice LSTM:利用额外的单词单元编码可能的单词,并利用注意力机制融合每个位置的变量节点
- LR-CNN:采用不同窗口大小的卷积核来编码 潜在词
- 问题:
- RNN 和 CNN 难以解决长距离依赖问题,它对于 NER 是有用的,例如: coreference(共指)
- 无法充分利用 GPU 的并行计算能力
- 方法二:将 Lattice 转化到图中并使用 GNN 进行编码:
- 代表模型
- Lexicon-based GN(LGN)
- Collaborative GN(CGN)
- 问题
- 虽然顺序结构对于NER仍然很重要,并且 Graph 是一般的对应物,但它们之间的差距不可忽略;
- 需要使用 LSTM 作为底层编码器,带有顺序感性偏置,使模型变得复杂。
- 方法:将Lattice结构展平,将其从一个有向无环图展平为一个平面的Flat-Lattice Transformer结构,由多个span构成:每个字符的head和tail是相同的,每个词汇的head和tail是skipped的。
-
【关于 ACL 2019 中的NER】那些你不知道的事
-
【关于 EMNLP 2019 中的NER】那些你不知道的事
- 【关于 自适应Focal Loss和知识蒸馏的文档级关系抽取】 那些的你不知道的事
- 论文:Document-Level Relation Extraction with Adaptive Focal Loss and Knowledge Distillation
- 发表会议:ACL 2022
- 论文地址:https://arxiv.org/abs/2203.10900
- github:https://github.com/tonytan48/KD-DocRE
- 论文动机:
- 大部分文档级别的实体关系横跨多个句子,关系抽取模型需要捕捉更长的上下文信息;
- 同一文档中包含大量实体,文档级别关系抽取需要同时抽取所有实体间的关系,其复杂度与文档中的实体数成平方关系,分类过程中存在大量的负样本;
- 文档级别关系抽取的样本类别属于长尾分布。以清华大学发布的 DocRED 数据集为例,频率前十的关系占到了所有关系的 60%,而剩下的 86 种关系只占全部关系三元组的 40%;
- 由于文档级别的数据标注任务较难,现有的数据集中人工标注的训练数据十分有限。大量的训练数据为远程监督[2]的训练数据,而远程监督的数据中存在大量的噪音,限制模型的训练。
- 论文方法:
- 提出了一个包含三个新组件的 DocRE 半监督框架。
- 首先,我们使用轴向注意力模块来学习实体对之间的相互依赖关系,从而提高了两跳关系的性能。
- 其次,我们提出了一种自适应焦点损失来解决 DocRE 的类不平衡问题。
- 最后,我们使用知识蒸馏来克服人工注释数据和远程监督数据之间的差异。
- 实验结果:对两个 DocRE 数据集进行了实验。我们的模型始终优于强大的基线,其性能在 DocRED 排行榜上超过了之前的 SOTA 1.36 F1 和 1.46 Ign_F1 分数。
- 【关于 RelationPrompt】 那些的你不知道的事
- 论文:RelationPrompt: Leveraging Prompts to Generate Synthetic Data for Zero-Shot Relation Triplet Extraction
- 发表会议:ACL 2022
- 论文地址:https://arxiv.org/abs/2203.09101
- github:https://github.com/declare-lab/RelationPrompt 【未更新】
- 动机:尽管关系提取在构建和表示知识方面很重要,但很少有研究集中在推广到看不见的关系类型。
- 论文方法:
- 介绍了零样本关系三元组提取(ZeroRTE)的任务设置,以鼓励对低资源关系提取方法的进一步研究。给定一个输入句子,每个提取的三元组由头部实体、关系标签和尾部实体组成,其中在训练阶段看不到关系标签。
- 为了解决 ZeroRTE,建议通过提示语言模型生成结构化文本来合成关系示例。具体来说,我们统一语言模型提示和结构化文本方法来设计结构化提示模板,用于在以关系标签提示(RelationPrompt)为条件时生成合成关系样本。
- 为了克服在句子中提取多个关系三元组的局限性,设计了一种新颖的三元组搜索解码方法。
- 实验结果:在 FewRel 和 Wiki-ZSL 数据集上的实验显示了 RelationPrompt 对 ZeroRTE 任务和零样本关系分类的有效性。
- 【关于 Double Graph Based Reasoning for Document-level Relation Extraction】 那些的你不知道的事
- 【关于 ATLOP】 那些的你不知道的事
- 论文:Document-Level Relation Extraction with Adaptive Thresholding and Localized Context Pooling
- 发表会议:AAAI
- 论文地址:https://arxiv.org/abs/2010.11304
- github:https://github.com/wzhouad/ATLOP
- 论文动机:
- 对于文档级RE,一个文档包含多个实体对,需要同时对它们之间的关系进行分类 【语句级RE只包含一对实体对】
- 对于文档级RE,一个实体对可以在与不同关系关联的文档中多次出现【对于句子级RE,每个实体对只能出现一个关系】 -> 多标签问题
- 目前对于文档关系抽取主流的做法是采用基于graph的方法来做,但是很多基于BERT的工作也能够得到很好的结果,并且在基于graph的模型的实验部分,也都证明了BERT以及BERT-like预训练模型的巨大提升,以至于让人怀疑是否有必要引入GNN?作者发现如果只用BERT的话,那么对于不同的entity pair,entity的rep都是一样的,这是一个很大的问题,那是否能够不引入graph的方式来解决这个问题呢?
- 论文方法:
- localized context pooling
- 解决问题:解决了 using the same entity embedding for allentity pairs 问题
- 方法:使用与当前实体对相关的额外上下文来增强 entity embedding。不是从头开始训练一个new context attention layer ,而是直接将预先训练好的语言模型中的注意头转移到实体级的注意上
- adaptive thresholding
- 解决问题:问题 1 的 多实体对问题 和 问题 2 实体对存在多种关系问题
- 方法:替换为先前学习中用于多标签分类的全局阈值,该阈值为可学习的依赖实体的阈值。
- 【关于 MLBiNet】那些你不知道的事
- 论文:MLBiNet: A Cross-Sentence Collective Event Detection Network
- 会议: ACL2021
- 论文下载地址:https://arxiv.org/pdf/2105.09458.pdf
- 论文代码:https://github.com/zjunlp/DocED
- 动机:跨句事件抽取旨在研究如何同时识别篇章内多个事件
- 论文方法:论文将其重新表述为 Seq2Seq 任务,并提出了一个多层双向网络 (Multi-Layer Bidirectional Network,MLBiNet) 来 融合跨句语义和关联事件信息,从而增强内各事件提及的判别
- 论文思路: 在解码事件标签向量序列时
- 首先,为建模句子内部事件关系,我们提出双向解码器用于同时捕捉前向和后向事件依赖;
- 然后,利用信息聚合器汇总句子语义和事件提及信息;
- 最后,通过迭代多个由双向解码器和信息聚合器构造的单元,并在每一层传递邻近句子的汇总信息,最终感知到整个文档的语义和事件提及信息。
- 【关于 新词发现】 那些你不知道的事
- 【关于 AutoPhrase】那些你不知道的事
- 论文:AutoPhrase: Automated Phrase Mining from Massive Text Corpora
- 会议:IEEE
- 论文地址:https://arxiv.org/abs/1702.04457
- 源码 Python 版本:https://github.com/luozhouyang/AutoPhraseX
- 什么是 Phrase Mining?
- 答:Phrase Mining 作为文本分析的基本任务之一,旨在从文本语料库中提取高质量的短语。
- hrase Mining 有何用途?
- 短语挖掘在各种任务中都很重要,例如信息提取/检索、分类法构建和主题建模。
- Phrase Mining 现状?
- 大多数现有方法依赖于复杂的、训练有素的语言分析器,因此在没有额外但昂贵的适应的情况下,可能在新领域和流派的文本语料库上表现不佳。虽然也有一些数据驱动的方法来从大量特定领域的文本中提取短语。
- Phrase Mining 存在问题?
- 非 自动化
- 需要人类专家来设计规则或标记短语
- 依赖于 语言分析器
- 应用到新的领域效果不好
- 论文方法 ?
- Robust Positive-Only Distant Training:使用wiki和freebase作为显眼数据,根据知识库中的相关数据构建Positive Phrases,根据领域内的文本生成Negative Phrases,构建分类器后根据预测的结果减少负标签带来的噪音问题。
- POS-Guided Phrasal Segmentation:使用POS词性标注的结果,引导短语分词,利用POS的浅层句法分析的结果优化Phrase boundaries。
- 论文效果 ?
- AutoPhrase可以支持任何语言,只要该语言中有通用知识库。与当下最先进的方法比较,新方法在跨不同领域和语言的5个实际数据集上的有效性有了显著提高。
- 【关于 知识图谱 】 那些的你不知道的事
- 一、知识图谱简介
- 1.1 引言
- 1.2 什么是知识图谱呢?
- 1.2.1 什么是图(Graph)呢?
- 1.2.2 什么是 Schema 呢?
- 1.3 知识图谱的类别有哪些?
- 1.4 知识图谱的价值在哪呢?
- 二、怎么构建知识图谱呢?
- 2.1 知识图谱的数据来源于哪里?
- 2.2 信息抽取的难点在哪里?
- 2.3 构建知识图谱所涉及的技术?
- 2.4、知识图谱的具体构建技术是什么?
- 2.4.1 实体命名识别(Named Entity Recognition)
- 2.4.2 关系抽取(Relation Extraction)
- 2.4.3 实体统一(Entity Resolution)
- 2.4.4 指代消解(Disambiguation)
- 三、知识图谱怎么存储?
- 四、知识图谱可以做什么?
- 爱奇艺知识图谱落地实践
- 原文地址:领域应用 | 完备的娱乐行业知识图谱库如何建成?爱奇艺知识图谱落地实践
- 构建流程
- 知识表示和建模:自顶向下的建模方式
- 数据模式(schema)定义方式:
- 基于 RDF(Resource Description Framework) 三元组
- RDFS(RDF Schema) 的规则
- 知识获取
- 实体分类
- 动机:主要针对百度百科的数据,因为百度百科的数据没有类别信息
- 思路:
- 构建基于规则池的分类器,生成训练数据,训练DNN模型(self-attention)文本分类模型;
- DNN分类器与规则分类器互相扩充迭代(一到两轮),最终线上使用规则分类器。
- 实体抽取
- 知识融合
- 流程:
- 首先我们所有来源的实体数据都会进入原始实体库(RawEntity库),并且对原始表中的数据建立索引。
- 当一个原始实体rawEntity入最终实体库之前,要在原始实体库中找是否有其它原始实体和rawEntity实际上是同一个实体。步骤:
- 首先在索引中根据名字、别名等字段查询出若干个可能是相同实体的候选列表,这个步骤的目的是减少接下来流程的计算量。
- 然后经过实体判别模型,根据模型得分识别出待合并对齐的原始实体;
- 最后经过属性融合模型,将各原始实体的属性字段进行融合,生成最终的实体。
- 这个流程中的合并判断模型实际上是通过机器学习训练生成的二分类器。
- 知识存储
- 【关于 Low-resource Cross-lingual Entity Linking】 那些你不知道的事
- 【关于 GENRE】 那些你不知道的事
- 论文名称:AUTOREGRESSIVE ENTITY RETRIEVAL
- 论文地址:https://openreview.net/pdf?id=5k8F6UU39V
- 来源:ICLR 2021
- 论文代码:https://github.com/facebookresearch/GENRE
- 介绍:实体是我们表示和聚合知识的中心。例如,维基百科等百科全书是由实体构成的(例如,一篇维基百科文章)。检索给定查询的实体的能力是知识密集型任务(如实体链接和开放域问答)的基础。理解当前方法的一种方法是将分类器作为一个原子标签,每个实体一个。它们的权重向量是通过编码实体元信息(如它们的描述)产生的密集实体表示。
- 缺点:
- (i)上下文和实体的亲和力主要是通过向量点积来获取的,可能会丢失两者之间的细粒度交互;
- (ii)在考虑大型实体集时,需要大量内存来存储密集表示;
- (iii)必须在训练时对一组适当硬的负面数据进行二次抽样[。
- 工作内容介绍:在这项工作中,我们提出了第一个 GENRE,通过生成其唯一的名称,从左到右,token-by-token 的自回归方式和条件的上下文。
- 这使得我们能够缓解上述技术问题,
- (i)自回归公式允许我们直接捕获文本和实体名称之间的关系,有效地交叉编码两者 ;
- (ii)由于我们的编码器-解码器结构的参数随词汇表大小而不是词汇量大小而缩放,因此内存足迹大大减少实体计数;
- (iii)准确的softmax损失可以有效地计算,而无需对负数据进行子采样。
- 实验结果:我们展示了该方法的有效性,在实体消歧、端到端实体链接和文档检索任务上对20多个数据集进行了实验,在使用竞争系统内存占用的一小部分的情况下,获得了最新的或非常有竞争力的结果。他们的实体,我们只需简单地指定新的名称,就可以添加
- 【关于KGQA 】 那些的你不知道的事
- 【关于 Multi-hopComplexKBQA 】 那些你不知道的事
- 【关于 Complex KBQA】 那些你不知道的事
- 论文:A Survey on Complex Knowledge Base Question Answering:Methods, Challenges and Solutions
- 会议:IJCAI'2021
- 论文地址:https://www.ijcai.org/proceedings/2021/0611.pdf
- 动机:
- 相比仅包含单个关系事实的简单问题,复杂问题通常有以下几个特征
- 需要在知识图谱中做多跳推理 (multi-hop reasoning)
- 需要考虑题目中给的限制词 (constrained relations)
- 需要考虑数字运算的情况 (numerical operations)
- 基于语义解析的方法还是信息检索的方法都将遇到新的挑战:
- 传统方法无法支撑问题的复杂逻辑
- 复杂问题包含了更多的实体,导致在知识图谱中搜索空间变大
- 两种方法都将问题理解作为首要步骤
- 通常 Complex KBQA 数据集缺少对正确路径的标注
- 预测答案两类主流的方法
- 基于语义解析(SP-based)的方法
- 问题理解 (question understanding) 模块
- 逻辑解析 (logical parsing) 模块
- 知识图谱实例化 (KB grounding) 模块
- 知识执行 (KB execution) 模块
- 基于信息检索(IR-based)的方法
- 子图构建 (retrieval source construction) 模块
- 问题表达 (question representation) 模块
- 基于图结构的推理 (graph based reasoning) 模块
- 答案排序 (answer ranking) 模块
- 【关于 子图检索增强的知识图谱问答方法】 那些你不知道的事
-
【关于Neo4j】 那些的你不知道的事
- 一、Neo4J 介绍与安装
- 1.1 引言
- 1.2 Neo4J 怎么下载?
- 1.3 Neo4J 怎么安装?
- 1.4 Neo4J Web 界面 介绍
- 1.5 Cypher查询语言是什么?
- 二、Neo4J 增删查改篇
- 2.1 引言
- 2.2 Neo4j 怎么创建节点?
- 2.3 Neo4j 怎么创建关系?
- 2.4 Neo4j 怎么创建 出生地关系?
- 2.5 Neo4j 怎么查询?
- 2.6 Neo4j 怎么删除和修改?
- 三、如何利用 Python 操作 Neo4j 图数据库?
- 3.1 neo4j模块:执行CQL ( cypher ) 语句是什么?
- 3.2 py2neo模块是什么?
- 四、数据导入 Neo4j 图数据库篇
-
【关于 Neo4j 索引】那些你不知道的事
【关于 NLP Trick】那些你不知道的事
【关于 Dropout】那些你不知道的事
- 【关于 R-Drop】 那些你不知道的事
- 论文:R-Drop: Regularized Dropout for Neural Networks
- 论文下载地址:https://arxiv.org/abs/2106.14448
- 论文代码:https://github.com/dropreg/R-Drop
- 论文动机:
- 由于深度神经网络非常容易过拟合,因此 Dropout 方法采用了随机丢弃每层的部分神经元,以此来避免在训练过程中的过拟合问题。**正是因为每次随机丢弃部分神经元,导致每次丢弃后产生的子模型都不一样,所以 Dropout 的操作一定程度上使得训练后的模型是一种多个子模型的组合约束。**基于 Dropout 的这种特殊方式对网络带来的随机性,研究员们提出了 R-Drop 来进一步对(子模型)网络的输出预测进行了正则约束。
- 论文方法:与传统作用于神经元(Dropout)或者模型参数(DropConnect)上的约束方法不同,R-Drop 作用于模型的输出层,弥补了 Dropout 在训练和测试时的不一致性。简单来说就是在每个 mini-batch 中,每个数据样本过两次带有 Dropout 的同一个模型,R-Drop 再使用 KL-divergence 约束两次的输出一致。
- 作用:R-Drop 约束了由于 Dropout 带来的两个随机子模型的输出一致性。
- 【关于 生成对抗网络 GAN 】那些的你不知道的事
- 【关于 FreeLB 】 那些的你不知道的事
- 论文名称: FreeLB: Enhanced Adversarial Training for Language Understanding 加强语言理解的对抗性训练
- 动机:对抗训练使保留标签的输入扰动的最大风险最小,对于提高语言模型的泛化能力是有效的。
- 方法:提出了一种新的对抗性训练算法—— freeb,它通过在字嵌入中添加对抗性的干扰,最小化输入样本周围不同区域内的对抗性风险,从而提高嵌入空间的鲁棒性和不变性。
- Unsupervised Data Augmentation (UDA)
- 【关于 UDA】 那些你不知道的事
- 阅读理由:UDA(Unsupervised Data Augmentation 无监督数据增强)是Google在2019年提出的半监督学习算法。该算法超越了所有现有的半监督学习方法,并实现了仅使用极少量标记样本即可达到使用大量标记样本训练集的精度。
- 动机: 深度学习的模型训练通常依赖大量的标签数据,在只有少量数据上通常表现不好;
- 思路:提出了一种基于无监督数据的数据增强方式UDA(Unsupervised Data Augmentation)。UDA方法生成无监督数据与原始无监督数据具备分布的一致性,而以前的方法通常只是应用高斯噪声和dropout噪声(无法保证一致性)。UDA方法利用了一种目前为止最优的方法生成更加“真实”的数据。
- 优点:使用这种数据增强方法,在极少量数据集上,六种语言任务和三种视觉任务都得到了明显的提升。
- 【关于 “脏数据”处理】那些你不知道的事
- 一、动机
- 1.1 何为“脏数据”?
- 1.2 “脏数据” 会带来什么后果?
- 二、“脏数据” 处理篇
- 2.1 “脏数据” 怎么处理呢?
- 2.2 置信学习方法篇
- 2.2.1 什么是 置信学习方法?
- 2.2.2 置信学习方法 优点?
- 2.2.3 置信学习方法 怎么做?
- 2.2.4 置信学习方法 怎么用?有什么开源框架?
- 2.2.5 置信学习方法 的工作原理?
-
【关于 FAQ Trick】那些你不知道的事
- 一、动机
- 1.1 问答系统的动机?
- 1.2 问答系统 是什么?
- 二、FAQ 检索式问答系统介绍篇
- 2.1 FAQ 检索式问答系统 是 什么?
- 2.2 query 匹配标准 QA 的核心是什么?
- 三、FAQ 检索式问答系统 方案篇
- 3.1 常用 方案有哪些?
- 3.2 为什么 QQ 匹配比较常用?
- 3.2.1 QQ 匹配的优点有哪些?
- 3.2.2 QQ 匹配的语义空间是什么?
- 3.2.3 QQ 匹配的语料的稳定性是什么?
- 3.2.4 QQ 匹配的业务回答与算法模型的解耦是什么?
- 3.2.5 QQ 匹配的新问题发现与去重是什么?
- 3.2.6 QQ 匹配的上线运行速度是什么?
- 3.3 QQ 匹配一般处理流程是怎么样? 【假设 标准问题库 已处理好】
- 四、FAQ 标准问题库构建篇
- 4.1 如何发现 FAQ 中标准问题?
- 4.2 FAQ 如何做拆分?
- 4.3 FAQ 如何做合并?
- 4.4 FAQ 标准库如何实时更新?
- 4.5 FAQ 知识库搭建原则有哪些?
- 4.6 FAQ 知识库应该具备哪些特点?
- 4.7 FAQ 知识库应该怎么从零构建?
- 4.8 FAQ 标准问题库答案如何优化?
- 4.9 FAQ 怎样发现未能解决客户的问题?
-
【关于 Robust Industry-scale Question Answering System】 那些你不知道的事
- 论文:Towards building a Robust Industry-scale Question Answering System
-论文地址:https://www.aclweb.org/anthology/2020.coling-industry.9.pdf
- 会议:COLING 2020
- 工业规模的 NLP 系统需要两个功能。
-
- 鲁棒性:“零样本迁移学习”(ZSTL) 的性能值得称道;
-
- 效率:系统必须高效训练并即时响应。
- 论文方法:介绍了一种称为GAAMA(Go Ahead Ask Me Anything)的生产模型的发展,它具有上述两个特征:
- 为了稳健性,它在最近引入的Natural Questions(NQ)数据集上进行训练。 NQ 对 SQuAD 等旧数据集提出了额外的挑战:
- (a) QA 系统需要阅读和理解整篇 Wikipedia 文章而不是一小段文章;
- (b) NQ 在构建过程中不会受到观察偏差的影响,从而减少问题和问题之间的词汇重叠文章。
- GAAMA 由Attention-over-Attention、注意力头的多样性、分层迁移学习和合成数据增强组成,同时计算成本低廉。
- 实验结果:
- 建立在强大的 BERTQA 模型之上,GAAMA 在 F1 中比 NQ 上的行业规模最先进 (SOTA) 系统提供了 2.0% 的绝对提升;
- GAAMA 将零样本转移到了看不见的现实生活和重要领域,因为它在两个基准上产生了可观的性能:BioASQ 和新引入的 CovidQA 数据集。
-
【关于 LCNQA】那些你不知道的事
- 论文名称:Lattice CNNs for Matching Based Chinese Question Answering
-
LSTM-based Deep Learning Models for Non-factoid Answer Selection
-
【关于 Denoising Distantly Supervised ODQA】那些你不知道的事
- 论文名称:Denoising Distantly Supervised Open-Domain Question Answering
-
FAQ retrieval using query-question similarity and BERT-based query-answer relevance
-
【DC-BERT】 那些的你不知道的事
- 论文名称:DC-BERT : DECOUPLING QUESTION AND DOCUMENT FOR EFFICIENT CONTEXTUAL ENCODING
- 会议:SIGIR2020
- 常用方法:
- 遵循“检索和读取”管道,并使用基于BERT的重新排序器对检索到的文档进行筛选,
- 然后再将其馈送到阅读器模块中。
- BERT检索器将问题和每个检索到的文档的连接作为输入。
- 问题:
- 无法处理传入问题的高吞吐量,每个问题都有大量检索到的文档;
- 论文方法:具有双重BERT模型的解耦上下文编码框架:
- 一个在线BERT,仅对问题进行一次编码;
- 一个正式的BERT,对所有文档进行预编码并缓存其编码;
- 【关于 ChatGPT】 那些你不知道的事
- 思路:
- ChatGPT 阶段一:冷启动阶段的监督策略模型
- ChatGPT 阶段二:训练回报模型(Reward Model,RM)
- ChatGPT 阶段三:采用强化学习来增强预训练模型的能力
- 【关于 TC_Bot(End-to-End Task-Completion Neural Dialogue Systems) 】那些你不知道的事
- 【关于 DF-Net 】 那些的你不知道的事
- 论文:Dynamic Fusion Network for Multi-Domain End-to-end Task-Oriented Dialog
- 发表会议:ACL2020
- 论文地址:https://arxiv.org/abs/2004.11019
- github:https://github.com/LooperXX/DF-Netmd
- 论文动机:
- 依赖大量标准数据:端到端的模型依赖于大量的标注数据,这就导致了模型在一个新拓展的领域上很难利用。
- 对于一个新的领域,总是很难收集足够多的数据。这就使得将知识从具有充足标注数据的源领域迁移到一个只有少量标注数据的新领域成为非常重要的问题。
- 前沿工作总结
- 第一类:简单地结合多领域的数据集进行训练,如图 (a)
- 优点:隐含地提取共享的特征
- 缺点:很难有效捕捉领域特有的知识
- 第二类是在各个领域单独地训练模型,如图 (b)
- 优点:能够很好地捕捉领域特有的知识;
- 缺点:却忽视了不同领域间共有的知识。
- 第三类:通过建模不同领域间知识的连接来解决已有方法的局限。已有的一个简单的baseline如图 (c),将领域共享的和领域私有的特征合并在一个共享-私有 (shared-private) 架构中。
- 优点:区分了共享以及私有的知识
- 缺点:
- 一是面对一个几乎不具备数据的新领域时,私有模块无法有效提取对应的领域知识;
- 二是这个架构忽略了一些领域子集间细粒度的想关性(比如和天气领域相比,导航领域和规划领域更相关)。
- 思路:
- shared-private 架构:学习共享的知识以及对应的领域特有特征;
- 动态融合网络:动态地利用所有领域间的相关性提供给下一步细粒度知识迁移;
- 对抗训练 (adversarial training) :促使共享模块生成领域共享特征
- 【关于 rasa 安装 】那些你不知道的事
- 【关于 rasa 基本架构 】那些你不知道的事
- 【关于 rasa中文对话系统】那些你不知道的事
- 【关于 rasa中文对话系统构建】那些你不知道的事
- 【关于 rasa->NLU 】那些你不知道的事
- 【关于 rasa -> Core -> FormAction 】那些你不知道的事
- 【关于 rasa -> Core -> Stories 】那些你不知道的事
- 【关于 rasa -> Core -> Action 】那些你不知道的事
- 【关于 Bertsum】那些的你不知道的事 【推荐阅读】
- 论文名称:Fine-tune BERT for Extractive Summarization
- 会议:EMNLP2019
- Bert 在抽取式文本摘要中的应用
- 问题:
- 如何获得每个句子向量?
- 如何将向量用于二分类问题?
- 如何判断每个句子的去留?
- 思路:定义文档 $d=[sent_1,sent_2,...,sent_m]$,$sent_i$ 表示 文档中的第$i$个句子,Extractive summarization 定义为 给每个$sent_i$分配一个标签$y_i∈{0,1}$,用于判断该句子是否包含于 摘要 中。
- 方法介绍
- Extractive Summarization with BERT
- 动机:
- Bert 作为 一个 masked-language model,输出向量基于标记而不是句子;
- Bert 只包含 两个标签(sentence A or sentence B),而不是多个句子;
- 方法
- Encoding Multiple Sentences:在每个句子之前插入一个[CLS] token**【bert 就开头一个】**,在每个句子之后插入一个[SEP] token
- Interval Segment Embeddings
例如:对于$[sent_1,sent_2,sent_3,sent_4,sent_5]$,我们将分配[E_A,E_B,E_A,E_B,E_A]
$sent_i$ 由向量 $T_i$ 表示,$T_i$是来自顶部BERT层的第$i$个[CLS]符号的向量。
- 【关于Pointer-Generator Networks 指针网络】 那些的你不知道的事
- 论文名称:Get To The Point: Summarization with Pointer-Generator Networks
- 会议:ACL2017
- 动机:
- 文本摘要类别
- extractive 抽取式
- 方式:直接从原文抽取一些段落
- 优点:简单
- 问题:无法生成高质量的摘要,因为不具备一些复杂的摘要能力(如释义(paraphasing), 概括(generalization), 与现实世界知识的融合(incorporation of real-world knowledge))
- abstractive 生成式
- 方式:根据长文本 生成 摘要
- 代表:seq2sq架构
- 问题:
- 难以准确复述原文细节;
- 无法处理原文中的未登录词(OOV);
- 在生成的摘要中存在一些重复的部分;
- 方法:
- 编码器(encoder)
- 方式:BiLSTM
- 作用:将文章中每个词的词向量编码为 隐状态 ht
- 解码器(decoder)
- 方式:单向 LSTM
- 作用:每一时刻 t,将上一时刻 生成 的 词的词向量作为输入,得到 Decoder Hidden State st,该状态被用于计算attention分布和词的预测
- Attention
- 作用:每个时间步t,考虑当前序列的注意力分布,注意力分布用于生成编码器隐藏状态的加权总和,转化为上下文向量,与解码器t时刻的隐状态进行concatenated然后喂到两个线性层来计算词汇分布P(一个固定维度的向量,每个维度代表被预测词的概率,取argmax就能得到预测的单词)。
- 目的:告诉模型在当前步的预测过程中,原文中的哪些词更重要
- 【关于 SimCSE】 那些你不知道的事 【推荐阅读】
- 论文:SimCSE: Simple Contrastive Learning of Sentence Embeddings
- 会议:
- 论文地址:https://arxiv.org/abs/2104.08821
- 论文代码:https://github.com/princeton-nlp/SimCSE
- 思路:
- 首先描述了一种无监督方法,它采用输入句子并在对比目标中预测自己,仅将标准 dropout 用作噪声。这种简单的方法效果出奇地好,与以前的受监督计数器部件相当。我们假设 dropout 充当最小数据增强的大小,删除它会导致表示崩溃。
- 然后,我们从最近从自然语言推理 (NLI) 数据集中学习句子嵌入的成功中汲取灵感,并将 NLI 数据集中的注释对合并到对比学习中,方法是使用“蕴含”对作为正例,将“矛盾”对作为硬负例。
- 实验结果:
- 作者评估了标准语义文本相似性(STS)任务上的 SimCSE,使用 BERT-base 的无监督和监督模型分别平均实现了 74.5% 和 81.6% 的 Spearman 相关性,与之前的最佳结果相比,分别提高了 7.9 和 4.6点。
- 作者还表明,对比学习理论上将嵌入分布得更均匀,并且在有监督信号可用时,它可以更好地对齐正样本。
- 【关于 BERT-flow 】那些你不知道的事
- 论文:On the Sentence Embeddings from Pre-trained Language Models
- 会议:EMNLP2020
- 论文地址:https://arxiv.org/pdf/2011.05864.pdf
- 论文代码:https://github.com/bohanli/BERT-flow
- 前沿:像BERT这样的经过预训练的上下文表示在自然语言处理中取得了巨大的成功;
- 动机:已经发现,未经微调的来自预训练语言模型的句子嵌入很难捕获句子的语义;
- 论文方法:在本文中,我们认为BERT嵌入中的语义信息没有得到充分利用。我们首先从理论上揭示了掩盖的语言模型预训练目标与语义相似性任务之间的理论联系,然后从经验上分析了BERT句子的嵌入。
- 实验结果:我们发现BERT总是诱发非光滑的各向异性语义空间,这会损害其语义相似性的表现。为解决此问题,我们建议通过将非正则化的流量标准化来将各向异性的语义嵌入分布转换为平滑的各向异性高斯分布。实验结果表明,我们提出的BERT流方法在各种语义文本相似性任务上比最先进的句子嵌入方法具有明显的性能提升。
- 【关于 Sentence-BERT】 那些你不知道的事
- 项目地址:https://github.com/km1994/nlp_paper_study
- 论文:Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
- github:https://github.com/UKPLab/sentence-transformers
- 动机:
- 方法一:BERT使用交叉编码器:将两个句子传递到变压器网络,并预测目标值;
- 问题: 由于太多可能的组合,此设置不适用于各种对回归任务。 在n = 10000个句子的集合中找到相似度最高的对需要BERT n·(n-1)/ 2 = 49 995 000推理计算。 在现代V100 GPU上,这大约需要65个小时。 类似地,对于一个新问题,找到Quora的超过4,000万个现有问题中最相似的一个可以建模为与BERT的成对比较,但是,回答单个查询将需要50多个小时。
- 方法二:解决聚类和语义搜索的常用方法是将每个句子映射到向量空间,以使语义相似的句子接近。 研究人员已开始将单个句子输入BERT,并得出固定大小的句子嵌入。 最常用的方法是平均BERT输出层(称为BERT嵌入)或通过使用第一个令牌的输出([CLS]令牌);
- 问题:就像我们将要展示的那样,这种常规做法产生的句子嵌入效果很差,通常比平均GloVe嵌入效果更差。
- 论文方法:
- 我们开发了SBERT。 siamese network 体系结构使得可以导出输入句子的固定大小矢量。 使用余弦相似度或Manhatten / Euclidean距离之类的相似度度量,可以找到语义上相似的句子。
- 存在问题解答:
- 【关于 语义相似度匹配任务中的 BERT】 那些你不知道的事 【推荐阅读】
- 阅读理由:BERT 在 语义相似度匹配任务 中的应用,可以由很多种方式,然而,你真的了解这些方式的区别和优缺点么?
- 动机:BERT 在 语义相似度匹配任务 中的应用,可以常用 Sentence Pair Classification Task:使用 [CLS]、cosine similairity、sentence/word embedding、siamese network 方法,那么哪种是最佳的方式呢?你是否考虑过呢?
- 【关于 DPR】 那些你不知道的事
- 论文名称:Dense Passage Retrieval for Open-Domain Question Answering
- 会议:EMNLP2020
- 阅读理由:双塔模型 第一次 引入 Bert
- 动机:双塔模型 第一次 引入 Bert
- 论文方法:
- 双塔模型,主要idea在于双塔使用了两个独立的BERT
- 【关于 Poly-Encoders】 那些你不知道的事
- 论文名称:Dense Passage Retrieval for Open-Domain Question Answering
- 会议:ICLR2020
- 动机:
- 为了解决上文提到的不能离线索引的问题,并兼顾性能;
- 如何让query和doc进行更为深入的交互?
- 论文方法:
- 本质:双塔模型。
- 主要创新点:
- 如何让query和doc进行更为深入的交互?
- 就是在query embedding的计算上,通过训练m个独立的encoder,把query编码成m个向量并求和,再在最后一层进行交互。
- 【关于 DC-BERT】 那些你不知道的事
- 论文名称:DC-BERT : DECOUPLING QUESTION AND DOCUMENT FOR EFFICIENT CONTEXTUAL ENCODING
- 阅读理由:Bert 在 QA 上面的应用
- 动机:Bert 无法处理传入问题的高吞吐量,每个问题都有大量检索到的文档;
- 论文方法:具有双重BERT模型的解耦上下文编码框架:
- 一个在线BERT,仅对问题进行一次编码;
- 一个正式的BERT,对所有文档进行预编码并缓存其编码;
- 【关于 SIGIR2020】 那些你不知道的事
- 论文名称:ColBERT: Efficient and Effective Passage Search via Contextualized Late Interaction over BERT
- 会议:ICLR2020
- 动机:
- 论文方法:
- 对query与doc在token-level的编码进行匹配计算,并通过MaxSim算符取出最大值并求和作为最终的分数
- 【关于 tBERT 】那些你不知道的事
- 【关于 DCSR】 那些你不知道的事
- 论文:《Sentence-aware Contrastive Learning for Open-Domain Passage Retrieval》
- 会议:ACL2022
- 论文地址:https://aclanthology.org/2022.acl-long.76.pdf
- 论文代码:https://github.com/chengzhipanpan/DCSR
- 动机:
- 每一个段落由多个句子组成,而每个句子对应的问题可能在语义上差别很大
-
- 「相似性传递」:对比学习框架的目标是使问题的向量表征与其对应的黄金段落的向量表征之间的相似性最大。而这种一对多的关系,会造成同一个段落中语义差异很大的不同问题之间的向量表征极其相似。
-
- 「样本即正亦负」:对比学习框架中大批次是一个很重要的参数,而这种一对多的关系,会造成一个批次中包含同一个段落对应的多个问题,导致一个段落对于相同问题即使正样本也是负样本。
- 思路:
- 正负例 构建
- 正例构建:对于给定问题 q,在批次内的正段落为 p;
- 简单负例获取:利用 BM25技术,针对问题 q 从检索库中,找到与其相关的负段落;
- 段落内负例获取:在正段落中,随机抽取一个不包含答案的句子。如果正段落不包含这样的句子,则从 N 中随机抽取一个简单负例做代替。
- 检索排序:
- 在检索中,计算问题向量和所有上下文句子向量之间的匹配分数,由于一篇段落中有多个句子,因此检索了前 100*k 个句子进行排序,其中 k 是所有段落中句子个数的平均数。
- 【关于 MPCNN】 那些你不知道的事
- 论文:Multi-Perspective Sentence Similarity Modeling with Convolution Neural Networks
- 【关于 RE2】 那些你不知道的事
- 论文:Simple and Effective Text Matching with Richer Alignment Features
- 动机: 可以使用多个序列间比对层构建更强大的模型。 代替基于单个对准过程的比较结果进行预测,具有多个对准层的堆叠模型将保持其中间状态并逐渐完善其预测。但是,由于底层特征的传播效率低下和梯度消失,这些更深的体系结构更难训练。
- 介绍:一种快速强大的神经体系结构,具有用于通用文本匹配的多个对齐过程。 我们对以前文献中介绍的文本匹配方法中许多慢速组件的必要性提出了质疑,包括复杂的多向对齐机制,对齐结果的大量提炼,外部句法特征或当模型深入时用于连接堆叠块的密集连接。 这些设计选择会极大地减慢模型的速度,并且可以用重量更轻且效果相同的模型代替。 同时,我们重点介绍了有效文本匹配模型的三个关键组成部分。 这些组件(名称为RE2代表)是以前的对齐特征(残差矢量),原始点向特征(嵌入矢量)和上下文特征(编码矢量)。 其余组件可能尽可能简单,以保持模型快速,同时仍能产生出色的性能。
- 【关于 DSSM】 那些你不知道的事
- 论文:Deep Structured Semantic Model
- 论文会议:CIKM2013
- 问题:语义相似度问题
- 字面匹配体现
- 召回:在召回时,传统的文本相似性如 BM25,无法有效发现语义类 Query-Doc 结果对,如"从北京到上海的机票"与"携程网"的相似性、"快递软件"与"菜鸟裹裹"的相似性
- 排序:在排序时,一些细微的语言变化往往带来巨大的语义变化,如"小宝宝生病怎么办"和"狗宝宝生病怎么办"、"深度学习"和"学习深度";
- 使用 LSA 类模型进行语义匹配,但是效果不好
- 思路:
- 利用 表示层 将 Query 和 Title 表达为低维语义向量;
- 通过 cosine 距离来计算两个语义向量的距离,最终训练出语义相似度模型。
- 优点
- 减少切词的依赖:解决了LSA、LDA、Autoencoder等方法存在的一个最大的问题,因为在英文单词中,词的数量可能是没有限制,但是字母 n-gram 的数量通常是有限的
- 基于词的特征表示比较难处理新词,字母的 n-gram可以有效表示,鲁棒性较强;
- 传统的输入层是用 Embedding 的方式(如 Word2Vec 的词向量)或者主题模型的方式(如 LDA 的主题向量)来直接做词的映射,再把各个词的向量累加或者拼接起来,由于 Word2Vec 和 LDA 都是无监督的训练,这样会给整个模型引入误差,DSSM 采用统一的有监督训练,不需要在中间过程做无监督模型的映射,因此精准度会比较高;
- 省去了人工的特征工程;
- 缺点
- word hashing可能造成冲突
- DSSM采用了词袋模型,损失了上下文信息
- 在排序中,搜索引擎的排序由多种因素决定,由于用户点击时doc的排名越靠前,点击的概率就越大,如果仅仅用点击来判断是否为正负样本,噪声比较大,难以收敛
- 【关于 ABCNN 】那些你不知道的事
- 论文:ABCNN: Attention-Based Convolutional Neural Network for Modeling Sentence Pairs
- 会议:TACL 2016
- 论文方法:采用了CNN的结构来提取特征,并用attention机制进行进一步的特征处理,作者一共提出了三种attention的建模方法
- 【关于 ESIM 】那些你不知道的事
- 论文:Enhanced LSTM for Natural Language Inference
- 会议:TACL2017
- 自然语言推理(NLI: natural language inference)问题:
- 即判断能否从一个前提p中推导出假设h
- 简单来说,就是判断给定两个句子的三种关系:蕴含、矛盾或无关
- 论文方法:
- 模型结构图分为左右两边:
- 左侧就是 ESIM,
- 右侧是基于句法树的 tree-LSTM,两者合在一起交 HIM (Hybrid Inference Model)。
- 整个模型从下往上看,分为三部分:
- input encoding;
- local inference modeling;
- inference composition;
- Prediction
- 【关于 BiMPM 】那些你不知道的事
- 论文:Bilateral multi-perspective matching for natural language sentences
- 会议:IJCAI2017
- 方法:
- Word Representation Layer:其中词表示层使用预训练的Glove或Word2Vec词向量表示, 论文中还将每个单词中的字符喂给一个LSTM得到字符级别的字嵌入表示, 文中使用两者构造了一个dd维的词向量表示, 于是两个句子可以分别表示为 P:[p1,⋯,pm],Q:[q1,⋯,qn].
- Context Representation Layer: 上下文表示层, 使用相同的双向LSTM来对两个句子进行编码. 分别得到两个句子每个时间步的输出.
- Matching layer: 对两个句子PP和QQ从两个方向进行匹配, 其中⊗⊗表示某个句子的某个时间步的输出对另一个句子所有时间步的输出进行匹配的结果. 最终匹配的结果还是代表两个句子的匹配向量序列.
- Aggregation Layer: 使用另一个双向LSTM模型, 将两个匹配向量序列两个方向的最后一个时间步的表示(共4个)进行拼接, 得到两个句子的聚合表示.
- Prediction Layer: 对拼接后的表示, 使用全连接层, 再进行softmax得到最终每个标签的概率.
- 【关于 DIIN 】那些你不知道的事
- 论文:Densely Interactive Inference Network
- 会议:TACL2017
- 模型主要包括五层:嵌入层(Embedding Layer)、编码层(Encoding Layer)、交互层(Interaction Layer )、特征提取层(Feature Extraction Layer)和输出层(Output Layer)
- 【关于 SLCVAE 安装】那些你不知道的事
- 【关于 ScriptWriter】那些的你不知道的事
- 论文:ScriptWriter: Narrative-Guided Script Generation
- 发表会议:ACL2020
- 论文地址:https://arxiv.org/abs/2005.10331
- github:https://github.com/DaoD/ScriptWriter
- 论文动机:如果人为提供一些参考信息(例如情节),能否进一步提高文本生成的质量?例如,在故事生成这一问题中,现有模型要从头考虑如何生成一整个故事,难度比较大,那如果人为提供一个故事线,是否可以提升模型的性能呢?
- 论文方法:
- 根据给定的情节和已有的台词上文生成后续台词。在这一模型中,我们设计了一个情节追踪模块,这一模块可以使模型根据已有的上文内容判断情节的表达情况,并在后续生成中更加关注未表达的情节。实验结果表明,情节的确可以帮助模型提高台词的生成质量,且相比于其他模型,ScriptWriter能够更有效地利用情节信息。
- 论文思路:
- 多层注意力机制:将情节、上文、候选回复表示为向量。
- 情节更新机制:使情节的表示包含更多未表达部分的情节信息。
- 抽取了三类匹配特征:
- (1)上文-回复匹配,其能够反映回复是否与上文连贯;
- (2)情节-回复匹配,其能够反映回复是否与情节相符;
- (3)上文-情节匹配,其能够隐式反映哪些情节已经被上文表达。
- 最后,这些匹配特征经过CNN的进一步抽取和聚集,再经过MLP得到最终的匹配得分。
- 【关于 GENIUS 】 那些的你不知道的事
- Difformer - 在嵌入空间上增强扩散模型来做文本生成
- 论文:Difformer: empowering diffusion models on the embedding space for text generation
- 发表会议:
- 论文地址:https://arxiv.org/pdf/2212.09412.pdf
- 论文动机:
- 问题:“连续数据空间”和“嵌入空间”之间有挑战存在。
- 问题一,embeddings的data distribution是可学习的,这可能会导致Loss function崩溃;
- 问题二,常用词和偏僻词的embeddings向量的范数(norm)是有区别的,如果追加同样的噪声,会得到次优的结果。
- 问题三,作者发现,normal level of noise (普通水平下的噪声)会导致模型的训练不充分问题。
- 三个核心模块:
- 一个额外的锚损失函数,anchor loss function,来稳定训练过程;
- 一个面向embedding的layer normalization,放到embedding layer之上,来对常用词和偏僻词的嵌入进行归一化到一个uniform scale(统一的刻度,统一的尺寸),从而可以消除他们的多尺度的影响;
- 一个给高斯噪声的噪声因子,noise factor,来提升增加的高斯噪声的刻度,来提升每一个扩散步上的,去噪目标的指导。
- 【关于 LCF】 那些的你不知道的事
- 论文名称:A Local Context Focus Mechanism for Aspect-Based Sentiment Classification
- 论文动机:没有考虑情感极性和局部上下文间关系
- LCF:利用自注意力机制同时捕获局部上下文特征和全局上下文特征,以推断 targeted aspect 的情感极性
- SRD:评估上下文词与 aspect 间的独立性,SRD对于弄清局部上下文具有重要意义,并且SRD阈值中的上下文单词的特征将得到保留和重点关注。
- CDM 和 CDW 层:强化 LCF,使其对 特殊 aspest 的局部上下文提供 更多 注意力。CDM层通过掩盖语义相对较少的上下文词的输出表示,将重点放在局部上下文上。 CDW 层根据 SRD 削弱语义相对较少的上下文词的特征;
- 【关于 中文分词】那些你不知道的事
- 一、什么是 中文分词?
- 二、为什么用使用 中文分词,直接用句子或字不好么?
- 三、中文分词 有哪些难点?
- 四、常用方法有哪些?
- 4.1 基于词典的中文分词方法
- 4.1.1 正向最大匹配法
- 4.1.2 负向最大匹配法
- 4.1.3 双向最大匹配法
- 4.2 基于N-gram语言模型的分词方法
- 4.3 基于规则的中文分词方法
- 【关于 DAAT 】 那些的你不知道的事
- 论文:Coupling Distant Annotation and Adversarial Training for Cross-Domain Chinese Word Segmentation
- 发表会议:ACL2020
- 论文地址:hhttps://arxiv.org/abs/2007.08186
- github:https://github.com/Alibaba-NLP/DAAT-CWS
- 动机:完全监督的神经方法在中文分词(CWS)的任务中取得了重大进展。将监督模型应用于域外数据时,其性能往往会急剧下降。
- 方法
- Distant annotation(DA)
- 目的:自动生成目标域内句子的分词结果
- 方法:是在不需要任何人工定义词典的情况下,自动对目标领域文本实现自动标注。
- 思路:
- 基本分词器:使用来自源域的标注数据训练,用于识别源域和目标域中常见的单词
- 特定领域的单词挖掘器:旨在探索目标特定于领域的单词
- 存在问题
- Adversarial Training(AT)
- 动机:为了降低噪声数据的影响,更好地利用源域数据,
- 方法:在源域数据集和通过Distant annotation构造的目标领域数据集上联合进行Adversarial training的方法。
- 优点:Adversarial training模块可以捕获特定领域更深入的特性,和不可知领域的特性。
- 【关于 GECToR】那些你不知道的事
- 动机:
- 由于 NMT-based GEC系统 的 核心是 seq2seq 结构,所以在部署的时候会遇到以下问题:
- 缓慢的推理速度;
- 需要大量的训练数据;
- 可解释性,从而使他们需要其他功能来解释更正,例如语法错误类型分类;
- 论文方法:提出了仅使用Transformer编码器的简单有效的GEC序列标注器。
- 论文思路:
- 系统在综合数据上进行了预训练;
- 然后分两个阶段进行了微调:
- 首先是错误的语料库;
- 其次是有错误和无错误的平行语料库的组合。
- 我们设计了自定义的字符级别转换,以将输入字符映射到纠正后的目标。
- 效果:
- 我们最好的单模型以及联合模型GEC标注器分别在CoNLL-2014测试集上F0.5达到65.3和66.5,在BEA-2019上F0.5达到72.4和73.6。模型的推理速度是基于Transformer的seq2seq GEC系统的10倍
- 【关于 tts】 那些你不知道的事
- 【关于 FastSpeech】 那些你不知道的事
- 动机:
- 推理阶段速度过慢(traditional Transformer虽然训练的速度很快,但是推理阶段仍然需要上一时间步的输出,无法做到真正的并行);
- 生成的语音不是鲁棒的,有一些单词会被跳过或者重复地生成(这一点笔者在实验的时候真的是深有体会啊,而造成这一原因主要是因为传统语音合成系统的Alignment是隐式的,在推断的过程中,存在着错误对齐的情况);
- 无法做到可控(这里笔者的可控应该主要指的是生成的语速方面,因为在Prosody的层面已经有工作做到了很好的效果)。
- 论文方法:
- Feed-Forward Transformer(图a)
- FFT Block
- Length Regulator
- Duration Predictor
- 【关于 FastSpeech2】 那些你不知道的事
- 动机:
-
- teacher-student的蒸馏过程非常复杂并且耗时;
-
- 从teacher模型attention中提取的时长预测不够准确;
-
- 用teacher模型预测的mel谱作为target,相比GT有信息损失从而导致结果音质受损。
- 论文方法:
-
- encoder将phoneme embedding转换成phoneme hidden seq;
-
- 然后设计了variance adaptor引入不同的声学特征信息;
-
- 最终decoder将adapted hidden seq并行地转换成mel谱。
- 【关于 VITS】 那些你不知道的事
- 【关于 BLIP-2 】那些你不知道的事
- BLIP-2 模型文档
- BLIP-2 论文链接
- 模型介绍:BLIP-2 通过在冻结的预训练图像编码器和冻结的预训练大语言模型之间添加一个轻量级 查询 Transformer (Query Transformer, Q-Former) 来弥合视觉和语言模型之间的模态隔阂 (modality gap)。在整个模型中,Q-Former 是唯一的可训练模块,而图像编码器和语言模型始终保持冻结状态。
- 【关于 OFA-Chinese】那些你不知道的事
- 论文标题:Unifying Architectures, Tasks, and Modalities Through a Simple Sequence-to-Sequence Learning Framework
- github :https://github.com/yangjianxin1/OFA-Chinese
- 介绍:OFA是由阿里达摩院发布的多模态预训练模型,OFA将各种模态任务统一于Seq2Seq框架中。如下图所示,OFA支持的下游任务包括但不限于Image Caption、Image Classification、 Image genaration、Language Understanding等等。
实战篇
重点推荐篇
会议收集篇
- ACL2020
- SIGIR2020
- 【关于 AAAI 】那些你不知道的事
- 一、AAAI 2021
- 1.1 情感分析
- 【Learning Modality-Specific Representations with Self-Supervised Multi-Task Learning for Multimodal Sentiment Analysis (Self-MM)】
- 【An Adaptive Hybrid Framework for Cross-Domain Aspect-Based Sentiment Analysis (AHF)】
- 【Bridging Towers of Multi-Task Learning with a Gating Mechanism for Aspect-Based Sentiment Analysis and Sequential Metaphor Identification ()】
- 【Human-Level Interpretable Learning for Aspect-Based Sentiment Analysis ()】
- 【A Joint Training Dual-MRC Framework for Aspect Based Sentiment Analysis ()】
- 【Quantum Cognitively Motivated Decision Fusion for Video Sentiment Analysis ()】
- 【Context-Guided BERT for Targeted Aspect-Based Sentiment Analysis ()】
- 【Segmentation of Tweets with URLs and its Applications to Sentiment Analysis ()】
- 【Segmentation of Tweets with URLs and its Applications to Sentiment Analysis ()】
- 1.2 命名实体识别
- 【Multi-Modal Graph Fusion for Named Entity Recognition with Targeted Visual Guidance (UMGF)】
- 【CrossNER: Evaluating Cross-Domain Named Entity Recognition ()】
- 【A Supervised Multi-Head Self-Attention Network for Nested Named Entity Recognition ()】
- 【Nested Named Entity Recognition with Partially-Observed TreeCRFs (Partially-Observed-TreeCRFs)】
- 【Continual Learning for Named Entity Recognition】
- 【Knowledge-Aware Named Entity Recognition with Alleviating Heterogeneity】
- 【Denoising Distantly Supervised Named Entity Recognition via a Hypergeometric Probabilistic Model】
- 【MTAAL: Multi-Task Adversarial Active Learning for Medical Named Entity Recognition and Normalization(MTAAL)】
- 1.3 关系抽取
- 【FL-MSRE: A Few-Shot Learning Based Approach to Multimodal Social Relation Extraction(L-MSRE)】
- 【Multi-View Inference for Relation Extraction with Uncertain Knowledge】
- 【GDPNet: Refining Latent Multi-View Graph for Relation Extraction(GDPNet)】
- 【Progressive Multi-Task Learning with Controlled information Flow for Joint Entity and Relation Extraction】
- 【Curriculum-Meta Learning for Order-Robust Continual Relation Extraction】
- 【Document-Level Relation Extraction with Reconstruction】
- 【Document-Level Relation Extraction with Adaptive Thresholding and Localized Context Pooling(ATLOP )】
- 【Entity Structure Within and Throughout: Modeling Mention Dependencies for Document Level Relation Extraction(SSAN)】
- 【Empower Distantly Supervised Relation Extraction with Collaborative Adversarial Training( MULTICAST)】
- 【Clinical Temporal Relation Extraction with Probabilistic Soft Logic Regularization and Global Inference(CTRL-PG)】
- 【A Unified Multi-Task Learning Framework for Joint Extraction of Entities and Relations】
- 1.4 事件抽取
- 【A Unified Multi-Task Learning Framework for Joint Extraction of Entities and Relations】
- 【What the Role Is vs. What Plays the Role: Semi-Supervised Event Argument Extraction via Dual Question Answering(DualQA)】
- 【Span-Based Event Coreference Resolution】
- 1.5 知识图谱
- 【Dual Quaternion Knowledge Graph Embeddings(DualE)】
- 【Type-Augmented Relation Prediction in Knowledge Graphs】
- 【ChronoR: Rotation Based Temporal Knowledge Graph Embedding】
- 【PASSLEAF: A Pool-Based Semi-Supervised Learning Framework for Uncertain Knowledge Graph Embedding】
- 【KG-BART: Knowledge Graph-Augmented Bart for Generative Commonsense Reasoning】
- 【Answering Complex Queries in Knowledge Graphs with Bidirectional Sequence Encoders】
- 【其他】
Elastrsearch 学习篇
竞赛篇
- 一、问答匹配任务
- 5. 新冠疫情相似句对判定大赛 【比赛地址】
- 5.1 赛题背景
- 5.2 数据集介绍
- 5.3 比赛方案收集
-
- 2021搜狐校园文本匹配算法大赛 【比赛地址】
- 4.1 赛题背景
- 4.2 比赛任务
- 4.3 数据说明 【地址】
- 4.4 比赛方案收集
-
- CCF2020问答匹配比赛
-
- 智能客服问题相似度算法设计——第三届魔镜杯大赛
-
- 2018CIKM AnalytiCup – 阿里小蜜机器人跨语言短文本匹配算法竞赛
- 其他
- 二、对话
-
- 2020 CCF BDCI《千言:多技能对话》
-
- 2018JD Dialog Challenge 任务导向型对话系统挑战赛
- 三、文本分类
-
- 2018 DC达观-文本智能处理挑战
-
- 路透社新闻数据集“深度”探索性分析(词向量/情感分析)
-
- 知乎看山杯
-
- 2018 CCL 客服领域用户意图分类评测
-
- 2018 kaggle quora insincere questions classification
- 四、关键词提取
- 五、内容识别
- 六、观点主题
- 七、实体链指
- 7.1. CCKS&2019中文短文本的实体链指
- 7.2. CCKS 2020实体链指比赛
- 八、命名实体识别
- 8.1 天池中药说明书实体识别
- 8.2 CCF BDCI 中文命名实体识别算法鲁棒性评测
- 8.3 商品标题实体识别
- 九、事件抽取
- 9.1 CCKS 2020:面向金融领域的小样本跨类迁移事件抽取
- 9.2 CCKS2019_EventEntityExtraction
- 9.3 2020 科大讯飞事件抽取挑战赛
- 十、阅读理解
- 10.1 2021海华AI挑战赛·中文阅读理解·技术组
- 10.1.1 赛题背景
- 10.1.2 比赛任务
- 10.1.3 比赛方案
- 十一、关系抽取
- 11.1 2020语言与智能技术竞赛:关系抽取任务 【比赛链接】
- 11.1.1 赛题背景
- 11.1.2 赛题说明
- 11.1.3 数据集介绍
- 11.1.4 比赛方案
- 十二、中文文本纠错
- 12.1 专业赛:自然语言处理技术创新大赛——中文文本纠错比赛
- 12.1.1 竞赛背景
- 12.1.2 赛题描述
- 12.1.3 模型训练
- 12.1.4 训练集数据介绍
- 12.1.5 比赛方案
- 十三、CCF BDCI
- 13.1 CCF BDCI 智能人机交互自然语言理解
- 13.2 CCF BDCI 预训练模型知识量度量
- 十四、搜索
- 参考资料
-
GCN 介绍篇
-
GCN 三剑客
-
经典篇
-
预训练篇
-
实战篇
Top 3 Sponsors
| Time | Sponsor | Amount |
|---|
| 2021/3/25 | 林* | 500 |
| 2022/6/24 | 李* | 200 |
这原本是个人的一个学习项目,我们原本计划编写到1.0为止。但是由于 这个项目 帮助到了 社区里面很多 nlper 超过了我们的想象。如果您愿意赞助我们的项目,可以
扫描这个二维码
并且加这个支付宝账号,留下您的姓名
项目的资金流向将被公开,所有的资金将被用于该学习项目的开支。我们会总结在sponsorship的表格中。备用链接 二维码 , 支付宝账号
参考资料
- 【ACL2020放榜!】事件抽取、关系抽取、NER、Few-Shot 相关论文整理
- 第58届国际计算语言学协会会议(ACL 2020)有哪些值得关注的论文?