Does Learning Require Memorization? A Short Tale about a Long Tail

Feldman V. Does learning require memorization? a short tale about a long tail. In Proceedings of the 52nd Annual ACM SIGACT Symposium on Theory of Computing, 2020.

理论分析了神经网络记忆 atypical (占比很少的类, 长尾部分) 样本的必要性.

主要内容

能力有限, 感兴趣的还是直接读原文比较好.

符号

注: 下面的 E[h(x)y]表示E[1[h(x)y]].

不同占比的数据和误差的关系

假设我们所关系的数据样本的集合为X, 确定fF后便相当于确定了该集合上的标签了. 实际中的训练集和测试集往往并不覆盖整个X, 作者假设根据先验信息

π=(π1,π2,,πN),

对于任意xX, 从中采样概率记为px (放回的独立采样), 得到一个关于样本x的分布D, 即:

D(x)=pxxpx,

注意, 为了满足概率分布的性质, 这里我们归一化了.
从上面的分析可以看到, 分布D本身也是一个随机变量, 不妨假设其服从分布:

DDπX.

所以, 实际上D,x的联合分布为:

P(x,D)=P(x|D)P(D)=D(x)P(D).

有了分布D和映射fF后, 我们从中独立地采样n次, 得到训练集

S=(x1,y1=f(x1)),(x2,y2),,(xn,yn).

于是D,f,S三者有联合分布G, 并定义其在S=Z下的条件分布为:

G(|Z).

我们设计了一个算法 A, 其产出

hA(S),

用以拟合f.
我们通常用

errP(A,S):=EhA(S)[errP(h)]

来衡量算法A利用训练集S在测试集P上表现, 这里需要注意的是: 训练集的标签由f决定, 测试集的标签由f确定, ff也是可能的 (虽然在某些情况下难以理解).
于是在不同数据集下的平均损失为

err¯(π,F,A):=EDDπX,fF[errD,f(A)].

通常, 我们还是希望训练集和测试集满足的分布D,f是一致的, 这种情况下, 可以关注如下:

EDD,fF,S(D,f)nerrD,f(A,S).

又因为S通常是已知的, 故我们实际上更关注条件误差:

err¯(π,F,A|S=Z):=E(D,f)G(|S=Z)errD,f(A,Z).

本文主要关注该条件误差和算法A对于在数据集S中出现次数较小的样本的误差的关系.
我们可以定义

errnS(h,):=|{xXS=|h(x)y}|,errnS(A,):=EhA(S)[errnS(h,)],

该指标衡量了算法A对于那些仅在数据集S中出现的数据的误差,

定理2.3

定理2.3:π为一频率先验, π¯N为其边缘分布:

π¯N(α):=P(D=α),

FXY上函数的分布. 则对于任意的算法A和数据集Z有:

err¯(π,F,A|Z)opt(π,F|Z)+[n]τerrnZ(A,),

其中

τ:=Eαπ¯N[α+1(1α)n]Eαπ¯N[α(1α)n].

这个定理主要告诉我们, 这个条件误差可以拆分为不同占比的x所对应的损失的和.
可以预见, 对于那些占比很小的样本 (即很小), 倘若τ很大, 那么算法A的误差不太大的前提是该算法对这些小样本也要照顾地很好, 反之, 则这些样本起到了无关紧要的作用.

引理2.5

自然地, 接下去的问题就是讨论这些τ的大小, 为简单起见, 作者主要讨论了τ1的情况.

引理2.5: 对于任意的频率先验π和足够大的n,N:

τ115nweight(π¯N,[13n,2n]),

如果πmax<1/200, 那么

π117nweight(π,[12n,1n]).

可以发现, 当频率先验主要集中在较小的范围内时, 忽略那些占比较小的样本是理智. 个人感觉, 这种情况并非是特殊的, 比如在N>>n的情况下, 这种情况应该还是比较容易发生的吧.

引理2.6

作者又给了一种特殊情况:

引理2.6:π为一频率先验, 存在θ12n使得weight(π¯N,[θ,tn])=0. 其中$t=\ln (1/ (\theta\beta)) + 2, \beta = \mathrm{weight}(\bar{\pi}^N, [0, \theta]) ,\tau_1 \le 2\theta$.

这种情况下, 若θ=1/(2n2), 则条件误差最多为1/n.

Memorization

神经网络为人所诟病的一个问题是由于其强大的拟合能力, 常常导致过拟合.
也就是说, 神经网络具备直接记忆样本的能力, 那么为什么需要这种特殊的记忆能力呢?

首先我们定义:

mem(A,S,i):=|PhA(S)[h(xi)=yi]PhA(Si)[h(xi)=yi]|

为算法A关于样本xi的记忆值. 其反应了算法是否需要'见过'样本xi才能准确判断.

注: Si表示数据S中去掉(xi,yi).

引理4.2

引理4.2: 对于分布D和标签先验F,

EfF,S(D,f)n[errnS(A,1)]EfF,S(D,f)n[i[n],xiXS=1PhA(Si)[h(xi)yi]mem(A,S,i)].

从该引理可知, 算法A若想要在小样本上的误差足够小, 那么mem(A,S,i)肯定会比较大, 这意味着A实际上是在通过记忆这些样本的方式来学习他们.
联系之前的, 当小样本学习对总体的误差很重要的时候, 那我们不得不选择一些具有记忆能力的算法!

其它

作者还讨论了混合模型的情况以及差分隐私, 能力有限不多赘述.

posted @   馒头and花卷  阅读(143)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2021-04-06 Causal Intervention for Weakly-Supervised Semantic Segmentation
2019-04-06 FAST MONTE CARLO ALGORITHMS FOR MATRICES II (快速的矩阵分解策略)
点击右上角即可分享
微信分享提示