qiskit_noise_learning.experiment_builder.Experiment
class qiskit_noise_learning.experiment_builder.Experiment(*, fidelity_model: LinearMap[Hashable, FidelityIndex] | ModelGateSet | None = None, paths: list[Path] | None = None, instruction_sequences: list[InstructionSequence] | None = None, relations: set[tuple[int, int]] | None = None, shots: int = 20, randomizations: int = 50, randomization_multipliers: list[int] | None = None, validate: bool = True)
ベース: object
学習実験の仕様書。
An は、ノイズ学習実験を定義するために必要なすべてのデータ(忠実度モデル、解析パス、命令シーケンス、それらの関係、および実行パラメータ(ショットとランダム化))を収集 Experiment します。
すべての項目は任意であり、 ExperimentBuilderStage インスタンスを通じて段階的に入力することができます。
パラメーター
- fidelity_model – フィデリティ・モデル、またはモデル・ゲート・セット(がでラップされているもの
IdentityFidelityModel)。 - paths – 分析対象のパス。
- instruction_sequences – 命令シーケンス(バインドされたものとバインドされていないものの両方が含まれる場合がある)。
- relations – どの命令シーケンスがどのパスを辿るかを示すタプ
(path_idx, sequence_idx)ルの集合。 - ショット数 – グローバルなショット数(デフォルトは20)。
- 無作為化回数 – 無作為化の総回数(デフォルトは 50)。
- randomization_multipliers – シーケンスごとのランダム化乗数(instruction_sequences と並行)。
- validate – の場合(
Trueデフォルト)、 と同じ検証チェック(replace()共置換、長さの整合性、関係の範囲)を適用します。
__init__
__init__(*, fidelity_model: LinearMap[Hashable, FidelityIndex] | ModelGateSet | None = None, paths: list[Path] | None = None, instruction_sequences: list[InstructionSequence] | None = None, relations: set[tuple[int, int]] | None = None, shots: int = 20, randomizations: int = 50, randomization_multipliers: list[int] | None = None, validate: bool = True)
方法
コラム「 1 」 | コラム「 2 」 |
|---|---|
__init__(*[, fidelity_model, paths, ...]) | |
replace(*[, validate]) | 指定されたフィールドを上書きした浅いコピーを返します。 |
属性
コラム「 1 」 | コラム「 2 」 |
|---|---|
design_matrix | フィデリティモデルとパスから遅延評価によって計算された設計行列。 |
fidelity_model | フィデリティ・モデル。 |
gate_set | モデル用ゲートセット。 |
instruction_sequences | 命令シーケンス。 |
is_executable | この実験には、実行に必要な情報がすべて揃っているかどうか。 |
paths | 分析の経路。 |
randomization_multipliers | シーケンスごとの無作為化乗数。 |
randomizations | 世界全体の無作為割付件数。 |
relations | 経路関係と順序関係の集合。 |
shots | 世界全体の接種回数。 |
fidelity_model
タイプ: LinearMap[Hashable, FidelityIndex] | None
フィデリティ・モデル。
gate_set
種類: ModelGateSet | None
モデル用ゲートセット。
paths
instruction_sequences
種類: list[InstructionSequence] | None
命令シーケンス。
relations
shots
種類: int
世界全体の接種回数。
randomizations
種類: int
世界全体の無作為割付件数。
randomization_multipliers
design_matrix
種類: IndexedMatrix
フィデリティモデルとパスから遅延評価によって計算された設計行列。
昇給
ValueError – または fidelity_model paths が の場合 None。
is_executable
種類: bool
この実験には、実行に必要な情報がすべて揃っているかどうか。
必要条件: が設定 instruction_sequences されており、すべてのシーケンスがバインドされ、完全であり、かつ が設定されている randomization_multipliers こと。
replace
replace(*, validate: bool = True, **kwargs) → Experiment
指定されたフィールドを上書きした浅いコピーを返します。
validate=True (デフォルト) の場合、以下のチェックが適用されます:
- 共置換 : と は
instruction_sequences、常に両方とも であるか、Noneあるいは両方とも でないものでrandomization_multipliersなければならないNone。一方のみを置換することは、この不変条件が保たれる場合にのみ許される。 - 長さの一貫性 : と長さが同じで
randomization_multipliersなければならないinstruction_sequences。 - 関係の範囲 :この設定を行うには、および
pathsが存在instruction_sequencesしている必要relationsがあり、すべてのインデックスが範囲内である必要があります。 - ソフト無効化 :新しい を指定
instruction_sequencesせずに またはpathsを置き換えると、警告が表示されたNone上で がrelationsに設定されますrelations。
パラメーター
- validate – の場合
True、上記のチェックを適用する。 その場合False、フィールドは検証を行わずにそのまま設定されます。 - **kwargs – フィールド名とその新しい値。
昇給
- TypeError – 認識されないフィールド名が指定された場合。
- ValueError – 検証制約に違反した場合。