KR20240051981A - 그래디언트-기반 양자 보조 해밀토니안 학습 - Google Patents

그래디언트-기반 양자 보조 해밀토니안 학습 Download PDF

Info

Publication number
KR20240051981A
KR20240051981A KR1020247009055A KR20247009055A KR20240051981A KR 20240051981 A KR20240051981 A KR 20240051981A KR 1020247009055 A KR1020247009055 A KR 1020247009055A KR 20247009055 A KR20247009055 A KR 20247009055A KR 20240051981 A KR20240051981 A KR 20240051981A
Authority
KR
South Korea
Prior art keywords
quantum
computer
hamiltonian
experimental data
cost function
Prior art date
Application number
KR1020247009055A
Other languages
English (en)
Inventor
토마스 유진 오브라이언
바딤 스멜얀스키
레프 이오프
위안 수
라이언 배부시
Original Assignee
구글 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구글 엘엘씨 filed Critical 구글 엘엘씨
Publication of KR20240051981A publication Critical patent/KR20240051981A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/60Quantum algorithms, e.g. based on quantum optimisation, quantum Fourier or Hadamard transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/20Models of quantum computing, e.g. quantum circuits or universal quantum computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/40Physical realisations or architectures of quantum processors or components for manipulating qubits, e.g. qubit coupling or qubit control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/70Quantum error correction, detection or prevention, e.g. surface codes or magic state distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B82NANOTECHNOLOGY
    • B82YSPECIFIC USES OR APPLICATIONS OF NANOSTRUCTURES; MEASUREMENT OR ANALYSIS OF NANOSTRUCTURES; MANUFACTURE OR TREATMENT OF NANOSTRUCTURES
    • B82Y10/00Nanotechnology for information processing, storage or transmission, e.g. quantum computing or single electron logic

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Superconductor Devices And Manufacturing Methods Thereof (AREA)

Abstract

그래디언트-기반 양자 보조 해밀토니안 학습을 위한 방법, 시스템 및 장치가 개시된다. 한 양태에서, 방법은 클래식 프로세서에 의해, 복수의 실험 데이터 포인트들을 획득하는 단계 -각각의 실험 데이터 포인트는 미지의 값을 갖는 파라미터를 포함하는 해밀토니안(Hamiltonian)에 따라 생성됨-; 상기 클래식 프로세서에 의해, 상기 파라미터의 값을 학습하는 단계를 포함하며, 상기 파라미터의 값을 학습하는 단계는 상기 클래식 프로세서에 의해, 비용 함수를 최소화하기 위해 미리결정된 완료 기준이 충족될 때까지 상기 파라미터의 추정값을 반복적으로 조정하는 단계를 포함하며; 상기 비용 함수는 상기 복수의 실험 데이터 포인트들에 의존하고, 각 반복에서 이전 반복에 대한 상기 파라미터의 각각의 추정값에 대한 상기 비용 함수의 도함수는 양자 컴퓨터를 사용하여 계산된다.

Description

그래디언트-기반 양자 보조 해밀토니안 학습
해밀토니안(Hamiltonian) 학습은 해밀토니안 시스템이 주어졌을 때 실험 결과를 예측하는 데 반대되는 문제이다. 해밀토니안 학습은 장치 특성화 또는 알려지지 않은 양자 시스템의 구조 학습에 사용될 수 있다. 충분히 작은 장치는 베이지안, 최대 가능성 또는 기계 학습 방법을 사용하여 실험 데이터의 클래식 후처리를 통해 특성화될 수 있다. 순방향 문제가 클래식 수준을 넘어설 때마다 대규모 시스템에서는 정확한 방법이 불가능하다. 충분한 제어가 제공되면 동적 디커플링 펄스를 통해 작은 서브시스템을 대상으로 하는 실험을 수행하여 실험이 고전을 넘어서는(beyond-classical) 것을 방지할 수 있다. 충분한 제어가 제공되면 펄스를 적용하여 서브시스템을 해당 환경에서 동적으로 분리함으로써 이를 달성할 수 있다. 클래식적으로 근사하기가 더 쉬운 열 또는 장기간 평균 상태의 기대값으로부터 해밀토니안을 학습하는 것도 가능하다. 그러나 두 기술 모두 가능하지 않은 경우, 해밀토니안 학습 문제는 클래식적으로 어려워져, 잠재적인 비욘드-클래식(beyond-classical) 양자 컴퓨팅 애플리케이션을 제공한다.
본 명세서에서는 그래디언트-기반 양자 보조 해밀토니안 학습(gradient-based quantum assisted Hamiltonian learning)을 위한 시스템, 방법, 장치 및 기타 기술을 설명한다. 일반적으로, 본 명세서에 설명된 요지의 혁신적인 양태 중 하나는 방법으로 구현될 수 있으며, 방법은, 클래식 프로세서에 의해, 복수의 실험 데이터 포인트들을 획득하는 단계 -각각의 실험 데이터 포인트는 미지의 값을 갖는 파라미터를 포함하는 해밀토니안(Hamiltonian)에 따라 생성됨-; 상기 클래식 프로세서에 의해, 상기 파라미터의 값을 학습하는 단계를 포함하며, 상기 파라미터의 값을 학습하는 단계는 상기 클래식 프로세서에 의해, 비용 함수를 최소화하기 위해 미리결정된 완료 기준이 충족될 때까지 상기 파라미터의 추정값을 반복적으로 조정하는 단계를 포함하며; 상기 비용 함수는 상기 복수의 실험 데이터 포인트들에 의존하고, 각 반복에서 이전 반복에 대한 상기 파라미터의 각각의 추정값에 대한 상기 비용 함수의 도함수는 양자 컴퓨터를 사용하여 계산된다.
이 양태의 다른 구현에는 대응하는 클래식(classical), 양자 또는 클래식-양자(classical-quantum) 컴퓨터 시스템, 장치 및 하나 이상의 컴퓨터 저장 장치에 기록된 컴퓨터 프로그램이 포함되며, 각각은 방법의 액션을 수행하도록 구성된다. 하나 이상의 클래식 및 양자 컴퓨터로 구성된 시스템은 작동 시 시스템이 액션을 수행하게 하거나 작동하게 하는 시스템에 설치된 소프트웨어, 펌웨어, 하드웨어 또는 이들의 조합을 가짐으로써 특정 동작 또는 액션을 수행하도록 구성될 수 있다. 하나 이상의 컴퓨터 프로그램은 데이터 처리 장치에 의해 실행될 때 장치가 동작을 수행하게 하는 명령어를 포함함으로써 특정 동작 또는 액션을 수행하도록 구성될 수 있다.
전술한 구현과 다른 구현은 각각 선택적으로 다음 기능 중 하나 이상을 단독으로 또는 조합하여 포함할 수 있다. 일부 구현에서, 실험 데이터 포인트는 양자 시스템에서 수행된 각각의 실험에 대응하며, 여기서 실험은 비욘드-클래식 실험(beyond-classical experiments)을 포함한다.
일부 구현에서 클래식 프로세서는 클래식 연결을 통해 분광계로부터 실험 데이터 포인트를 획득한다.
일부 구현에서 양자 컴퓨터는 NIS(noisy intermediate scale) 양자 컴퓨팅 장치를 포함한다.
일부 구현에서, 양자 컴퓨터를 사용하여 상기 이전 반복에 대한 상기 파라미터의 추정값에 대한 상기 비용 함수의 도함수를 계산하는 단계는 상기 해밀토니안에 의해 생성된 유니터리 시간 에볼루션을 시뮬레이션하기 위해 상기 양자 컴퓨터를 사용하는 단계를 포함하며, 상기 유니터리 시간 에볼루션은 상기 해밀토니안에 포함된 에르미트 연산자를 포함하는 교란(perturbations)과 인터리브된다.
일부 구현에서 도함수는 그래디언트를 포함하고, 상기 비용 함수의 각각의 그래디언트는 다중 적분을 포함하고, 각각의 적분은 각각의 피적분 함수를 포함하며, 각 피적분 함수는 i) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 관측치 ii) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 양자 시스템의 교란 상태(perturbed state)의 기대값을 포함하고, 상기 상태는 상기 해밀토니안에 포함된 에르미트 연산자(Hermitian Operator)를 이용하여 교란된다(perturbed).
상기 이전 반복에 대한 파라미터의 추정값에 대한 비용 함수의 도함수를 계산하기 위해 양자 컴퓨터를 사용하는 단계는, 상기 다중 적분의 각 피적분 함수의 계산을 요청하는 데이터를 상기 클래식 프로세서에서 상기 양자 컴퓨터로 전송하는 단계; 그리고 상기 클래식 프로세서에 의해, 상기 다중 적분의 각 피적분 함수의 계산 결과를 나타내는 데이터를 상기 양자 컴퓨터로부터 수신하는 단계를 포함한다.
일부 구현에서, 방법은 상기 클래식 프로세서에 의해, 상기 다중 적분의 각 피적분 함수의 계산 결과를 나타내는 데이터의 합산을 통해 상기 다중 적분을 계산하는 단계; 상기 클래식 프로세서에 의해, 상기 이전 반복에 대한 상기 파라미터의 추정값에 대해 상기 비용 함수의 1차 도함수를 계산하기 위해 상기 계산된 다중 적분을 사용하여 곱셈 및 덧셈 연산을 수행하는 단계를 더 포함한다.
일부 구현에서 방법은, 미리결정된 반복 횟수만큼 반복적으로: 상기 양자 컴퓨터에 의해, 초기 양자 상태의 큐비트의 레지스터를 준비하는 단계 -상기 초기 양자 상태는 계산 기반에서 혼합 대각 상태(mixed diagonal state)를 포함함-; 상기 양자 컴퓨터에 의해, 상기 초기 양자 상태에 양자 회로를 적용하여 에볼루션된 양자 상태를 획득하는 단계 -상기 양자 회로는 제어된 교란이 인터리브된 유니터리 시간 에볼루션 연산자를 포함하고; 상기 유니터리 시간 에볼루션 연산자는 상기 해밀토니안에 의해 생성된 유니터리 시간 에볼루션을 시뮬레이션하고, 상기 제어된 교란은 상기 해밀토니안에 포함된 에르미트 연산자를 포함함-; 그리고 상기 에볼루션된 양자 상태의 관측치(observable)를 측정하는 단계 -상기 관측치는 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 관측치를 포함함-; 그리고 상기 측정된 관측치의 기대값을 계산하는 단계를 더 포함한다.
일부 구현에서 양자 컴퓨터는 FT(fault tolerant) 양자 컴퓨팅 장치를 포함한다.
일부 구현에서, 양자 컴퓨터를 사용하여 상기 이전 반복에 대한 파라미터의 추정값에 대한 비용 함수의 도함수를 계산하는 단계는 상기 비용 함수의 도함수를 계산하기 위해 블록 인코딩을 사용하는 단계를 포함한다.
이전 반복에 대한 파라미터의 추정값에 대해 비용 함수의 도함수를 계산하기 위해 양자 컴퓨터를 사용하는 단계는, 상기 비용 함수의 도함수의 계산을 요청하는 데이터를 상기 클래식 프로세서에서 상기 양자 컴퓨터로 전송하는 단계; 그리고 상기 클래식 프로세서에 의해, 상기 비용 함수의 도함수의 계산 결과를 나타내는 데이터를 상기 양자 컴퓨터로부터 수신하는 단계를 포함한다.
일부 구현에서, 방법은, 상기 양자 컴퓨터에 의해, 큐비트의 제어 레지스터를 초기 상태로 초기화하는 단계; 상기 양자 컴퓨터에 의해, 상기 초기 상태에 준비 유니터리 연산자를 적용하여 상기 제어 레지스터의 제어 상태를 획득하는 단계; 그리고 상기 양자 컴퓨터에 의해, 선택 유니터리 연산자를 상기 제어 상태에 적용하여 상기 제어 레지스터의 에볼루션된 상태를 획득하는 단계 -상기 선택 유니터리 연산자는 상기 제어 레지스터의 제어 상태에 기초하여 구현할 유니터리 연산자를 선택함-; 그리고 상기 제어 레지스터의 에볼루션된 상태를 측정하는 단계를 더 포함한다.
일부 구현에서, 각각의 실험 데이터 포인트는 양자 시스템에서 수행된 각각의 실험에 대응하고, 각각의 실험을 수행하는 것은, 초기 상태의 양자 시스템을 준비하는 단계; 에볼루션된 상태를 생성하기 위해 상기 초기 상태에 시간 에볼루션 연산자를 적용하는 단계 -상기 시간 에볼루션 연산자는 상기 해밀토니안과 외부 시간 의존 구동 필드에 의해 생성됨-; 그리고 상기 에볼루션된 상태의 관측치를 측정하는 단계를 포함한다.
일부 구현에서, 실험 데이터 포인트들의 수는 미지의 값을 갖는 파라미터의 수보다 크거나 동일하다.
일부 구현에서, 해밀토니안은 항들(terms)의 선형 조합을 포함하고, 각 항(term)은 각각의 파라미터 및 각각의 에르미트 연산자를 포함한다.
일부 구현에서, 비용 함수는 제1 항(term) 및 제2 항(term)을 포함하고, 상기 제1 항(term)은 상기 파라미터의 추정값과 상기 파라미터의 프라이어(prior) 사이의 차이 제곱의 합을 포함하고; 그리고 상기 제2 항(term)은 상기 파라미터의 추정값과 상기 획득된 실험 데이터 포인트들을 사용하여 추정된 실험 데이터 포인트들 간의 차이 제곱의 합을 포함한다.
일부 구현에서 도함수는 2차 도함수를 포함하고, 상기 비용 함수의 각각의 2차 도함수는 다중 적분을 포함하고, 각각의 적분은 피적분 함수(integrand)를 포함하고, 상기 피적분 함수는, i) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 관측치, ii) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 양자 시스템의 교란 상태의 기대값 -상기 상태는 상기 해밀토니안에 포함된 에르미트 연산자(Hermitian Operator)를 이용하여 교란됨(perturbed)-; 또는 i) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 관측치, ii) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 양자 시스템의 교란 상태를 갖는 해밀토니안에 포함된 제1 에르미트 연산자의 교환자의 기대값을 포함하며, 상기 상태는 상기 해밀토니안에 포함된 제2 에르미트 연산자를 이용하여 교란된다.
일부 구현에서, 도함수는 2차 도함수를 포함하고, 상기 비용 함수의 값이 전역 최소값으로부터 미리결정된 거리 내에 있을 때, 상기 비용 함수의 2차 도함수는 적분의 곱의 합을 포함하며, 각 적분은 피적분 함수(integrand)를 포함하고, 상기 피적분 함수는 i) 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 관측치 ii) 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 양자 시스템의 교란 상태의 기대값을 포함하고, 상기 상태는 상기 해밀토니안에 포함된 에르미트 연산자(Hermitian Operator)를 이용하여 교란된다.
본 명세서에 설명된 요지는 다음 장점 중 하나 이상을 실현하기 위해 특정 실시예에서 구현될 수 있다.
현재 설명된 기술은 시간 분해 측정(time-resolved measurements)(예: 스핀-스핀 상관기(spin-spin correlators)의 측정)으로부터 해밀토니안(Hamiltonian) (예: 분자 핵 스핀 해밀토니안(molecular nuclear spin Hamiltonian))의 파라미터를 학습하는 데 사용될 수 있다. 이 기술은 명확한 점근적 속도(asymptotic speedups) 향상을 달성할 수 있는 NISQ 장치와 FT(fault-tolerant) 장치 모두에 의해 구현될 수 있다. 또한 현재 설명된 기술은 클래식적으로 다루기 힘든 NMR 실험(예: 쌍극자 결합(dipolar couplings)이 강하고 간단히 제거할 수 없는 실험)에 적용될 수 있다.
본 명세서의 요지에 대한 하나 이상의 구현의 세부사항은 첨부 도면 및 아래 설명에 제시되어 있다. 요지의 다른 특징, 양태 및 이점은 설명, 도면 및 청구범위로부터 명백해질 것이다.
도 1은 해밀토니안 학습을 위한 예시 시스템의 개념적 블록 다이어그램을 보여준다.
도 2는 NIS(noisy intermediate scale) 양자 장치를 사용하는 해밀토니안 학습을 위한 예시 시스템의 개념적 블록 다이어그램을 보여준다.
도 3은 해밀토니안 학습 비용 함수의 1차 및 2차 도함수를 계산하는 데 필요한 실험 데이터 포인트와 피적분 함수(integrands)를 추정하기 위한 예시적인 회로도를 보여준다.
도 4는 해밀토니안 학습을 위한 제1 예시 프로세스의 흐름도이다.
도 5는 FT(fault tolerant) 양자 장치를 사용하여 해밀토니안 학습을 위한 예시 시스템의 개념적 블록 다이어그램을 보여준다.
도 6은 해밀토니안 학습 비용 함수의 1차 및 2차 도함수를 계산하는 데 사용되는 FT 오라클(oracles)의 회로도 예시를 보여준다.
도 7은 해밀토니안 학습을 위한 제2 예시 프로세스의 흐름도이다.
도 8은 본 명세서에 설명된 양자 컴퓨팅 방법을 수행하는 데 사용될 수 있는 예시적인 양자 컴퓨팅 장치의 예를 도시한다.
도 9는 본 명세서에 설명된 클래식 컴퓨팅 방법을 수행하는데 사용될 수 있는 예시적인 클래식 프로세서를 도시한다.
다양한 도면에서 유사한 참조 번호 및 지정은 유사한 요소를 나타낸다.
개요
본 명세서에서는 디지털 양자 컴퓨터와 시간 분해 측정(예: NMR 분광학 실험)을 사용하여 알려지지 않은(미지의) 해밀토니안 파라미터(unknown Hamiltonian parameters)(예: 분자 또는 물질 시스템의 핵 스핀(nuclear spin) 해밀토니안 파라미터)를 학습하는 기술을 설명한다. 이 기술은 실험을 클래식적으로 시뮬레이션하기 어려울 때마다 비욘드-클래식 양자 계산(beyond-classical quantum computation)을 제공한다. 이 기술에는 학습 문제의 비용 함수, 그래디언트 및 헤시안(Hessian)을 추정하는 양자 알고리즘이 포함되어 NISQ 및 FT 비용 모델 모두에 대한 구현을 제공한다.
운영 환경 예시
도 1은 해밀토니안 학습을 위한 예시적인 시스템(100)의 개념적 블록도를 도시한다. 예시적인 시스템(100)은 클래식 프로세서(classical processor)(102)와 양자 프로세서(104)를 포함한다. 클래식 프로세서(102)와 양자 프로세서(104)는 하나 이상의 네트워크를 통해 전자 통신을 교환할 수 있거나, 하나 이상의 유선 또는 무선 연결과 같은 다른 방식으로 통신을 교환할 수 있다.
클래식 프로세서(102)는 클래식 계산(classical computations)을 수행하도록 구성된다. 양자 프로세서(104)는 양자 계산을 수행하도록 구성된다. 편의상, 클래식 프로세서(102)와 양자 프로세서(104)는 별도의 엔티티로 예시된다. 예를 들어, 양자 프로세서(104)는 외부의 제3자에 의해 운영되는 양자 프로세서일 수 있다. 그러나 일부 구현에서는 클래식 프로세서(102)가 양자 프로세서(104)에 포함될 수 있다. 즉, 양자 프로세서(104)는 클래식 컴퓨팅 동작(오퍼레이션)을 수행하기 위한 컴포넌트도 포함할 수 있다. 일반적으로, 클래식 프로세서의 클래식 컴퓨팅 컴포넌트는 도 9과 관련하여 설명된 것과 같은 물리적 하드웨어를 갖는 하나 이상의 클래식 컴퓨터로 구현될 수 있으며, 양자 프로세서(104)의 양자 컴퓨팅 컴포넌트는 도 8과 관련하여 설명된 것과 같은 물리적 하드웨어를 갖는 양자 컴퓨팅 장치로서 구현될 수 있다.
클래식 프로세서(102)는 양자 프로세서(104)를 사용하여 그래디언트-기반 해밀토니안 학습(gradient-based Hamiltonian learning)을 수행하도록 구성된다. 즉, 클래식 프로세서(102)는 양자 시스템(106)으로부터 획득된 시간 분해 실험 데이터(time-resolved experimental data)()(108) 세트로부터 일부 양자 시스템(106)의 해밀토니안 H를 학습하도록 구성되며, 여기서 x는 다양한 실험 세트를 인덱싱한다.
클래식 프로세서(102)는 외부 파티(external party)로부터 입력으로 실험 데이터(108)를 수신할 수 있거나, 예를 들어 양자 프로세서(104) 또는 다른 양자 프로세서 또는 센서를 사용하여 양자 시스템(106)을 프로브(probe)하고 실험 데이터(108)를 생성할 수 있다. 실험 데이터(108)는 복수의 실험 데이터 포인트들을 포함하며, 여기서 각각의 실험 데이터 포인트는 미지의 값을 갖는 하나 이상의 파라미터를 포함하는 해밀토니안에 따라 생성된다. 각 데이터 포인트는 해당 실험에 해당하며, 여기서 실험은 초기 양자 상태 준비(), 학습할 해밀토니안에 의한 초기 양자 상태의 시간 에볼루션(time evolution) 및 외부 시간 종속 구동 해밀토니안(external time-dependent driving Hamiltonian)(), 관측치(observable)()의 최종 측정(측정치)으로 구성된다. 결과적인 데이터 포인트(본 명세서에서는 신호라고도 함)()는 수학식 1과 같이 주어지며,
여기서 수학식 2와 같이, 에서 까지 결합된 해밀토니안()에 의해 생성된 시간 에볼루션 연산자(time evolution operator )이다.
일부 구현에서, 초기 양자 상태(initial quantum state) 및 관측치(observable)는 준비(preparation) 및 측정 항(measurement terms)을 구동 해밀토니안(driving Hamiltonian)()으로 인코딩하여 실험 x(예: )와 독립적일 수 있다(이것은 실제 실험에 대한 보다 정확한 설명을 제공할 수 있다.). 또는, 구동 해밀토니안()이 준비 및 측정(measurement)에만 사용되는 경우, 이는 을 설정하여 에서 완전히 인코딩될 수 있다.
클래식 프로세서(102)에 의해 수행되는 학습 문제를 정의하기 위해 학습할 해밀토니안은 수학식 3과 같은 형식으로 작성될 수 있으며,
여기서 은 해밀토니안 파라미터 세트이고, 은 에르미트 연산자(Hermitian operators) 세트이다. 모든 해밀토니안은 이 형식으로 작성될 수 있다. 일부 구현에서는 의 일부 또는 전체 값을 알 수 없다(미지의 값). 클래식 프로세서(102)는 이러한 미지의 값()의 추정치를 계산하기 위해 본 명세서에 설명된 기술에 따라 해밀토니안 학습을 수행하도록 구성된다.
해밀토니안 학습을 수행하기 위해, 클래식 프로세서는 미리결정된 완료 기준이 충족될 때까지 비용 함수를 최소화하기 위해((또는 선택한 비용 함수의 형태에 따라 최대화)) 알 수 없는(미지의) 파라미터의 추정 값을 반복적으로 조정한다(예를 들어 비용 함수의 값은 허용 가능한/미리 정의된 임계값 내에 수렴된다. 비용 함수는 우도 함수(likelihood function)이거나 우도 함수를 기반으로 할 수 있다. 예를 들어, 표준 편차()를 갖는 프라이어(prior)()가 주어지고, 각 데이터 포인트()가 표준 편차()를 갖는 실험 모집단(experimental population)에서 추출된다고 가정하면, 비용 함수는 수학식 4와 같이 주어지며,
여기서, 는 파라미터()의 추정값을 사용하여 추정된 신호(estimated signal)이다. (본 명세서 전체에서 물결표는 숨겨진 파라미터가 아닌 추정된 파라미터에서 파생된 양(quantities)을 나타낸다.)
는 클래식 장치에서는 추정할 수 없지만, 양자 컴퓨터에서 이를 구현하려면 시간 에볼루션()을 시뮬레이션하는 회로만 필요하다. 그러나 그래디언트 없이 이러한 최적화를 수행하는 것은 일반적으로 비실용적이다. 따라서, 각 반복에서 클래식 프로세서(102)는 이전 반복에 대한 하나 이상의 파라미터의 추정값에 대해 비용 함수의 도함수(derivatives)를 계산한다. 도함수에는 비용 함수의 1차 도함수(그래디언트)(gradients)와 2차 도함수(헤시안(Hessian))가 포함될 수 있다. 이들 도함수는 수학식 5 내지 10과 같이 주어질 수 있으며;
여기서, 는 s에서 t까지 시간에 따라 앞으로 에볼루션된 (추정된) 연산자()이며, 그리고 는 시간 t에서의 (추정된) 상태()이다. 즉, 비용 함수의 그래디언트는 다중 적분(multiple integrals)(예: 수학식 7로 제공)을 포함하며, 각 적분은 해당 피적분 함수(예: 수학식 8로 제공)를 포함하며, 여기서 피적분 함수(integrand)는 i) 복수의 실험 데이터 포인트들(108)를 생성하는 데 사용된 관측치(observable)()와 ii) 복수의 실험 데이터 포인트들(108)를 생성하는 데 사용된 양자 시스템의 교란 상태(perturbed state)의 기대값(expectation value)으로 제공되며, 여기서 상태는 해밀토니안에 포함된 에르미트 연산자(Hermitian operator)()를 사용하여 교란된다(perturbed)(수학식 3).
수학식 6에서 에 종속되는 항(term)은 리미트(limit) 에서 사라지므로, 일부 구현에서는 수학식 11과 같이 클래식 프로세서(102)가 C[H]의 전역 최소값에 가까울 때 근사하는 것이 실용적일 수 있으며,
이는 그래디언트 추정치에 대한 추가 비용 없이 얻을 수 있다. 그러면 의 최종 추정치의 공분산 행렬 Σ는 수학식 12와 같이 추정될 수 있다.
클래식 프로세서(102)는 양자 프로세서(104)를 사용하여 1차 및 2차 도함수를 계산한다(예를 들어, 수학식 5와 6). 예를 들어, 각 반복에서 클래식 프로세서(102)는 요청(112)을 양자 프로세서(104)에 보내 현재 반복의 경우 수학식 5 및 6에 주어진 도함수를 결정하는 데 필요한 계산 중 일부 또는 전부를 계산할 수 있다. 그 후, 클래식 프로세서(102)는 요청된 계산의 결과를 나타내는 데이터를 수신(114)할 수 있고, 비용 함수의 반복적 최적화에 이들 결과를 사용할 수 있다.
클래식 프로세서(102)에 의해 요청된 계산 유형은 양자 프로세서(104)에 포함된 계산 리소스(자원)에 따라 달라질 수 있다. 예를 들어, 도 2를 참조하여 아래에서 설명하는 바와 같이, 일부 구현에서 양자 프로세서(104)는 NISQ(noisy intermediate scale quantum)(NIS 양자) 장치를 포함할 수 있다. 이러한 구현에서, 클래식 프로세서(102)는 도함수를 결정하는 데 필요한 일부 계산, 예를 들어 수학식 8 및 10의 피적분 함수(integrands) 계산을 아웃소싱할 수 있다. 또 다른 예로서, 도 5를 참조하여 후술하는 바와 같이, 일부 구현에서 양자 프로세서(104)는 FT(fault tolerant) 양자 장치를 포함할 수 있다. 이들 구현에서, 클래식 프로세서(102)는 수학식 5 및 6(또는 수학식 5와 6의 두 번째 항)에 주어진 도함수를 결정하는 직접적인 태스크를 아웃소싱할 수 있다.
비용 함수의 반복적 최적화가 미리결정된 완료 기준을 만족하는 경우, 클래식 프로세서(102)는 미지의(unknown) 해밀토니안 파라미터()의 추정값(116)을 출력으로 제공할 수 있다. 추정값은 실험 데이터를 생성한 양자 시스템의 특성을 결정하는 데, 예를 들어 알려지지 않은 화합물의 분자 및/또는 결정 구조를 결정하는 데 사용될 수 있다.
클래식 프로세서(102)에 의해 수행되는 해밀토니안 학습 프로세스는 예를 들어 로컬 최소값에 갇히는 것을 방지하기 위해 로버스트(robust)로 만들어질 수 있다. 시간 독립적 해밀토니안(time-independent Hamiltonian)을 고려한다. 이 경우, 시스템 해밀토니안 시스템()의 고유기초(eigenbasis)()에서 워킹(working)하고 항등식의 두 가지 분해능(resolutions)을 삽입하면 신호(signal)는 수학식 13과 같은 형식을 취한다.
추정치가 일부 파라미터()에 의해 벗어나면 교란 이론(perturbation theory)에서 가장 낮은 차수로 추정된 신호(시그널)는 수학식 14 및 15와 같은 형식을 취하며,
여기서, X는 파동함수()에 대한 1차 보정에서 나온 δ-독립 상수(-independent constant)이다. 비용 함수(수학식 4)의 두 번째 항은 수학식 16과 같은 형식을 취하며,
이는 시스템 크기와 무관한, 로 제한된 주파수를 갖는 δ의 함수로 오실레이션(oscillate)한다. 이는 파라미터()의 초기 추측(initial guess)()이 일부 δ 내에 있는 경우(예: ), 각 은 [-1,1] 내의 스펙트럼을 갖도록 정의되며, 클래식 프로세서(102)는 수학식 17과 같이, 단지 실험으로부터 H를 먼저 학습함으로써 로버스트(robust) 해밀토니안 학습을 수행할 수 있다.
이 데이터를 수렴한 후 파라미터 추측의 분산(variance)을 추정할 수 있으며(수학식 6을 사용), δ의 추정치를 개선하고 허용되는 t의 범위를 늘릴 수 있다. 각 에서의 추정이 일부 에 대해 에러 를 생성한다고 가정하면, 여러 차수에 걸쳐 이 절차를 반복하면 스텝에서 일부 최종 에러 로 수렴된다.
비용 함수 C[H]와 그 1차 및 2차 도함수를 계산하기 위해 본 명세서에 설명된 알고리즘은 NISQ 장치 및 FT 장치와 같은 다양한 유형의 양자 컴퓨터에 적용될 수 있다. NNT(noisy near-term)와 FT LT(long-term) 장치를 대상으로 할 때 양자 알고리즘 최적화는 크게 다르다. 두 경우 모두 수학식 8의 적분은 수학식 18과 같이 이산화되며,
여기서 가중치()은 가 되도록 선택된다. (적분()에 대해서도 2차원 이산화가 유사하게 가능하다.) 가중치와 포인트()를 모두 선택하는 방법에는 여러 가지가 있다. 예를 들어 사다리꼴(trapezoidal) 또는 중간점(midpoint) 규칙을 사용할 수 있다. 또 다른 예로, 더 복잡한 가우스 구적법 방법을 사용할 수 있거나 몬테카를로 접근 방식을 취하고 포인트를 무작위로 선택할 수 있다. 각 방법은 에 따라 0이 되는 이산화 에러가 발생한다. 아래에 설명된 FT와 NISQ 양자 방법은 모두 주로 에 의존하는 비용(코스트)을 가지며, I에 대한 로그 의존성(logarithmic dependence)은 최대이다. 이를 통해 이산화 에러 최적화에 초점을 맞추는 대신, 회로 설계(및 관련 게이트 구현 및 물리적 큐비트 제어 요구 사항)의 단순성 또는 용이성을 위해 통합 방법을 선택할 수 있다.
단기 양자 컴퓨터를 위한 시스템, 알고리즘 및 회로
도 2는 NISQ(Noise Intermediate Scale Quantum) 장치를 사용하여 해밀토니안 학습을 위한 예시적인 시스템(200)의 개념적 블록도를 도시한다. 예시적인 시스템(200)은 도 1의 양자 프로세서(104)가 NISQ 장치(202)라는 점을 제외하면 도 1의 예시적인 시스템(100)에 포함된 것과 유사한 컴포넌트를 포함한다.
NISQ 시대에는 모든 애플리케이션에 대해 가능한 가장 짧은 양자 회로를 실행하는 것이 유리하다. 이를 위해, 도 1의 양자 프로세서(104)가 NISQ 장치(202)인 구현에서, 비용 함수의 그래디언트 또는 헤시안(Hessian)을 계산하는 데 필요한 계산 중 일부만이 NISQ 장치(202)를 사용하여 계산된다. 특히, 클래식 프로세서(102)는 NISQ 장치(202)가 신호()와 피적분 함수(integrands)()를 계산하기 위해 계산을 수행하도록 요청하는 데이터(212)를 전송할 수 있다. 클래식 프로세서(102)는 필요한 인터그레이션(integration)(208), 곱셈 및 합산 연산(206)(수학식 5, 6, 7, 9)을 수행함으로써 을 클래식적으로 계산하기 위해 피적분 함수 및 신호 계산(214)의 결과를 나타내는 데이터를 사용할 수 있다. 다이나믹(dynamics)()이 클래식적으로 시뮬레이션하기 어려운 경우 이는 기하급수적인(exponential) 양자 이점을 제공한다.
피적분 함수()는 각각 1 및 2 제어 비트를 사용하는 일반화된 아다마르(Hadamard)(도 3 참조) 테스트로 추정할 수 있다. 이 회로는 수학식 19를 사용하여 파생될 수 있으며,
여기서, c-U는 제어 큐비트에 의해 제어되는 유니터리(U)이다. 이러한 회로는 유니터리(unitary)의 로컬 제어만 필요하며(시간 에볼루션 제어는 필요하지 않음) NISQ 장치에 특히 적합하다. 이는 항()이 유니터리임을 도 2에서 가정되며, 그러나 그렇지 않은 경우 은 유니터리 연산자의 선형 조합으로 작성될 수 있으며 회로는 각 유니터리 컴포넌트에 대해 개별적으로 실행될 수 있으며 결과 기대 값을 합산하여 목표 결과를 얻을 수 있다.
도 2의 회로는 초기 상태()를 준비하는 능력을 가정한다. 본 개시물에 설명된 애플리케이션에서, 이들은 계산 기반에서 믹스된 대각 상태(diagonal state)일 수 있다. 측정 연산자(measurement operators)()는 계산 기반에서 유사하게 대각(diagonal)일 수 있다. 믹스된 상태(mixed states)의 준비(preparation)는 많은 순수 상태 준비(pure state preparations)에 대한 평균을 구해야 한다. 이는 여러 에 대해 병렬로 수행될 수 있다. 계산 기반(기준) 상태(computational basis state)()가 준비된 경우를 고려해 보면, 회로 U가 수행되고 그리고 세트의 기대값이 병렬로 측정되어 의 추정 세트가 생성된다. 이를 모든 계산 기준(기반) 상태에 대해 독립적으로 반복하고, 각 가 계산 기준에서 대각(diagonal)이면 아래 수학식 20이 획득된다.
초기 분포(initial distributions)()가 알려져 있으므로, 의 추정을 사용하여 목표 트레이스(target trace)를 계산할 수 있다. 실제로는 모든 상태를 준비할 필요가 없을 수도 있으며; 에 비례하는 분포(distribution)에서 샘플링하는 것으로 충분할 수 있다. 최첨단 양자 실험에서는 각 상태를 다시 준비하기 위해 새로운 펄스 시퀀스를 업로드하는 것이 비실용적일 수 있으므로 이는 작은 어려움을 나타낼 수 있다. 이 문제에 대한 한 가지 해결책은 초기에 + 기반(+ basis)에서 큐비트를 준비하고 시뮬레이션/계산을 수행하기 전에 측정하는 것이며, 이는 매번 새로운 준비가 발생한다.
여러 포인트()에서 위 절차를 반복하면 수학식 17를 통해 의 병렬 추정이 가능해진다(n과 m이 고정된 경우). 원칙적으로 NISQ 장치에서는 이러한 시간을 [0,t] 및 [0,s] 범위에서 무작위로 추출할 수 있다. 이 경우, 시작 상태와 시간을 각각 선택하면 독립 확률 변수(independent random variable)가 생성되며 호딩(Hoeding) 부등식을 적용할 수 있다. 의 추정을 위해, 실험을 M번 반복하면 수학식 21을 만족하는 추정량(estimator)()이 생성되며,
일정한 실패율로 이를 추정하는 데 필요한 샘플 수는 로 스케일링된다(여기서 는 파라미터의 로그 인자(logarithmic factors)를 억제(suppresse)함). 유사하게, 의 추정에 대해, 실험의 M 반복은 수학식 22를 만족하는 추정량(estimator)()을 산출하며,
일정한 실패율로 이를 추정하는 데 필요한 샘플 수는 로 스케일링된다. 이는 가 t와 무관한 다수의 샘플을 사용하여 일정한 상대 에러로 추정될 수 있음을 의미한다.
다음 FT(fault-tolerant) 분석과 비교하기 위해, 패스트-포워드 금지 정리(no-fast-forward theorem)가 도 3의 회로 각각을 실행하기 위해 O(t)의 평균 회로 깊이(mean circuit depth)를 필요로 한다는 점에 유의하며, 이러한 방법을 사용하여 상수 에러()로 를 추정하는 총 게이트 카운트(gate count)는 각각 로 스케일링된다. 이에 비해, 도 2의 회로를 사용하여 를 상수 에러(constant error)()로 추정하기 위한 총 게이트 카운트는 로 스케일링된다. 이러한 추정치는 수학식 5의 미분을 추정하기 위해 결합되어야 한다. 이를 상수 에러로 추정하기 위한 총 비용을 계산하기 위해, , , 은 x와 t에 독립적이라고 가정하며, 각 실험의 반복 횟수를 최적화하여 총 게이트 카운트를 최소화한다. 또한 각 실험에는 교환 기저(commuting basis)로 준비(preparation) 및 측정(measurement)이 포함되며 이러한 병렬 측정 간의 공분산은 0이라고 가정한다. 그러면 단일 도함수 항을 에러(error)()로 추정하는 데 필요한 총 게이트 수는 수학식 23과 같이 스케일링되며,
여기서 는 수행된 개별 실험의 수이다. t에 대한 합의 평가는 가 대수적으로 희소하게(sparsely) 또는 밀도있게(densely) 샘플링되는지 여부에 따라 달라진다. 전자의 경우 총 게이트 수는 로 스케일링되는 반면 후자의 경우 로 스케일링된다.
도 3은 해밀토니안 학습 비용 함수의 1차 및 2차 도함수를 계산하는 데 필요한 실험 데이터 포인트와 피적분 함수(인테그랜드)(integrand)를 추정하기 위한 예시적인 회로도를 보여준다. 회로에는 비용 함수 C[H]의 1차 및 2차 도함수(수학식 4)를 계산하는 데 필요한 신호()(top)와 피적분 함수 ()(middle) 및 (bottom)를 추정하는 회로가 포함된다. 쉽게 볼 수 있도록 회로 자체의 레이블은 표시되지 않는다(범례 참조). 회로는 ρ의 준비와 (제어 없이)를 시뮬레이션하고 제어된 교란(ontrolled perturbations)()을 구현하는 수단에 대한 액세스를 가정한다. 목표 피적분 함수(target integrand)는 표시된 연산자의 곱에 대한 기대값으로 찾을 수 있으며, 이는 (NISQ에서) 반복적인 준비와 측정을 통해 읽을 수 있다.
도 4는 해밀토니안 학습을 위한 제1 예시 프로세스(400)의 흐름도이다. 편의상, 프로세스(400)는 양자 컴퓨터, 예를 들어 NISQ 장치와 데이터 통신하는 클래식 컴퓨팅 시스템에 의해 수행되는 것으로 설명될 것이다. 예를 들어, 본 명세서에 따라 적절하게 프로그래밍된, 도 2의 클래식 프로세서(102)는 프로세스(400)를 수행할 수 있다.
시스템은 복수의 실험 데이터 포인트들을 획득하며, 각 실험 데이터 포인트는 미지의 값을 갖는 하나 이상의 파라미터를 포함하는 해밀토니안에 따라 생성된다(즉, 측정을 통해 획득된다)(단계 402). 예시적인 실험 데이터 포인트는 수학식 1 및 2를 참조하여 위에서 설명되었다. 일부 구현에서, 실험 데이터 포인트는 각각의 핵자기공명(NMR: nuclear magnetic resonance) 실험을 수행함으로써 획득될 수 있다. 각 NMR 실험에서 분자, 결정 또는 기타 물질의 샘플을 강한 자기장에 놓을 수 있다. 예를 들어, 샘플(초기에는 열 평형 상태에 있을 수 있음)은 하나 이상의 자기장 펄스 (예: 백그라운드 자기장을 변조하는 시간 의존형 무선 주파수 펄스)를 적용하여 교란(perturbed)될 수 있다. 샘플은 자기장 하에서 일정 시간 동안 에볼루션(evolv )할 수 있으며, 이는 자기장에 대한 시간 의존적 응답(time-dependent response)을 생성한다. 이 응답 또는 자유 유도 붕괴에는 생성되는 핵 스핀 해밀토니안(nuclear spin Hamiltonian)(강한 쌍극 결합으로 인해 강하게 상호 작용하는 양자 해밀토니안)에 대한 정보가 포함되어 있으며, 이 자체에는 샘플의 분자 또는 화학 구조에 대한 정보가 포함되어 있다. 대응하는 측정된 신호를 얻기 위해 응답이 측정되는데, 이는 예를 들어 수학식 1을 참조하여 위에서 설명한 바와 같다.
시스템은 비용 함수를 최소화하기 위해 하나 이상의 파라미터의 추정값을 반복적으로 조정한다(단계 404). 비용 함수는 복수의 실험 데이터 포인트들에 따라 달라지며, 수학식 4에 의해 제공된다. 각 반복에서 이전 반복에 대한 파라미터의 추정값에 대한 비용 함수의 도함수(derivatives)는 양자 컴퓨터를 사용하여 계산된다. 도함수는 1차 도함수 또는 2차 도함수를 포함할 수 있다(예: 수학식 5와 6에 의해 제공됨). 시스템은 양자 컴퓨터를 사용하여 해밀토니안에 의해 생성된 유니터리 시간 에볼루션을 시뮬레이션하며, 여기서 유니터리 시간 에볼루션은 해밀토니안에 포함된 에르미트 연산자(Hermitian operators)를 포함한 교란(perturbations)과 인터리브된다(interleaved). 양자 컴퓨터에 의해 수행되는 동작의 예는 도 2 내지 도 3을 참조하여 위에서 설명하였다.
예를 들어, 비용 함수의 값이 수렴하는 것과 같이, 미리결정된 완료 기준이 충족(만족)되면, 시스템은 비용 함수를 최소화하는 파라미터의 값을 학습된 값으로 출력한다(단계 406).
LT(long term) 양자 컴퓨터용 시스템, 알고리즘 및 회로
도 5는 FT(fault tolerant) 양자 장치를 사용하여 해밀토니안 학습을 위한 예시적인 시스템(500)의 개념적 블록도를 도시한다. 예시적인 시스템(500)은 도 1의 양자 프로세서(104)가 FT 장치(502)라는 점을 제외하면 도 1의 예시적인 시스템(100)에 포함된 것과 유사한 컴포넌트를 포함한다.
FT(fault-tolerant) 비용 모델에서, FT 장치(502)는 완전히 일관되게 수학식 5의 두 번째 항(second term)의 t와 x에 대해 적분(integration), 곱셈 및 합산을 수행한다. 즉, 클래식 프로세서(102)는 FT 장치(502)가 수학식 5(또는 수학식 5의 두 번째 항) 를 직접 계산하기 위한 계산을 수행하도록 요청하는 데이터(512)를 전송할 수 있다. 클래식 프로세서(102)는 반복 비용 함수 최적화(iterative cost function optimization)를 수행하기 위해 FT 장치(502)에 의해 수행된 계산의 결과(514)를 나타내는 데이터를 사용할 수 있다.
를 가정하고, Trace(A) Trace(B) = Trace(A B)라는 사실을 사용하면 수학식 24 및 25와 같으며,
[수학식 24-25]
여기서 근사치는 수치 적분(numerical integration)의 근사치이다. 가 유니터리인 한 도 유니터리임을 확인할 수 있다(그리고 그렇지 않은 경우에는 유니터리 자체의 선형 결합으로 분해(decomposed)될 수도 있다). 수학식 5의 두 번째 항(제2 항)의 두 번째 부분에서는 실험 신호(experimental signal)()를 곱해야 한다. 그런 다음 이 신호를 장치에 로드해야 한다. 단순하게(naively) 수행하면 이는 쉽게 회로에서 지배적인 비용(dominant cost)이 될 수 있다. 이 비용을 낮추기 위해, 는 수학식 26과 같이 소수의()의 푸리에 성분으로 구성된다고 가정할 수 있으며,
여기서 또는 는 신호의 t=0 동작에서 예상된다. 그런 다음 는 수학식 27 및 28과 같이 취해지며,
[수학식 27-28]
여기서 서로 다른 제어 큐비트 0과 1에 작용하는 오퍼레이션에는 레이블이 지정되어 있다. 위의 가정 하에서 도 유니터리(unitary)이다. 여기서 포인트는 각각 적분점(integration points)과 가중치이지만, 적분의 리미트가 t에 따라 다르다는 사실을 허용한다(따라서 샘플링해야 하는 포인트와 곱해야 하는 총 너비 모두). 두 가지 합계는 LCU 기술을 사용하여 블록 인코딩(block encoded)될 수 있다. 여기에는 합계 변수(및 아래에 소개된 기타 추가 레지스터)를 인코딩하기 위한 제어 레지스터()와 SELECT 및 PREPARE 유니터리가 필요하다. (여기에서는 시간()이 유한한 이진 표현을 갖는다고 가정한다.) 이러한 레지스터에는 , , 큐비트 및 큐비트가 포함되며, 여기서 1/K는 시간 t가 저장되는 정밀도(precision)이다.
유니터리는 제어 레지스터를 기반으로 구현하기 위해 올바른 유니터리를 선택한다. 즉, 이다. 도 6에서, , 에 대한 오라클 액세스(oracular access)를 사용하여 이것이 어떻게 구현될 수 있는지 보여준다(이에 대한 구현은 아래에 설명됨). 유니터리는 수학식 29 내지 32와 같이,
제어 레지스터의 초기 상태()에서 해당 제어 상태를 준비한다. 단순화를 위해 이 단계에서는 가비지 레지스터(Garbage registers)가 생략되었다. 이를 토대로, 수학식 33 및 34와 같이 체크될 수 있으며,
여기서 회로는 결합된 시스템과 제어 레지스터 세트에 작용한다. 의 경우, 기대값 추정 알고리즘은
, 에 대한 쿼리를 사용하여 신뢰도 로 이러한 값을 에러()로 추정하는 데 사용할 수 있다. 로 설정하면 신뢰도 를 갖는 내에 있는 의 추정치가 제공된다. 시간 t에서 샘플링할 때 이며, 따라서 이고 라고 가정하면 이다. PREPARE 및 SELECT 오라클을 호출하는 데 필요한 호출 수(number of calls)는 수학식 35와 같이 스케일링된다(수학식 23과 비교하여).
NISQ 결과와 휴리스틱(heuristic) 비교를 하기 위해 오라클 모델(oracular model)이 고려된다. SELECT 오라클은 최대 T = max(t)만큼 시간 에볼루션이 필요하므로 패스트-포워드 금지 정리(no-fast-forward theorem)에 따라 각 오라클 호출 비용(oracle call cost)은 베스트(best) O(T)이다. 따라서 희소 샘플링(sparse sampling)의 경우, 전체 복잡도는 ( 세이빙(saving))인 반면, 덴스 샘플링(dense sampling)의 경우 총 복잡도는 와 같다( 세이빙). NISQ 접근 방식은 일반적으로 시뮬레이션 시간에 선형 스케일링을 달성할 수 없기 때문에, FT(fault-tolerant) 양자 알고리즘을 사용하여 구체적인 해밀토니안을 시뮬레이션하면 더 큰 절감(세이빙) 효과가 예상된다.
SELECT 유니터리의 복잡도는 제어된 시간 에볼루션 를 구현해야 하는 필요성에 따라 결정된다(초기 준비 는 나중에 설명한다). 시간 에볼루션을 구현하기 위한 다양한 옵션이 있다. 어떤 선택이 최적인지는 연구되는 해밀토니안의 세부 사항에 따라 다르다. 예를 들어, SELECT 유니터리는 고차(higher-order) 곱 공식을 사용하여 구현할 수 있다. 이 선택은 제안된 스핀 시스템 연구 적용과 비교적 쉬운 제어 구현을 허용하기 때문에 거의 최적이다. 여기서는 실제적인 목적을 위해 시간 에볼루션이 실험에 독립적인(experiment-independent) 라고 가정한다. 이렇게 하면 SELECT의 구현에서 레지스터를 고려할 필요가 없다. 구현을 위해서는 수학식 8에서 적분의 이산화가 고정되어야 한다. 일부 구현에서는 L 포인트()가 선택될 수 있으며, 균일한 가중치는 이다. 이 근사치의 에러는 로 제한되는 것으로 표시될 수 있으며, 이는 인 경우 무시할 수 있다. SELECT 유니터리의 제어된 시간 에볼루션 부분은 수학식 36 및 37과 같은 형식을 취한다.
이는 총 시간 간격 [0,t]를 R 트로터 단계(Trotter steps)로 나누고 각 단계에서 고차 곱 공식을 구현하여 구현할 수 있다. 시뮬레이션에 최대 의 에러가 있는지 확인하기 위해, 수학식 38과 같은 형식을 취하며,
여기서 소문자 o(1)은 임의로 작을 수 있는 상수를 나타내며, 계수는 시스템 크기 및 그래프 연결성에 따라 달라진다. N 큐비트의 선형 체인(linear chain)의 경우, 이다. 대조적으로, 클러스터된 해밀토니안의 보다 현실적인 모델을 가정하면, 수학식 39 내지 41과 같은 형식을 취하며,
여기서 이며, 일 때마다 , 를 제공한다.
또는, 각 클러스터 내의 항(terms)을 분할하지 않고 부분 트로터 분해(partial Trotter decomposition)를 적용할 수 있다. 이는 수학식 42와 같이,
대신 로 스케일링하여 트로터 에러(Trotter error)를 줄인다.
그런 다음 곱 공식이나 향상된 양자 알고리즘(advanced quantum algorithms)을 사용하여 각 클러스터를 시뮬레이션할 수 있다. 일부 구현에서는 이러한 하이브리드 접근 방식이 접근 방식의 런타임을 향상시킬 수 있다.
양자 시뮬레이션의 에러가 중첩 추정의 정확도에 어떤 영향을 미치는지 분석하기 위해 수학식 36과 37의 블록 대각 구조(block diagonal structure)가 사용된다. 양자 시뮬레이션이 정확도()로 수행되는 경우 제어된 시간 에볼루션에는 최대 의 에러가 있음을 알 수 있다. 중첩 추정에서 의 정확도를 달성하기 위해, 는 각각 a=0,1에 대해 로 설정된다. 이는 수학식 38에서 트로터 단계(스텝) R의 최소 수를 결정한다.
이제 레지스터에 의한 이중 제어(double-control)를 일반 곱 공식()에 추가하는 방법을 설명한다. ( 오라클에도 필요한 레지스터에 의한 단일 제어는 다음 기술로도 구현할 수 있다.) R에 대한 시간 에볼루션의 근-선형 의존성(near-linear dependence)과 요구사항은 이 t의 비용 선형으로 해밀토니안 시뮬레이션을 달성하는 데 필요함을 의미한다. 이는 결국 의 정수배가 아니라는 것을 의미한다. 단순화를 위해, L,R은 2의 거듭제곱이라고 가정하고, 에 대해 이다. 이면, 이고, 정수 트로터 단계의 수와 분수 나머지()가 제공된다. L과 R은 2의 거듭제곱이므로, 이러한 정수()는 레지스터의 첫 번째 log(R) 및 마지막 log(L)-log(R) 비트에 이미 저장되어 있으며, 의 이름을 로 변경하여 식별할 수 있다. 정수 부분(r)은 를 적용해야 하는 횟수를 결정하며: 제어 유니터리 및 제어 레지스터의 번째 비트로 를 제어하는 것은 수학식 43과 같이 유니터리를 구현하며,
여기서 레지스터는 곱 공식의 각 컴포넌트의 회전 각도를 나타낸다. 예를 들어, 에 의해 회전을 제어하기 위해 t 레지스터의 번째 비트를 사용하여 비트 단위(bitwise)로 직접 구현될 수 있다. 이는 입력 파라미터에 GCP(gate complexity polylogarithmic)를 가지므로 무시할 수 있다. 마찬가지로 최종 부분 Trotter 쿼리(final fractional Trotter query)는 레지스터로 제어되어 구현될 수 있으며, 즉, 유니터리는 수학식 44와 같이 구현된다.
이는 또한 입력 파라미터에서 다항 로그(polylogarithmic)인 비용과 유사하다. 이중으로 제어되는 시간 에볼루션(doubly-controlled time evolution)의 최종 스케일링은 제어 없이 Trotter 에볼루션을 구현하는 비용에 대한 로그 요소(logarithmic factors)까지 동일하다.
위의 제어된 양자 시뮬레이션 구현은 곱 공식에 맞게 특별히 개발되고 최적화되었다. 곱 공식뿐만 아니라 향상된 양자 시뮬레이션 알고리즘에도 작동하는 또 다른 가능한 회로 구현은 에볼루션 시간의 이진 표현을 사용하고 정수 k를 사용하여 시간 2k에 대해 시뮬레이션하는 것이다. 어떤 경우도, 복잡도(complexity)는 입력 파라미터에 따라 대수적으로만 스케일링되며 오버헤드(overhead)는 무시할 수 있다. 이는 PREPARE 및 제어된 회로(controlled- circuits)가 SELECT보다 비용이 낮은 한 수학식 35 및 23의 오라클 모델들 간의 비교를 정당화한다.
Trotter 단계를 단순하게 구현하려면 해밀토니안의 모든 항이 지수화되어야 한다. 수학식 39의 클러스터 모델(clustered model)의 경우, 이는 각 Trotter 단계를 구현하는 데 의 게이트 복잡도를 의미한다. 그러나, 이는 매우 작은 크기로 해밀토니안 항(Hamiltonian terms)을 자르거나(truncating) 향상된 양자 시뮬레이션 알고리즘으로 전환하여 개선될 수 있다. 회전 게이트(rotation gates)는 FT(fault-tolerant) 게이트 세트에 대해 합성될 수도 있지만 회로 합성의 오버헤드는 점근적으로 무시할 수 있다.
PREP0 및 PREP1 오라클은 양자 레지스터에 각각 수학식 29 및 31의 계수를 로드해야 한다. 균일한 인터그레이션(integration) 측정이 선택되었으므로, PREP0 및 PREP1 모두에 대한 인터그레이션 가중치(integration weights)는 모든 큐비트에 Hadamard 게이트를 적용하여 준비할 수 있는 -레지스터의 값과 무관하다. 나머지 PREPARE 오라클은 토폴리 게이트(Toffoli gates)로 매핑을 수행하는 데 사용할 수 있는 CAS(Coherent Alias Sampling) 기술 및 QROM을 사용하여 구현될 수 있으며, 여기서 는 인덱스 j 또는 고유한 데이터 포인트의 수이다. 이는 시간 t가 균일하게 선택된다고 가정하지 않으므로 중요하므로, 레지스터를 준비하는 것은 사소하지 않다(non-trivial). 시간이 균일한 인덱스 j에 의해 인덱싱된 경우(즉, writing ), QROM은 를 매핑학 위해 사용될 수 있다(이를 위해서는 레지스터가 크기 가 되어야 한다.). CAS 기술을 사용하면 고유한 데이터 포인트 수와 동일한 비용(cost)으로 상태 를 준비할 수 있다. 이를 위에서 준비된 레지스터와 결합하면 PREP0 오라클이 생성된다. 인 경우, 즉 모든 개별 실험이 동일한 에러로 수행되며, 이는 합리적인 가정이며 이는 의 동일한 비용을 갖는다. 는 예를 들어, 덴스 샘플링(dense sampling)의 경우, T에서 워스트 선형적으로(worst linearly) 스케일링된다고 가정하면, PREP0 오라클을 구현하는 비용은 O(T)로 제한되고, SEL0 오라클의 추가 비용에 의해 블록 인코딩에서 지배된다(dominated).
PREP1 오라클은 추가 진폭(amplitudes) 에서 PREP0 오라클과 다르다. 이는 와 같은 비용 스케일링으로 CAS를 사용하여 장치에 매핑될 수 있다. 이 비용은 비용에 추가되며, 가 될 것으로 예상되므로 이 오라클도 SEL1의 비용이 지배할 것으로 예상된다.
SEL1 서브루틴의 추가 부분으로, 제어된 Z 회전은 수학식 45와 같이 구현해야 한다.
여기서 클래식 값 는 예를 들어 QROM 기술을 사용하여 양자 장치에 로드되어야 한다. 클래식 데이터 포인트 의 세트가 고정된 정밀도(fixed precision)로 주어지면, QROM은 Toffoli 게이트를 사용하여 매핑을 수행하는 데 사용될 수 있다. 마찬가지로, 는 단일 큐비트 에 매핑될 수 있으며, 여기서 Toffoli 게이트의 비용에서, 이면 이고, 이면 이다. 이러한 매핑은 PREP1 단계에서 구현하는 것이 더 적합할 수 있다. 그런 다음 SEL1 서브루틴에서, 이러한 레지스터에 대한 액세스를 가정할 수 있으며, 이 경우 제어된 Z 회전은 레지스터 크기의 비용 다항로그(cost polylogarithmic)로 곱 공식과 동일한 형태의 산술로 구현될 수 있다. 대안으로 FT(fault-tolerant) 비용이 더 낮은 PG(phase gradient) 방법을 사용할 수 있다.
에 대한 준비 계획(preparation scheme)을 설명하는 것이 남아 있다. 는 순수 상태(pure state)가 아니므로 동일한 수의 큐비트를 사용하여 초기 레지스터에서 준비하는 것이 불가능하므로 이를 고려하는 것이 중요하다. 대신, 시스템 레지스터의 크기가 확장되고, 상태 가 준비되어 원래 시스템 내의 모든 관측치 O에 대해 이다. 이를 위해서는 시스템 N의 큐비트 수가 최대 두 배로 늘어나야 하며, 이외의 모든 오퍼레이션에서는 추가 큐비트를 무시할 수 있다. NMR 애플리케이션과 같은 기술의 일부 애플리케이션에서, 큐비트 를 제외한 모든 큐비트에서 최대로 믹스된 상태인 수학식 46과 같은 형식의 상태가 종종 고려된다.
추가 N 큐비트를 사용하여 이를 달성하기 위해, 벨 상태(Bell state) 의 N 카피가 준비되며, 이는 Clifford 게이트만 사용하여 수행할 수 있다. 그런 다음 x 및 번째 큐비트를 컨트롤(제어)로 사용하고 을 타겟으로 사용하여 Toffoli 게이트가 수행된 다음 x로 제어되는 번째 큐비트에 Hadamard 게이트가 수행된다. 제어되는 각 Hadamard는 단일 Toffoli 게이트를 사용하여 구현될 수 있다. 이는 수학식 47과 같이 타겟 속성(target properties)을 갖는 상태를 준비하는 것이다.
보다 일반적으로, 클래식 1D Ising 모델의 모든 열 상태(thermal state)는 깊이 N/2 회로를 사용하여 완벽한 충실도를 갖춘 2N-큐비트 열장 이중 상태(thermofield double state)로 준비될 수 있다.
도 6은 해밀토니안 학습 비용 함수의 1차 및 2차 도함수를 계산하는 데 사용되는 FT 오라클(fault tolerant oracles)의 회로도 예시를 보여준다. 위에서 설명한 FT 오라클 SEL0, SEL1, PREP0 및 PREP1의 회로도가 표시된다. 다중 큐비트 레지스터의 검은색 원은 복잡한 제어 절차를 나타낸다. 정사각형 상자는 QROM을 통한 시스템에 대한 클래식 입력을 나타낸다. 읽기 쉽도록 게이트에서는 아래 첨자를 생략했다. SELa 회로의 U 제어에 있는 점선 원은 실험 중 시간 에볼루션이 실험들 간에 변경되는 경우에만 필요한 제어를 나타낸다.
도 7은 해밀토니안 학습을 위한 두 번째 예시 프로세스(700)의 흐름도이다. 편의상, 프로세스(700)는 양자 컴퓨터, 예를 들어 FT(fault tolerant) 장치와 데이터 통신하는 클래식 컴퓨팅 시스템에 의해 수행되는 것으로 설명될 것이다. 예를 들어, 본 명세서에 따라 적절하게 프로그래밍된 도 5의 클래식 프로세서(102)는 프로세스(700)를 수행할 수 있다.
시스템은 복수의 실험 데이터 포인트들을 획득하며, 각 실험 데이터 포인트는 미지의 값을 갖는 하나 이상의 파라미터를 포함하는 해밀토니안에 따라 생성된다(즉, 측정을 통해 획득된다(단계 702). 예시적인 실험 데이터 포인트는 수학식 1 및 2를 참조하여 위에서 설명되었다. 일부 구현에서 실험 데이터 포인트는 예시적인 프로세스(400)의 단계 402를 참조하여 전술한 바와 같이 다수의 각각의 핵자기 공명(NMR:nuclear magnetic resonance) 실험을 수행함으로써 획득될 수 있다.
시스템은 비용 함수를 최소화하기 위해 하나 이상의 파라미터의 추정값을 반복적으로 조정한다(단계 704). 비용 함수는 복수의 실험 데이터 포인트들에 따라 달라지며, 수학식 4에 의해 제공된다. 각 반복에서 이전 반복에 대한 파라미터의 추정값에 대한 비용 함수의 도함수는 양자 컴퓨터를 사용하여 계산된다. 도함수는 1차 도함수 또는 2차 도함수를 포함할 수 있다(예: 수학식 5와 6). 시스템은 양자 컴퓨터를 사용하여 블록 인코딩 등을 통해 도함수를 직접 계산한다. 양자 컴퓨터에 의해 수행되는 오퍼레이션의 예는 도 5 내지 도 6을 참조하여 위에서 설명하였다.
미리결정된 완료 기준이 충족되면, 예를 들어 비용 함수의 값이 수렴(converge)되면, 시스템은 비용 함수를 최소화하는 파라미터의 값을 학습된 값으로 출력한다(단계 706). 도 4의 예시적인 프로세스(400) 및 도 7의 프로세스(700)는 다양한 분자, 결정 또는 기타 물질의 구조(예: 커플링)를 학습하는 데 적용될 수 있다. 응용 사례 중 하나는 양성자 NMR(쌍극자 결합(dipolar couplings)이 일반적으로 30~40KHz 정도임)을 통해 멤브레인(membranes) 내 또는 멤브레인 위에 있는 단백질을 해밀토니안 학습하는 것이다. 예를 들어, 예시적인 프로세스 400 및 700은 유비퀴틴(ubiquitin)의 구조, 예를 들어 커플링을 학습하기 위해 적용될 수 있다. 이러한 시스템을 멤브레인에 물리적으로 고정하면 용액의 강한 상관관계를 워싱(wash)하는 텀블링(tumbling)을 방지할 수 있다. 이 애플리케이션은 예를 들어, 중요한 잔류 결합, 쌍극성 결합 항의 억제를 통한 구조적 정보 손실, 생체 외에서 단백질 폴딩 동작의 차이와 같은 양성자 NMR이 제시하는 챌런지(challenge)로 인해, 기존 양자 컴퓨팅 애플리케이션을 뛰어 넘는 가치가 있다.
추가 구현 세부정보
도 8은 예시적인 양자 컴퓨팅 장치(800)의 블록도이다. 양자 컴퓨팅 장치(800)는 일부 구현에 따라 본 명세서에 설명된 양자 컴퓨팅 동작을 수행하는 데 사용될 수 있다. 양자 컴퓨팅 장치(800)는 다양한 형태의 양자 컴퓨팅 장치를 나타내기 위한 것이다. 여기에 표시된 컴포넌트, 연결 및 관계, 기능은 단지 예시일 뿐이며 이 문서에 설명 및/또는 청구된 발명의 구현을 제한하지 않는다.
양자 컴퓨팅 장치(800)는 큐비트 어셈블리(810)와 제어 및 측정 시스템(820)을 포함한다. 큐비트 어셈블리에는 알고리즘 오퍼레이션이나 양자 계산을 수행하는 데 사용되는 여러 개의 물리적 큐비트(예: 큐비트 812)가 포함되어 있다. 도 8에 도시된 큐비트는 직사각형 배열로 배열되어 있으나, 이는 개략적인 설명이고 제한하려는 의도는 아니다. 큐비트 어셈블리(810)는 또한 결합된 큐비트들 사이의 상호 작용을 허용하는 조정 가능한 결합(커플링) 요소, 예를 들어 커플러(814)를 포함한다. 도 8의 개략도에서, 각 큐비트는 각각의 결합 요소에 의해 인접한 4개의 큐비트 각각에 조정 가능하게 결합(커플링)된다. 그러나 이는 큐비트와 커플러의 예시적인 배열이며 직사각형이 아닌 배열, 인접하지 않은 큐비트 간의 결합을 허용하는 배열, 2개 이상의 큐비트 사이의 조정 가능한 결합을 포함하는 배열을 포함하는 다른 배열도 가능하다.
각 큐비트는 0과 1의 논리값을 나타내는 레벨을 갖는 2레벨 양자 시스템 또는 장치일 수 있다. 다중 큐비트의 구체적인 물리적 구현 및 큐비트가 서로 상호 작용하는 방식은 양자 컴퓨팅 장치(800)의 유형 또는 양자 컴퓨팅 장치(800)가 수행하는 양자 계산의 유형을 비롯한 다양한 요인에 따라 달라진다. 예를 들어, 원자 양자 컴퓨터에서 큐비트는 원자, 분자 또는 고체 상태 양자 시스템(예: 초미세 원자 상태)을 통해 실현될 수 있다. 또 다른 예로서, 초전도 양자 컴퓨터에서 큐비트는 초전도 큐비트 또는 반도체 큐비트(semi-conducting qubits), 예를 들어 초전도 트랜스몬 상태(superconducting transmon states)를 통해 실현될 수 있다. 또 다른 예로서, NMR 양자 컴퓨터에서 큐비트는 핵 스핀 상태(nuclear spin states)를 통해 실현될 수 있다.
일부 구현에서는 선택된 초기 상태에서 큐비트를 초기화하고 큐비트에 일련의 양자 논리 게이트를 적용하여 양자 계산을 진행할 수 있다. 예시적인 양자 논리 게이트에는 Pauli-X, Pauli-Y, Pauli-Z(X, Y, Z라고도 함)와 같은 단일 큐비트 게이트, 게이트와 같은 Pauli 게이트의 변형, Hadamard 및 S 게이트, 2-큐비트 게이트(예: 제어된 X, 제어된 Y, 제어된 Z(CX, CY, CZ라고도 함)), CNOT 및 3개 이상의 큐비트를 포함하는 게이트(예: Toffoli 게이트)가 포함된다. 양자 논리 게이트는 제어 및 측정 시스템(820)에 의해 생성된 제어 신호(832)를 큐비트 및 커플러에 적용함으로써 구현될 수 있다.
예를 들어, 일부 구현에서 큐비트 어셈블리(810)의 큐비트는 주파수 조정(frequency tuneable)이 가능할 수 있다. 이러한 예에서, 각 큐비트는 큐비트에 연결된(커플링된) 하나 이상의 구동 라인을 통해 전압 펄스를 적용하여 조정될 수 있는 관련 동작 주파수를 가질 수 있다. 동작 주파수의 예로는 큐비트 유휴 주파수, 큐비트 상호 작용 주파수 및 큐비트 판독 주파수가 있다. 다양한 주파수는 큐비트가 수행할 수 있는 다양한 오퍼레이션에 해당한다. 예를 들어, 동작 주파수를 해당 유휴 주파수로 설정하면 큐비트가 다른 큐비트와 강하게 상호 작용하지 않는 상태가 될 수 있으며 단일 큐비트 게이트를 수행하는 데 사용될 수 있다. 또 다른 예로, 큐비트가 고정 결합을 사용하는 커플러를 통해 상호 작용하는 경우, 큐비트는 공통 상호 작용 주파수에서 디튜닝된(detuning) 일부 게이트 종속 주파수에서 각각의 동작 주파수를 설정하여 서로 상호 작용하도록 구성될 수 있다. 다른 경우, 예를 들어 큐비트가 조정 가능한 커플러를 통해 상호 작용할 때, 큐비트 간의 상호 작용을 활성화하도록 해당 커플러의 파라미터를 설정한 다음 공통 상호 작용 주파수에서 조정된 일부 게이트 종속 주파수에서 큐비트의 각 동작 주파수를 설정하여 큐비트가 서로 상호 작용하도록 구성할 수 있다. 이러한 상호작용은 다중 큐비트 게이트를 수행하기 위해 수행될 수 있다.
사용되는 제어 신호(832)의 유형은 큐비트의 물리적 구현에 따라 달라진다. 예를 들어, 제어 신호는 NMR 또는 초전도 양자 컴퓨터 시스템의 RF 또는 마이크로파 펄스, 또는 원자 양자 컴퓨터 시스템의 광 펄스를 포함할 수 있다.
양자 계산은 예를 들어 Z와 같은 양자 관측치(quantum observable)를 사용하고 각각의 제어 신호(834)를 사용하여 큐비트의 상태를 측정함으로써 완료될 수 있다. 측정은 측정 결과를 나타내는 판독 신호(readout signals)(834)가 측정 및 제어 시스템(820)으로 다시 전달되게 한다. 판독 신호(834)는 양자 컴퓨팅 장치(800) 및/또는 큐비트에 대한 물리적 방식에 따라 RF, 마이크로파, 또는 광학 신호를 포함할 수 있다. 편의상, 도 8에 도시된 제어 신호(832) 및 판독 신호(834)는 큐비트 어셈블리(즉, 상단 및 하단 행)의 선택된 요소만 어드레싱하는 것으로 도시되어 있지만, 작동 중에 제어 신호(832) 및 판독 신호(834)는 큐비트 어셈블리(810)의 각 요소를 어드레싱할 수 있다.
제어 및 측정 시스템(820)은 전술한 바와 같이 큐비트 어셈블리(810)에 대한 다양한 오퍼레이션을 수행하는 데 사용될 수 있는 클래식 컴퓨터 시스템의 예이다. 제어 및 측정 시스템(820)은 하나 이상의 클래식 프로세서(예를 들어 클래식 프로세서(822)), 하나 이상의 메모리(예를 들어 메모리(824)), 및 하나 이상의 I/O 유닛(예를 들어 I/O 유닛(826)은 하나 이상의 데이터 버스(예를 들어 버스(826))에 의해 연결됨)을 포함한다. 제어 및 측정 시스템(820)은 제어 신호(832)의 시퀀스를 큐비트 어셈블리로 보내도록 프로그래밍될 수 있으며, 예를 들어 선택된 일련의 양자 게이트 오퍼레이션을 수행하고, 측정 오퍼레이션 수행의 일부로 큐비트 어셈블리로부터 판독 신호(834)의 시퀀스를 수신한다.
프로세서(822)는 제어 및 측정 시스템(820) 내에서 실행하기 위한 명령어를 프로세싱하도록 구성된다. 일부 구현에서, 프로세서(822)는 단일 스레드 프로세서이다. 다른 구현에서, 프로세서(822)는 멀티스레드 프로세서이다. 프로세서(822)는 메모리(824)에 저장된 명령어를 프로세싱할 수 있다.
메모리(824)는 제어 및 측정 시스템(820) 내의 정보를 저장한다. 일부 구현에서, 메모리(824)는 컴퓨터 판독 가능 매체, 휘발성 메모리 유닛, 및/또는 비휘발성 메모리 유닛을 포함한다. 일부 경우에, 메모리(824)는 시스템(820)에 대용량 저장 장치를 제공할 수 있는 저장 장치(예: 하드 디스크 장치, 광 디스크 장치, 여러 컴퓨팅 장치(예: 클라우드 저장 장치)에 의해 네트워크를 통해 공유되는 저장 장치 및/또는 기타 대용량 저장 장치)를 포함할 수 있다.
입/출력 장치(826)는 제어 및 측정 시스템(820)에 대한 입/출력 동작을 제공한다. 입/출력 장치(826)는 D/A 변환기, A/D 변환기, RF/마이크로파/광 신호 생성기, 송신기 및 수신기를 포함할 수 있으며, 이에 따라 양자 컴퓨터에 대한 물리적 방식에 적절하게 제어 신호(832)를 큐비트 어셈블리로 보내고 판독 신호(834)를 수신할 수 있다. 일부 구현에서, 입/출력 장치(826)는 또한 하나 이상의 네트워크 인터페이스 장치, 예를 들어 이더넷 카드, 직렬 통신 장치(예: RS-232 포트) 및/또는 무선 인터페이스 장치(예: 802.11 카드)를 포함할 수 있다. 일부 구현에서, 입/출력 장치(826)는 입력 데이터를 수신하고 출력 데이터를 다른 외부 장치, 예를 들어 키보드, 프린터 및 디스플레이 장치에 전송하도록 구성된 드라이버 장치를 포함할 수 있다.
예시적인 제어 및 측정 시스템(820)이 도 8에 도시되어 있지만, 본 명세서에 설명된 요지 및 기능적 동작의 구현은 다른 유형의 디지털 전자 회로, 또는 본 명세서에 개시된 구조 및 그 구조적 등가물을 포함하는 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어에서 구현될 수 있다.
도 9는 예시적인 일반 클래식 프로세서 시스템(900)의 개략도를 도시한다. 시스템(900)은 일부 구현에 따라 본 명세서에 설명된 클래식 오퍼레이션을 위해 사용될 수 있다. 시스템(900)은 랩탑, 데스크탑, 워크스테이션, PDA, 서버, 블레이드 서버, 메인프레임, 모바일 장치 및 기타 적절한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 나타내도록 의도되었다. 여기에 표시된 컴포넌트, 연결 및 관계, 기능은 단지 예시일 뿐이며, 이 문서에 설명 및/또는 청구된 발명의 구현을 제한하지 않는다.
시스템(900)은 프로세서(910), 메모리(920), 저장 장치(930) 및 입/출력 장치(940)를 포함한다. 각 컴포넌트(910, 920, 930, 920)는 시스템 버스(950)를 사용하여 상호 연결된다. 프로세서(910)는 시스템(900) 내에서 실행하기 위한 명령어를 프로세싱하도록 활성화될 수 있다. 일한 구현에서, 프로세서(910)는 단일 스레드 프로세서이다. 다른 구현에서, 프로세서(910)는 멀티스레드 프로세서이다. 프로세서(910)는 입출력 장치(940)의 사용자 인터페이스에 대한 그래픽 정보를 표시하기 위해 메모리(920) 또는 저장 장치(930)에 저장된 명령을 처리하도록 활성화될 수 있다.
메모리(920)는 시스템(900) 내의 정보를 저장한다. 한 구현에서, 메모리(920)는 컴퓨터 판독 가능 매체이다. 한 구현에서, 메모리(920)는 휘발성 메모리 유닛이다. 다른 구현에서, 메모리(920)는 비휘발성 메모리 유닛이다.
저장 장치(930)는 시스템(900)에 대용량 저장 장치를 제공하도록 활성화될 수 있다. 일 구현에서, 저장 장치(930)는 컴퓨터 판독 가능 매체이다. 다양한 다른 구현에서, 저장 장치(930)는 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치, 또는 테이프 장치일 수 있다.
입/출력 장치(940)는 시스템(900)에 대한 입/출력 동작을 제공한다. 일 구현에서, 입/출력 장치(940)는 키보드 및/또는 포인팅 장치를 포함한다. 다른 구현에서, 입/출력 장치(940)는 그래픽 사용자 인터페이스를 표시하기 위한 디스플레이 유닛을 포함한다.
본 명세서에 설명된 디지털 및/또는 양자 요지와 디지털 기능 오퍼레이션 및 양자 오퍼레이션의 구현은 본 명세서에 개시된 구조와 그 구조적 등가물을 포함하거나, 이들 중 하나 이상의 조합을 포함하는, 디지털 전자 회로, 적합한 양자 회로 또는 더 일반적으로는 양자 계산 시스템, 유형으로 구현된 디지털 및/또는 양자 컴퓨터 소프트웨어 또는 펌웨어, 디지털 및/또는 양자 컴퓨터 하드웨어에서 구현될 수 있다. "양자 컴퓨팅 장치"라는 용어는 양자 컴퓨터, 양자 정보 처리 시스템, 양자 암호화 시스템 또는 양자 시뮬레이터를 포함할 수 있지만 이에 국한되지는 않는다.
본 명세서에 설명된 디지털 및/또는 양자 요지의 구현은 하나 이상의 디지털 및/또는 양자 컴퓨터 프로그램, 예를 들어, 데이터 처리 장치에 의해 실행되거나 데이터 처리 장치의 동작을 제어하기 위해 유형의 비일시적 저장 매체에 인코딩된 디지털 및/또는 양자 컴퓨터 프로그램 명령어의 하나 이상의 모듈로 구현될 수 있다. 디지털 및/또는 양자 컴퓨터 저장 매체는 기계 판독 가능 저장 장치, 기계 판독 가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 장치, 하나 이상의 큐비트, 또는 이들 중 하나 이상의 조합일 수 있다. 대안적으로 또는 추가적으로, 프로그램 명령어는 예를 들어, 데이터 처리 장치에 의한 실행을 위해 적합한 수신기 장치로 전송하기 위해 디지털 및/또는 양자 정보를 인코딩하기 위해 생성되는 기계 생성 전기, 광학 또는 전자기 신호와 같은, 디지털 및/또는 양자 정보를 인코딩할 수 있는 인공적으로 생성된 전파 신호에 인코딩될 수 있다.
양자 정보 및 양자 데이터라는 용어는 양자 시스템에 의해 운반, 보유 또는 저장되는 정보 또는 데이터를 의미하며, 여기서 가장 작은 중요 시스템은 큐비트, 즉 양자 정보의 단위를 정의하는 시스템이다. "큐비트"라는 용어는 해당 맥락에서 2레벨 시스템으로 적절하게 근사화될 수 있는 모든 양자 시스템을 포함하는 것으로 이해된다. 이러한 양자 시스템은 예를 들어 2개 이상의 레벨을 갖는 다중 레벨 시스템을 포함할 수 있다. 예를 들어, 이러한 시스템에는 원자, 전자, 광자, 이온 또는 초전도 큐비트가 포함될 수 있다. 많은 구현에서 계산 기저 상태(computational basis states)는 그라운드 및 여기 상태(first excited states)로 식별되지만, 계산 상태가 더 높은 수준의 여기 상태로 식별되는 다른 설정도 가능하다는 것이 이해된다.
"데이터 처리 장치"라는 용어는 예를 들어 프로그래밍 가능한 디지털 프로세서, 프로그래밍 가능한 양자 프로세서, 디지털 컴퓨터, 양자 컴퓨터, 다중 디지털 및 양자 프로세서 또는 컴퓨터, 및 이들의 조합을 포함하는, 디지털 및/또는 양자 데이터 처리 하드웨어를 말하며, 디지털 및/또는 양자 데이터를 처리하기 위한 모든 종류의 장치, 장치 및 기계를 포함한다. 장치는 또한 특수 목적 논리 회로, 예를 들어 FPGA(field programmable gate array), ASIC(application-specific integrated circuit), 또는 양자 시뮬레이터, 즉 특정 양자 시스템에 대한 정보를 시뮬레이션하거나 생성하도록 설계된 양자 데이터 처리 장치일 수 있거나 이를 더 포함할 수 있다. 특히, 양자 시뮬레이터는 범용 양자 계산을 수행할 수 있는 기능이 없는 특수 목적의 양자 컴퓨터이다. 장치는 하드웨어 외에 디지털 및/또는 양자 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드(예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 또는 이들 중 하나 이상의 조합을 구성하는 코드)를 선택적으로 포함할 수 있다.
프로그램, 소프트웨어, 소프트웨어 애플리케이션, 모듈, 소프트웨어 모듈, 스크립트 또는 코드로도 지칭되거나 설명될 수 있는 디지털 컴퓨터 프로그램은, 컴파일 언어, 해석 언어, 선언적 언어, 절차적 언어 등 모든 형태의 프로그래밍 언어로 작성될 수 있으며, 독립 실행형 프로그램, 모듈, 컴포넌트, 서브루틴 또는 디지털 컴퓨팅 환경에서 사용하기에 적합한 기타 장치를 포함하여 모든 형태로 배포될 수 있다. 프로그램, 소프트웨어, 소프트웨어 애플리케이션, 모듈, 소프트웨어 모듈, 스크립트 또는 코드로도 지칭되거나 설명될 수 있는 양자 컴퓨터 프로그램은, 컴파일 또는 해석된 언어, 선언적 또는 절차적 언어를 포함한 모든 형태의 프로그래밍 언어로 작성되고 적합한 양자 프로그래밍 언어로 번역되거나 QCL 또는 Quipper와 같은 양자 프로그래밍 언어로 작성될 수 있다.
디지털 및/또는 양자 컴퓨터 프로그램은 파일 시스템의 파일에 해당할 수 있지만 반드시 그럴 필요는 없다. 프로그램은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예: 마크업 언어 문서에 저장된 하나 이상의 스크립트, 해당 프로그램 전용 단일 파일 또는 여러 조정 파일)에 저장될 수 있다(예를 들어 하나 이상의 모듈, 하위 프로그램 또는 코드 일부를 저장하는 파일). 디지털 및/또는 양자 컴퓨터 프로그램은 하나의 디지털 또는 하나의 양자 컴퓨터 또는 한 사이트에 있거나 여러 사이트에 분산되어 있고 디지털 및/또는 양자 데이터 통신 네트워크로 상호 연결된 여러 디지털 및/또는 양자 컴퓨터에서 실행되도록 배포된다. 양자 데이터 통신 네트워크는 양자 시스템, 예를 들어 큐비트와 같이, 양자 시스템을 사용하여 양자 데이터를 전송할 수 있는 네트워크로 이해된다. 일반적으로 디지털 데이터 통신망은 양자 데이터를 전송할 수 없지만, 양자 데이터 통신망은 양자 데이터와 디지털 데이터를 모두 전송할 수 있다.
본 명세서에 설명된 프로세스 및 논리 흐름은 적절하게 하나 이상의 디지털 및/또는 양자 프로세서로 작동하고, 하나 이상의 디지털 및/또는 양자 컴퓨터 프로그램을 실행하여 입력 디지털 및 양자 데이터에 대해 작동하고 출력을 생성함으로써 기능을 수행하는, 하나 이상의 프로그래밍 가능한 디지털 및/또는 양자 컴퓨터에 의해 수행될 수 있다. 프로세스 및 논리 흐름은 또한 장치에 의해 수행될 수 있으며, 장치는 특수 목적 논리 회로, 예를 들어 FPGA 또는 ASIC, 양자 시뮬레이터로서, 또는 특수 목적 논리 회로 또는 양자 시뮬레이터와 하나 이상의 프로그래밍된 디지털 및/또는 양자 컴퓨터의 조합에 의해 구현될 수 있다.
하나 이상의 디지털 및/또는 양자 컴퓨터로 구성된 시스템이 특정 동작(오퍼레이션)이나 액션을 수행하도록 "구성"된다는 것은 시스템이 작동 중에 시스템이 동작이나 액션을 수행하도록 하는 소프트웨어, 펌웨어, 하드웨어 또는 이들의 조합을 설치했다는 의미한다. 하나 이상의 디지털 및/또는 양자 컴퓨터 프로그램이 특정 동작(오퍼레이션)이나 액션을 수행하도록 구성된다는 것은 하나 이상의 프로그램이 디지털 및/또는 양자 데이터 처리 장치에 의해 실행될 때 장치가 동작 또는 액션을 수행하게 하는 명령어를 포함한다는 것을 의미한다. 양자 컴퓨터는 양자 컴퓨팅 장치에 의해 실행될 때 장치가 동작 또는 액션을 수행하게 하는 명령어를 디지털 컴퓨터로부터 수신할 수 있다.
디지털 및/또는 양자 컴퓨터 프로그램의 실행에 적합한 디지털 및/또는 양자 컴퓨터는 범용 또는 특수 목적의 디지털 및/또는 양자 프로세서 또는 둘 다, 또는 임의의 다른 종류의 중앙 디지털 및/또는 양자 처리 장치를 기반으로 할 수 있다. 일반적으로 중앙 디지털 및/또는 양자 처리 장치는 읽기 전용 메모리, 랜덤 액세스 메모리 또는 양자 데이터(예, 광자 또는 이들의 조합) 전송에 적합한 양자 시스템으로부터 명령어와 디지털 및/또는 양자 데이터를 수신한다.
디지털 및/또는 양자 컴퓨터의 필수 요소는 명령어를 수행하거나 실행하기 위한 중앙 처리 장치와 명령어 및 디지털 및/또는 양자 데이터를 저장하기 위한 하나 이상의 메모리 장치이다. 중앙 처리 장치와 메모리는 특수 목적 논리 회로나 양자 시뮬레이터에 의해 보완되거나 통합될 수 있다. 일반적으로, 디지털 및/또는 양자 컴퓨터는 또한 디지털 및/또는 양자 데이터를 저장하기 위한 하나 이상의 대용량 저장 장치(예를 들어 자기, 광자기 디스크, 광 디스크, 또는 양자 정보를 저장하는 데 적합한 양자 시스템)로부터 디지털 및/또는 양자 데이터를 수신하거나 하나 이상의 대용량 저장 장치에 디지털 및/또는 양자 데이터를 전송하거나 작동 가능하게 연결된다. 그러나 디지털 및/또는 양자 컴퓨터에는 그러한 장치가 필요하지 않다.
디지털 및/또는 양자 컴퓨터 프로그램 명령어와 디지털 및/또는 양자 데이터를 저장하는 데 적합한 디지털 및/또는 양자 컴퓨터 판독 가능 매체는 예를 들어 EPROM, EEPROM 및 플래시 메모리 장치; 자기 디스크(예: 내부 하드 디스크 또는 이동식 디스크); 광자기 디스크; CD-ROM 및 DVD-ROM 디스크; 그리고 양자 시스템(예: 원자(trapped atoms) 또는 전자)와 같은 반도체 메모리 장치를 포함하는, 모든 형태의 비휘발성 디지털 및/또는 양자 메모리, 매체 및 메모리 장치를 포함한다. 양자 메모리는 양자 데이터를 높은 충실도와 효율성으로 장기간 저장할 수 있는 장치로 이해되며, 예를 들어 빛이 전송에 사용되는 광물질 인터페이스, 중첩이나 양자 일관성과 같은 양자 데이터의 양자 특성을 저장하고 보존하기 위한 물질이 있다.
본 명세서에 설명된 다양한 시스템 또는 그 일부에 대한 제어는 하나 이상의 비일시적 기계 판독 가능 저장 매체에 저장되고 하나 이상의 디지털 및/또는 양자 처리 장치에서 실행 가능한 명령어를 포함하는 디지털 및/또는 양자 컴퓨터 프로그램 제품으로 구현될 수 있다. 본 명세서에 설명된 시스템 또는 그 일부는 각각 본 명세서에 설명된 동작을 수행하기 위해 실행 가능한 명령어를 저장하는 하나 이상의 디지털 및/또는 양자 처리 장치와 메모리를 포함할 수 있는 장치, 방법 또는 시스템으로 구현될 수 있다.
본 명세서에는 많은 특정 구현 세부 사항이 포함되어 있지만 이는 청구될 수 있는 범위에 대한 제한으로 해석되어서는 안 되며, 오히려 특정 구현에 특정할 수 있는 기능에 대한 설명으로 해석되어야 한다. 별도의 구현과 관련하여 본 명세서에 설명된 특정 기능은 단일 구현에서 조합하여 구현될 수도 있다. 반대로, 단일 구현의 맥락에서 설명된 다양한 기능은 여러 구현에서 개별적으로 또는 임의의 적절한 하위 조합으로 구현될 수도 있다. 더욱이, 기능은 위에서 특정 조합으로 작동하는 것으로 설명될 수 있으며 처음에는 그렇게 주장되기도 하지만, 청구된 조합의 하나 이상의 기능은 경우에 따라 조합에서 삭제될 수 있으며, 청구된 조합은 하위 조합 또는 하위 조합의 변형으로 연결될 수 있다.
유사하게, 동작이 특정 순서로 도면에 도시되어 있지만, 이는 그러한 동작이 도시된 특정 순서 또는 순차적 순서로 수행되거나 도시된 모든 동작이 수행되어 바람직한 결과를 달성할 것을 요구하는 것으로 이해되어서는 안 된다. 특정 상황에서는 멀티태스킹과 병렬 처리가 유리할 수 있다. 더욱이, 위에서 설명한 구현에서 다양한 시스템 모듈 및 컴포넌트의 분리는 모든 구현에서 이러한 분리를 요구하는 것으로 이해되어서는 안 되며, 기술된 프로그램 컴포넌트 및 시스템은 일반적으로 단일 소프트웨어 제품에 함께 통합되거나 여러 소프트웨어 제품에 패키지될 수 있다는 점을 이해해야 한다.
요지의 특정 구현이 설명되었다. 다른 구현은 다음 청구범위의 범위 내에 있다. 예를 들어, 청구범위에 인용된 액션은 다른 순서로 수행될 수 있으며 여전히 원하는 결과를 얻을 수 있다. 일례로서, 첨부 도면에 도시된 프로세스는 바람직한 결과를 달성하기 위해 도시된 특정 순서 또는 순차적 순서를 반드시 필요로 하는 것은 아니다. 어떤 경우에는 멀티태스킹과 병렬 처리가 유리할 수 있다.

Claims (21)

  1. 컴퓨터로 구현되는 방법으로서,
    클래식 프로세서에 의해, 복수의 실험 데이터 포인트들을 획득하는 단계 -각각의 실험 데이터 포인트는 미지의 값을 갖는 파라미터를 포함하는 해밀토니안(Hamiltonian)에 따라 생성됨-;
    상기 클래식 프로세서에 의해, 상기 파라미터의 값을 학습하는 단계를 포함하며, 상기 파라미터의 값을 학습하는 단계는 상기 클래식 프로세서에 의해, 비용 함수를 최소화하기 위해 미리결정된 완료 기준이 충족될 때까지 상기 파라미터의 추정값을 반복적으로 조정하는 단계를 포함하며; 상기 비용 함수는 상기 복수의 실험 데이터 포인트들에 의존하고, 각 반복에서 이전 반복에 대한 상기 파라미터의 각각의 추정값에 대한 상기 비용 함수의 도함수는 양자 컴퓨터를 사용하여 계산되는, 컴퓨터로 구현되는 방법.
  2. 제1항에 있어서, 상기 실험 데이터 포인트들은 양자 시스템에서 수행된 각각의 실험에 대응하고, 상기 실험은 비욘드-클래식 실험(beyond-classical experiment)을 포함하는, 컴퓨터로 구현되는 방법.
  3. 제1항에 있어서, 상기 클래식 프로세서는 클래식 연결을 통해 분광계로부터 상기 실험 데이터 포인트들을 획득하는, 컴퓨터로 구현되는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 양자 컴퓨터는 NIS(noisy intermediate scale) 양자 컴퓨팅 장치를 포함하는, 컴퓨터로 구현되는 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 양자 컴퓨터를 사용하여 상기 이전 반복에 대한 상기 파라미터의 추정값에 대한 상기 비용 함수의 도함수를 계산하는 단계는 상기 해밀토니안에 의해 생성된 유니터리 시간 에볼루션을 시뮬레이션하기 위해 상기 양자 컴퓨터를 사용하는 단계를 포함하며, 상기 유니터리 시간 에볼루션은 상기 해밀토니안에 포함된 에르미트 연산자를 포함하는 교란(perturbations)과 인터리브되는, 컴퓨터로 구현되는 방법.
  6. 선행하는 청구항 중 어느 한 항에 있어서, 상기 도함수는 그래디언트들을 포함하고, 상기 비용 함수의 각각의 그래디언트는 다중 적분을 포함하고, 각각의 적분은 각각의 피적분 함수(integrand)를 포함하며, 각 피적분 함수는 i) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 관측치(observable) ii) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 양자 시스템의 교란 상태(perturbed state)의 기대값을 포함하고, 상기 상태는 상기 해밀토니안에 포함된 에르미트 연산자(Hermitian Operator)를 이용하여 교란되는, 컴퓨터로 구현되는 방법.
  7. 제6항에 있어서, 상기 이전 반복에 대한 파라미터의 추정값에 대한 비용 함수의 도함수를 계산하기 위해 양자 컴퓨터를 사용하는 단계는,
    상기 다중 적분의 각 피적분 함수의 계산을 요청하는 데이터를 상기 클래식 프로세서에서 상기 양자 컴퓨터로 전송하는 단계; 그리고
    상기 클래식 프로세서에 의해, 상기 다중 적분의 각 피적분 함수의 계산 결과를 나타내는 데이터를 상기 양자 컴퓨터로부터 수신하는 단계를 포함하는, 컴퓨터로 구현되는 방법.
  8. 제7항에 있어서, 상기 방법은,
    상기 클래식 프로세서에 의해, 상기 다중 적분의 각 피적분 함수의 계산 결과를 나타내는 데이터의 합산을 통해 상기 다중 적분을 계산하는 단계;
    상기 클래식 프로세서에 의해, 상기 이전 반복에 대한 상기 파라미터의 추정값에 대해 상기 비용 함수의 1차 도함수를 계산하기 위해 상기 계산된 다중 적분을 사용하여 곱셈 및 덧셈 연산을 수행하는 단계를 더 포함하는, 컴퓨터로 구현되는 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 방법은,
    미리결정된 반복 횟수만큼 반복적으로:
    상기 양자 컴퓨터에 의해, 초기 양자 상태의 큐비트의 레지스터를 준비하는 단계 -상기 초기 양자 상태는 계산 기반에서 혼합 대각 상태(mixed diagonal state)를 포함함-;
    상기 양자 컴퓨터에 의해, 상기 초기 양자 상태에 양자 회로를 적용하여 에볼루션된 양자 상태를 획득하는 단계 -상기 양자 회로는 제어된 교란이 인터리브된 유니터리 시간 에볼루션 연산자를 포함하고; 상기 유니터리 시간 에볼루션 연산자는 상기 해밀토니안에 의해 생성된 유니터리 시간 에볼루션을 시뮬레이션하고, 상기 제어된 교란은 상기 해밀토니안에 포함된 에르미트 연산자를 포함함-; 그리고
    상기 에볼루션된 양자 상태의 관측치(observable)를 측정하는 단계 -상기 관측치는 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 관측치를 포함함-; 그리고
    상기 측정된 관측치의 기대값을 계산하는 단계를 더 포함하는, 컴퓨터로 구현되는 방법.
  10. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 양자 컴퓨터는 FT(fault tolerant) 양자 컴퓨팅 장치를 포함하는, 컴퓨터로 구현되는 방법.
  11. 제1항 내지 제3항, 제10항 중 어느 한 항에 있어서, 양자 컴퓨터를 사용하여 상기 이전 반복에 대한 파라미터의 추정값에 대한 비용 함수의 도함수를 계산하는 단계는 상기 비용 함수의 도함수를 계산하기 위해 블록 인코딩을 사용하는 단계를 포함하는, 컴퓨터로 구현되는 방법.
  12. 제11항에 있어서, 이전 반복에 대한 파라미터의 추정값에 대해 비용 함수의 도함수를 계산하기 위해 양자 컴퓨터를 사용하는 단계는,
    상기 비용 함수의 도함수의 계산을 요청하는 데이터를 상기 클래식 프로세서에서 상기 양자 컴퓨터로 전송하는 단계; 그리고
    상기 클래식 프로세서에 의해, 상기 비용 함수의 도함수의 계산 결과를 나타내는 데이터를 상기 양자 컴퓨터로부터 수신하는 단계를 포함하는, 컴퓨터로 구현되는 방법.
  13. 제1항 내지 제3항, 제10항 내지 제12항 중 어느 한 항에 있어서, 상기 방법은,
    상기 양자 컴퓨터에 의해, 큐비트의 제어 레지스터를 초기 상태로 초기화하는 단계;
    상기 양자 컴퓨터에 의해, 상기 초기 상태에 준비 유니터리 연산자를 적용하여 상기 제어 레지스터의 제어 상태를 획득하는 단계; 그리고
    상기 양자 컴퓨터에 의해, 선택 유니터리 연산자를 상기 제어 상태에 적용하여 상기 제어 레지스터의 에볼루션된 상태를 획득하는 단계 -상기 선택 유니터리 연산자는 상기 제어 레지스터의 제어 상태에 기초하여 구현할 유니터리 연산자를 선택함-; 그리고
    상기 제어 레지스터의 에볼루션된 상태를 측정하는 단계를 더 포함하는, 컴퓨터로 구현되는 방법.
  14. 선행하는 청구항 중 어느 한 항에 있어서, 각각의 실험 데이터 포인트는 양자 시스템에서 수행된 각각의 실험에 대응하고, 각각의 실험을 수행하는 것은,
    초기 상태의 양자 시스템을 준비하는 단계;
    에볼루션된 상태를 생성하기 위해 상기 초기 상태에 시간 에볼루션 연산자를 적용하는 단계 -상기 시간 에볼루션 연산자는 상기 해밀토니안과 외부 시간 의존 구동 필드에 의해 생성됨-; 그리고
    상기 에볼루션된 상태의 관측치(observable)를 측정하는 단계를 포함하는, 컴퓨터로 구현되는 방법.
  15. 선행하는 청구항 중 어느 한 항에 있어서, 상기 실험 데이터 포인트들의 수는 미지의 값을 갖는 파라미터의 수보다 크거나 동일한, 컴퓨터로 구현되는 방법.
  16. 선행하는 청구항 중 어느 한 항에 있어서, 상기 해밀토니안은 항들(terms)의 선형 조합을 포함하고, 각 항(term)은 각각의 파라미터 및 각각의 에르미트 연산자를 포함하는, 컴퓨터로 구현되는 방법.
  17. 선행하는 청구항 중 어느 한 항에 있어서, 상기 비용 함수는 제1 항(term) 및 제2 항(term)을 포함하고,
    상기 제1 항(term)은 상기 파라미터의 추정값과 상기 파라미터의 프라이어(prior) 사이의 차이 제곱의 합을 포함하고; 그리고
    상기 제2 항(term)은 상기 파라미터의 추정값과 상기 획득된 실험 데이터 포인트들을 사용하여 추정된 실험 데이터 포인트들 간의 차이 제곱의 합을 포함하는, 컴퓨터로 구현되는 방법.
  18. 선행하는 청구항 중 어느 한 항에 있어서, 상기 도함수는 2차 도함수를 포함하고, 상기 비용 함수의 각각의 2차 도함수는 다중 적분을 포함하고, 각각의 적분은 피적분 함수(integrand)를 포함하고, 상기 피적분 함수는,
    i) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 관측치, ii) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 양자 시스템의 교란 상태의 기대값 -상기 상태는 상기 해밀토니안에 포함된 에르미트 연산자(Hermitian Operator)를 이용하여 교란됨(perturbed)-; 또는
    i) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 관측치, ii) 상기 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 양자 시스템의 교란 상태를 갖는 해밀토니안에 포함된 제1 에르미트 연산자의 교환자(commutator)의 기대값을 포함하며, 상기 상태는 상기 해밀토니안에 포함된 제2 에르미트 연산자를 이용하여 교란되는, 컴퓨터로 구현되는 방법.
  19. 선행하는 청구항 중 어느 한 항에 있어서, 상기 도함수는 2차 도함수를 포함하고, 상기 비용 함수의 값이 전역 최소값으로부터 미리결정된 거리 내에 있을 때, 상기 비용 함수의 2차 도함수는 적분의 곱의 합을 포함하며, 각 적분은 피적분 함수(integrand)를 포함하고,
    상기 피적분 함수는 i) 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 관측치 ii) 복수의 실험 데이터 포인트들을 생성하는 데 사용되는 양자 시스템의 교란 상태의 기대값을 포함하고, 상기 상태는 상기 해밀토니안에 포함된 에르미트 연산자(Hermitian Operator)를 이용하여 교란되는, 컴퓨터로 구현되는 방법.
  20. 양자 컴퓨터와 데이터 통신하는 하나 이상의 클래식 프로세서를 포함하는 시스템으로서, 상기 시스템은 제1항 내지 제19항 중 어느 한 항의 방법에 따른 동작을 수행하도록 구성되는, 시스템.
  21. 양자 컴퓨터와 데이터 통신하는 하나 이상의 클래식 프로세서를 포함하는 시스템에 의해 실행될 때 상기 시스템으로 하여금 제1항 내지 제19항 중 어느 한 항의 방법에 따른 동작을 수행하게 하는 컴퓨터 판독 가능 명령어를 포함하는 컴퓨터 프로그램 제품.
KR1020247009055A 2021-09-03 2022-09-02 그래디언트-기반 양자 보조 해밀토니안 학습 KR20240051981A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163240787P 2021-09-03 2021-09-03
US63/240,787 2021-09-03
PCT/US2022/042505 WO2023034594A1 (en) 2021-09-03 2022-09-02 Gradient-based quantum assisted hamiltonian learning

Publications (1)

Publication Number Publication Date
KR20240051981A true KR20240051981A (ko) 2024-04-22

Family

ID=83447777

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020247009055A KR20240051981A (ko) 2021-09-03 2022-09-02 그래디언트-기반 양자 보조 해밀토니안 학습

Country Status (6)

Country Link
US (1) US20230368064A1 (ko)
EP (1) EP4182858A1 (ko)
KR (1) KR20240051981A (ko)
AU (1) AU2022337149A1 (ko)
CA (1) CA3230750A1 (ko)
WO (1) WO2023034594A1 (ko)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10275717B2 (en) * 2016-06-02 2019-04-30 Google Llc Training quantum evolutions using sublogical controls
EP3807804A4 (en) * 2018-06-18 2022-04-06 1QB Information Technologies Inc. VARIATIONAL AND ADIABATIC NAVIGATED QUANTUM OWN SOLVER

Also Published As

Publication number Publication date
CA3230750A1 (en) 2023-03-09
US20230368064A1 (en) 2023-11-16
EP4182858A1 (en) 2023-05-24
AU2022337149A1 (en) 2024-03-14
WO2023034594A1 (en) 2023-03-09

Similar Documents

Publication Publication Date Title
Lamm et al. General methods for digital quantum simulation of gauge theories
EP3970085A1 (en) Generating mixed states and finite-temperature equilibrium states of quantum systems
AU2021336875B2 (en) Verified quantum phase estimation
EP3931766A1 (en) Quantum relative entropy training of boltzmann machines
Cruz et al. Optimizing quantum phase estimation for the simulation of Hamiltonian eigenstates
AU2019454998B2 (en) Bayesian quantum circuit fidelity estimation
CN110678867B (zh) 模拟量子系统的方法及装置
CA3156724A1 (en) Preparing superpositions of computational basis states on a quantum computer
CN116368502A (zh) 具有机器学习的内核方法的量子计算
AU2019454277B2 (en) Patch and elided fidelity estimation
JP2023550324A (ja) 量子誤差軽減ための仮想抽出
AU2019455705B2 (en) Parallel cross entropy benchmarking
Gaikwad et al. Efficient experimental characterization of quantum processes via compressed sensing on an NMR quantum processor
CN114096970A (zh) 测量量子态纯度
KR20240051981A (ko) 그래디언트-기반 양자 보조 해밀토니안 학습
CN117581242A (zh) 用量子计算机和阴影断层摄影进行无偏费米子量子蒙特卡罗计算
Üstün et al. Single-step parity check gate set for quantum error correction
CN118176512A (zh) 基于梯度的量子辅助哈密顿学习
Fang et al. Fourier representation of the diffusion MRI signal using layer potentials
Andersen et al. Thermalization and Criticality on an Analog-Digital Quantum Simulator
CN118133528A (zh) 模拟量子系统的方法及装置