☰
【开源NER】六个工程手段 疾病识别Precision翻倍
2026/10/28 10:24:22 网站建设 项目流程

看到一篇简单有效的论文,通过工程经验大幅提升NER疾病识别效果。整篇论文用的都是传统Bert类模型,速度很快,估计迁移到Qwen-1B之类的模型上,也能收货效果提升。论文已开源。

TWIX:工程驱动!两阶段流水线解决生物医学端到端实体与关系抽取

论文:TWIX: a Two‑Stage Approach for End‑To‑End Named Entity Recognition and Relation Extraction
发布时间:2026‑09‑01|arXiv:2609.00832v1
开源仓库:https://github.com/MMartinelli-hub/GBIE26_TWIX.git

核心亮点:本文没有提出全新神经网络结构,而是针对生物医学信息抽取里流水线固有的错误传播痛点,靠精巧的两阶段工程设计,在 GutBrainIE 肠‑脑轴数据集全部 4 项任务拿下榜单第一。最震撼的指标:NER 精确率从基线 77.82% 飙升至95.48%,召回仅小幅下降;最难的概念级关系抽取 C‑RE 的 F1 相较基线实现 2.5 倍提升。

一、任务背景:GutBrainIE 与端到端信息抽取

GutBrainIE 数据集基于 PubMed 生物医学摘要构建,设置 4 个逐级依赖的端到端任务:输入只有原始文本,无任何预先标注实体,上游模型输出直接喂给下游。

任务任务说明
NER识别文本中的实体片段并分配实体类别
NERD实体消歧,将文本实体 mention 映射到知识库标准概念 URI,解决一词多义
M‑RE(提及级关系抽取)抽取文本片段 mention之间的关系三元组
C‑RE(概念级关系抽取)抽取知识库标准概念 URI之间的关系三元组

举一个论文原句做完整演示:

原文:Dietary intake of Lactobacillus rhamnosus reduces anxiety‑like behavior in mice via the vagus nerve.
中文释义:摄入鼠李糖乳杆菌,可通过迷走神经缓解小鼠的焦虑样行为。

  1. NER 输出(片段+实体类型)

    • Lactobacillus rhamnosus(鼠李糖乳杆菌)→ Chemical(化学物质)
    • anxiety‑like behavior(焦虑样行为)→ Disease(疾病)
    • mice(小鼠)→ Species(物种)
    • vagus nerve(迷走神经)→ Anatomical Entity(解剖学实体)
  2. NERD 实体链接(文本映射知识库 ID)

    • Lactobacillus rhamnosus→NCBITaxon:47715
    • anxiety‑like behavior→MESH:D001007(焦虑)
    • vagus nerve→MESH:D014629(迷走神经)
  3. M‑RE 提及级关系(两端是原文片段)

    • (鼠李糖乳杆菌, reduces 减轻, 焦虑样行为)
    • (鼠李糖乳杆菌, acts_via 经由, 迷走神经)
    • (迷走神经, regulates 调控, 焦虑样行为)
  4. C‑RE 概念级关系(两端是知识库 ID)

    • (NCBITaxon:47715, treats 治疗,MESH:D001007)
    • (NCBITaxon:47715, acts_via 经由,MESH:D014629)
    • (MESH:D014629, regulates 调控,MESH:D014629)

M‑RE 与 C‑RE 核心差异:
M‑RE 只校验文本实体片段与关系谓词是否正确;C‑RE 除文本正确之外,还要求实体必须链接到完全正确的知识库 URI。

典型错误案例:如果把Lactobacillus rhamnosus错误链接为其他乳酸菌的 ID,该条关系在 M‑RE 判定正确,但在 C‑RE 直接判定错误。

流水线模式的致命问题就是误差链式放大:NER 识别出的假实体,会强制让 NERD 为它分配概念;NERD 链接发生歧义错误,会进一步生成完全错误的概念关系。

为此 TWIX 选择**精度优先(precision‑oriented)**的设计思想:允许上游少量真实实体漏检,但严格阻止假阳性实体流入下游模块。


二、TWIX 整体架构:三大模块,全部采用“先生成候选,再校验确认”两阶段范式

系统链路:原始PubMed摘要→ NER 模块 → NEL 实体链接模块 → RE 关系抽取模块。

整套系统一共需要独立训练 5 个子模型,推理阶段按顺序串联执行。

2.1 NER 模块:EFCL(Extract‑First, Classify‑Later)先提取候选,后分类校验

传统 NER 采用单步 token 分类,一次性同时完成实体边界识别+实体类型判断。一旦单步预测出错,错误直接向下传导。

EFCL 拆成解耦的两个子模块,设置两道过滤关卡:

  1. TE 术语提取器(Term Extraction)
    仅做边界挖掘,不做实体类型判断。标签集合只有 3 个:B‑term候选术语起始、I‑term候选术语内部、O非术语。
    任务目标:把所有看起来像生物医学术语的文本片段全部捞出来。

    示例句子:Gut microbiota may influence Parkinson disease through the vagus nerve.
    TE 输出候选片段:Gut microbiota、Parkinson disease、vagus nerve。

  2. TC 术语分类器(Term Classification)
    接收 TE 产出的候选片段;用特殊标记[E1]、[/E1]把候选片段包裹放回原句送入模型。
    模型输出二选一:① 数据集定义 13 类实体类别;② 特殊拒绝标签not an entity,被标记的候选直接丢弃。

Q1:Parkinson disease会不会被判为not an entity?
A:不会。在 GutBrainIE 的 schema 中帕金森病属于 Disease 合法实体,TC 会输出 Disease;只有形式上像术语,但不在数据集实体定义内的片段,才会触发not an entity被过滤。

Q2:vagus nerve pathway迷走神经通路会如何处理?
A:TE 阶段会识别它为候选片段;但是该短语不属于任务定义的合法实体。TC 分类阶段输出not an entity直接丢弃,不会传递给后续 NEL。

双重过滤:候选片段要么在 TE 阶段就没有被提取;就算 TE 提取出来,TC 依然可以驳回。训练 TC 时专门构造 1‑5 词的合成伪名词短语作为负样本,强化模型识别并拒绝 TE 输出的假候选。

2.2 NEL 实体链接模块:Retrieve‑and‑Rerank 粗召回+精细重排

说明:下面会逐个拆解公式,便于理解实体链接完整运算逻辑。

任务输入:NER 输出的实体提及 mention 以及它的上下文;
整体流程:检索器粗召回 top‑k 候选概念 → 重排器结合上下文精细消歧选出最优概念。

示例输入句子:

The gut‑brain axis may be involved in PD through vagal pathways.
释义:肠‑脑轴可能通过迷走通路参与 PD 相关过程。

待消歧 mentione ee=PD;m b m_bmb​代表 mention 前文,m a m_ama​代表 mention 后文。

公式 1:构造 mention 带标记的输入文本

m ( e ) = m b [ E 1 ] e [ / E 1 ] m a m(e)=m_b\;[E1]\;e\;[/E1]\;m_am(e)=mb​[E1]e[/E1]ma​

用特殊标记把待消歧实体包裹,保留完整上下文。
示例输出文本:The gut‑brain axis may be involved in [E1]PD[/E1] through vagal pathways.

公式 2:得到 mention 的向量表示

y e = f θ m ( m ( e ) ) \mathbf y_e=f_\theta^m(m(e))ye​=fθm​(m(e))

  • f θ m f_\theta^mfθm​:检索器的编码器(BiomedBERT);
  • 将公式 1 拼接完成的完整句子送入编码器;取特殊标记[E1]位置对应的隐向量作为 mention 向量;该向量融合标记、mention 文本PD以及全部上下文信息,并非单独编码 PD 单词,也不用 CLS 向量。

公式 3:知识库候选概念编码

y c i = f θ c ( d ( c i ) ) \mathbf y_{c_i}=f_\theta^c(d(c_i))yci​​=fθc​(d(ci​))

  • c i c_ici​:来自 GutBrainIE 参考词表的候选概念,词表整合 UMLS、MeSH 共 6 套生物医学词表+项目自建本体;
  • d ( c i ) d(c_i)d(ci​):概念描述文本,拼接「概念标准名称 + 知识库定义 + 补充说明」;

例如帕金森病的描述:Parkinson Disease: A progressive neurodegenerative disorder characterized by tremor, rigidity, and bradykinesia. MeSH Concept: ... UMLS CUI: C0030567 ...

  • f θ c f_\theta^cfθc​:概念侧编码器,把概念描述文本编码为向量y c i \mathbf y_{c_i}yci​​。

公式 4:检索阶段相似度打分(向量点积)

s r ( e , c i ) = y e ⊤ y c i s_r(e,c_i)=\mathbf y_e^\top\mathbf y_{c_i}sr​(e,ci​)=ye⊤​yci​​

解释:计算 mention 向量与知识库概念向量的内积;分数越高,代表 mention 上下文语义和该知识库概念越匹配。

针对例子中的缩写PD,检索器召回 top‑4 候选:

  1. Parkinson disease(帕金森病)
  2. Peritoneal dialysis(腹膜透析)
  3. Personality disorder(人格障碍)
  4. Photodynamic therapy(光动力疗法)

当前上下文围绕肠‑脑轴、迷走神经,属于神经疾病语境,因此Parkinson disease的点积得分显著高于其余 3 个无关候选。

⚠️注意:检索只做粗筛,检索输出 top‑k 集合记作C k ( e ) C_k(e)Ck​(e),最终结果不依据检索分数,交给 cross‑encoder 重排器处理。

重排器 cross‑encoder:将 mention 上下文和单条候选概念描述拼接进同一个序列,做完整双向注意力交互,挖掘更深层语义关联。

重排器输入构造:

x ( e , c i ) = [ C L S ] m b [ E 1 ] e [ / E 1 ] m a [ S E P ] d ( c i ) [ S E P ] x(e,c_i) = [CLS]\;m_b\;[E1]\;e\;[/E1]\;m_a\;[SEP]\;d(c_i)\;[SEP]x(e,ci​)=[CLS]mb​[E1]e[/E1]ma​[SEP]d(ci​)[SEP]

实例输入(匹配帕金森病候选):

[CLS] The gut‑brain axis may be involved in [E1]PD[/E1] through vagal pathways. [SEP] Parkinson Disease: A progressive neurodegenerative disorder characterized by tremor, rigidity, and bradykinesia. MeSH Concept: ... UMLS C0030567 ... [SEP]

回顾定义:e ee是待消歧文本 mention(PD);c i c_ici​代表知识库中某一条候选概念;
重排器对每一对 (mention, 候选概念) 输出重排分数s c e ( e , c i ) s_{ce}(e,c_i)sce​(e,ci​),分数由[CLS]的隐向量经过线性层变换得到。

拿到 top‑k 全部候选的重排分数,做 softmax 归一化,计算每个候选的后验概率:

p ( c i ∣ e , C k ( e ) ) = exp ⁡ ( s c e ( e , c i ) ) ∑ c j ∈ C k ( e ) exp ⁡ ( s c e ( e , c j ) ) p(c_i\mid e,C_k(e)) = \frac{\exp(s_{ce}(e,c_i))} {\sum_{c_j\in C_k(e)}\exp(s_{ce}(e,c_j))}p(ci​∣e,Ck​(e))=∑cj​∈Ck​(e)​exp(sce​(e,cj​))exp(sce​(e,ci​))​

实例数值演算:k=4,4 个候选重排得分依次 4.0、1.0、0.5、0.5

p ( Parkinson disease ) = e 4.0 e 4.0 + e 1.0 + e 0.5 + e 0.5 = 54.6 54.6 + 2.72 + 1.65 + 1.65 ≈ 0.90 p(\text{Parkinson disease})=\frac{e^{4.0}}{e^{4.0}+e^{1.0}+e^{0.5}+e^{0.5}}=\frac{54.6}{54.6+2.72+1.65+1.65}\approx0.90p(Parkinson disease)=e4.0+e1.0+e0.5+e0.5e4.0​=54.6+2.72+1.65+1.6554.6​≈0.90

选择概率最大的候选作为实体链接最终输出。

补充实现细节:第二个[SEP]之后还可以追加多条候选描述,实现多候选同时输入排序;工程推理时大多采用逐对输入打分。

2.3 RE 关系抽取模块:ATLOP 基座 + 两阶段训练策略

关系抽取直接复用文档级关系抽取基线模型ATLOP,没有修改网络结构,仅革新训练流程。

ATLOP 两个核心机制:

  1. 局部上下文池化(localized context pooling):判断实体对关系,仅聚焦两个实体周边窗口,规避文档远距离无关文本的噪声;
  2. 自适应阈值(adaptive threshold):放弃全局固定分类阈值;针对不同关系类别学习独立阈值,避免低置信弱关系(如 associated_with 关联)被一刀切过滤。

训练数据分为三档质量:

  • Bronze 青铜:全自动生成,数据量大,噪声高;
  • Silver 白银:半人工清洗,质量中等;
  • Gold 黄金:专家人工标注,质量最高,但样本数量少。

两阶段训练策略:

  1. 预训练阶段:Silver+Bronze 数据集训练 10 个 epoch。利用海量带噪声数据,让模型学习肠‑脑轴文献中实体共现的宏观模式,建立先验认知。
  2. 微调阶段:仅使用 Gold 专家标注集训练 100 个 epoch,结合开发集早停保存最优 checkpoint。在已经学到共现模式基础上,把粗糙预测校准到专家定义的精确关系类型。

epoch 设置的逻辑:预训练只需要把参数迁移到较好的损失盆地,少量 epoch 足够;微调在小高质量数据集,需要更多迭代打磨精细的决策边界。

推理分支:输入 NER 实体做 M‑RE;输入 NEL 链接完成的概念做 C‑RE。

2.4 完整训练与推理链路

训练顺序(5 个模型依次训练)

  1. TE 术语提取器
  2. TC 术语分类器
  3. NEL 检索器
  4. NEL 重排器
  5. RE ATLOP 关系抽取

推理顺序(反向串联)

原始标题摘要 → TE 提取候选 → TC 过滤not an entity候选 → NEL 检索+重排得到概念 URI → 分别执行 M‑RE、C‑RE。


三、实验结果与核心分析

评测指标采用 micro‑F1(适配实体、关系类别严重不平衡的现实场景),整体任务汇总:

任务基线 F1TWIX 最优 F1F1 绝对提升
NER0.79960.8740+0.0744
NERD0.43980.6890+0.2492
M‑RE0.38860.6132+0.2246
C‑RE0.13450.3475+0.2130

3.1 NER 实验

  • GLiNER 基线:P=0.7782,R=0.8221,F1=0.7996
  • TWIX EFCL 最优配置 merged6:P=0.9548,R=0.8058,F1=0.8740

对比普通单模型 BERT、多模型投票集成方案:EFCL 架构收益集中体现在精确率大幅提升,召回仅轻微损失;开发集复现相同趋势,证明效果来自架构本身,不是测试集随机波动。

3.2 NERD(实体识别+实体链接)实验

  • 基线:F1=0.4398
  • TWIX 最优:P=0.7527,R=0.6353,F1=0.6890

关键约束:NEL 模块本身没有纠错能力。上游传入的每一个 mention,NEL 都会分配一个概念;既不能修复 NER 漏检的实体,也不能丢弃 NER 产生的假实体。

因此 NERD 的性能是 NER 实体提取质量 × NEL 链接质量的联合结果。上游 NER 压低假阳性实体数量,会直接带来 NERD 指标巨大增益。

3.3 M‑RE 提及级关系抽取

  • 基线:P=0.4444,R=0.3453,F1=0.3886
  • TWIX 最优 mre10:P=0.8996,R=0.4651,F1=0.6132

用一组数字感受 Precision 翻倍意味着什么。M‑RE 的输入是 NER 输出的 mention 两两组合。假设一篇摘要有 20 个 mention,关系候选对就有( 20 2 ) = 190 \binom{20}{2}=190(220​)=190对,而金标关系通常只有 3–5 条——非关系对占 97% 以上。基线 NER 的 Precision 是 0.78,意味着这 20 个 mention 里约 4‑5 个是假的,它们参与构成的 70 余对候选全是"垃圾对"。基线 RE 的 Precision 0.4444 正是在这种噪声输入下硬判的结果。TWIX 的 NER Precision 0.9548 把假 mention 压到 1 个左右,垃圾候选对从 70+ 降到 19,RE 的 Precision 随即升到 0.8996——关系模型的注意力几乎全花在真实实体对上了。

代价非常明确:召回表现依旧有限。只要 NER 漏掉某一个实体,所有以该实体作为端点的关系就直接消失,RE 模型再强也无法恢复这部分样本。

3.4 C‑RE 概念级关系抽取

  • 基线:P=0.1403,R=0.1292,F1=0.1345
  • TWIX 最优:P=0.4903,R=0.2691,F1=0.3475

C‑RE 的评判标准最为严苛,一条预测全部正确需要同时满足:实体边界正确、实体类型正确、实体链接 URI 正确、关系谓词正确。整体性能近似等于 NER、NEL、RE 三者正确率相乘。上游每一步精度提升,会在 C‑RE 被乘法效应放大,因此相对提升幅度最大。


四、论文核心启示、局限性与未来方向

4.1 核心启示

  1. 联合模型(joint)不是生物医学端到端 IE 的唯一解;模块化流水线只要做好中间产物的过滤,依然可以取得 SOTA,同时获得更好的可调试性,便于定位每一个模块的错误来源。
  2. “先候选生成,后校验过滤”这套两阶段范式具备很强迁移价值,尤其适合下游还要接实体链接、关系抽取的实体识别场景。

4.2 局限

  1. 工程复杂度高,一共 5 个子模型,训练、调参、部署成本高;
  2. 精度优先的固有短板:牺牲一部分召回,如果业务目标是尽可能挖掘潜在的未知关联,需要额外做阈值调优或者构建召回导向分支;
  3. RE 模块整体召回偏低,大量真实关系没有被识别出来;
  4. NEL 模块不会拒绝输入的实体提及,实体过滤完全依赖上游 NER。

4.3 后续研究方向

在维持高精确率的基础上提升召回能力;探索更积极的候选生成策略、多系统阈值融合;甚至利用 RE 模块输出的信号反向反馈、辅助 NER 候选生成。


如果你需要,我可以把这份解读进一步压缩为课堂汇报 PPT 大纲 / 中文摘要 / 面试问答版。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询