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 와 가 동일한 두 데이터셋은 차원을 "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"). 비트는 creg_names order에 따라 정렬되며, 각 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에서 버그, 오타를 보고하거나 컨텐츠를 요청하십시오.