1. 项目概述
ERNIE(Enhanced Language Representation with Informative Entities)是清华大学NLP实验室于2019年提出的预训练语言模型。与同期其他语言模型不同,ERNIE创新性地将知识图谱(Knowledge Graph)信息融入预训练过程,显著提升了模型在知识驱动任务上的表现。
作为一名长期从事NLP研究的工程师,我特别欣赏ERNIE这种将结构化知识与非结构化文本相结合的思路。在实际业务场景中,我们经常遇到需要常识推理的任务,传统语言模型在这方面往往表现不佳。ERNIE通过引入知识图谱,为解决这一问题提供了新思路。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心设计思路
2.1 知识增强的必要性
传统预训练语言模型(如BERT)主要学习文本中的词法和句法模式,但对事实性知识的掌握有限。例如:
- 文本:"巴黎是法国的首都"
- BERT可以理解这句话的语法结构
- 但无法验证"巴黎-法国"之间的首都关系是否正确
ERNIE通过引入知识图谱中的实体关系,使模型能够:
- 验证文本中的事实性陈述
- 补充文本中隐含的常识信息
- 在实体分类、关系抽取等任务上表现更好
2.2 两大技术挑战
2.2.1 知识的结构化编码
知识图谱中的实体通常以三元组形式存储(头实体,关系,尾实体)。如何将这些结构化信息编码为适合神经网络处理的向量,是第一个关键挑战。
实践建议:ERNIE采用TransE算法进行知识嵌入。相比其他知识表示方法,TransE计算效率高,特别适合大规模知识图谱。
2.2.2 异构信息融合
文本表示和知识表示存在于不同向量空间:
- 文本表示:基于上下文的自注意力机制
- 知识表示:基于图结构的嵌入方法
如何设计模型架构使二者有效融合,是第二个关键挑战。
3. 模型架构详解
3.1 整体结构
ERNIE采用双编码器设计:
code复制文本输入 → T-Encoder → K-Encoder → 输出
知识图谱 → TransE → K-Encoder
3.1.1 T-Encoder(文本编码器)
- 与BERT相同的Transformer结构
- 6层Transformer
- 隐藏层维度768
- 12个注意力头
