概述
Extreme multi-label就是说总的标签量非常多, 成千上万甚至数百万.
Extreme multi-label text classification主要难点在于数据稀疏, 并且计算量较大(标签太多).
本文作者对textcnn进行改进, 使其在extreme multi-label text classification问题上获得更好的效果.
模型
模型是基于text-cnn改进的.
创新点:
- dynamic max pooling.
- 改进了损失函数
- 在pooling和输出层之间加了一个bottleneck layer, 减小模型规模, 加快训练.
Dynamic max pooling
text-cnn是对每个feature map做max pooling, 所以每个feature在pooling之后只得到一个特征.
作者认为, 这样做pooling, 如果句子很长, 会损失很多信息, 并且没有利用任何位置信息.
对此, 作者提出使用Dynamic max pooling, 对于每个feature map, pooling生成p个特征. 具体做法如下,
- 对于一个包含m个词的句子, 把这个句子分成p块, 每一块分别做max-pooling然后进行拼接.
损失函数
损失函数使用binary cross-entropy, 而不是 softmax cross-entropy