从0开始GAN-9-metric for NLG

related papers:
- MoverScore: Text Generation Evaluating with Contextualized Embeddings and Earth Mover Distance
- Why We Need New Evaluation Metrics for NLG
- Beyond BLEU: Training Neural Machine Translation with Semantic Similarity
- Better Rewards Yield Better Summaries: Learning to Summarise Without References
- RUSE: Regressor Using Sentence Embeddings for Automatic Machine Translation Evaluation
- ROUGE: A Package for Automatic Evaluation of Summaries Chin-Yew

MoverScore

Motivation

评价指标对于模型的训练或选择至关重要,现阶段对于文本生成的模型(机器翻译,摘要生产,图像标题生成)大都采用的hard match的方式,比如 BLEU, ROUGE. 这些都是简单的基于共现词的统计,这种metric仅仅只考虑了表面的形式,无法覆盖同意却不同词的表达,所以他们并不太好(over correction),不具备评价文本相似性的能力。

MoverScore

It is particularly important for a metric to not only capture the amount of shared content between two texts, i.e., intersect(A,B), as is the case with many semantic textual similarity measures
根据语义相似度来计算距离。

计算 MoverScore 的一些符号:
- sentence:\(x=(x_1,x_2,...,x_m)\)
- \(x^n\) 表示 x 中的 n-gram. - \(f_{x^n}\) 表示x中每一个 n-gram 的权重。如果 n=(size of sentence), 那么 \(f_{x^n}=1\)

n-gram 之间的距离:
\[C_{ij}=d(x_i^n,y_j^n)\] 表示 x 中第 \(i^{th}\) 个 n-gram 与 y 中第 \(j^{th}\) 个 n-gram 的距离。

那么两个句子中所有 n-gram 的距离 Word Mover’s Distance (WMD): \[WMD(x^n,y^n):=min_{F\in R^{|x^n|\times |y^n|}}<C,F>\]

\(<>\) 表示加权求和。计算出两个 n-gram 序列的推土机距离与传统的推土机距离不太一样的地方是,这里每个 n-gram 还有权重。

那么如何计算两个 n-gram 的距离 \(d(x_i^n,y_j^n)\) 呢, 作者采用的是 Euclidean distance:

\[d(x_i^n,y_j^n)=||E(x_i^n)-E(y^n_j)||_ {2}\]

\(E\) 是n-gram 的向量表示,比如 \(x_i^n=(x_i,..,x_{i+n-1})\) 是 x 中第 i 个 n-gram.

\[E{(x_i^n)}=\sum_{k=i}^{i+n-1}idf{(x_k)}\cdot E{(x_k)}\]

n-gram 的权重计算:

\[f_{x_i^n}=\dfrac{1}{Z}\sum_{k=i}^{i+n-1}idf{(x_k)}\]

Z 是归一化常数,也就是总和吧。

当 n>(size of sentence) 时,\(WMD(x^n,y^n)\) 变成计算两个完整的句子的距离:
\[SMD(x^n,y^n)=||E(x_1^{l_x})-E(y_1^{l_y})||\]

其中 \(l_x,l_y\) 表示两个sentence 的长度。

Contextualized Representations

如何得到一个 word/n-gram 的向量表示,基于预训练的模型来得到 contextualized 表示是一个开放性的问题,Elmo和BERT都是多层结构,不同的layer包含了不同的含义。作者这里提到了两种方法,并最终采用了前者:
- the concatenation of power means
- a routing mechanism for aggregation

power means: \[h_i(p)=(\dfrac{z_{i,1}^p+...+z_{i,L}^p}{L})^{1/p}\] L 表示预训练模型的层数,p=1是数值平均,p=0时是调和平均。

\[E(x_i)=h_i^{p_1}\oplus .... \oplus h_i^{p_k}\] \(\oplus\) 表示 concatenation. 作者设置 p=1,K=3. 也就是一个词的向量表示由三个向量表示 \(h\) 拼接而成,而每个h又是不同层的数值平均。

result

对于这种提出新指标的问题,一直很疑惑怎么去 evaluation。好像只能通过人工去评价了对吧?

这是机器翻译的结果。

WMD-1/2+BERT+MNLI+PMeans:表示 1-gram 的word mover distences + 在NMLI语料上训练的BERT + PMeans 的融合方式。

根据 NMT system 得到 translations,然后与 references 计算对应的指标。然后根据指标与human evalation相似度进行对比,越接近人类评价的,这个指标就越好。