問題タブ [beta-distribution]

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.

0 投票する
2 に答える
2953 参照

java - 高速なJavaベータ分布の乱数ジェネレーターが必要

速度が重要なコードでベータ分布を持つ乱数を生成する必要があります。現在、numerics4jライブラリのBetaRandomVariable()クラスを使用していますが、現在、コードのCPU使用率の約95%を占めています。

誰かがこれらの乱数を生成するためのより速い方法をお勧めできますか?

0 投票する
3 に答える
3822 参照

c# - シンプルなベータ版の cdf 実装はどこにありますか

プロジェクトでベータ分布と逆ベータ分布を使用する必要があります。

GSLには非常に優れた複雑な実装がありますが、1 つの関数を取得するためだけにこのような大きなライブラリを使用したくありません。

自分で実装するか、単純なライブラリをリンクしたいと思います。私を助けることができる情報源を知っていますか?ベータ CDF の数値近似とその逆関数に関する本や記事を探しています。それを実装できるライブラリを探しています。他の提案もいただければ幸いです。
任意のプログラミング言語ですが、C++/C# を推奨します。

0 投票する
3 に答える
4282 参照

c++ - ベータ分布からの乱数、C++

特定の確率分布から (1,000,000)^2 の数値を生成し、それらに対して何かを行うシミュレーションを C++ で作成しました。これまで、指数分布、正規分布、ガンマ分布、一様分布、およびポアソン分布を使用してきました。そのうちの 1 つのコードを次に示します。

ここで、ベータ ディストリビューション用に実行する必要があります。これまでに行ったすべての配布には、10 ~ 15 時間かかりました。ベータ ディストリビューションはブースト/ランダム パッケージに含まれていないため、ブースト/数学/ディストリビューション パッケージを使用する必要がありました。解決策を提案するStackOverflow でこのページを見つけました。ここにあります(コピーペースト):

私はそれを複製し、それはうまくいきました。シミュレーションの実行時間の見積もりは線形であり、正確に予測できます。彼らは、これが 25 日間実行されると言います。2 つの可能性があると思います: 1. 提案された方法は、以前に他のディストリビューションで使用していた方法よりも劣っています。 2. ベータ版のディストリビューションは、乱数を生成するのがはるかに困難です。

私は C++ コーディングについて最低限の理解しか持っていないので、私が尋ねている質問はばかげているかもしれません。このシミュレーションが完了するまで 1 か月も待ちきれません。それを改善するために何かできることはありますか? おそらく、私が使用していた最初の方法を使用して、boost/math/distributions パッケージで動作するように変更しますか? それが可能かどうかさえわかりません。

役に立つかもしれないもう 1 つの情報は、生成する必要があるすべての (1,000,000)^2 の数値でパラメーターが同じであることです。私がこれを言っているのは、ベータ版のディストリビューションには厄介な PDF があり、おそらくパラメーターが固定されているという知識を使用してプロセスを簡素化できるからですか? ただの勝手な推測です。

0 投票する
2 に答える
402 参照

c++ - C++にbetainvを提供するライブラリ

betainvC ++で関数を提供するライブラリを知っている人はいますか?

パラメータを使用してベータ分布の分位数を計算betainv(x,a,b)しますxtha,b

0 投票する
0 に答える
374 参照

php - PHPにおけるベータ分布の逆累積確率

逆ベータ CDFと同等の機能を持つ関数を見つけようとしています。

関数を検索しましたが、このタスクを実行できるものは見つかりませんでした。これを行うことができるライブラリ関数はありますか? または、これを達成する方法はありますか?

0 投票する
0 に答える
161 参照

r - R のベータ分布を使用したバイナリ データの生成

私は R の新しいユーザーです。私の仕事では、ベータ版配布 (rbeta コマンド) を使用してバイナリ データ (0 または 1) を生成する必要があります。そのようなデータのマトリックスを作成する必要があります。一部の列では、1 よりも 0 を増やしたり、0 よりも 1 を増やしたりしたいと考えています。これは、シェーピング パラメータ 1 = シェーピング パラメータ 2 = 0.5 として実行する必要があります。すべての組み合わせを試しました。しかし、私はこれを行うことができません。同じようにする方法を教えてください。私が提供されたヒントは次のとおりです。次に、これらのパラメーターを rbeta コマンドに渡します。しかし、rbeta コマンドではそのような機能は見つかりませんでした。何か方法があれば教えてください。

ありがとう、カリヤニ

0 投票する
2 に答える
267 参照

distribution - ベータ分布の形状をどのように決定するか?

公平ではないコインを投げたとします。成功確率は 0.7 です。ベータ分布の形を決めるにはそれで十分ですか?その時、その形は何でしょう?

私の知る限り、X 軸にマッピングされるのは成功の確率です。したがって、0 から 1 の間である必要があります。しかし、私が見つけたいくつかの記事や本では、x 軸にはそれを超える値がいくつかあります。よくわかりません。

助けてください

0 投票する
1 に答える
400 参照

r - ベータ分布と正規分布の交点を見つける

私は 2 つのディストリビューションを持っています - 1 つはベータ版、もう 1 つは通常版で、それらの pdf の交点を見つける必要があります。私は両方のパラメータを知っており、交差点を視覚的に見ることができますが、R が正確な点を計算する方法を探しています。これを行う方法を知っている人はいますか?