部分サンプリング
qiskit_addon_sqd.subsampling
ビット列行列からサンプルのバッチを作成する関数.
subsample
subsample(bitstring_matrix, probabilities, samples_per_batch, num_batches, rand_seed=None)
入力からビット配列のバッチをサブサンプルする bitstring_matrix。
個々のバッチは、入力 bitstring_matrix から置換なしでサンプリングされる。 サンプルは各バッチの作成後に交換されるため、異なるバッチには同一のサンプルが含まれる可能性がある。
パラメーター
- bitstring_matrix (ndarray) – 各行が1つのビット列を表すような、ビット値の
bool表現の 2D 配列。 - probabilities (ndarray) – ビット列の確率分布を指定する 1D 配列
- samples_per_batch (int) – 各バッチのサンプル数
- num_batches (int) – 生成するバッチ数
- rand_seed (Generator |int | None) – ランダムな行動をコントロールする種
戻り値
入力ビット文字列行列からサブサンプリングされたビット文字列行列のリスト。
レイズ
- ValueError -
probabilitiesの要素数は、bitstring_matrixの行数と等しくなければならない。 - ValueError - バッチあたりのサンプル数とバッチ数は正の整数でなければならない。
戻りの型
postselect_and_subsample
postselect_and_subsample(bitstring_matrix, probabilities, *, hamming_right, hamming_left, samples_per_batch, num_batches, rand_seed=None)
入力 bitstring_matrix から,正しいハミング重みでビット配列のバッチをサブサンプルする.
左半分または右半分のハミングウェイトが正しくないビット列サンプルはサンプリングされない。
個々のバッチは、入力 bitstring_matrix から置換なしでサンプリングされる。 サンプルは各バッチの作成後に交換されるため、異なるバッチには同一のサンプルが含まれる可能性がある。
関数 qiskit_addon_sqd.subsampling.postselect_and_subsample() は qiskit-addon-sqd 0.12.0 で非推奨となりました。 v0.13.0。 代わりに、 postselect_by_hamming_right_and_left と subsample 関数を使う。
パラメーター
- bitstring_matrix (ndarray) – 各行が1つのビット列を表すような、ビット値の
bool表現の 2D 配列。 - probabilities (ndarray) – ビット列の確率分布を指定する 1D 配列
- hamming_right (int) – サンプリングされたビット列の右半分の目標ハミングウェイト
- hamming_left (int) – サンプリングされたビット列の左半分の目標ハミングウェイト
- samples_per_batch (int) – 各バッチのサンプル数
- num_batches (int) – 生成するバッチ数
- rand_seed (Generator |int | None) – ランダムな行動をコントロールする種
戻り値
入力ビット列行列からサブサンプリングされた、正しいハミングウェイトを持つビット列行列のリスト
レイズ
- ValueError -
probabilitiesの要素数は、bitstring_matrixの行数と等しくなければならない。 - ValueError - ハミングの重みは負でない整数でなければならない。
- ValueError - バッチあたりのサンプル数とバッチ数は正の整数でなければならない。
戻りの型
postselect_by_hamming_right_and_left
postselect_by_hamming_right_and_left(bitstring_matrix, probabilities, *, hamming_right, hamming_left)
右半分と左半分の希望するハミング・ウェイトに基づいてビット列を後選択する。
パラメーター
- bitstring_matrix (ndarray) – 各行が1つのビット列を表すような、ビット値の
bool表現の 2D 配列。 - probabilities (ndarray) – ビット列の確率分布を指定する 1D 配列
- hamming_right (int) – サンプリングされたビット列の右半分の目標ハミングウェイト
- hamming_left (int) – サンプリングされたビット列の左半分の目標ハミングウェイト
戻り値
選択後のビット列行列と確率。 新しいビット列行列は、元の行列から、右半分と左半分に望ましいハミングウェイトを持つビット列のみを含み、新しい確率は、選択後のビット列に対応する元の確率を取り、合計が1になるようにスケーリングし直すことで構築される。
レイズ
- ValueError - ハミングの重みは負でない整数でなければならない。
- ValueError -
bitstring_matrixの列数は偶数でなければならない。 - ValueError -
probabilitiesの要素数は、bitstring_matrixの行数と等しくなければならない。
戻りの型