• 论文笔记--Enriching Word Vectors with Subword Information


    1. 文章简介

    • 标题:Enriching Word Vectors with Subword Information
    • 作者:Piotr Bojanowski, Edouard Grave, Armand Joulin, Tomas Mikolov
    • 日期:2017
    • 期刊:TACL

    2. 文章概括

      文章提出了FastText模型,在传统的skip-gram模型[1]的基础上增加了对字符级信息的捕捉,增强模型对合成词之间、相同词语的不同词性之间的理解能力。模型的整体架构基于skip-gram,除了增加一项负损失函数。

    3 文章重点技术

    3.1 FastText模型

      给定大小为 W W W的词表,其中每个单词可以表示为它的索引 w ∈ { 1 , … , W } w\in \{1, \dots, W\} w{1,,W},模型的目标为学习每个单词 w w w的向量表示。参考skip-gram[1]的方法,我们建模的思想为通过当前单词预测它的上下文:给定单词序列 w 1 , … , w T w_1, \dots, w_T w1,,wT,模型需要最大化 ∑ t = 1 T ∑ c ∈ C t log ⁡ p ( w c ∣ w t ) \sum_{t=1}^T \sum_{c\in \mathcal{C}_t} \log p(w_c|w_t) t=1TcCtlogp(wcwt),其中 C t \mathcal{C}_t Ct表示单词 w t w_t wt的上下文索引。接下来我们通过使用每个单词的向量表示对条件概率 p ( w c ∣ w t ) p(w_c|w_t) p(wcwt)建模:考虑一个得分函数 s s s将当前单词与其上下文单词的向量映射为一个实数得分,则我们可以通过Softmax将 s s s转化为上述条件概率:
    p ( w c ∣ w t ) = e s ( w t , w c ) ∑ j = 1 W e s ( w t , j ) p(w_c|w_t) = \frac{e^{s(w_t, w_c)}}{\sum_{j=1}^W e^{s(w_t, j)}} p(wcwt)=j=1Wes(wt,j)es(wt,wc),但这种方法只能预测一个上下文单词 w c w_c wc的条件概率。为了解决该问题,我们可以将问题转化为一系列独立的二分类任务,每个分类任务的目的是预测上下文单词是否出现。
      对每个分类任务:对于给定的 t t t位置的单词,我们要预测位置为 c c c的上下文单词。区别于skip-gram,我们采用二分类逻辑损失函数得到负对数似然函数:
    log ⁡ ( 1 + e − s ( w t , w c ) ) + ∑ n ∈ N t , c log ⁡ ( 1 + e s ( w t , n ) ) \log (1 + e^{-s(w_t, w_c)}) + \sum_{n\in \mathcal{N}_{t, c}}\log (1 + e^{s(w_t, n)}) log(1+es(wt,wc))+nNt,clog(1+es(wt,n)),进一步,我们可以通过向量点积来表示得分函数 s s s,即 s ( w t , w c ) = u w t T v w c s(w_t, w_c) = \bold{u}^T_{w_t} \bold{v}_{w_c} s(wt,wc)=uwtTvwc,其中 u w t , v w c \bold{u}_{w_t}, \bold{v}_{w_c} uwt,vwc分别表示当前单词和其上下文单词对应的向量表示。

    3.2 Subword unit

      为了捕捉单词内部结果,文章提出了另外一种得分函数 s s s:将每个单词 w w w表示为字符的n-gram,并在单词的开始和结束位置增加 < a n d > <and>来区分同序列其它单词。例如,考虑单词where,当 n = 3 n=3 n=3时,它的所有n-grams为 。注意这里的her与单词可通过<>进行区分。
      接下来计算上述全部n-grams和单词整体()的向量表示,再求和得到新的得分函数
    s ( w , c ) = ∑ g ∈ G w z g T v c s(w, c) = \sum_{g\in \mathcal{G}_w} \bold{z}_g^T \bold{v}_c s(w,c)=gGwzgTvc,其中 G w \mathcal{G}_w Gw表示单词 w w w的所有n-grams(包含单词自身)的集合。

    4. 文章亮点

      文章提出了FastText模型,通过采用字符级别的n-grams向量表示将subword信息捕捉到模型中。实验表明文章提出的模型比skipgram, cbow表现更好,且对OOV单词的处理能力更强。数值实验表明,更大的n-grams对结果提升有帮助,文章建议采用 n − g r a m s = 3 , … , 6 n-grams = 3, \dots, 6 ngrams=3,,6

    5. 原文传送门

    Enriching Word Vectors with Subword Information

    6. References

    [1] 论文笔记–Efficient Estimation of Word Representations in Vector Space

  • 相关阅读:
    Python中的协程
    openai/CLIP 代码样例报告
    如何读书
    网申线上测评,要不要找人代做在线测评?
    Redis介绍
    Android ASM插桩探索及实战
    MySQL性能调优关注点和思路
    【数据结构-字符串 三】【字符串转换】字符串解码
    Lumiprobe非荧光炔烃研究丨DBCO NHS 酯
    C# vs2017的bug code generation for property Controls failed......
  • 原文地址:https://blog.csdn.net/weixin_38124427/article/details/133693128