计算机科学 > 数据结构与算法
[提交于 2025年5月24日
(v1)
,最后修订 2025年7月17日 (此版本, v2)]
标题: 通过随机性再利用的高效在线随机抽样
标题: Efficient Online Random Sampling via Randomness Recycling
摘要: “随机性再利用”是一种强大的算法技术,用于重新使用概率算法消耗的随机信息的一部分,以减少其熵需求。 本文提出了一类随机性再利用算法,用于高效采样一个服从任意随机过程的离散随机变量序列$X_1, X_2, X_3, \dots$。 我们开发了随机性再利用技术,以降低多种著名采样算法的熵成本,这些算法包括均匀采样、逆变换采样、查找表采样、别名采样和离散分布生成(DDG)树采样。 我们的方法在使用$O(\log(1/\varepsilon))$空间时,每输出样本的期望摊还熵成本为$H(X_1,\dots,X_k)/k + \varepsilon$输入位,这与$k\to\infty$的最优香农熵率$H(X_1,\dots,X_k)/k$位每样本非常接近。 我们方法的空间、时间和熵特性相结合,优于Knuth和Yao的熵最优算法以及Han和Hoshi的区间算法,用于采样离散随机序列。 在实验方面,我们展示了当使用密码学安全的伪随机数生成器时,随机性再利用能够实现Fisher-Yates洗牌的最先进运行时性能;它还可以加速离散高斯采样器。 随文附带了一个高性能的C语言软件库,该库使用随机性再利用来加速几种现有的随机采样算法。
当前浏览上下文:
cs.DS
文献和引用工具
与本文相关的代码,数据和媒体
alphaXiv (什么是 alphaXiv?)
CatalyzeX 代码查找器 (什么是 CatalyzeX?)
DagsHub (什么是 DagsHub?)
Gotit.pub (什么是 GotitPub?)
Hugging Face (什么是 Huggingface?)
带有代码的论文 (什么是带有代码的论文?)
ScienceCast (什么是 ScienceCast?)
演示
推荐器和搜索工具
arXivLabs:与社区合作伙伴的实验项目
arXivLabs 是一个框架,允许合作伙伴直接在我们的网站上开发和分享新的 arXiv 特性。
与 arXivLabs 合作的个人和组织都接受了我们的价值观,即开放、社区、卓越和用户数据隐私。arXiv 承诺这些价值观,并且只与遵守这些价值观的合作伙伴合作。
有一个为 arXiv 社区增加价值的项目想法吗? 了解更多关于 arXivLabs 的信息.