论文解读系列| 02:【NER】MarkBERT

简介: MarkBERT 是一种考虑如何将词信息引入到模型的NER方案。MarkBERT基于字的模型,但巧妙地将词的边界信息融入模型,具体操作是将词之间插入边界marker。出现边界marker意味着前一个字符是词的尾部字符,而紧接着的字符是另一个词的起始字符。如此可以统一处理所有词,不存在词的OOV问题。

简介

论文地址:
https://arxiv.org/abs/2203.06378

论文代码:
https://github.com/daiyongya/markbert

更多、更及时内容欢迎微信公众号小窗幽记机器学习 围观。

MarkBERT 也是一种考虑如何将词信息引入到模型的方案。MarkBERT基于字的模型,但巧妙地将词的边界信息融入模型,具体操作是将词之间插入边界marker。出现边界marker意味着前一个字符是词的尾部字符,而紧接着的字符是另一个词的起始字符。如此可以统一处理所有词,不存在词的OOV问题。此外,MarkBERT 还有两个额外优点:

  • 便于在边界marker上添加单词级别的学习目标(文章使用replaced
    word detection这个学习任务),这可以作为传统字符(比如MLM任务)和句子级(比如NSP任务)预训练任务的补充
  • 便于引入丰富的语义信息,比如想要引入词的POS标签信息,可以用 POS 标签特定的标记替换marker。

MarkBERT在中文NER 任务上取得SOTA结果。在MSRA数据集上 95.4% -> 96.5%,在OntoNotes数据集上82.8%->84.2%。MarkBERT在文本分类、关键词识别、语义相似任务上也取得了更好的精度。

MarkBERT 预训练阶段有两个任务:

  • MLM:对边界标记 marker 也进行mask,以使模型能学习边界知识。
  • 替换词检测(replaced word detection): 人工替换一个词,然后让模型区分marker前面的词是不是正确的。

模型结构

MarkBERT Model:
首先分词,在词中间插入特殊标记(文章中使用[S]这个特殊marker),这些标记也会被当做普通的字符处理,有对应的位置编码,也会被 MASK。这样编码时就需要注意词的边界,而不是简单地根据上下文填充被mask掉的部分。这使得MASK预测任务变得更有挑战(预测需要更好地理解单词边界)。如此,character-based的MarkBERT模型通过单词边界信息融入词级别信息(词的信息是显式给出的)。

image.png

替换词检测:
具体而言,当一个词被替换成混淆词,marker 应该做出「被替换」的预测,label为 False,否则为 True。假设第$i$个marker的表征记为$x^i$,预测正确和错误对应的label记为$y^{true}$和$y^{false}$,则替换词检测loss定义如下:

$$ \mathcal{L}=-\sum_{i}\left[y^{\text {true }} \cdot \log \left(x_{y}^{i}\right)+y^{\text {false }} \cdot \log \left(x_{y}^{i}\right)\right] $$

该损失函数和 MLM的损失函数加在一起作为最终训练的损失。混淆词来自同义词或读音相似的词,通过替换词检测这个任务,marker对上下文中的单词span更敏感。为进一步融入语义信息,可以将POS的结果作为边界marker,如Figure 1所示,使用 POS 词性标注信息 作为边界marker的模型称为 MarkBERT-POS。

预训练
MASK 的比例依然是 15%,30% 的时间不插入任何marker(原始的BERT);50% 的时间执行 WWM(whole-word-mask) 预测任务;其余时间执行 MLM 预测任务。

在插入marker中,30%的时间将词替换为基于读音的混淆词或基于同义词的混淆词,marker预测读音混淆标记或同义词混淆marker(即False);其他时间marker预测正常单词的marker(即True)。为了避免label不平衡,只计算正常marker上 15% 的损失。

实验结果

在 NER 任务上的效果如下表所示:

image.png

可以看到,效果提升还是很明显的。

在三个任务上做了消融实验:

  • MarkBERT-MLM:只有 MLM 任务
  • MarkBERT-rwd:在替换词检测时,分别移除近音词或同义词
  • MarkBERT-w/o:在下游任务微调时去掉 Marker(和原始 BERT 一样用法)

消融实验结果如下表所示:

image.png

从消融结果可以看出:

  • MarkBERT-MLM(没有使用替换词检测任务) 在 NER 任务中提升显著,说明单词边界信息在细粒度任务中很重要。
  • 不插入marker,MarkBERT-w/o 也达到了和 baseline 相近的效果,说明相对简单的在语言理解任务中 MarkBERT 可以像 BERT 一样使用。
  • 对 NER 任务来说,插入marker依然重要,实验结果表明 MarkBERT 在学习需要这种细粒度表示的任务的单词边界方面是有效的。

讨论

已有的中文 BERT 融入词信息有两个方面的策略:

  • 在预训练阶段使用词信息,但在下游任务上使用字符序列,如 Chinese-BERT-WWM,Lattice-BERT。
  • 在下游任务中使用预训练模型时使用单词信息,如 WoBERT,AmBERT,Lichee。

另外在与实体相关的 NLU 任务, 特别是关系分类中有探讨插入marker的想法。给定一个主语实体和宾语实体,现有工作注入非类型标记或实体特定marker,并对实体之间的关系做出更好的预测。

image.png

此外,在预测阶段,也是需要marker信息,而该信息可能存在错误,作者并没有针对这方面进一步做消融研究。

相关文章
|
3月前
|
人工智能 监控 安全
OpenClaw:从对话到执行,解析这款GitHub增长最快AI Agent的五大核心优势**
OpenClaw 并非又一个大模型,而是推动 AI 从“内容生成”迈向“任务执行”的开源 Agent 框架。本文从本地优先架构、动作执行能力、多通道接入、持久记忆系统和开放技能生态五个维度,深入剖析其技术价值与实际落地优势,并为开发者提供客观的部署建议。
|
人工智能 弹性计算 关系型数据库
OCP China Day 2022:vODLA异构计算资源池化技术架构和实践
OCP会议信息8月10日,由OCP社区主办、浪潮信息承办的OCP China Day 2022(开发计算中国技术峰会)在北京举行。开放计算正式成为当前及至未来数据中心的创新主力,通过全球化协作的创新模式,解决数据中心基础设施可持续发展的重大问题。OCP China Day作为开放计算领域生态覆盖最广且最具影响力的亚洲最大年度技术峰会,迄今已经成功举办4届。本届峰会以“开放.向未来:绿色、融合、赋能
OCP China Day 2022:vODLA异构计算资源池化技术架构和实践
|
2月前
|
人工智能 安全 前端开发
ECC 讲透:Claude Code 的全能增强包,不只是 Agents 和 Skills
Everything Claude Code(ECC)是2026年爆火的AI编程增强框架,非简单提示词合集,而是集Agents、Skills、Rules、Hooks、MCP与AgentShield安全扫描于一体的“AI编程操作系统”,深度优化Claude Code等Agent Harness,已获近19万Star。(239字)
487 2
ECC 讲透:Claude Code 的全能增强包,不只是 Agents 和 Skills
|
2月前
|
人工智能 自然语言处理 数据可视化
2026企业如何应用BI系统?数据→信息→洞察→行动落地指南
本文探讨2026年BI系统如何从“数据陈列室”升级为“决策发动机”,提出“数据→信息→洞察→行动”全链路方法论,结合瓴羊Quick BI实践,涵盖智能集成、AI问数、敏捷可视化及业务嵌入式决策,并提供真实案例与避坑指南。(239字)
|
4月前
|
存储 关系型数据库 MySQL
【数据库】NewSQL:TiDB & OceanBase核心知识体系:分布式架构、核心原理、分布式事务实现、HTAP(附《 TiDB & OceanBase 面试核心考点速记清单 》)
本文系统梳理TiDB与OceanBase两大NewSQL标杆的核心知识体系,涵盖设计理念、分布式架构、事务机制、HTAP原理及能力对比,聚焦Share-Nothing架构、强一致共识(Raft/Paxos)、全局时间戳、MVCC与原生HTAP等关键技术,助力高效选型与深度实践。
|
传感器 数据采集 移动开发
基于STM32的智能手环wifi连接手机APP(下)
基于STM32的智能手环wifi连接手机APP(下)
1355 0
|
云安全 数据采集 人工智能
云市场伙伴动态 | 携手深信服,出击云威胁!
云市场伙伴动态 | 携手深信服,出击云威胁!
云市场伙伴动态 | 携手深信服,出击云威胁!
|
C++
深度解析roc曲线、AUC与排序损失
深度解析roc曲线、AUC与排序损失
731 0
|
缓存 移动开发 小程序
uni-vue3-wetrip自创跨三端(H5+小程序+App)酒店预订app系统模板
vue3-uni-wetrip原创基于vite5+vue3+uniapp+pinia2+uni-ui等技术开发的仿去哪儿/携程预约酒店客房app系统。实现首页酒店展示、预订搜索、列表/详情、订单、聊天消息、我的等模块。支持编译H5+小程序+App端。
730 9