Michael Collins NLP Lecture 14
课程主页:http://www.cs.columbia.edu/~cs4705/
课程网盘地址:
链接:https://pan.baidu.com/s/1r0f7I2j6rtlK31VplwHa1Q
提取码:pw02 
这一讲介绍了用全局线性模型解决标注问题。
回顾标注问题:

在全局线性模型下,标注模型的元素如下:
- 输入$x$是句子$w_{[1:n]}= \{w_1…w_n\}$
- 定义$\mathcal T$为标注的集合
- $\text{GEN}(w_{[1:n]}) =\mathcal T^n$,即所有长度为$n$的标注序列。
注意此时$\text{GEN}$和句子长度呈指数关系。接下来的问题是如何定义$f$?
我们首先回顾历史的概念:
- 历史是$4$元组$\langle t_{-2}, t_{-1}, w_{[1:n]},i \rangle$
- $t_{-2},t_{-1}$是之前两个标注
- $ w_{[1:n]}$是输入句子的$n$个单词
- $i$是正在被标注的单词的索引
来看个具体例子:

局部特征向量表示
给定历史/标注对$(h,t)$,$g_s(h,t), s=1,…,d$是上下文$h$中表示标记决策$t$的局部特征,例如:

现在假设我们有如下信息:

根据局部特征定义全局特征:
其中$t_i$是第$i$个标注,$h_i$是第$i$个历史。
将内容总结如下:
- $\text{GEN}(w_{[1:n]}) $为所有长度为$n$的标注序列的集合。 
- $\text{ GEN},f,v$,定义 
可以用动态规划算法求解$\arg \max$(因为历史只考虑前两个标注)。
(备注,这部分老师没有介绍具体的算法。)
用感知机算法训练标注器
- 输入:训练集$\left(w_{\left[1: n_{i}\right]}^{i}, t_{\left[1: n_{i}\right]}^{i}\right),i=1…n$ 
- 初始化:$\mathrm v=0$ 
- 算法: - 对$t=1,….,T$ - 对$i=1,…,n$ - $z_{\left[1: n_{i}\right]}=\arg \max _{u_{\left[1: n_{i}\right]} \in \mathcal{T}^{n_{i}}} \mathbf{v} \cdot \mathbf{f}\left(w_{\left[1: n_{i}\right]}^{i}, u_{\left[1: n_{i}\right]}\right)$ 
- 如果$z_{\left[1: n_{i}\right]} \neq t_{\left[1: n_{i}\right]}^{i}$,那么 
 
 
 
- 输出:参数$\mathrm v$ 
下面给出计算$z$的方法:
定义
以及
递推:
最后
然后利用递推式
计算其余部分。
本讲测验题
Coursera部分
1.

2.

(a),(b),(d)
3.


4.
