Intrinsic Evaluation vs Extrinsic Evaluation

Intrinsic Evaluation

特点

  • Evaluation on a specific, intermediate task.
  • Fast to compute performance.
  • Helps understand subsystem.
  • Needs positive correlation with real task to determine usefulness

    注意

  • 要注意语料库的特征,比如有些时候语料库本身中存在多个单词同时符合类比关系。

    Extrinsic Evaluation

    特点

  • Evaluation on a real task.

  • Can be slow to computer performance.
  • Unclear if subsystem is the problem, other subsystems, or internal interactions.
  • If replacing subsystem improves performance, the change is likely good.

    Intrinsic Evaluation Example

    Word Vector Analogies

    核心思想

  • 通过完成词向量类比来评估词向量的性能。

  • 给定的未完全的类比:a : b : c : ?

    评估方法

  • 辨认词向量,通过最大化 cosine 相似度。

Word Vectors - Evaluation - 图1

  • 直观理解:理想状态下,我们希望 Word Vectors - Evaluation - 图2。例如:queen - king = actress - actor
  • 也就是,我们希望:Word Vectors - Evaluation - 图3
    • 可以分析:
  • 语义类比
  • 语法类比

    Correlation Evaluation

    核心思想

  • 让人类在一个固定范围内(如0到10)评估两个单词之间的相似程度
  • 比较人类评估的分数和两个词向量的 cosine 相似度

    Intrinsic Evaluation Tuning

    Parameters to consider

    在 instrinsic evaluation 中需要考虑调试的 word embedding 技术中的超参数。

  • Dimension of word vectors

  • Corpus size
  • Corpus source/type
  • Context window size
  • Context symmetry

    一些观察结论

  • word embedding 的性能严重依赖于使用的模型

    • 因为不同的模型尝试使用不同的属性去嵌入单词。
  • 语料库越大,性能越好
    • 可以学到更多的经验。
  • 极低维的词向量的性能较低

    • 低维词向量无法捕获语料库中不同词的不同含义。

      Training for Extrinsic Tasks

      问题形式

  • 大部分的 NLP Extrinsic 任务可以被形式化为分类任务。

  • 开始的时候通常有一个训练集:Word Vectors - Evaluation - 图4,分别为:一个 d 维词向量和一个 c 维 one-hot 向量(指明想要预测的 label)
  • 通常的机器学习任务中,训练集是固定的,但在 NLP 的应用中,在训练外部任务的时候,我们会重训练输入 word vector

    重训练词向量

  • 使用的词向量由在简单的内在任务上训练过的词向量进行初始化。

  • 训练外部任务的时候,可以重训练词向量

    • 但是有风险:需要确保训练集足够大,可以覆盖单词表中的大部分单词。
    • 如果不够大,会影响性能。因为有限的数据集可能会使得之前学到的词向量发生偏移。

      Softmax 分类与正则化

  • 可以用 softmax 分类函数来计算词向量属于某个类的概率:

    • softmax 分类函数的形式:

Word Vectors - Evaluation - 图5

  • 单个训练样本的损失:

Word Vectors - Evaluation - 图6

  • 由于分类任务,只有一个是正确的类,所以 Word Vectors - Evaluation - 图7 中只有一个是 1,假设 Word Vectors - Evaluation - 图8,则单个样本的损失变为:

Word Vectors - Evaluation - 图9

  • 在整个数据集上的损失为:

Word Vectors - Evaluation - 图10
其中,Word Vectors - Evaluation - 图11 表示样本 Word Vectors - Evaluation - 图12的正确分类的索引。

  • 需要学习的参数数量
    • 以线性决策边界为例,我们需要一个输入为 d 维词向量,输出为 c 为向量的模型,因此参数量为 Cd。
    • 同时需要更新 V 的 d 维词向量,参数量为 |V|d。
    • 总参数量为:Cd+|V|d,非常大
    • 为了避免过拟合,需要引入正则项。正则项反映了贝叶斯先验:参数值 的大小应该比较小
    • 正则项可以提高泛化能力

Word Vectors - Evaluation - 图13

Window Classification

  • 在自然语言处理中,同一个单词在不同的上下文中可能会有不同的意思。
  • 输入的时候:使用一个单词序列,包括:
    • 一个中心单词
    • 中心单词前后的上下文单词
    • 将多个向量合在一起
  • 使用窗口后的输入和梯度:

Word Vectors - Evaluation - 图14