首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

473个模型试验告诉你文本分类中的最好编码方式

在不同层面上使用不同编码方式和语言模型在文本分类任务中到底效果怎样?Yann LeCun 和 Xiang Zhang 在四种语言、14 个数据集上测试了 473 个模型,并希望能找到最好的编码方法。

论文地址:https://arxiv.org/pdf/1708.02657.pdf

本论文实证研究了在文本分类模型中汉语、日语、韩语(CJK)和英语的不同编码方式。该研究讨论了不同层面的编码,包括 UTF-8 bytes、字符级和词汇级。对于所有的编码层面,我们都提供了线性模型、fastText (Joulin et al., 2016) 和卷积网络之间的对比。对于卷积网络,我们使用字符字形(character glyph)图像、one-hot(或 one-of-n)编码和嵌入方法比较了不同的编码机制。总的来说,该实验涉及 473 个模型,并使用了四种语言(汉语、英语、日语和韩语)的 14 个大规模文本分类数据集。该研究所得出来的一些结论:基于 UTF-8 字节层面的 one-hot 编码在卷积网络中始终生成优秀结果;词层面的 N 元线性模型即使不能完美地分词,它也有强大的性能;fastText 使用字符层面的 N 元模型进行编码取得了最好的性能,但当特征太多时容易过拟合。

2. 卷积网络的编码机制

为了进行客观地对比,所有的卷积网络除了最先几层外都共享相同的设计。我们称相同的部分为分类器,前面不同的几层称为编码器。

2.1 字符字形(Character Glyph

字形(Glyph)指的是以书写为目的的可读字符。CJK 就是由各种拓扑字形组成的语言,它的笔画和部首代表不同的语义,因此字符字形是一种可行的编码解决方案。

2.2 One-hot 编码

在最简单的 One-hot 编码中,每一个实体必须使用维数等于所有可能实体数的向量表达,并且除了该实体在词汇表中的索引为 1 以外,其它元素都为 0。

2.3 嵌入

我们使用术语「嵌入」表达关联每一个实体的固定长度向量。这些向量一般经过随机初始化,并且通过无监督学习或在当前任务联合学习。嵌入模型的优势在于不必要构建 One-hot 向量,因此嵌入模型的内存占用要显著地比 OnehotNet 少。最后,嵌入方法基本上可以应用于任意编码层面。

图 2:不同模型测试误差的箱线图

图 3:Joint binary 数据集的泛化差距(Generalization gap)

图 4:不同模型泛化差距的箱线图

表 12:在 Joint binary 数据集上遍历一百万样本的估计训练时间,第四列时间估计以秒为单位。这些估计只供参考,训练时间还相当依赖于真实的计算环境。

图 5:不同模型遍历 1 百万样本所需要的时间,时间轴为对数尺度。

表 13:GlyphNet 和 OnehotNet 的训练误差

表 14:EmbedNet 的训练误差

转载自机器之心。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180212B0P68P00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券