本文主要按照如下三个方面来叙述:
1 Target:Understanding procedural text
2 Method:By using Interactive Entity Network
3 Contributions:
introduce an novel module——IEN(by using attention)
conduct intensive experiments
4 Experiments
~
1 Task
e.g., scientific articles, instruction books, or recipes
sentence 1:
The water breaks into oxygen, hydrogen, and electrons.
sentence 2:
Blood travels to the lungs. Carbon dioxide is removed from the blood. Oxygen is added to your blood.
本文的任务:Focus on scientific process understanding task(Dalvi et al., 2018), in which the tracking targets are action and location of entities.
The state tracking task is to predict the states of each entity e i e_i ei after reading each sentence s t s_t st, where an entity’s state is a value of a property p j p_j pj.
CO2 enters leaf.
System: the existence( p j p_j pj) of CO2 ( e i e_i ei) is true the location( p j p_j pj) of CO2 is leaf
dynamic nature
the involvement of multiple entities => [<code>The water breaks into oxygen, hydrogen, and electrons.</code>]
the complexity of tracking targets
how to properly capture the relationship between entity interactions and their state changes.

2 IEN: Interactive Entity Network
本文的贡献就在于提出了这个IEN模型,因为它提高了任务的效果,所以它有用。
two-layer RNN model
w ⃗ i = [ e m b ( w i ) ; v i ] \vec \textbf w_{i} = [emb(w_i);v_i] w i=[emb(wi);vi]
等式左边的 w i w_i wi 表示的是embedding vector,程式右边的 w i w_i wi 是单词i
实验中针对不同的<code>embedding function</code>,如(<code>fastText、ELMo</code>),进行对比
v i v_i vi 是一个标量,用于表示 w i w_i wi 这个词是否是动词
将得到的 w i w_i wi 送入到BiLSTM中得到最后的一个表示 u i = B i L S T M ( [ w i ] ) u_i =BiLSTM([w_i]) ui=BiLSTM([wi])
To track the state changes, we extract sentence features from word-level encodings by running another RNN at the sentence level.
x t e i x_t^{e_i} xtei : 表示的就是在句子<code>t</code>中的 e i e_i ei 实体;
x t l j x_t^{l_j} xtlj : 表示的就是在句子<code>t</code>中的 l j l_j lj 位置;
u t v u_t^{v} utv:表示的是句子t中的谓语动词。
补充:
如果entity 或者 location 是由多个词构成的,那么就执行一个mean pooling 操作。
接着分别将所有的实体、位置表示拼接在一起得到 x t e ∈ R n ∗ d x_t^e \in R^{n*d} xte∈Rn∗d, x t l ∈ R m ∗ d x_t^l \in R^{m*d} xtl∈Rm∗d。 x t e x_t^e xte 和 x t l x_t^l xtl 就是第<code>t</code>个IEN cell 的输入。
下图中红框1就是IEN cell 部分,而其中的红框2就是IEN cell 的输入。
接着来看一下IEN cell 是如何设计的?
在每个 IEN cell中,都有 n 个实体 slots、 m个location slots,与上面的 x t e x_t^e xte 和 x t l x_t^l xtl 相对应。
the representations of all entities and all location candidates in a signle sentence st, or a mask vector if the entity or location candidate is not in st .
memory slots 是什么?
we place memory slots inside IEN cells and let them recurrently update as GRU;
Each memory slot represents the state of a specific entity or a location candidate.
h t e ∈ R n ∗ d h_t^e \in R^{n*d} hte∈Rn∗d 表示第t个IEN cell中所有实体的 memory slots; h t l ∈ R n ∗ d h_t^l \in R^{n*d} htl∈Rn∗d 表示第t个IEN cell中所有location的 memory slots。更新过程如下:
这里的 Att 是一个 scaled key-value attention function. 定义公式如下:
模型的亮点就在于将 attention 引入到了GRU中,这样显式地模拟出 entity-entity 以及 entity-location 之间的交互。
这个更新过程同 entity memory slots 很相似,不再叙述。
参考资料
GRU 的结构图