Skip to main content
IBM Quantum Platform

qiskit_noise_learning.data.RawData

class qiskit_noise_learning.data.RawData(datatree: DataTree)

GitHub

ベース: 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")。 ビットは order creg_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" 変数を用いて処理されます。

パラメーター

その他 – もう一方の生データセット。

戻り値

統合されたデータ。

このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。