可乘权重算法更新规则
最后更新于
最后更新于
首先,我们给出可乘权重算法的更新规则,并在回答线性查询的语言中证明其收敛性定理。将数据库 视为数据全体 上的概率分布将很方便。也就是说,让 表示集合 上的概率分布集合,我们有 。请注意,我们始终可以缩放数据库以具有此属性,而无需更改任何线性查询的规范化值。
定理 4.10 固定一类线性查询 和一个数据库 ,并让 描述 上的均匀分布: 。 现在考虑数据库的最大长度序列 ()。如 算法5 中所述,通过设置 来生成序列,其中对于每个 , 和 满足以下两个条件:
则:
我们将会表明:
1.势函数开始时不会太大。
2.在每个更新回合中,势函数都会大量减少。
3.势函数总是非负的。
综合这三个事实,我们将得出这样的结论:更新回合不能太多。 现在让我们开始分析收敛定理的证明。
我们从一个简单的事实开始:
【命题 4.11 证毕】
引理 4.12
【引理 4.12证毕】
最后可知:
【定理 4.10 证毕】
注意,如果我们证明这个定理,我们将证明对于序列中的最后一个数据库 ,对于所有 ,否则可能会扩展序列,与定理中的序列最大值 矛盾。换句话说,给定有区别的查询 ,可乘权重更新规则只需要很少的步骤 就可以对线性查询 的任何类别学习私有数据库 ,直到一定的精度 。我们将在下面的在线可乘权重算法中使用这个定理。在线可乘权重算法将始终在 时刻具有对数据库 的公开近似值 。给定输入查询 ,该算法将计算 差别的噪声近似值。如果(噪声)差很大,则该算法将为真实答案 提供噪声近似 ,其中 是从一些适当选择的 Laplace 分布得到。并且乘法权重算法更新规则将用参数 调用。如果该可乘权重算法更新规则仅当满足 定理 4.10 条件 1 与 定理 4.10 条件 2 时被调用,则我们应用 定理4.10 可以得到这样一个结论:更新不那么多(因为 不是太大),并且得到的 可以为所有 中查询提供准确的答案(因为没有剩余其他有区别的查询了。)
通过跟踪在 时刻测量假设数据库 和真实数据库 之间相似性的势函数 我们证明了 定理4.10 。(注:势函数(potential function):在平摊分析(amortized analysis)的势能法中,用来描述过去资源的投入可在后来操作中使用程度的函数。在线算法通常使用平摊分析。)
【证明定理 4.10】 我们必须证明任何属性为 ,且 的序列 不能有 。
我们将势函数定义如下。回想一下我们将数据库作为概率分布(即,假设 )。当然,这不需要实际修改实际数据库。当将数据库视为概率分布时,势函数是 和 之间的相对熵(或 ):
命题 4.11 对于所有的 , 且 。
【证明 命题 4.11】 证明相对熵(KL-散度)始终是非负的,需要借助对数和不等式,该不等式表示如果 是非负数,则:
其次证明 。首先回想一下 ,则 。注意, 为概率分布,则:当 时,相对熵 有最大值,且为 。
我们现在要讨论的是,在每一步,势函数至少下降了 。因为势开始于 ,并且必须总是非负的,所以我们知道在数据库更新序列中最多可以有 步。首先,让我们看看每一步的势到底下降了多少:
【证明】 由于 ,则:
第一个不等式由下面这个事实得出(注:泰勒公式和 ):
第二个不等式由对数不等式: 得到。
有了前面的命题和引理之后,可以完成剩下的证明。 根据 数据库/查询序列 的条件(在上述 定理4.10 的假设中进行了描述),对于每一个 :
因此,当且仅当 时,。 特别地,如果 ,则 ,如果 ,则 。 因此,通过 引理4.12 和 可乘权重更新规则中所述的 有:
变换得到:。