swem词向量训练


  • 核心层

    Baseline Needs More Love

      种子杯决赛答辩上面,第一名的队伍用到了一个叫做swem的模型,赛后读了一下这篇2018年5月份的论文.模型只使用pooling操作不断提取文本当中的信息,除了最后一层分类层外,没有任何其他参数.可以想象到模型训练速度和预测速度都是相当快的.

    • paper:https://arxiv.org/abs/1805.09843
    • 模型实现(tensorflow): https://github.com/dinghanshen/SWEM

    模型结构

      模型核心在于设计三个pooling操作解决文本分类当中的三个核心问题

    1. SWEM-aver:平均池化, 用于提取文本语义信息
    2. SWEM-max:最大池化, 用于提取文本关键词信息
    3. SWEM-hier:分级池化, 用于提取文本当中的n-gram信息

      最大池化和平均池化就不解释了, 这里解释一下分级池化(Hierarchical Pooling),分级池化可以分为以下几个步骤:

    • 构建步长为n的滑窗提取n个字词
    • 在每个滑窗上使用平均池化
    • 在平均池化取得的特征上面使用最大池化进行下采样

    参数量比较

    0_1541502181833_bb13d14c-6a0f-43ac-bee0-da7836605496-image.png
      这个池化的操作很巧妙了,完全基于词向量去做,从语义、关键词、语序几个层面去提取信息.后面可以尝试以下使用swem训练词向量再用到cnn等模型里去进行语义提取.


 

Copyright © 2018 bbs.dian.org.cn All rights reserved.

与 Dian 的连接断开,我们正在尝试重连,请耐心等待