技术编程|基于聚类的指代消解算法( 二 )


Document Genre:文本的特征 (文本的体裁) 。
Distance Features:句子中 Mention 之间的距离 。
Speaker Features:这两个 Mention 是否由同一个人说出 。
String Matching Features:字符串匹配相关的特征 。
Mention-Pair 的特征经过三层全连接网络生成 Mention-Pair 的特征向量 , 用 rm(a, m) 表示 。
技术编程|基于聚类的指代消解算法
文章图片

文章图片

生成 Mention-Pair 特征向量
2.2 Cluster-Pair Encoder
技术编程|基于聚类的指代消解算法
文章图片

文章图片

Cluster-Pair Encoder
Cluster-Pair Encoder 的结构如上图所示 , 给定两个簇 ci 和 cj , 可以利用 Cluster-Pair Encoder 获得 ci 和 cj 的联合表征向量 。每个簇包含多个 Mention , 如下所示 。
技术编程|基于聚类的指代消解算法
文章图片

文章图片


生成 Cluster-Pair 的特征需要用到 Mention-Pair Encoder 。从簇 ci 和 cj 中分别找出一个 Mention , 可以形成多种不同的 Mention-Pair 。然后利用 Mention-Pair Encoder 生成 Mention-Pair 特征 , 所有 Mention-Pair 特征的集合如下 。
技术编程|基于聚类的指代消解算法
文章图片

文章图片

Mention-Pair 特征的集合
Cluster-Pair Encoder 对上述特征集合进行 pooling 操作 , 生成 Cluster-Pair 的特征向量 rc(ci, cj) 。
技术编程|基于聚类的指代消解算法
文章图片

文章图片

生成 Cluster-Pair 特征向量
2.3 Mention-Ranking Model
作者首先训练和一个 Mention-Ranking Model , 用于对 Mention-Pair 打分 。主要原因有两个:
预训练 Mention-Ranking Model 模型可以初始化 Cluster-Ranking Model 。
通过 Mention-Ranking Model 预测 Mention-Pair 的得分 , 可以对 Cluster-Ranking Model 的搜索空间进行剪枝 , 直接去掉一些不可能的 Mention-Pair 。
Mention-Ranking Model 只包含一层全连接层 , 得分 sm(a, m) 的计算公式如下 , 其中 rm(a, m) 是 Mention-Pair Encoder 生成的向量:
Mention-Pair 得分
用 A(m) 表示 Mention m 所有可能的先行词集合 , 用 T(m) 表示 m 真实的先行词集合 。通过计算一个 Mention 和所有 T(m) 的得分 , 可以找出一个得分最高的真实先行词 , 如下所示 。
技术编程|基于聚类的指代消解算法
文章图片

文章图片

得分最高的真实先行词
作者用了下面的损失函数训练模型 , 损失函数针对不同的预测错误采用不同的学习权重 , NA 表示 Mention 没有先行词 。
技术编程|基于聚类的指代消解算法
文章图片

文章图片

Mention-Ranking 损失函数
2.4 Cluster-Ranking Model
用一个状态 x=(C, m) 表示当前的状态 , 其中 C={c1, c2, ...} 表示当前所有的簇 , m 表示当前考虑的 Mention , cm 表示包含 Mention m 的簇 。初始的时候每一个 Mention 单独成为一个簇 。对于当前状态 x(c, m) , 可以采用的行动 U(x) 包括:


推荐阅读