©PaperWeekly 原创 · 作者 | 苏剑林
单位 | 追一科技
研究方向 | NLP、神经网络
众所周知,分类模型通常都是先得到编码向量,然后接一个 Dense 层预测每个类别的概率,而预测时则是输出概率最大的类别。但大家是否想过这样一种可能:训练好的分类模型可能存在“无法预测的类别”,即不管输入是什么,都不可能预测出某个类别 k,类别 k 永远不可能成为概率最大的那个。
当然,这种情况一般只出现在类别数远远超过编码向量维度的场景,常规的分类问题很少这么极端的。然而,我们知道语言模型本质上也是一个分类模型,它的类别数也就是词表的总大小,往往是远超过向量维度的,那么我们的语言模型是否有“无法预测的词”?(只考虑 Greedy 解码)
是否存在
ACL 2022 的论文《Low-Rank Softmax Can Have Unargmaxable Classes in Theory but Rarely in Practice》[1] 首先探究了这个问题,正如其标题所言,答案是“理论上存在但实际出现概率很小”。
首先我们来看“理论上存在”。为了证明其存在性,我们只需要具体地构建一个例子。设各个类别向量分为 ,偏置项为 ,假设类别 k 是可预测的,那么就存在 ,同时满足:
反过来,如果类别 k 不可预测,那么对于任意 ,必须存在某个 ,满足:
由于现在我们只需要举例子,所以简单起见我们先考虑无偏置项的情况