Questions tagged «sampling»

使用概率方法从明确指定的总体中创建样本和/或根据指定的分布生成随机数。

3
为什么Mersenne Twister被认为是很好的?
Mersenne Twister被广泛认为是很好的。哎呀,CPython消息人士说,它“是现有的经过最广泛测试的生成器之一”。但是,这是什么意思?当被要求列出该生成器的属性时,我所能提供的大多数内容都是不好的: 它是庞大而僵化的(例如,无搜索或多个流), 尽管状态规模庞大,但它未能通过标准的统计测试, 它在0左右有严重问题,表明它对自己的随机性很差, 不太快 等等。与诸如XorShift *的简单RNG相比,它也无可避免地变得复杂。 因此,我寻找一些信息,以了解为什么有人认为这很好。原始论文对“超天文学”时期和623维均匀分布发表了很多评论,他说 在许多已知的测量方法中,基于较高尺寸均匀性的测试(如下面所述的光谱测试(参见Knuth [1981])和k分布测试)被认为是最强的。 但是,对于此属性,发电机会被足够长的计数器打败!这没有评论本地分布,这是您实际上在生成器中关心的(尽管“本地”可能意味着各种事情)。甚至CSPRNG都不在意这么长时间,因为这并不重要。 论文中有很多数学,但据我所知,这实际上与随机性无关。几乎所有对此的提及都会迅速跳回这些原始的,基本上无用的主张。 似乎人们以牺牲较旧,更可靠的技术为代价而跳上了潮流。例如,如果您将LCG中的单词数增加到3(比Mersenne Twister的“仅624”少得多)并在每次通过时输出最高单词,则它会通过BigCrush(TestU01测试套件的更难部分)),尽管Twister失败了(PCG纸,图2)。鉴于此,以及证据不足,我能够在支持梅森倍捻机的发现,是什么做的原因关注过其他的选择青睐呢? 这也不是纯粹的历史。有人告诉我,Mersenne Twister在实践中至少比PCG random更为有效。但是用例是否如此清晰,以至于它们可以比我们的测试组合做得更好?一些谷歌搜索暗示他们可能不是。 简而言之,我想知道Mersenne Twister在其历史背景或其他方面如何获得广泛的正面声誉。一方面,我显然对它的质量表示怀疑,但另一方面,很难想象它是完全随机发生的。

4
从单纯形均匀采样
我正在寻找一种算法来生成N个随机数的数组,这样N个数字的总和为1,所有数字都位于0和1之内。例如,N = 3,即随机点(x,y, z)应位于三角形内: x + y + z = 1 0 < x < 1 0 < y < 1 0 < z < 1 理想情况下,我希望该区域内的每个点都具有相等的概率。如果太难了,我可以放弃要求。谢谢。

9
在给定公平硬币的情况下如何模拟骰子
假设给了您一个公平的硬币,并且您想模拟重复翻转一个公平的(六面)骰子的概率分布。我最初的想法是,我们需要选择适当的整数,使2 k = 6 m。所以翻转硬币后ķ倍,我们通过将范围映射由第k比特串长度到管芯的输出编码数[ 0 ,2 ķ - 1 ]每个的长度为6个的间隔米。但是,这是不可能的,因为2 k仅有两个素数,但2 k的素数ķ ,米k,mk,m2ķ= 6 米2k=6m2^k = 6mķkk[ 0 ,2ķ− 1 ][0,2k−1][0,2^k-1]米mm2ķ2k2^k包括3。应该有其他简单的方法来执行此操作,对吗?6 米6m6m

3
拒绝采样是获得真正均匀的随机数分布的唯一方法吗?
假设我们有一个随机发生器,在输出范围数[0..R−1][0..R−1][0..R-1]与均匀分布,我们需要的范围内生成随机数[0..N−1][0..N−1][0..N-1] 与均匀分布。 假设N&lt;RN&lt;RN < R并且NNN不能均匀地除以RRR ; 为了获得真正均匀的分布,我们可以使用 拒绝采样方法: 如果kkk是最大整数,则kN&lt;RkN&lt;Rk N < R 在[ 0 .. R − 1 ]中选择一个随机数rrr[0..R−1][0..R−1][0..R-1] 如果r&lt;kNr&lt;kNr < k N则输出,否则继续尝试其他随机数r',r“,...直到满足条件rmodNrmodNr \mod N 拒绝采样是获得真正均匀的离散分布的唯一方法吗? 如果答案是肯定的,为什么? 注意:如果N&gt;RN&gt;RN > R则想法是相同的:在[0..R ^ m-1]中生成随机数r' ,R ^ m&gt; = N,例如r'= R(... R(R r_1 + r_2)...)+ r_m,其中r_i是[0..R-1]范围内的随机数r′r′r'[0..Rm−1],Rm&gt;=N[0..Rm−1],Rm&gt;=N[0..R^m-1], R^m >= Nr′=R(...R(Rr1+r2)...)+rmr′=R(...R(Rr1+r2)...)+rmr' = R(...R(R r_1 + …

2
有效地均匀且独立地随机采样最短的
令GGG为图,令sss和ttt为G的两个顶点GG。我们是否可以从s和t之间所有最短路径的集合中随机且均匀地有效采样最短sss - ttt路径?为简单起见,我们可以假设G是简单的,无向的和未加权的。ssttGG 即使在许多受限制的图中,sss和t之间最短路径的数量tt也可以是G的大小的指数GG。因此,我们自然希望避免实际计算所有最短的sss - ttt路径。我不了解一般情况,但是在我看来,我们可以通过一些特殊的图类来实现这一点。 感觉就像有人必须考虑过的事情。是否对此进行了任何研究,或者即使对于一般图形,实际上也很容易做到吗?

2
高效算法,可随机生成一个多集的两个分散,无序排列
背景 \newcommand\ms[1]{\mathsf #1}\def\msD{\ms D}\def\msS{\ms S}\def\mfS{\mathfrak S}\newcommand\mfm[1]{#1}\def\po{\color{#f63}{\mfm{1}}}\def\pc{\color{#6c0}{\mfm{c}}}\def\pt{\color{#08d}{\mfm{2}}}\def\pth{\color{#6c0}{\mfm{3}}}\def\pf{4}\def\pv{\color{#999}5}\def\gr{\color{#ccc}}\let\ss\gr假设我有两个相同批次的nnn大理石。每个大理石可以是ccc种颜色之一,其中c≤nc≤nc≤n。令ninin_i表示每批中颜色为i的大理石的数量iii。 令SS\msS为多集{1,…,1n1,2,…,2n2,…,1c,…,cnc}{1,…,1⏞n1,2,…,2⏞n2,…,1c,…,c⏞nc}\small\{\overbrace{\po,…,\po}^{n_1},\;\overbrace{\pt,…,\pt}^{n_2},\;…,\;\overbrace{\vphantom 1\pc,…,\pc}^{n_c}\}代表一批。在频率表示中,SS\msS也可以写为(1n12n2…cnc)(1n12n2…cnc)(\po^{n_1} \;\pt^{n_2}\; … \;\pc^{n_c})。 \ msS的不同置换数SS\msS由多项式给出: |SS|=(nn1,n2,…,nc)=n!n1!n2!⋯nc!=n!∏i=1c1ni!.|SS|=(nn1,n2,…,nc)=n!n1!n2!⋯nc!=n!∏i=1c1ni!.\left|\mfS_{\msS}\right|=\binom{n}{n_1,n_2,\dots,n_c}=\frac{n!}{n_1!\,n_2!\cdots n_c!}=n! \prod_{i=1}^c \frac1{n_i!}. 题 是否有一个有效的算法来生成两个弥漫,错乱排列PPP和QQQ的SS\msS随意?(分布应均匀。) 甲置换PPP是漫如果对于每个不同的元件iii的PPP,的实例iii在大致均匀间隔的出PPP。 例如,假设S=(1424)={1,1,1,1,2,2,2,2}S=(1424)={1,1,1,1,2,2,2,2}\msS=(\po^4\;\pt^4)=\{\po,\po,\po,\po,\pt,\pt,\pt,\pt\}。 {1,1,1,2,2,2,2,1}{1,1,1,2,2,2,2,1}\{\po, \po, \po, \pt, \pt, \pt, \pt, \po\}不扩散 {1,2,1,2,1,2,1,2}{1,2,1,2,1,2,1,2}\{\po, \pt, \po, \pt, \po, \pt, \po, \pt\}是分散的 更严格地: 如果,则只有一个实例要在 “间隔” ,所以让。ni=1ni=1n_i=1iiiPPPΔ(i)=0Δ(i)=0\Delta(i)=0 否则,令是实例之间的距离 和实例 的在。从中减去期望的实例之间的距离,定义以下内容: 如果在均匀分布,则应该为零,或者如果为非常接近零。d(i,j)d(i,j)d(i,j)jjjj+1j+1j+1iiiPPPiiiδ(i,j)=d(i,j)−nniΔ(i)=∑j=1ni−1δ(i,j)2δ(i,j)=d(i,j)−nniΔ(i)=∑j=1ni−1δ(i,j)2\delta(i,j)=d(i,j)-\frac n{n_i}\qquad\qquad\Delta(i)=\sum_{j=1}^{n_i-1} \delta(i,j)^2iiiPPPΔ(i)Δ(i)\Delta(i)ni∤nni∤nn_i\nmid n 现在定义统计量来衡量每个在均匀间隔的数量。如果接近零,或大致,我们称弥散。(可以选择特定于的阈值,以便在使扩散。)s(P)=∑ci=1Δ(i)s(P)=∑i=1cΔ(i)s(P)=\sum_{i=1}^c\Delta(i)iiiPPPPPPs(P)s(P)s(P)s(P)≪n2s(P)≪n2s(P)\ll n^2k≪1k≪1k\ll1SS\msSPPPs(P)&lt;kn2s(P)&lt;kn2s(P)<kn^2 …

2
随机均匀采样完美匹配
假设我有一个图表与的完美匹配的(未知)组。假设这个集合是非空的,那么从随机地进行均匀采样有多困难?如果我对分布接近均匀但不太均匀的分布没问题,那有没有一种有效的算法?GGGM(G)M(G)M(G)GGGM(G)M(G)M(G)

1
使用Barabasi-Albert生成具有幂律度分布的无标度网络
我正在尝试重现一些论文中描述的综合网络(图形)。 据称,Barabasi-Albert模型用于创建“具有幂分布的无标度网络”。PA(k)∝k−λPA(k)∝k−λP_A(k) ∝ k^{-λ} PAPAP_A是一个概率分布,它返回具有度k的节点的概率kkk。例如,PA(2)PA(2)P_A(2)表示从网络中随机选择一个节点并获得度为2的节点的概率。 平均度行程似乎是4在一个纸,具有最小 2.无字的关于最大。在另一篇论文中未指定。定义网络似乎并不重要。ķ ķkkkkkkkkk 给出λ值,节点数。组合是nnn n = 50000,λ= 3,2.7,2.3 n = 4000并且λ= 2.5,或者在另一篇论文中n = 6000和λ= 3 我在寻找实现Barabasi-Albert算法的库,它们似乎需要的参数与lambda和平均度不同。一个是NetworkX,另一个是GraphStream(在此处实现)。他们以类似的方式工作,并要求: n:int-节点数 m:int-从新节点连接到现有节点的边数;每一步要添加的边数 如何计算设置m以生成可比较的图形? 以下是一些参考资料: 相互依赖网络中的灾难性级联故障,Buldyrev等。2010年,单独提供补充信息 网络物理系统中的小型集群,Huang等。2014年 相互依赖的网络中的灾难性级联故障,Havlin等。2010年,这是在Arxiv上,并在某种程度上澄清了 请注意,这些论文使用“生成函数”来分析研究这些图的某些属性。但是,他们也在这些模型上运行仿真,因此它们一定以某种方式生成了这些网络。 谢谢。

3
多边形中的随机采样
我想在多边形中采样均匀一致的点... 如果采样大量,则如果它们具有相同的面积,它们将很可能落入两个区域。 如果它是一个正方形,这将是非常简单的,因为我将[0,1]中的两个随机数作为我的坐标。 我拥有的形状是规则的多边形,但我希望它适用于任何多边形。 /programming/3058150/how-to-find-a-random-point-in-a-quadrangle
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.