qiskit_noise_learning.analysis.Fit
class qiskit_noise_learning.analysis.Fit(*, model: LinearMap[Hashable, FidelityIndex] | None = None, paths: list[Path] | None = None, instruction_sequences: list[InstructionSequence] | None = None, relations: set[tuple[int, int]] | None = None, _store: dict[type[LeveledData], list[LeveledData | AbsentType | SkippedType]] | None = None)
ベース: object
分析階層の各レベルにおけるデータを格納するコンテナ。
これらは、処理されたデータのさまざまな段階を表 LEVELS しています。 順に、以下の通りです:
RawData実行された命令シーケンスのビット数に対応する。ObservableData命令シーケンスを辿る経路のランダム化に対応する観測量。AggregatedObservableData無作為化ごとに集計された観測量の組み合わせに対応する。ModelDataモデル適合パラメータに対応する。
各レベルには、そこに書き込まれたすべての値の履歴が保持されており、現在の値は常に最新のものです。 新しいレベルは から始まります Absent。 そのステージでスキップされたレベルにはマークが付いています Skipped。
例:
result = my_stage.run(my_raw_data)
result.raw_data # current RawData
result.history.raw_data # full write history at the RawData levelパラメーター
- モデル – 推定対象のモデル。 指定される場合、それはフィデリティモデル、すなわち出力空間
LinearMapが であるものでなければならない(LogFidelitySpace参照is_fidelity_model())。 - paths – 分析対象のパス。
- instruction_sequences – 実験で使用された命令シーケンス。
- 関係 – どの命令シーケンスがどのパスを辿るかを示す、事前に計算されたタプ
(path_idx, sequence_idx)ルの集合。
昇給
TypeError – model が ではなく、 None かつフィデリティモデルでもない場合。
__init__
__init__(*, model: LinearMap[Hashable, FidelityIndex] | None = None, paths: list[Path] | None = None, instruction_sequences: list[InstructionSequence] | None = None, relations: set[tuple[int, int]] | None = None, _store: dict[type[LeveledData], list[LeveledData | AbsentType | SkippedType]] | None = None)
方法
コラム「 1 」 | コラム「 2 」 |
|---|---|
__init__(*[, model, paths, ...]) | |
copy() | 各レベルにおける完全な履歴を保持したコピーを返す。 |
plot_qubit_pair_decays([pairs, ...]) | このフィットのデータに基づいて、量子ビットペアごとの忠実度の減衰を示すグリッドをプロットする。 |
属性
コラム「 1 」 | コラム「 2 」 |
|---|---|
aggregated_observable_data | 当該レベル AggregatedObservableData における最新のデータ。 |
history | 各レベルごとの書き込み履歴の全記録。 |
instruction_sequences | 実験で使用された命令シーケンス、または設定されていない None 場合は。 |
model | 設計行列の構築に使用されたフィデリティモデル。 |
model_data | 当該レベル ModelData における最新のデータ。 |
observable_data | 当該レベル ObservableData における最新のデータ。 |
paths | 観測可能量の計算を行うためのパス。 |
raw_data | 当該レベル RawData における最新のデータ。 |
relations | パスとシーケンスの関係、または設定されていない None 場合は。 |
copy
copy() → Self
各レベルにおける完全な履歴を保持したコピーを返す。
history
タイプ: FitHistory
各レベルごとの書き込み履歴の全記録。
model
タイプ: LinearMap[Hashable, FidelityIndex] | None
設計行列の構築に使用されたフィデリティモデル。
raw_data
種類: RawData | AbsentType | SkippedType
当該レベル RawData における最新のデータ。
observable_data
種類: ObservableData | AbsentType | SkippedType
当該レベル ObservableData における最新のデータ。
aggregated_observable_data
種類: AggregatedObservableData | AbsentType | SkippedType
当該レベル AggregatedObservableData における最新のデータ。
model_data
種類: ModelData | AbsentType | SkippedType
当該レベル ModelData における最新のデータ。
paths
instruction_sequences
タイプ: list[InstructionSequence] | None
実験で使用された命令シーケンス、または設定されていない None 場合は。
relations
plot_qubit_pair_decays
plot_qubit_pair_decays(pairs: Sequence[tuple[int, int]] | None = None, *, restrict_to_qubits: Iterable[int] | None = None, observable_type: Literal['raw', 'means', 'both'] | None = None, exponential_fit: bool = False, model_prediction: bool = False, observable_marker_kwargs: Mapping[str, object] | None = None, means_marker_kwargs: Mapping[str, object] | None = None, exponential_fit_line_kwargs: Mapping[str, object] | None = None, model_line_kwargs: Mapping[str, object] | None = None, num_cols: int = 3, noise_site: Mapping[str, Literal['before', 'after']] | None = None, paths: Sequence[Path] | None = None, fragment_depths: Sequence[float] | None = None, title: str | None = None) → InteractiveFigure
このフィットのデータに基づいて、量子ビットペアごとの忠実度の減衰を示すグリッドをプロットする。
1組につき1つのサブプロットとし、組間でラベルや色を共有する。 どの崩壊が描写されるかは、以下のトグルスイッチで制御されます。すべてデフォルトではオフになっているため、必要なものをオンにしてください。 このフィッティングにおいて、データがまだ計算されていない要求された減衰は、警告を表示してスキップされます。
パラメーター
- pairs – プロットする量子ビットのペア。各ペアごとに1つのサブプロットが表示されます。 ペアには順序がない―― は と同じサブプロット
(1, 0)を指す――(0, 1)ため、同じペアが重複することはない。 デフォルトでは、このフィットで設定されたゲートの結合マップのペアのうち、その範囲内にありqubit_subset、かつ描画されている崩壊のうち少なくとも1つを含むもののみが選択されます。 - restrict_to_qubits – オプションの量子ビットインデックスのセット。このセットに含まれる量子ビットのみを対象に
pairs絞り込むためのものです。 - observable_type – 実測データをどのように描画するか:
"raw"(ランダム化ごとの未加工の散布図)、"means"(フラグメント深度ごとの平均値と誤差棒)、"both"、またはNone(デフォルト)で実測点を省略する。 このフィットの.を使用しますObservableData。 - exponential_fit – このフィットの(
AggregatedObservableDataそのフィットのパラメータ)に基づいて、適合fragment_depth == -1された指数関数的減衰曲線を描画するかどうか。 デフォルトはFalse. です。 - model_prediction – このフィットのモデルと に基づいて、モデル予測の減衰曲線を描画するかどうか
ModelData。 デフォルトはFalse. です。 - observable_marker_kwargs – オプション。生のオブザーバブルのデータポイントに対する上書き
marker設定。 - means_marker_kwargs – オプション。オブザーバブルの平均値ポイントに対する上書き
marker設定。 - exponential_fit_line_kwargs – 指数関数フィットの曲線に対する、オプションのオーバーライド
line設定。 - model_line_kwargs – モデル曲線に対するオプションのオーバーライド
line。 - num_cols – サブプロットの列数。行数はペアの数から算出される。
- noise_site – ラベルフォーマッタに渡される、オプションのノイズ・サイトマッピング(デフォルトのラベル
"formula"スタイルでは、これによりコンパクトなラベルf^{gate}_{pauli}が生成されます)。 フィット対象のモデルが単一である場合、または単一のモデルを含む場合、デフォルトではそのモデルのノイズサイトが設定されますPauliLindbladModel。 - パス – すべてのレイヤーに描画するパス。 デフォルトでは、このフィットの観測データ/集計観測データに見られる減衰経路が使用され、そのようなデータが存在しない場合は
paths、フィット独自の減衰経路が使用されます。 これを入力すると、モデルのみを考慮したフィットのモデル予測曲線が描画されます(パス導出のための観測データや集計観測データは含まれません)。 - fragment_depths – 曲線のフラグメント深度の範囲。 デフォルトでは、利用可能な実測データの中で最大のフラグメント深度まで
0、あるいは実測データが存在しない場合は0–10となります。 - title – 図のタイトル(任意)。
戻り値
インタラクティブな凡例付きの図。
昇給
- ValueError – フィットにラベルを生成するためのモデル(したがってゲートセット)がない場合、または同じペアに2回名前
pairsが付けられている場合。 - ValueError – が指定
pairsされておらず、かつデフォルト値を導き出すことができない場合。 - ValueError – が
restrict_to_qubitsすべてのペアを除外した場合。 - ImportError –
matplotlibがインストールされていない場合。