在不显示值的情况下估计分布式节点之间的百分位数


23

我有一个非常独特的问题要解决,我希望这里的人可以让我对如何最好地解决它有所了解。


问题:假设在一组参与者之间共享N个号码的列表,使得没有一个参与者实际知道他们共享的任何号码。所有参与者都知道N(数字列表的大小)和列表上所有数字的总和,但仅是先验的。

通过一起工作,可以比较两个共享数字a和b,使参与者了解语句“ a <b”是否为真,但仅此而已。但是,这是一件极其昂贵的事情(阅读:完成单个比较可能要花费几秒钟,甚至是几分钟)。有关如何进行此操作的更多信息,请参见本文末尾。

最终,各方希望输出列表中哪些索引对应于列表中的“前K%”(最大的K%)共享数。当然,这可以通过排序或使用“前K个”选择算法来完成。但是,这些往往会使用大量比较,这是可以避免的。(这些是O(n log n)或O(n),具有相当大的隐藏常数。)

另一种选择是“猜测”数字X,其中(1-K)%小于X并且K%大于。然后,您可以将每个元素与X进行比较,看看有多少个元素较大,有多少个元素较小。如果您的猜测是错误的,请使用二进制搜索之类的方法进行修改,直到收敛到正确的解决方案为止。如果您的猜测是正确的,那么需要进行的比较少得多。

所以,我的问题是

仅给出N和总和,“预测” X的最佳方法是什么?

当然,这将取决于基础分布。对于不同的用例,基本的分布可能会有所不同,但将是已知的,因此,我对所有常见解决方案(正态,统一,指数,也许还有其他)的良好解决方案感兴趣。我也很想听听有关如何最好地进行“二元”搜索以最大程度减少步骤的建议(假设对基础分布有假设)。


附录:使用Shamir的秘密共享方案在参与者之间共享列表中的每个值。假设有M个参与者,并且列表的长度为N。那么,列表上的第i个数字由某个有限域F上阶次为M-1 的多项式表示的常数项是共享,则从F随机选择所有其他系数。然后,第j个参与者的份额为,fi˚F Ĵ 1 Ñfifi(j)1iN。鉴于此份额,参与者没有有关该号码的信息(从信息论的角度而言);实际上,没有适当的参与者子集可以结合知识来学习有关共享号码的任何信息。但是,使用复杂的安全多方计算技术,可以在不透露任何更多信息的情况下确定一个共享值是否小于另一个共享值。这种技术需要所有参与者的配合,这就是为什么这样做的成本如此之高,并且应该尽可能少地进行几次的原因。


这听起来很有趣,但是我还不完全了解该过程。您能否澄清,特别是第二段?有多少参与者M是否大于,小于或等于N?每个参与者都知道一些数字子集吗?显然,他们不可能都只是知道ñ和总和从那以后就没有办法给聚集有关信息问任何问题或协作的方式一个< b。可以问的问题种类是否有限制?期待您的编辑。MMNNa<b

1
因为这个问题似乎比统计问题更具算法性(在这方面要求澄清的请求没有得到回应),并且统计界还没有提供切实可行的答复,所以让我们迁移到TCS看看它是否引起了人们的兴趣。
whuber 2011年

6
真正的问题似乎只是以下内容:“如果我们知道分布,我们如何在基于比较的选择算法的设计中利用这些信息?该算法应使用尽可能少的比较(预期;常数因子)物)。” 我说对了吗?
Jukka Suomela 2011年

2
您是否考虑过姚明的百万富翁问题?它允许进行安全的比较,而计算量却少得多。
MS Dousti 2011年

3
(k,n) nk(n,n)k<<n
Massimo Cafaro

Answers:


1

您似乎在问两个相关的问题:

  1. “列表中的哪些索引对应于顶部”
  2. “估计百分位数”,“…K%较大的数字X”

这些可能需要非常不同数量的成对比较。

可能会产生重大影响的另一个方面是共享哪些信息。每个人都知道他收到的号码,知道总数,以及他们参加过的比较的是/否结果。但是,您也说“当事方希望输出列表中哪个索引对应于最前面的索引”,因此您建议有关索引的一些信息将被共享。根据确切共享的内容,您可能会再次获得完全不同的解决方案。


抱歉,我一定不是很清楚。名单上没人知道一个号码。相反,它们每个都有一个N个“数字份额”的列表(如果您不熟悉数字份额的概念,则使用Shamir的秘密共享方案)。因此,任何单个参与者拥有的唯一先验信息是N和列表中所有数字的总和。他们每个人都有一些有关每个数字的信息,但没有足够的信息来知道该数字是什么。

就这两个相关问题而言,第二个问题意味着第一个问题的有效解决方案。如果我可以使用很少的比较来找到X(如果我可以得出一个合理的初步猜测就可以这样做),那么我仅使用N个比较就可以找到大于X的所有值的索引(这些比较便宜,因为知道X而不是X会减少比较的费用约三分之一。)用于查找顶部K的通用算法通常会对大型列表使用更多的比较,假设我可以使用〜log( X)比较

感谢您的评论答案和原始问题的附录。现在问题看起来不一样了。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.