PCNN模型解读:《Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks》
PCNN模型解读
本文是对Daojian Zeng, Kang Liu, Yubo Chen and Jun Zhao的论文《Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks》的简要解读。
Multi-instance problem
训练样本:bag
- bag:由多个instance组成,普通的训练任务中训练样本就是instance
- bag有label,这个label是对于整个bag的概念,而bag中instance的label是未知的
目的:找到bag和instance之间的逻辑关系,从而能够对一个新bag预测其整体label
- 常见loss function设计:对bag中所有instance做平均池化 / 最大池化 / attention机制,进而得到对bag整体的预测
预测方法:分training和evaluation时的不同情况,有bag-level的,也有instance-level的
PCNN
model
model architecture:

quintuple:
- E: word embeddings
- PF_1, PF_2: position embeddings 1, 2
- W: convolution filter matrix
- W_1: linear transformation matrix (=> get n1 relation scores)
MIL :
-
输入 - T bags \left \{ M_1, M_2, \dots, M_T \right \}, 其中 bag M_i 包含:
- q_i 个instance,分别为
- \left \{ m_i^1, m_i^2, \dots, m_i^{q_i} \right \}
-
输出 - 对于bag M_i的 q_i 个instance,得到每个instance m_i^j
-
{\bold o}={\bold W_1}({\bold g} \circ {\bold r})+b ,即对于每种relation的score
- (o是1×n1的vector,or是对relation r的score)
-
再做一次softmax,得到对于每种relation的条件概率 p(r|m_i^j;\theta)=\frac{e^{o_r}}{\sum_{k=1}^{n_1}e^{o_k}}
-
Training
bag-level loss function:按T个bag计算并求和。对每个bagM_i,算的是对该bag中(共q_i个instance)条件概率p最大的那个instance求交叉熵(取log)。

预测:(二分类?)
When a trained PCNN is used for prediction, a bag is positively labeled if and only if the output of the network on at least one of its instances is assigned a positive label.
