引言

本文是对《Convolutional Neural Networks for Sentence Classification》的原理解读,简称TextCNN。

作者提出了一种基于CNN的新的文本分类模型。该模型结构简单,支持静态词向量和可微调词向量。作者做了一系列实验验证了该方法的优势,在各种文本分类模型上取得state-of-the-art的结果。

模型结构



如上图所示。

  1. 输入长度为n的序列,序列中每个词向量维度为k。模型输入维度为(n, k)
  2. 在词向量阶段,作者也使用了不同的处理方法。尝试了以下三种词向量获取方式:
  • 使用预训练好的词向量,在模型训练阶段词向量可进行fine-tuning。
  • 使用预训练好的词向量,在模型训练阶段词向量冻结,不进行fine-tuning。
  • 使用两个词向量获取通道,一个是冻结的,一个可fine-tuning的。

实验结果显示,使用预训练好的词向量,在模型训练阶段词向量进行fine-tuning的方式通常能取得最优结果,个别情况下双通道方式能取得最有结果。

3. 输入经过尺寸为(h, k)的卷积核,这里跟图像卷积不同是,这里卷积核的第二维的大小跟词向量的维度大小相同,就是此处的卷积核在扫描特征的时候只沿着序列的方向进行扫描,生成(n-h+1,)的一维向量。

直观上理解,相当于使用卷积核提取窗口大小为h的n-gram特征。

4. 多个卷积核生成多个(n-h+1,)的n-gram特征。

5. 卷积后面跟着GlobalAvgMaxpooling,这样无论是多长的序列进来,输出都是等长的。

6. 使用了多个不同尺寸的卷积核,相当于提取了不同窗口大小的n-gram特征。

正则

  1. 在倒数第二层使用了l2正则
  2. 在隐藏层使用了 Dropout

优缺点

  1. 通过CNN的方式捕捉n-gram特征,本质上是词袋模型。计算速度快,预性能也不错。
  2. 可解释行不强

TextCNN论文解读的更多相关文章

  1. itemKNN发展史----推荐系统的三篇重要的论文解读

    itemKNN发展史----推荐系统的三篇重要的论文解读 本文用到的符号标识 1.Item-based CF 基本过程: 计算相似度矩阵 Cosine相似度 皮尔逊相似系数 参数聚合进行推荐 根据用户 ...

  2. CVPR2019 | Mask Scoring R-CNN 论文解读

    Mask Scoring R-CNN CVPR2019 | Mask Scoring R-CNN 论文解读 作者 | 文永亮 研究方向 | 目标检测.GAN 推荐理由: 本文解读的是一篇发表于CVPR ...

  3. AAAI2019 | 基于区域分解集成的目标检测 论文解读

    Object Detection based on Region Decomposition and Assembly AAAI2019 | 基于区域分解集成的目标检测 论文解读 作者 | 文永亮 学 ...

  4. Gaussian field consensus论文解读及MATLAB实现

    Gaussian field consensus论文解读及MATLAB实现 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 一.Introduction ...

  5. zz扔掉anchor!真正的CenterNet——Objects as Points论文解读

    首发于深度学习那些事 已关注写文章   扔掉anchor!真正的CenterNet——Objects as Points论文解读 OLDPAN 不明觉厉的人工智障程序员 ​关注他 JustDoIT 等 ...

  6. NIPS2018最佳论文解读:Neural Ordinary Differential Equations

    NIPS2018最佳论文解读:Neural Ordinary Differential Equations 雷锋网2019-01-10 23:32     雷锋网 AI 科技评论按,不久前,NeurI ...

  7. [论文解读] 阿里DIEN整体代码结构

    [论文解读] 阿里DIEN整体代码结构 目录 [论文解读] 阿里DIEN整体代码结构 0x00 摘要 0x01 文件简介 0x02 总体架构 0x03 总体代码 0x04 模型基类 4.1 基本逻辑 ...

  8. 【抓取】6-DOF GraspNet 论文解读

    [抓取]6-DOF GraspNet 论文解读 [注]:本文地址:[抓取]6-DOF GraspNet 论文解读 若转载请于明显处标明出处. 前言 这篇关于生成抓取姿态的论文出自英伟达.我在读完该篇论 ...

  9. 《Stereo R-CNN based 3D Object Detection for Autonomous Driving》论文解读

    论文链接:https://arxiv.org/pdf/1902.09738v2.pdf 这两个月忙着做实验 博客都有些荒废了,写篇用于3D检测的论文解读吧,有理解错误的地方,烦请有心人指正). 博客原 ...

随机推荐

  1. 【Linux】Centos7 安装redis最新稳定版及问题解决

    ------------------------------------------------------------------------------------------------- | ...

  2. 【Oracle】B-tree和函数索引

    转自:https://www.cnblogs.com/yumiko/p/5957613.html 函数索引 1.1 概述 在实际应用中,当条件列使用函数运算进行数据匹配时,即使该列建立了索引,索引也不 ...

  3. Unsafe Filedownload - Pikachu

    概述: 文件下载功能在很多web系统上都会出现,一般我们当点击下载链接,便会向后台发送一个下载请求,一般这个请求会包含一个需要下载的文件名称,后台在收到请求后会开始执行下载代码,将该文件名对应的文件r ...

  4. C++:I/O流的概念和流类库的结构

    一.C++输入输出包含以下三个方面的内容: 对系统指定的标准设备的输入和输出.即从键盘输入数据,输出到显示器屏幕.这种输入输出称为标准的输入输出,简称标准I/O. 以外存磁盘文件为对象进行输入和输出, ...

  5. 【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据

    任务描述 本次集中介绍使用Windows和Linux()搭建本地Redis服务器的步骤,从备份的RDB文件中加载数据,以及如何生成AOF文件和通过AOF文件想已经运行的Redis追加数据. 操作步骤 ...

  6. Qt Undo Framework

    Qt undo/redo 框架 基于Command设计模式 支持命令压缩和命令合成 提供了与工具包其他部分融合很好的widgets和actions 术语(Terminology) Command - ...

  7. elasticsearch-head:5连接elasticsearch 6.x无法显示浏览数据的解决方案

    问题 在docker安装了elasticsearch-head:5和elasticsearch:6.3.2 打开界面连接es时发现数据无法展示. 解决方案 因docker使用的版本问题,可能名称略有变 ...

  8. java虚拟机入门(三)- 你了解对象吗

    对象对于java程序员来说,那是想要多少就有多少,所以那些嘲笑程序员的单身狗,哼,只有无知使你们快乐,想我大java开发,何曾缺少过对象.我们不仅仅知道创建对象,还知道创建对象的过程是啥样的,不信?往 ...

  9. Docker逃逸

    初识Docker逃逸 - FreeBuf网络安全行业门户 https://www.freebuf.com/articles/container/242763.html

  10. 在线配置热加载配置 go-kratos.dev 监听key

    paladin https://v1.go-kratos.dev/#/config-paladin example Service(在线配置热加载配置) # service.go type Servi ...