这里,
τ
是温度参数,
sim
()是诸如余弦相似
度的相似度函数,并且(u
i
,
u
+
)、(u
i
,
u
-
)分别是正对和负对(假设所有向量被归一
化)。在训练过程中,通常通过对同一样本进
行扩增来获得阳性对,并且阴性样本是小批次
中的其他样本这个过程学习在一定程度上对噪
声因素保持不变的表示
4
我们的方法:爱
LOVE ( Learning Out-of-Vocabulary
Embeddings
)利用对比学习的原理,最大限度
地提高目标向量和生成向量之间的相似性,并
将否定向量对分开。图
3
显示了我们框架的概
述 。 它的 灵 感 来 自 视 觉 表 征 学 习 ( Chen et
al. ,2020),但不同之处在于,正对中的一个
是从预先训练的嵌入获得的,而不是使用两个
增强版本。在这个框架中,我们采用了五种新
颖的词级此外,我们发现在训练过程中添加硬
否定可以有效地产生更好的表示。我们在编码
器层之后删除了非线性投影头,因为它的改进
是针对视觉领域中的此外,我们的方法不是一
个无监督的对比学习框架,而是一个监督学习
方法。
我们的框架从原始词汇表中提取一个词,
数据 例如,
“misspelling”
在去掉一个字
母
“s”
后变成了
“mispelling”
。接下来,我们从
原始单词的预训练嵌入中获得目标向量,并为
损坏的单词生成向量这两个向量是一对正样
本,我们最大化它们之间的相似性,同时使负
对(同一小批次中的其他样本)的距离尽可能
大。如前所述,我们使用对比损失作为目标函
数(公式3)。我们将在下面详细介绍框架中
的五个关键要素(类似于表1中的要素):输
入法,编码器,损失函数,数据增强和硬否定
的选择。
4.1
输入法
我们的目标是使用表面形式来为单词赋予向
量。因此,问题是如何设计第
3.1
来表示每
个输入单词。 MIMICK(Pinteret al. ,2017)
直接使用字符序列(见表
1
)。然而,这丢失
了词素的信息,即,一系列的字符共同构成了
一 个 意 义 。 因 此 ,
FastText
(
Bojanowski et
al. ,2017)采用字符n-gram。然而,这样的n
元语法是高度冗余的。例如,如果我们使用长
度为3到5的子串来表示单词拼写错误,我们得
到一个包含
24
个
n-gram
字符的列表因此,像
BERT一样,我们使用WordPiece(Wu et al. ,
2016
),词汇量大约为
30000
,以获得输入单
词的有意义的子单词。对于单词拼写错误,这
产生
{miss
,
##pel
,
##ling}
。然而,如果
我们只是交换两个字母(比如打字错误),那
么 序 列 就 完 全 不 同 了 :
{mi
,
##sp
,
##sell,##ing}。因此,我们同时使用字符
序列和子字(图
A1
)。
我们缩小我们的词汇量,通过词干提取所有
单词,只保留每个单词的基本形式,并通过删
除带有数字的单词这将词汇量从
30 000
减少到
21 257
, 而 不 会 太 多 地 降 低 性 能 ( 第
A.1
节)。
4.2
编码器
现在让我们设计3.1节中提到的函数φ()。我
们正在寻找一个可以编码局部特征和全局特征
的函数。局部特征是字符n-gram,它提供了对
字符交换或遗漏等微小变化的鲁棒性。全局特
征结合了局部特征,而不管它们之间的距离。
对于拼写错误的单词,可以通过结合单词开头
和结尾的局部信息来获得前缀和后缀的错误模
式。传统的CNN、RNN和自我注意力不能同
时提取这种局部和全局信息。因此,我们设计
了一个新的位置注意模块。假设我们有一个前
面提到的混合输入序列和一个对应的嵌入矩阵
V R
| V|
其中d是向量的维数。
然后,输入可以由向量列表表示:X
=
{
x
1
,
x
2
,
.
,
xn} ∈ R
n×d
,其中
n
是