hypergeometric#
超幾何分布のランダム値を生成します。
説明#
超幾何クラス・オブジェクトは、ロットサイズ l、サンプリング・サイズ s、ロット内のマークされた要素の数 m で超幾何分布の乱数を提供するため、generate 関数で使用されます。ここで \(l, m, s \in N \cup \left \{ 0 \right \}; l \geq max(s, m)\) です。
m 個の「マークされた」要素と l-m 個の「マークされていない」要素で構成される l 個の要素について考えます。このロットから正確に s 個の要素を置き換えずに試行的にサンプリングすると、s 個の要素のグループに正確に k 個のマークされた要素が含まれる確率である超幾何分布を定義するのに役立ちます。
確率分布は次のように表されます。
, k∈ {max(0, s + m - l), …, min(s, m)}
累積分布関数は次のようになります。
製品および性能に関する情報 |
|---|
性能は、使用状況、構成、およびその他の要因によって異なります。詳細は、https://www.intel.com/PerformanceIndex (英語) を参照してください。改訂 #20201201 |
API#
構文#
namespace oneapi::mkl::rng {
template<typename IntType = std::int32_t,
typename Method = hypergeometric_method::by_default>
class hypergeometric {
public:
using method_type = Method;
using result_type = IntType;
hypergeometric(): hypergeometric(1, 1, 1){}
explicit hypergeometric(std::int32_t l, std::int32_T s, std::int32_T m);
explicit hypergeometric(const param_type& pt);
std::int32_t s() const;
std::int32_t m() const;
std::int32_t l() const;
param_type param() const;
void param(const param_type& pt);
};
}サポートされるデバイス: CPU および GPU
インクルード・ファイル#
oneapi/mkl/rng.hpp
テンプレート・パラメーター#
|
生成された値のタイプ。固有の値は次のとおりです:
|
|
生成メソッド。固有の値は次のとおりです:
配布テンプレート・パラメーター・メソッドのメソッドの説明を参照してください。 |
入力パラメーター#
名前 |
タイプ |
説明 |
|---|---|---|
l |
|
|
s |
|
非置換サンプリングのサイズ。 |
m |
|
マークされた要素の数 |