课程主页:http://www.cs.columbia.edu/~cs4705/

课程网盘地址:

链接:https://pan.baidu.com/s/1KijgO7yjL_MVCC9zKZ7Jdg
提取码:t1i3

这一讲介绍了全局线性模型(Global Linear Models)。

简要回顾基于历史的方法

我们之前介绍的内容形式基本为推断从集合$\mathcal X$到集合$\mathcal Y$的映射$F$,例如:

问题 $x\in \mathcal X$ $y\in \mathcal Y$
解析 句子 解析树
机器翻译 法语句子 英语句子
词性标注 句子 标注序列

并且上述内容均为监督式学习:即我们有训练集$(x_i, y_i),i=1…m$。

之前大多数模型都是基于历史的模型

  • 我们将结构分解为衍生物(derivation)或决策序列。

  • 每个决策都有一个相关的条件概率。

  • 结构的概率是决策概率的之积。

  • 使用最大似然估计的估计参数值。

  • 函数$F:\mathcal X \to \mathcal Y$定义为

来看两个例子:

全局线性模型(Global Linear Models)

这一部分介绍和之前方法有所区别的全局线性模型。

全局线性模型的关键一点是我们将放弃基于历史的模型, 没有“衍生物”,或将概率附加到“决策”,相反,我们将有关于整个结构的特征向量“全局特征”。之所以有这个想法,是因为这样定义特征更加自由,我们来看两个需要灵活特征的例子:

上图中相似的结构很难在之前模型下被解析出来。

上图中表明根据cappucino和book含义不同,pour的解释也不同。

全局线性模型的三个元素

这一部分介绍全局线性模型的三个元素:

  • $f$是将结构$(x,y)$映射到特征向量$f(x,y) \in \mathbb R^d$的函数。
  • $\text{GEN}$是将输入$x$映射到备选者$\text{GEN}(x)$的函数。
  • $v\in \mathbb R^d$是参数向量。

这里训练数据是为了计算$v$的值。下面分别介绍上述三个元素:

特征向量

特征向量由特征构成,例如:

假设有特征函数$h_1…h_d$,我们定义特征向量

例如:

$\text{GEN}$

$\text{GEN}$的形式很简单,例如下例的$\text{GEN}$产生解析树:

再来看一些定义$\text{GEN}(x) $的例子:

  • 解析:$\text{GEN}(x) $是某个语法下$x$的解析集合。
  • 任何任务:$\text{GEN}(x) $是基于历史记录的模型下最可能的$N$个解析。
  • 标注:$\text{GEN}(x) $是所有可能的标注序列的集合,其长度与$x$相同。
  • 翻译:$\text{GEN}(x) $是法语句子$x$的所有可能的英语翻译的集合。
参数$v$

$v\in \mathbb R^d $是一个参数向量,$f$和$v$一起将一个备选者映射到实值,来看一个具体例子:

全局线性模型的训练方法

结合之前介绍的内容,整个模型的流程如下:

  • $\mathcal X$是句子的集合,$\mathcal Y$是可能的输出。

  • 目标是学习函数$F: \mathcal X \to \mathcal Y$。

  • 给定$\text{ GEN},f,v$,定义

所以我们要做的是选择得分最高的备选者作为最合理的结构,接下来的问题是如何做到这点?这里使用感知机学习算法的变形:

  • 输入:训练集$(x_i,y_i),i=1…n$

  • 初始化:$v=0$

  • 定义:$F(x) =\arg \max_{y\in \text{GEN}(x)} f(x,y).v$

  • 算法:

    • 对$t=1,….,T$

      • 对$i=1,…,n$

        • 令$z_i =F(x_i)$,如果$z_i\neq y_i$,那么
  • 输出:参数$v$

本讲测验题

Coursera部分

1.

2.

3.

4.

三个特征向量分别为

所以结果为

5.

第一步:

分数为

所以返回

$\mathrm v$更新为

6.

第一步:

分数为

所以返回

所以不更新,结果为