@songying
2018-08-16T09:21:29.000000Z
字数 1791
阅读 1874
word-embedding
本文使用Highway Networks将Word-Level Embedding 与char-level Embedding 结合起来获取更丰富的语义信息。
word-level embedding有以下缺点:
1. it assumes that each word type has its own vector that can vary independently; most words only occur once in training data and out-of-vocabulary(OOV) words cannot be addressed.
2. A word may typically include
a root and one or more affixes (rock-s, red-ness, quick-ly, run-ning, un-expect-ed), or more than one root in a compound (black-board, rat-race).
而实际上, 有着相同后缀的词之间可能有隐性的关系,而 word-level representation 认为每个词是独立的。
此外, 新词并不在词表之中,但是它也可能在句子中担任重要角色,因此,该词的向量表示的缺失可能会使得句子丧失部分语义信息。
在本文中,我们使用Bi-GRU来获取word-level Embedding, 使用CNN来获取char-level Embedding。我们使用 Highway Networks来将二者结合。
我们使用Highway networks 来强调char-level的影响。
给定输入 , 其中 是one-hot 编码。矩阵 ( 是词向量的维度,|V|
是词表的大小) 来将词转化为词向量:
我们将forward与backward的最终状态结合起来:
可以直接采用与训练char-level向量
character-level输入, 最初的句子被分割成字符序列,序列中包含特殊字符, 如空格。我们首先通过lookup table将character转化为 字符向量 ,转化与上面类似。
有了字符向量序列 ,我们将其构成矩阵 来运行卷积以及池化操作:
其中, 表示词向量的维度
表示卷积层的权重矩阵, 表示使用卷积核c的卷积输出。我们使用p个卷积核来进行卷积操作,并将它们的输出结合:
我们这里使用Highway Networks来强调char-level 的影响,
损失函数: