qiskit_noise_learning.data.RawData
class qiskit_noise_learning.data.RawData(datatree: DataTree)
ベース: LeveledData
指導手順および古典的なレジスタに関連する、実験結果の生データ。
このクラスは、任意の文字列キー DataTree を持つ1層のXArrayをラップしたものです。 各葉のデータセットには、以下の情報が含まれています:
-
データ変数:
data: 次元が の生のブール型データ("randomization", "shot", "bit")。data_mask: 次元を持つブールマスク("randomization", "shot")。ここで、 は の規約numpy.maに従い、除外すべきショットを示すTrue。 異なるランダム化間における当該次元"shot"での潜在的な不均一性、および事後選択の結果に対処する。measurement_flips: 測定の反転を示すブール配列で、次元は です("randomization", "bit")。time_lbs: 型 の("randomization",)、次元 を持つデータ取得時間の下限"datetime64[us]"。time_ubs: 型 が("randomization",)、次元 を持つデータ取得時間の上限"datetime64[us]"。
-
座標:
unbound_instruction_sequence: 型 のデータについて、次元 に沿った("randomization",)、バインドされていない命令シーケンスInstructionSequence。fragment_depth: 次元に沿ったフラグメント深度の整数配列("randomization",)。
-
属性:
creg_names: 古典的な音域名の順序付き一覧。clbit_qubit_idxs: creg名を、測定された量子ビットのインデックスの配列にマッピングする辞書。ここで、各エントリは、レジスタjの古典ビット として測定された物理量子ビットのインデックスjである。creg_bit_boundaries: レジスタ名(creg)を、そのレジスタの次元"bit"におけるスライスを示すタプル(start_idx, end_idx)にマッピングする辞書。
この次元 "bit" は、すべての古典レジスタを creg_names 順に連結したものであり、したがって、これを分割 creg_bit_boundaries し、レジスタ j のビットは物理量子ビットに対する結果を保持する clbit_qubit_idxs[creg][j]。 なお、レジスタはクビットの昇順で測定を行う必要はなく、また、同じ物理クビットが複数のレジスタによって測定される場合があることに留意してください。
各レジスタは、データが収集された命令シーケンスの測定ゲートと、それらのゲートが処理される順序に従って一対一に対応しており、したがって、の第-番 n目の名前には、第- n番目の測定ゲートの結果が格納 creg_names される。
データセットはcregメタデータに基づいてグループ化されます。つまり、同じ および creg_names を持つ2つのデータセットは、 次 "randomization" 元に沿ってマージ clbit_qubit_idxs されます。
パラメーター
datatree – 上記の形式のデータツリー。
__init__
__init__(datatree: DataTree)
方法
コラム「 1 」 | コラム「 2 」 |
|---|---|
__init__(データツリー) | |
from_arrays(creg_names, clbit_qubit_idxs,...) | 配列として指定されたデータからインスタンスを作成します。 |
merge(その他) | 別の生データセットと結合する。 |
属性
コラム「 1 」 | コラム「 2 」 |
|---|---|
datatree | データツリー。 |
datatree
タイプ: DataTree
データツリー。
from_arrays
classmethod from_arrays(creg_names: list[str], clbit_qubit_idxs: dict[str, ndarray], instruction_sequences: list[InstructionSequence], data: list[ndarray[bool]], measurement_flips: list[ndarray[bool]], time_lbs: list[ndarray[datetime64]], time_ubs: list[ndarray[datetime64]])
配列として指定されたデータからインスタンスを作成します。
すべての命令シーケンスは、同じcreg構造(同じ creg_names および clbit_qubit_idxs)を共有していなければなりません。 その結果、単葉のデータツリーが含まれる RawData 。
パラメーター
- creg_names – クラシックなレジスタ名の順序付きリスト。
- clbit_qubit_idxs – creg名を、測定された物理クビットのインデックスの配列にマッピングする辞書。ここで、各エントリは、レジスタ
jの古典ビット として測定された物理クビットのインデックスjを表す。 - instruction_sequences – 実験の生成に使用される命令シーケンスのリスト。
- data – すべての古典的レジスタについて、各命令シーケンスごとの結果データのリスト。 このデータには次元があります
("randomization", "shot", "bit")。 ビットはordercreg_namesに従って並べられ、各 creg のビットは連続して配置されます。 - measurement_flips – 各命令シーケンスのデータに適用される測定フリップの一覧。 寸法は
("randomization", "bit"). - time_lbs – 特定の指示シーケンスについて、各無作為化におけるデータ収集時間の下限。 寸法は以下の通りです
("randomization",)。 - time_ubs – 特定の命令シーケンスについて、各ランダム化におけるデータ収集時間の上限。 寸法は以下の通りです
("randomization",)。
merge
merge(other: Self) → Self
別の生データセットと結合する。
creg メタデータが一致するデータセット(creg_names および clbit_qubit_idxs)は、 次 "randomization" 元に沿って連結されます。 次 "shot" 元の不規則性については、データ "data_mask" 変数を用いて処理されます。
パラメーター
その他 – もう一方の生データセット。
戻り値
統合されたデータ。