タグ付けされた質問 「probability-theory」

ランダムな現象のモデリングと分析に関する数学の分野に関する質問。

2
素朴なシャッフルはどの程度漸近的に悪いのでしょうか?
各アイテムをランダムに選択された別のアイテムと交換して配列をシャッフルするこの「ナイーブ」アルゴリズムが正しく機能しないことはよく知られています。 for (i=0..n-1) swap(A[i], A[random(n)]); 具体的には、nnn回の反復のそれぞれで、n nnn選択肢の1つが(一様な確率で)行われるため、計算にはnnnnn^n可能な「パス」があります。可能な順列のn!n!n!は、パスの数に均等に分割されないnnnnn^nため、このアルゴリズムがそれぞれを生成することは不可能です!n!n!n!等しい確率の順列。(代わりに、いわゆるFischer-Yatesシャッフルを使用する必要があります。これは基本的に[0..nから乱数を選択する呼び出しを変更する]と[i..n)から乱数を選択する呼び出しです。それは私の質問には意味がありません。) 私が疑問に思っているのは、素朴なシャッフルはどの程度「悪い」のでしょうか?より具体的には、せるP(n)P(n)P(n)すべての順列及び組ことC(ρ)C(ρ)C(\rho)得られた順列生成ナイーブアルゴリズムを通じてパスの数であるρ∈P(n)ρ∈P(n)\rho\in P(n)、関数の漸近挙動が何を M(n)=n!nnmaxρ∈P(n)C(ρ)M(n)=n!nnmaxρ∈P(n)C(ρ)\qquad \displaystyle M(n) = \frac{n!}{n^n}\max_{\rho\in P(n)} C(\rho) そして m(n)=n!nnminρ∈P(n)C(ρ)m(n)=n!nnminρ∈P(n)C(ρ)\qquad \displaystyle m(n) = \frac{n!}{n^n}\min_{\rho\in P(n)} C(\rho)? 主な要因は、これらの値を「正規化」することです。ナイーブシャッフルが「漸近的に良好」であれば、 limn→∞M(n)=limn→∞m(n)=1limn→∞M(n)=limn→∞m(n)=1\qquad \displaystyle \lim_{n\to\infty}M(n) = \lim_{n\to\infty}m(n) = 1。 私は(私が見たいくつかのコンピューターシミュレーションに基づいて)実際の値は1から離れていると疑っていますが、が有限であるか、が0?これらの量の振る舞いについて何がわかっていますか?lim m (n )limM(n)limM(n)\lim M(n)limm(n)limm(n)\lim m(n)

9
コインを使用して均一に分布した乱数を生成する
コインが1つあります。何度でも反転できます。 ような乱数を生成します。ここで、です。rrra≤r&lt;ba≤r&lt;ba \leq r < br,a,b∈Z+r,a,b∈Z+r,a,b\in \mathbb{Z}^+ 数字の分布は均一でなければなりません。 あれば簡単です:b−a=2nb−a=2nb -a = 2^n r = a + binary2dec(flip n times write 0 for heads and 1 for tails) どのような場合?b−a≠2nb−a≠2nb-a \neq 2^n

5
Vertical Sticksチャレンジへのアプローチ方法
この質問は、コンピューターサイエンススタック交換で回答できるため、理論的なコンピューターサイエンススタック交換から移行されました。 7年前に移行され ました。 この問題はinterviewstreet.comから取られています セグメント端点がおよびようなラインセグメントを表す整数の配列が与えられます。各セグメントの上部から水平光線が左に発射され、この光線が別のセグメントに触れるかy軸に当たると停止すると想像してください。n個の整数配列を作成しここで、はセグメント最上部からの光線ショットの長さに等しくなります。を定義します。Y= { y1、。。。、yn}Y={y1,...,yn}Y=\{y_1,...,y_n\}nnn私ii(i 、0 )(i,0)(i, 0)(i 、y私)(i,yi)(i, y_i)v1、。。。、vnv1,...,vnv_1, ..., v_nv私viv_i私iiV(y1、。。。、yn)= v1+ 。。。+ vnV(y1,...,yn)=v1+...+vnV(y_1, ..., y_n) = v_1 + ... + v_n たとえば、Y= [ 3 、2 、5 、3 、3 、4 、1 、2 ]Y=[3,2,5,3,3,4,1,2]Y=[3,2,5,3,3,4,1,2]場合、[ v1、。。。、v8]=[1,1,3,1,1,3,1,2][v1,...,v8]=[1,1,3,1,1,3,1,2][v_1, ..., v_8] = [1,1,3,1,1,3,1,2]、次の図に示すように: 各順列、を計算できます。我々は一様にランダム順列を選択した場合の、の期待値は何である?[ 1 、。。。、N ] V (Y P 1、。。。、Y 、PのN)ppp[1,...,n][1,...,n][1,...,n]V(yp1,...,ypn)V(yp1,...,ypn)V(y_{p_1}, …

2
なぜ確率を掛けるよりもログの確率を速く加えるのですか?
質問を組み立てるために、コンピューターサイエンスでは、いくつかの確率の積を計算することがよくあります。 P(A,B,C) = P(A) * P(B) * P(C) 最も単純なアプローチは、単にこれらの数値を掛けることであり、それが私がやろうとしていたことです。しかし、上司は、確率のログを追加する方が良いと言いました。 log(P(A,B,C)) = log(P(A)) + log(P(B)) + log(P(C)) これにより対数確率が得られますが、必要に応じて後で確率を取得できます。 P(A,B,C) = e^log(P(A,B,C)) ログの追加は、次の2つの理由により優れていると考えられます。 確率の積が非常に小さいためゼロに丸められる「アンダーフロー」を防ぎます。多くの場合、確率は非常に小さいため、これはリスクとなります。 多くのコンピューターアーキテクチャが乗算よりも速く加算を実行できるため、高速です。 私の質問は2番目のポイントについてです。これは私がそれを説明したのを見た方法ですが、ログを取得するための追加コストを考慮していません!「ログのコスト+加算のコスト」を「乗算のコスト」と比較する必要があります。それを考慮に入れた後、それはまだ小さいですか? また、ウィキペディアのページ(Log potential)はこの点で混乱を招いており、「ログ形式への変換は高価ですが、一度しか発生しません」と述べています。追加する前にすべての用語のログを個別に取得する必要があると思うため、これは理解できません。私は何が欠けていますか? 最後に、「コンピューターは乗算よりも加算を高速に実行する」という正当性は曖昧です。それはx86命令セットに固有のものですか、それともプロセッサアーキテクチャのより基本的な特性ですか?

9
公正なコインを与えられたダイをシミュレートする方法
公正なコインが与えられ、公正な(6面の)ダイスを繰り返し反転する確率分布をシミュレートしたいとします。私の最初のアイデアは、2 k = 6 mのような適切な整数を選択する必要があるということです。そうコイン投げた後のk回、我々は範囲を分割することにより、ダイの出力にK個の長さのビット列によりコード番号をマッピングする[ 0 、2 のk - 1 ] 6にインターバル長の各M。ただし、2 kには2つの唯一の素因数がありますが、k,mk,mk,m2k=6m2k=6m2^k = 6mkkk[0,2k−1][0,2k−1][0,2^k-1]mmm2k2k2^kは3が含まれます。これを行う他の簡単な方法があるはずですよね?6m6m6m

3
乱数の真に均一な分布を得る唯一の方法は、拒否サンプリングですか?
一様分布の範囲数値を出力するランダムジェネレーターがあり、一様分布の範囲乱数を生成する必要があるとし ます。[ 0 .. N − 1 ][0..R−1][0..R−1][0..R-1][0..N−1][0..N−1][0..N-1] 仮定と割り切れない、取得するために、真に均一な分布、我々が使用することができます 棄却サンプリング方法を:N RN&lt;RN&lt;RN < RNNNRRR がような最大の整数である場合k N &lt; RkkkkN&lt;RkN&lt;Rk N < R で乱数を選択し[ 0 .. R − 1 ]rrr[0..R−1][0..R−1][0..R-1] 場合、出力R \ MOD Nが、そうでない場合は、他の乱数R」、R」にしようと、...を維持する条件が満たされるまでr&lt;kNr&lt;kNr < k NrmodNrmodNr \mod N 真に均一な離散分布を得るには、拒絶サンプリングが唯一の方法ですか? 答えが「はい」の場合、なぜですか? 注意:もしN&gt;RN&gt;RN > R考え同じである:乱数発生r′r′r'で[0..Rm−1],Rm&gt;=N[0..Rm−1],Rm&gt;=N[0..R^m-1], R^m >= N、例えばr′=R(...R(Rr1+r2)...)+rmr′=R(...R(Rr1+r2)...)+rmr' = R(...R(R r_1 + r_2)...)+r_mここで、ririr_iは[0..R-1]の範囲の乱数[0..R−1][0..R−1][0..R-1]

1
移動するターゲットを追跡するアルゴリズム
クエリとリセットが可能なブラックボックスfffあるとします。我々がリセットするとfff、状態fSfSf_Sのfff集合から一様にランダムに選択された要素に設定されている{0,1,...,n−1}{0,1,...,n−1}\{0, 1, ..., n - 1\}ここで、は固定され、指定された既知です。を照会するには、要素(推測)が提供され、返される値はです。また、状態F_SのF F X { 0 、1 、。。。、n − 1 } (f S − x )nnnffffffxxx{0,1,...,n−1}{0,1,...,n−1}\{0, 1, ..., n - 1\}f S f(fS−x)modn(fS−x)modn(f_S - x) \mod nfSfSf_Sfffは値f′S=fS±kfS′=fS±kf_S' = f_S \pm kに設定されます。ここで、kkkは\ {0、1、2、...、\ lfloor n / 2 \ rfloor-((f_S-x)\ modからランダムに選択され{0,1,2,...,⌊n/2⌋−((fS−x)modn)}{0,1,2,...,⌊n/2⌋−((fS−x)modn)}\{0, 1, 2, ..., \lfloor n/2 \rfloor - …

4
偏りのあるダイで公平なダイをシミュレートする
バイアスされたNNNダイを考えると、範囲乱数をどのよう[1,N][1,N][1,N]に均一に生成できますか?ダイス面の確率分布は不明です。既知のことは、各面がゼロ以外の確率を持ち、すべてのスローで確率分布が同じであることだけです(特に、スローは独立しています)。これは、不公平なダイによる公正な結果の明白な一般化です。 これをコンピューターサイエンスの用語で言えば、p i = P (D (k )= i )が非ゼロでkに依存しないようなダイスロールを表すオラクルがあります。私たちは、決定論的アルゴリズムを探しているAによってパラメータ化されたD(すなわちAがへの呼び出しを行うことがDを)そのようなものがあることP (Aは、()= Iを)= 1 /D:N→[1,N]D:N→[1,N]D : \mathbb{N} \to [1,N]pi=P(D(k)=i)pi=P(D(k)=i)p_i = P(D(k)=i)kkkAAADDDAAADDDP(A()=i)=1/NP(A()=i)=1/NP(A()=i) = 1/N。アルゴリズムは確率1で終了する必要があります。つまり、AAAが Dを回以上nnn呼び出す確率は、 n → ∞として 0に収束する必要があります。DDD000n→∞n→∞n\to\infty 以下のためにN=2N=2N=2(硬貨から公正なコインがコインバイアスと反転シミュレート)、周知のアルゴリズムが存在します。 2回のスローが異なる結果((頭、尾)または(尾、頭))になるまで、「2回反転」を繰り返します。すなわち、ループのためにk=0..∞k=0..∞k = 0..\inftyまで、D(2k+1)≠D(2k)D(2k+1)≠D(2k)D(2k+1) \ne D(2k) フリップの最後のペアが(heads、tails)の場合は0を返し、それが(tails、heads)の場合は1を返します。つまり、返します。D(2k)D(2k)D(2k)ここで、kkkはループが終了したインデックスです。 偏りのあるダイから偏りのないダイを作成する簡単な方法は、コインフリップの偏りのない方法を使用して公平なコインを作成し、シーケンスの偏りのないように、リジェクションサンプリングで公平なダイを作成します。しかし、これは最適です(確率分布の一般的な値に対して)? 具体的には、私の質問は次のとおりです。オラクルへの呼び出しの最小予想数を必要とするアルゴリズムは何ですか?到達可能な期待値のセットが開いている場合、下限とは何か、この下限に向かって収束するアルゴリズムのクラスは何ですか? 場合にはアルゴリズムの異なるファミリーは、異なる確率分布に最適な、ほとんど-公正サイコロ上のletの焦点である:私は、アルゴリズムやアルゴリズムの家族のようディストリビューションのための最適なものを探しています∀i,∣∣pi−1/N∣∣&lt;ϵ∀i,|pi−1/N|&lt;ϵ\forall i, \bigl|p_i - 1/N\bigr| \lt \epsilonいくつかのためのϵ&gt;0ϵ&gt;0\epsilon \gt 0。

1
コイントスの例への期待値最大化の適用
私は最近、期待値の最大化について自己研究しており、その過程でいくつかの簡単な例を取得しました。 ここから:3枚のコイン、c 1、c 2があり、p 0、p 1、およびp 2は、投げられたときに頭に着く確率です。トスc 0。結果がHeadの場合、c 1を 3回トスし、それ以外の場合、c 2を 3回トスします。c 1およびc 2によって生成される観測データは、HHH、TTT、HHH、TTT、HHHのようなものです。隠されたデータはc 0の結果です。推定pc0c0c_0c1c1c_1c2c2c_2p0p0p_0p1p1p_1p2p2p_2c0c0c_0c1c1c_1c2c2c_2c1c1c_1c2c2c_2c0c0c_0、 P 1及び P 2。p0p0p_0p1p1p_1p2p2p_2 そしてここから:2つのコインとc Bがあり、p Aとp Bは投げられたときに頭に着く確率です。各ラウンドで、コインをランダムに1枚選択し、10回投げます。結果を記録します。観察されたデータは、これらの2つのコインによって提供されるトス結果です。ただし、特定のラウンドでどのコインが選択されたかはわかりません。p Aおよびp Bを推定します。cAcAc_AcBcBc_BpApAp_ApBpBp_BpApAp_ApBpBp_B 計算を取得することはできますが、それらの解決方法を元のEM理論に関連付けることはできません。具体的には、両方の例のMステップで、どのように最大化されているのかわかりません。パラメータを再計算しているようで、新しいパラメータは古いパラメータよりも優れています。さらに、2つのEステップは、元の理論のEステップは言うまでもなく、互いに似ているようにも見えません。 それでは、これらの例はどのように機能するのでしょうか?

2
タスク完了時間の変動はメイクスパンにどのように影響しますか?
私たちは、タスクの大規模なコレクションを持っていることをみましょうと言うτ1,τ2,...,τnτ1,τ2,...,τn\tau_1, \tau_2, ..., \tau_nおよびプロセッサ(性能の点で)同一のコレクションはρ1,ρ2,...,ρmρ1,ρ2,...,ρm\rho_1, \rho_2, ..., \rho_m並列に完全に動作します。興味のあるシナリオでは、我々は仮定してもよいm≤nm≤nm \leq n。各τiτi\tau_iそれがプロセッサに割り当てられると完了するまでに時間/サイクルのいくつかの量をとりρjρj\rho_j、そして一度割り当てられると、完了するまで再割り当てすることはできません(プロセッサは常に割り当てられたタスクを常に完了します)。各仮定しよう時間を要する/サイクルはX 私は、ない、事前に知られているいくつかの離散確率分布から取られました。:この質問のために、私たちも、単純な分布と仮定することができますP (X I = 1 )=は、P (X I = 5 )= 1 / 2、およびすべてのX iのあるペアごとに独立を。したがって、μ iの = 3とστiτi\tau_iXiXiX_iP(Xi=1)=P(Xi=5)=1/2P(Xi=1)=P(Xi=5)=1/2P(X_i = 1) = P(X_i = 5) = 1/2XiXiX_iμi=3μi=3\mu_i = 3σ2=4σ2=4\sigma^2 = 4。 静的に、時間/サイクル0で、すべてのタスクがすべてのプロセッサに可能な限り均等に、一様にランダムに割り当てられるとします。ので、各プロセッサρjρj\rho_j割り当てられているn/mn/mn/m(私達はちょうど同様に想定することができるタスクをm|nm|nm | nの質問の目的のために)。メイクスパンを、割り当てられた作業を完了するための最後のプロセッサρ∗ρ∗\rho^*が割り当てられた作業を終了する時間/サイクルと呼びます。最初の質問: mmm、nnn、XiXiX_iの関数として、makespan MMM何ですか?具体的には、E[M]E[M]E[M]何ですか?Var[M]Var[M]Var[M]? 2番目の質問: 仮定、およびすべてのX iはそう、ペアごとに独立しているμ iが = 3及びσ …

1
ランダム化された選択
ランダム化選択アルゴリズムは次のとおりです。 入力:配列の(明確、簡潔のために)数と数n個のk ∈ [ N ]AAAnnnK ∈ [ N ]k∈[n]k\in [n] 出力:の「ランク要素」(つまり、がソートされた場合は位置要素)A k AkkkAAAkkkAAA 方法: に要素が1つある場合、それを返しますAAA ランダムに一様に要素(「ピボット」)を選択しますppp セットおよび計算しますR = { ∈ A :&gt; P }L = { ∈ A :&lt; P }L={a∈A:a&lt;p}L = \{a\in A : a < p\}R = { ∈ A :&gt; P }R={a∈A:a&gt;p}R = \{a\in A : …

2
ランダムにマルチセットの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\grnnnビー玉の同一のバッチが2つあるとします。各大理石はccc色のいずれかです(c≤nc≤nc≤n。してみましょうninin_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}\}は1つのバッチを表します。で周波数表現、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!}. 質問 ランダムに\ msSの 2つの拡散した混乱した順列PPPおよびQを生成する効率的なアルゴリズムはありますか?(分布は均一でなければなりません。)QQQSS\msS 順列PPPある拡散すべての異なる要素の場合iiiのPPPのインスタンスiiiで略均等に離間されているPPP。 たとえば、\ msS =(\ po ^ 4 \; \ pt ^ 4)= \ {\ po、\ po、\ po、\ po、\ pt、\ pt、\ pt、\ pt \}と仮定します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, …

1
Naive Bayesモデルでの平滑化
Naive Bayes予測子は、次の式を使用して予測を行います。 P(Y= y| バツ= X )= α P(Y= y)∏私P(X私= x私| Y= y)P(Y=y|バツ=バツ)=αP(Y=y)∏私P(バツ私=バツ私|Y=y)P(Y=y|X=x) = \alpha P(Y=y)\prod_i P(X_i=x_i|Y=y) ここで、は正規化係数です。これには、データからパラメーターを推定する必要があります。 -smoothingでこれを行うと、推定値が得られますP (X I = X I | Y = Y )Kαα\alphaP(X私= x私| Y= y)P(バツ私=バツ私|Y=y)P(X_i=x_i|Y=y)kkk P^(X私= x私| Y= y)= #{ X私= x私、Y= y} + k#{ Y= y} + n私kP^(バツ私=バツ私|Y=y)=#{バツ私=バツ私、Y=y}+k#{Y=y}+n私k\hat{P}(X_i=x_i|Y=y) = \frac{\#\{X_i=x_i,Y=y\} + k}{\#\{Y=y\}+n_ik} …

3
頭と尾の不一致
偏りのないコインのフリップのシーケンスを考えます。LET最初に見られる尾部上のヘッドの数の過剰の絶対値を表しiが反転します。定義H = \テキスト{最大} _i H_Iを。ことを示すE [H_I] = \シータ(\ SQRT {I})とE [H] = \シータ(\ SQRT {N}) 。nnnHiHiH_iiiiH=maxiHiH=maxiHiH=\text{max}_i H_iE[Hi]=Θ(i√)E[Hi]=Θ(i)E[H_i]=\Theta ( \sqrt{i} )E[H]=Θ(n−−√)E[H]=Θ(n)E[H]=\Theta( \sqrt{n} ) この問題は、RaghavanとMotwaniによる「ランダム化されたアルゴリズム」の最初の章に現れているので、おそらく上記のステートメントの基本的な証拠があるでしょう。私はそれを解決することができないので、私は助けをいただければ幸いです。

1
絞り込みタイプの推測
職場では、動的言語に関する型情報を推論する必要があります。次のように、ステートメントのシーケンスをネストされたlet式に書き換えます。 return x; Z =&gt; x var x; Z =&gt; let x = undefined in Z x = y; Z =&gt; let x = y in Z if x then T else F; Z =&gt; if x then { T; Z } else { F; Z } 一般的なタイプ情報から始めて、より具体的なタイプを推測しようとしているので、自然な選択は絞り込みタイプです。たとえば、条件演算子は、trueブランチとfalseブランチの型の和集合を返します。単純なケースでは、非常にうまく機能します。 ただし、次のタイプを推測しようとしたときに、思わぬ障害に遭遇しました。 function …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.