問題タブ [binomial-cdf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
algorithm - 二項累積分布関数を効率的に計算するにはどうすればよいですか?
「成功」の確率が P であることを知っているとしましょう。テストを N 回実行すると、S 回の成功が見られます。このテストは、不均等に重み付けされたコインを投げることに似ています (おそらく、表が成功で、裏が失敗です)。
S 回の成功、または S 回の成功より少ない回数の成功のいずれかが見られるおおよその確率を知りたいです。
たとえば、P が 0.3、N が 100 で、20 回成功した場合、20回以下の成功を得る確率を探しています。
もう一方のハドで、P が 0.3、N が 100 で、40 回成功した場合、さらに 40 回成功する確率を探しています。
ただし、この問題は二項曲線の下の領域を見つけることに関連していることは承知しています。
- 私の数学の専門家は、この知識を効率的なコードに変換することはできません
- 二項曲線で正確な結果が得られることは理解していますが、本質的に非効率的であるという印象を受けます。おおよその結果を計算する高速な方法で十分です。
この計算は高速でなければならず、理想的には標準の 64 ビットまたは 128 ビットの浮動小数点計算で決定できる必要があることを強調しておきます。
P、S、および N を取り、確率を返す関数を探しています。私は数学表記よりもコードに精通しているので、回答には疑似コードまたはコードを使用することをお勧めします。
computer-science - 分散ネットワークでのシステム障害の確率の計算
分散ファイルシステムでのファイルの可用性の数学的モデルを構築しようとしています。この質問をMathOverflowに投稿しましたが、これはCS質問として分類される可能性もあるので、ここでも試してみます。
システムは次のように機能します。ノードは、r * bリモートノードにファイル(イレイジャーコードを使用してエンコード)を格納します。ここで、rはレプリケーション係数、bは整数定数です。イレイジャーコーディングされたファイルには、少なくともb個のリモートノードが使用可能であり、ファイルの一部を返す場合にファイルを復元できるという特性があります。
これに対する最も簡単なアプローチは、すべてのリモートノードが互いに独立しており、同じ可用性pを持っていると想定することです。これらの仮定では、ファイルの可用性は二項分布に従います。
残念ながら、このペーパーで示されているように、これら2つの仮定は、無視できないエラーを引き起こす可能性があります: http ://deim.urv.cat/~lluis.pamies/uploads/Main/icpp09-paper.pdf 。
すべてのノードが同じ可用性を持っているという仮定を克服する1つの方法は、利用可能な/利用できないノードの可能な各組み合わせの確率を計算し、これらすべての結果の合計を取得することです(これは、上記の論文で示唆されているようなものです。私が今説明したものよりも正式に)。このアプローチは、深さr * bの二分木として見ることができ、各リーブは、使用可能なノードと使用できないノードの1つの可能な組み合わせです。ファイルの可用性は、>=bの使用可能なノードで休暇に到達する確率と同じです。このアプローチはより正確ですが、計算コストはです。また、ノードの独立性の仮定は扱いません。
二項分布近似よりも誤差が少なく、計算コストが優れている、優れた近似のアイデアはありますか?
各ノードのavailability-dataは、で構成されるタプルのセットであると想定できます(measurement-date, node measuring, node being measured, succes/failure-bit)
。このデータを使用して、たとえば、ノード間の可用性と可用性の分散の相関関係を計算できます。
algorithm - 負の二項累積分布関数を効率的に計算するにはどうすればよいですか?
この投稿は本当に役に立ちます:
二項累積分布関数を効率的に計算するにはどうすればよいですか?
(タイトル=二項累積分布関数を効率よく計算するには?)
ただし、負の二項累積分布関数が必要です。
コードを微調整して負の累積分布関数を取得する方法はありますか?
multithreading - 二項係数
「単純な」質問です。二項係数を計算する最速の方法は何ですか? - いくつかのスレッド化されたアルゴリズム?
私はヒントを探しています:)-実装ではありません:)
algorithm - オン時間が二項分布に従う一連のパルスを生成する方法は?
簡単な質問があります:
デジタル パルス列 (最大 = 1、最小 = 0) をシミュレートしようとしています。ON 時間の分布は、二項分布に従う必要があります。どうすればいいですか?私は VisualStudio 2012 を使用しています。これは非常に些細な質問であり、誰かの時間を無駄にするつもりはありませんが、何らかの理由で、この問題について考えると頭が働きません。非常に大きなデータセット (300Mb) を生成する必要があります。
ありがとう!
r - 「prob=」を見つけるにはどうすればよいですか? この式で pbinom(q=5,size=10,prob=?,lower.tail=FALSE)=.1?
pbinom() を特定の値に等しくしたい場合、pbinom() の "prob=" パラメータを解決するにはどうすればよいですか? q=5、size=10、lower.tail=FALSE の場合に pbinom() を 0.1 にしたいとします。「prob=」パラメータが何と等しいかを判断する関数または方法はありますか? 例えば:
試行錯誤の結果、prob=.3542 が十分に近いことがわかりました。qbinom() が の逆関数であることは知っていますが、pbinom()
を指定して q=5 を見つけることには興味がありませんpbinom()=.1
。代わりに、「prob =」を見つけたいと思いpbinom(q=5,size=10,prob=?,lower.tail=FALSE)=.1.
ます。事前に助けてくれてありがとう。
※他で回答済みでしたらすみません。探しても見つかりませんでした。とても簡単そうで、ビックリしました。
matlab - 二項分布 rv の関数の期待値の計算
Xの関数の期待値を計算しようとしています。ここで、X
二項分布しています。だから私はの形で何かを計算したいsum(Pr(X=k)*f(k),k=0,..,n)
。ここで、二項ツリーが増加するにつれて値が収束するかどうか、つまり増加するかどうかを確認したいと思いますn
。ただし、 を増やすn
と、 の (n
オーバーk
) 項はPr(X=k)
一部の に対して無限大になりますk
が、関数、これはmatlabで生成さf(k)=0
れる乗算を提供します。したがって、結果はです。Inf*0
NaN
NaN
しかし、類似の問題を行列形式で計算すると、期待値が収束するはずです。
だから私の質問は、どうすればこれに対処できますか?
これは私がこれまでに得たコードです(いくつかのパラメータについてはu~d~0.5. K=s=100
)
matlab - Matlab での離散確率分布計算
たとえば、X が発生する可能性を表す P(x1...n) 個の離散的な独立した確率値を指定しました。
質問の普遍的なコードが必要です: X が同時に 0 回から n 回発生する確率はどれくらいですか?
例: 与えられた: 各車 (A、B、C) が駐車する 3 つの確率 P(A)、P(B)、P(C)。質問は次のとおりです: 車が 1 台も駐車しない、1 台が駐車する、2 台が駐車する、3 台が駐車する確率はどれくらいですか?
たとえば、同時に 2 台の車を駐車する場合の答えは次のようになります。
私はすべての可能性についてコードを書きましたが、より多くの値を取得すると、可能な組み合わせが増えるため、もちろん遅くなります。
この関数を高速化する方法を知っている人はいますか? それとも、Matlab にその機能が実装されているのでしょうか。
計算の名前を見つけました: ポアソン二項分布