返回介绍

数学基础

统计学习

深度学习

工具

Scala

六、ELMo

发布于 2023-07-17 23:38:25 字数 20421 浏览 0 评论 0 收藏 0

  1. fastTextFacebook AI Research2016 年开源的文本分类器,其提出是在论文 《Bag of Tricks for Efficient Text Classification》 中。目前 fastText 作为文本分类的基准模型。

    fastText 的优点是:在保持分类效果的同时,大大缩短了训练时间。

    • 在 8个 数据集上,不同模型的测试误差:

    • 单个 epoch 的训练时间(char-CNNVDCNNfastText ):

  2. fastText 的网络结构与 word2vecCBOW 非常相似。区别在两个地方:

    • 输入:单篇文档的所有单词都作为网络的输入。因此这里的参数 C 是动态的,它等于当前文档的单词数量。

    • 输出:这里网络的输出是各类别的概率。通常文本分类的类别K$ K $ 远小于词典大小V$ V $ ,因此可以不必进行分层 softmax 和负采样。

  3. 隐向量为所有输入单词映射结果的均值:

    (110)h=1CWT(x1+x2++xC)=1C(wI1+wI2++wIC)

    其中:Ii$ I_i $ 表示第i$ i $ 个输入单词在词汇表V$ \mathbb V $ 中的编号,wj$ \mathbf{\vec w}_j $ 为矩阵W$ \mathbf W $ 的第j$ j $ 行,它是对应输入单词的输入向量。

    单个样本的损失函数为(k$ k^* $ 为真实类别标签):

    (111)E=uk+logk=1Kexp(uk)=wkh+logk=1Kexp(wkh)

    定义每个输出单元的预测误差ek=Euk=yktk$ e_k=\frac{\partial E}{\partial u_k}=y_k-t_k $ ,与CBOW 多个单词上下文的推导相同:

    • 更新W$ \mathbf W^\prime $ :

      (112)wk(new)=wk(old)ηekh,k=1,2,,K

      其中h=1C(wI1+wI2++wIC)$ \mathbf{\vec h}=\frac 1C (\mathbf{\vec w}_{I_1}+\mathbf{\vec w}_{I_2}+\cdots+\mathbf{\vec w}_{I_C}) $ 。

    • 更新W$ \mathbf W $ :

      (113)wIi(new)=wIi(old)1CηEH,i=1,2,,C

      其中 :

      • EH=We=k=1Kekwk$ \mathbf{\overrightarrow {EH}} = \mathbf W^\prime \mathbf{\vec e} =\sum_{k=1}^Ke_k \mathbf{\vec w}^{\prime }_k $ ,它是所有类别输出向量的加权和,其权重为ek$ e_k $ 。

      • Ii$ I_i $ 为第i$ i $ 个输入单词在词表V$ \mathbb V $ 中的编号。

  4. 如果考虑词序则分类的效果还可以进一步提升,因此在 fastText 中可以引入 N-gram 特征。如:2-gram 合并文档中连续的2个单词作为特征。

  5. fastText 生成的词向量嵌入的是分类的信息,而word2vec 生成的词向量更多的嵌入了通用语义信息。

    • fastText 词向量得到的相似度是基于分类类别的相似。如:商品评论情感分类任务中,好吃好玩 是相似的,因为它们都是正向情感词。

    • word2vec 词向量得到的相似度是基于语义的相似。此时 好吃美味 是相似的,因为这二者经常出现在类似的上下文中。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文