KR20210137767A - 파라미터 기반 양자 회로 구성 장치 및 방법 - Google Patents

파라미터 기반 양자 회로 구성 장치 및 방법 Download PDF

Info

Publication number
KR20210137767A
KR20210137767A KR1020200056036A KR20200056036A KR20210137767A KR 20210137767 A KR20210137767 A KR 20210137767A KR 1020200056036 A KR1020200056036 A KR 1020200056036A KR 20200056036 A KR20200056036 A KR 20200056036A KR 20210137767 A KR20210137767 A KR 20210137767A
Authority
KR
South Korea
Prior art keywords
circuit
sub
parameter
quantum circuit
error rate
Prior art date
Application number
KR1020200056036A
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 삼성에스디에스 주식회사
Priority to KR1020200056036A priority Critical patent/KR20210137767A/ko
Priority to US16/883,343 priority patent/US10922460B1/en
Publication of KR20210137767A publication Critical patent/KR20210137767A/ko

Links

Images

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/20Models of quantum computing, e.g. quantum circuits or universal quantum computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • 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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Error Detection And Correction (AREA)

Abstract

파라미터 기반 양자 회로 구성 장치 및 방법이 개시된다. 일 실시예에 따른 파라미터 기반 양자 회로 구성 장치는 양자 회로에 학습 데이터를 입력하는 단계; 상기 양자 회로로부터 상기 학습 데이터에 대한 출력 데이터를 수신하고 이로부터 오류율을 계산하는 단계; 및 상기 오류율에 기초하여 상기 양자 회로에 포함된 하나 이상의 서브 회로 블록(Sub Circuit Block) 중 적어도 하나의 갱신 대상 서브 회로 블록에 대한 파라미터를 갱신하는 단계를 포함한다.

Description

파라미터 기반 양자 회로 구성 장치 및 방법{APPARATUS AND METHOD FOR CONSTRUCTING PARAMETERIZED QUANTUM CIRCUIT}
개시되는 실시예들은 파라미터 기반 양자 회로(Parameterized Quantum Circuit; PQC)를 효과적으로 구성하기 위한 기술과 관련된다.
양자 컴퓨팅(Quantum Computing)은 양자의 얽힘(entanglement)이나 중첩(superposition)과 같은 양자역학적인 현상을 활용하여 자료를 처리하는 방법을 의미한다. 최근 양자 컴퓨팅 기술은 NISQ(Noisy Intermediate-Scale Quantum) 수준의 기술 단계로 접어들고 있다. 이론적으로 가능한 다양한 양자 알고리즘들이 개발되고 있으나 양자 컴퓨팅 하드웨어의 한계로 인해 실제 활용은 제한적인 수준이다.
양자 컴퓨팅의 기술적 한계를 극복하기 위해 파라미터 기반 양자 회로 또는 가변 양자 회로(Variational Quantum Circuit) 등의 하이브리드 양자-고전 컴퓨팅(Hybrid Quantum-Classical Computing) 기술이 등장하고 있다. 이 중 파라미터 기반 양자 회로(PQC)는 파라미터(Parameter)를 이용하여 양자 컴퓨팅 하드웨어의 오류를 감소시키기 위한 양자 회로를 의미한다. 양자 컴퓨팅은 양자 회로를 설계하고 설계된 회로를 수행하여 원하는 결과를 얻도록 구성된다. 만약 회로에서 사용되는 게이트 연산자(Gate Operator)가 많거나, 회로의 깊이(depth)가 깊어지면 오류가 증가한다. 이를 해결하기 위하여 파라미터 기반 양자 회로는 양자 회로에 파라미터를 적용하고, 학습을 통해 파라미터를 조절함으로써 양자 하드웨어의 오류에 적응적으로 대응할 수 있다.
종래의 파라미터 기반 양자 회로는 기본적으로 학습할 회로의 구조를 미리 설계하고, 동작시에 필요한 파라미터들을 정의하여 학습을 수행하였다. 이는 기계 학습 또는 딥 러닝에서 모델 구조를 미리 정의하고, 대응되는 모델의 파라미터들을 학습하는 것과 유사하다. 그러나 이러한 종래의 파라미터 기반 양자 회로의 경우 학습 대상 양자 회로의 구조 자체를 구성하는 과정이 빠져 있다. 이에 따라 회로의 설계를 사람의 직관이나 경험 등에 의존하는 한계가 존재하였다.
개시되는 실시예들은 파라미터 기반의 양자 회로를 효과적으로 설계하기 위한 기술적인 수단을 제공하기 위한 것이다.
예시적인 실시예에 따르면, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서, 양자 회로에 학습 데이터를 입력하는 단계; 상기 양자 회로로부터 상기 학습 데이터에 대한 출력 데이터를 수신하고 이로부터 오류율을 계산하는 단계; 및 상기 오류율에 기초하여 상기 양자 회로에 포함된 하나 이상의 서브 회로 블록(Sub Circuit Block) 중 적어도 하나의 갱신 대상 서브 회로 블록에 대한 파라미터를 갱신하는 단계를 포함하는, 파라미터 기반 양자 회로 구성 방법이 제공된다.
상기 파라미터를 갱신하는 단계는, 상기 하나 이상의 서브 회로 블록 중 가장 최근에 추가된 서브 회로 블록만을 상기 갱신 대상 서브 회로 블록으로 지정하도록 구성될 수 있다.
상기 파라미터를 갱신하는 단계는, 상기 하나 이상의 서브 회로 블록 전체를 갱신 대상 서브 회로 블록으로 지정하도록 구성될 수 있다.
상기 파라미터를 갱신하는 단계는, 가장 최근에 추가된 서브 회로 블록부터 상기 학습 데이터에 대한 가장 최근의 오류율이 기록된 서브 회로 블록까지의 서브 회로 블록들을 갱신 대상 서브 회로 블록으로 지정하도록 구성될 수 있다.
상기 파라미터를 갱신하는 단계는, 상기 계산된 오류율 및 상기 가장 최근의 오류율 간의 차이에 기초하여 파라미터 보정량을 계산하고, 계산된 상기 보정량을 상기 갱신 대상 서브 회로 블록에 분배하도록 구성될 수 있다.
상기 방법은, 기 설정된 횟수만큼 상기 학습 데이터를 입력하는 단계부터 상기 파라미터를 갱신하는 단계 사이의 단계들을 반복 수행하는 단계를 더 포함할 수 있다.
상기 방법은, 상기 반복 수행하는 단계의 수행 이후, 상기 양자 회로에 검증 데이터를 입력하여 상기 양자 회로의 파라미터 학습 결과에 대한 검증(validation)을 수행하는 단계를 더 포함할 수 있다.
상기 방법은, 상기 검증 결과 상기 양자 회로의 오류율이 이전 검증 단계에서 계산된 오류율 보다 낮은 경우, 양자 회로에 신규 서브 회로 블록을 추가하는 단계를 더 포함할 수 있다.
상기 방법은, 상기 검증 결과 상기 양자 회로의 오류율이 이전 검증 단계에서 계산된 오류율 보다 높거나, 또는 상기 양자 회로에 포함된 서브 회로 블록의 개수가 기 설정된 개수에 도달한 경우, 상기 양자 회로를 최적 양자 회로로 출력하는 단계를 더 포함할 수 있다.
다른 예시적인 실시예에 따르면, 양자 회로에 학습 데이터를 입력하고, 상기 양자 회로로부터 상기 학습 데이터에 대한 출력 데이터를 수신하여 이로부터 오류율을 계산하는 학습 모듈; 및 상기 오류율에 기초하여 상기 양자 회로에 포함된 하나 이상의 서브 회로 블록(Sub Circuit Block) 중 적어도 하나의 갱신 대상 서브 회로 블록에 대한 파라미터를 갱신하는 파라미터 갱신 모듈을 포함하는, 파라미터 기반 양자 회로 구성 장치가 제공된다.
상기 파라미터 갱신 모듈은, 상기 하나 이상의 서브 회로 블록 중 가장 최근에 추가된 서브 회로 블록만을 상기 갱신 대상 서브 회로 블록으로 지정할 수 있다.
상기 파라미터 갱신 모듈은, 상기 하나 이상의 서브 회로 블록 전체를 갱신 대상 서브 회로 블록으로 지정할 수 있다.
상기 파라미터 갱신 모듈은, 가장 최근에 추가된 서브 회로 블록부터 상기 학습 데이터에 대한 가장 최근의 오류율이 기록된 서브 회로 블록까지의 서브 회로 블록들을 갱신 대상 서브 회로 블록으로 지정할 수 있다.
상기 파라미터 갱신 모듈은, 상기 계산된 오류율 및 상기 가장 최근의 오류율 간의 차이에 기초하여 파라미터 보정량을 계산하고, 계산된 상기 보정량을 상기 갱신 대상 서브 회로 블록에 분배할 수 있다.
상기 파라미터 갱신 횟수가 기 설정된 횟수에 도달한 경우, 상기 양자 회로에 검증 데이터를 입력하여 상기 양자 회로의 파라미터 학습 결과에 대한 검증(validation)을 수행하는 검증 모듈을 더 포함할 수 있다.
상기 검증 모듈은, 상기 검증 결과 상기 양자 회로의 오류율이 이전 검증 단계에서 계산된 오류율 보다 낮은 경우, 양자 회로에 신규 서브 회로 블록을 추가할 수 있다.
상기 검증 모듈은, 상기 검증 결과 상기 양자 회로의 오류율이 이전 검증 단계에서 계산된 오류율 보다 높거나, 또는 상기 양자 회로에 포함된 서브 회로 블록의 개수가 기 설정된 개수에 도달한 경우, 상기 양자 회로를 최적 양자 회로로 출력할 수 있다.
개시되는 실시예에 따르면, 해결하고자 하는 문제의 특성, 학습 대상 파라미터의 개수, 회로의 복잡도 등을 고려하여 최적의 양자 회로를 구성함으로써 양자 컴퓨팅의 성능 향상 및 활용성 증대에 기여할 수 있다.
도 1은 일 실시예에 따른 파라미터 기반 양자 회로를 설명하기 위한 블록도
도 2는 일 실시예에 따른 양자 회로를 설명하기 위한 블록도
도 3은 일 실시예에 따른 양자 회로 구성 장치를 설명하기 위한 블록도
도 4는 일 실시예에 따른 각 서브 회로 블록의 파라미터 업데이트 과정을 설명하기 위한 예시도
도 5는 일 실시예에 따른 양자 회로 구성 방법을 설명하기 위한 흐름도
도 6은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
도 1은 일 실시예에 따른 파라미터 기반 양자 회로(100; Parameterized Quantum Circuit)를 설명하기 위한 블록도이다. 도시된 바와 같이, 일 실시예에 따른 파라미터 기반 양자 회로(100)는 양자 회로(102) 및 양자 회로 구성 장치(104)를 포함한다.
파라미터 기반 양자 회로(100)는 기본적으로 양자 회로(102)를 구성하고, 양자 회로 구성 장치(104)에서 양자 회로(102)의 파라미터를 업데이트하며 양자 회로(102)를 학습시키는, 이른바 하이브리드 양자-고전(Hybrid Quantum-Classical) 방식으로 구동된다. 양자 회로 구성 장치(104)는 양자 회로(102)가 구동되는 데 필요한 파라미터를 설정한다. 양자 회로(102)는 양자 회로 구성 장치(104)로부터 입력 데이터를 수신하고 이에 대한 연산을 수행한다. 이때 상기 연산의 결과는 양자 회로 구성 장치(104)에서 설정된 파라미터의 영향을 받게 된다. 양자 회로(102)로부터 상기 입력 데이터에 대한 연산 결과인 출력 데이터가 수신되면, 양자 회로 구성 장치(104)는 오류율을 계산하고, 계산된 오류율에 기반하여 상기 양자 회로(102)에 설정된 파라미터들을 갱신한다.
도 2는 일 실시예에 따른 양자 회로(102)를 설명하기 위한 블록도이다. 도시된 바와 같이, 일 실시예에 따른 양자 회로(102)는 하나 이상의 서브 회로 블록(200; Sub Circuit Block)을 포함한다. 도 2에서는 SCB #1(200-1)부터 SCB #N(200-N)까지 N개의 서브 회로 블록(200)을 포함한 실시예를 나타내었다.
도시된 양자 회로(102)에서 각 서브 회로 블록(200)들은 멀티 레이어 구조를 가진다. 도 2의 실시예에서 SCB #1(200-1)은 첫 번째 레이어, SCB #2(200-2)는 두 번째 레이어, SCB #N(200-N)은 N 번째 레이어가 된다. 각 레이어의 서브 회로 블록(200)들은 이전 레이어의 결과에 대한 연산을 수행하고, 이를 다음 레이어로 전달한다. 예를 들어, 도시된 양자 회로(102)에서 k번째 서브 회로 블록(200-k)은 k-1번째 서브 회로 블록(200-(k-1))의 결과에 대한 연산을 수행하고, 그 결과를 k+1번째 서브 회로 블록(200-(k+1))에 전달하도록 구성된다. 또한 각 서브 회로 블록(200)은 하나 이상의 양자 게이트(Quantum Gate)를 포함하며, 각 양자 게이트들은 양자 회로 구성 장치(104)로부터 수신된 파라미터에 따라 게이트 연산을 수행한다.
양자 회로(102)가 적은 수의 서브 회로 블록(200)만을 포함할 경우, 학습 파라미터의 개수가 줄어들어 학습 성능이 저하될 수 있다. 반면, 양자 회로(102)에 포함되는 서브 회로 블록(200)이 증가할 경우 학습 성능의 향상을 기대할 수 있으나, 학습 파라미터의 수 또한 증가하게 되어 학습 시간이 증가하며 양자 회로의 특성상 오류율 또한 증가하게 된다. 따라서 양자 회로(102)에 필요한 적절한 개수의 서브 회로 블록(200)을 결정하는 것은 양자 회로의 성능 및 효율 면에서 중요한 과제이다.
도 3은 일 실시예에 따른 양자 회로 구성 장치(104)를 설명하기 위한 블록도이다. 도시된 바와 같이, 일 실시예에 따른 양자 회로 구성 장치(104)는 학습 모듈(302), 파라미터 갱신 모듈(304) 및 검증 모듈(306)을 포함한다.
학습 모듈(302)은 양자 회로(102)에 학습 데이터를 입력하여 양자 회로(102)에 대한 학습을 수행한다. 이후 양자 회로(102)로부터 상기 학습 데이터에 대한 출력 데이터가 생성되면, 학습 모듈(302)은 이를 수신하여 오류율을 계산한다. 개시되는 실시예들에서, 상기 오류율은 기 설정된 손실함수(Loss Function)에 따라 계산되는 손실률, 또는 비용함수(Cost Function)에 따라 계산되는 비용(cost)일 수 있다.
파라미터 갱신 모듈(304)은 학습 모듈(302)에서 계산된 상기 오류율에 따라 양자 회로(102)에 포함된 하나 이상의 서브 회로 블록(200) 중 적어도 하나의 갱신 대상 서브 회로 블록에 대한 파라미터를 갱신한다. 개시되는 실시예들에서, 파라미터 갱신 모듈(304)은 기본적으로 역전파(backpropagation) 방법을 사용하여 상기 파라미터 갱신 작업을 수행한다. 역전파 방법은 양자 회로(102)의 마지막 레이어에서 계산된 손실률에 기반하여 보정량을 계산하고, 계산된 보정량을 양자 회로(102)에 포함된 각 레이어에 분할하여 전달하는 방식이다. 각 레이어의 서브 회로 블록(200)들은 할당된 보정량에 근거하여 자신의 파라미터를 갱신하게 된다. 이때 상기 파라미터를 갱신할 갱신 대상 서브 회로 블록을 결정하는 방식은 다음의 세 가지 방식을 생각할 수 있다.
첫 번째 실시예에서, 파라미터 갱신 모듈(304)은 마지막 레이어의 서브 회로 블록, 다시 말해 양자 회로(102)에 가장 최근에 추가된 서브 회로 블록만을 상기 갱신 대상 서브 회로 블록으로 지정할 수 있다. 본 실시예의 경우 업데이트 대상 파라미터의 개수가 적어 수행 속도가 빠르나, 학습에 따른 효과가 잘 나타나지 않고 서브 회로 블록(200)의 추가에 따른 신뢰도가 떨어진다는 단점이 있다.
두 번째 실시예에서, 파라미터 갱신 모듈(304)은 양자 회로(102)에 포함된 서브 회로 블록 전체를 갱신 대상 서브 회로 블록으로 지정할 수 있다. 본 실시예의 경우 업데이트 대상 파라미터의 개수가 많아 수행 속도는 느리나, 학습에 따른 성능 향상 효과가 크다는 장점이 있다.
세 번째 실시예는 첫 번째 실시예와 두 번째 실시예의 장점을 절충한 것이다. 본 실시예에서, 파라미터 갱신 모듈(304)은 가장 최근에 추가된 서브 회로 블록(마지막 레이어)부터 상기 학습 데이터에 대한 가장 최근의 오류율이 기록된 서브 회로 블록까지의 서브 회로 블록들을 갱신 대상 서브 회로 블록으로 지정하도록 구성된다. 가장 최근의 오류율이 기록된 서브 회로 블록 이전의 블록을은 업데이트하지 않는다. 이때 학습 데이터 별로 오류율이 기록된 서브 회로 블록이 다른 이유는 학습 데이터에 대한 오류율 기록은 검증(validation) 단계에서 수행되는데, 학습 데이터에 따라 검증 시점이 상이할 수 있기 때문이다. 이를 예를 들어 설명하면 다음과 같다.
도 4는 일 실시예에 따른 각 서브 회로 블록의 파라미터 업데이트 과정을 설명하기 위한 예시도이다. 도시된 예시도는 전술한 세 번째 실시예에 따를 경우를 가정한 것이다.
도 4의 그래프에서 Data #1, Data #2, …, Data #M은 각각 학습 데이터를 의미하고, 각 열은 해당 학습 데이터를 이용한 검증 과정에서 기록된 오류율을 의미한다. 예를 들어, Data #1, Data #2의 경우 SCB #1, SCB #2, SCB #3이 각각 추가되었을 당시 검증을 위한 데이터로 활용되어 각각의 오류율이 기록되어 있다. 또한 Data #3의 경우 SCB #1 및 SCB #2까지만 오류율이 기록되어 있고, Data #M은 SCB #1에 대한 오류율만 기록되어 있다.
위와 같은 과정에서 만약 SCB #N의 추가시 검증 데이터로 Data #1을 사용하였다고 가정하자. 이 경우 가장 최근의 오류율이 기록된 서브 회로 블록은 SCB #3이 되므로, 파라미터 갱신 모듈(304)은 SCB #N부터 SCB #3까지의 파라미터만을 업데이트하고, SCB #1, SCB #2에 대해서는 파라미터를 업데이트하지 않는다. 만약 검증 데이터로 Data #1이 아닌 Data #3dl 사용된 경우, 파라미터 갱신 모듈(304)은 SCB #N부터 SCB #2까지의 파라미터를 업데이트하게 된다.
일 실시예에서 파라미터 갱신 모듈(304)은 상기 계산된 오류율 및 상기 가장 최근의 오류율 간의 차이에 기초하여 파라미터 보정량을 계산하고, 계산된 상기 보정량을 상기 갱신 대상 서브 회로 블록에 분배하도록 구성된다. 예를 들더, Data #1이 검증 데이터로 사용되고 SCB #N에 대하여 계산된 오류율이 0.20이라고 가정하자. 이 경우 가장 최근의 오류율은 SCB #3에서 계산된 0.07이다. 따라서 파라미터 갱신 모듈(304)은 0.20과 0.07간의 차이인 0.13 만큼의 오류율을 SCB #N부터 SCB #3까지의 각 서브 회로 블록에 분배하게 된다.
다시 도 3으로 돌아가서, 검증 모듈(306)은 파라미터 갱신 모듈(304)에 의한 상기 파라미터 갱신 횟수가 기 설정된 횟수(K; K는 1 이상의 자연수)에 도달한 경우, 양자 회로(102)에 검증 데이터를 입력하여 양자 회로(102)의 파라미터 학습 결과에 대한 검증(validation)을 수행한다. 이때 상기 검증 데이터는 학습 데이터와는 별개의 데이터 셋으로 구성될 수도 있고, 학습 데이터 중 일부를 랜덤하게 선택하여 사용할 수도 있다. 상기 검증에 따른 검증 결과는 이후 파라미터 업데이트 과정에서 사용될 수 있도록 도 4에 예시한 것과 같이 별도의 저장 공간에 기록될 수 있다.
검증이 완료되면, 검증 모듈(306)은 검증 결과를 이전의 결과와 비교하여 성능 향상 효과가 존재하는지의 여부를 판단한다. 이때 상기 성능 향상 효과의 존재 여부는 검증 과정에서 생성된 오류율이 이전 단계의 오류율보다 낮아졌는지 등의 여부로 판단할 수 있다. 만약 상기 판단 결과 성능이 향상된 것으로 판단되는 경우, 검증 모듈(306)은 양자 회로(102)에 포함된 서브 회로 블록(200)의 개수가 최대값이 도달했는지의 여부를 판단하고, 그렇지 않은 경우 신규 서브 회로 블록을 양자 회로(102)에 추가한다.
이와 달리, 상기 판단 결과 성능이 향상되지 않은 것으로 판단되는 경우(즉, 오류율이 이전 검증 단계보다 높아지는 경우 등), 검증 모듈(306)은 서브 회로 블록(200) 추가에 따른 효과가 없거나 미비할 것으로 판단하고 현 상태의 양자 회로(102)를 최적 양자 회로로 출력한다. 본 과정에서 실시예에 따라 양자 회로(102)의 파라미터에 대한 미세 조정(fine-tuning)이 추가로 이루어질 수도 있다. 이때 상기 미세 조정은 역전파 기법을 사용하여 전체 회로의 오류율 값이 수렴할 때까지 전체 서브 회로 블록(200)들에 대한 파라미터 업데이트를 반복 수행하는 방법으로 수행될 수 있다. 만약 성능이 향상되었으나 서브 회로 블록(200)의 개수가 최대값이 도달한 경우에도 검증 모듈(306)은 서브 회로 블록(200)을 추가하지 않는다.
도 5는 일 실시예에 따른 양자 회로 구성 방법(500)를 설명하기 위한 흐름도이다. 도시된 흐름도는 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치, 예를 들어 전술한 양자 회로 구성 장치(104)에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법 또는 과정을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
단계 502에서, 학습 모듈(302)은 양자 회로(102)에 학습 데이터를 입력한다.
단계 504에서, 학습 모듈(302)은 양자 회로(102)로부터 상기 학습 데이터에 대한 출력 데이터를 수신한다.
단계 506에서, 학습 모듈(302)은 상기 504 단계에서 수신하 출력 데이터로부터 오류율을 계산한다. 개시되는 실시예들에서, 상기 오류율은 기 설정된 손실함수(Loss Function)에 따라 계산되는 손실률, 또는 비용함수(Cost Function)에 따라 계산되는 비용(cost)일 수 있다.
단계 508에서, 파라미터 갱신 모듈(304)은 학습 모듈(302)에서 계산된 상기 오류율에 기초하여 양자 회로(102)에 포함된 하나 이상의 서브 회로 블록(200) 중 적어도 하나의 갱신 대상 서브 회로 블록에 대한 파라미터를 갱신한다. 파라미터 갱신과 관련된 사항에 대해서는 앞서 상세히 설명하였으므로 여기서는 반복되는 설명을 생략한다.
단계 510에서, 검증 모듈(306)은 파라미터 갱신 모듈(304)에 의한 상기 파라미터 갱신 횟수가 기 설정된 횟수에 도달했는지의 여부를 판단한다. 만약 상기 판단 결과 갱신 횟수가 기 설정된 횟수에 도달하지 않은 경우, 검증 모듈(306)은 상기 횟수에 도달할 때까지 학습 모듈(302) 및 파라미터 갱신 모듈(304)을 통하여 502 내지 508 단계를 반복 수행한다.
만약 상기 판단 결과 갱신 횟수가 기 설정된 횟수에 도달한 경우, 단계 512에서 검증 모듈(306)은 양자 회로(102)에 검증 데이터를 입력하여 양자 회로(102)의 파라미터 학습 결과에 대한 검증(validation)을 수행한다.
단계 514에서, 검증 모듈(306)은 검증 결과를 이전의 결과와 비교하여 성능 향상 효과가 존재하는지의 여부를 판단한다. 이때 상기 성능 향상 효과의 존재 여부는 검증 과정에서 생성된 오류율이 이전 단계의 오류율보다 낮아졌는지 등의 여부로 판단할 수 있다.
만약 상기 판단 결과 성능이 향상된 것으로 판단되는 경우, 단계 516에서 검증 모듈(306)은 양자 회로(102)에 포함된 서브 회로 블록(200)의 개수가 최대값이 도달했는지의 여부를 판단하고, 그렇지 않은 경우 신규 서브 회로 블록을 양자 회로(102)에 추가한다(단계 518).
이와 달리, 상기 514 단계의 판단 결과 성능이 향상되지 않은 것으로 판단되는 경우(즉, 오류율이 이전 검증 단계보다 높아지는 경우 등), 단계 520에서 검증 모듈(306)은 서브 회로 블록(200) 추가에 따른 효과가 없거나 미비할 것으로 판단하고 현 상태의 양자 회로(102)를 최적 양자 회로로 출력한다. 본 과정에서 실시예에 따라 양자 회로(102)의 파라미터에 대한 미세 조정(fine-tuning)이 추가로 이루어질 수도 있다. 만약 성능이 향상되었으나 516 단계의 판단 결과 서브 회로 블록(200)의 개수가 최대값이 도달한 경우에도 검증 모듈(306)은 서브 회로 블록(200)을 추가하지 않는다.
도 6은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술되지 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 본 발명의 실시예들에 따른 양자 회로 구성 장치(104)일 수 있다. 컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(102)와 연결될 수도 있다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위 뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위 뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 파라미터 기반 양자 회로
102: 양자 회로
104: 양자 회로 구성 장치
200-1 ~ 200-N: 서브 회로 블록
302: 학습 모듈
304: 파라미터 갱신 모듈
306: 검증 모듈

Claims (17)

  1. 하나 이상의 프로세서들, 및
    상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서,
    양자 회로에 학습 데이터를 입력하는 단계;
    상기 양자 회로로부터 상기 학습 데이터에 대한 출력 데이터를 수신하고 이로부터 오류율을 계산하는 단계; 및
    상기 오류율에 기초하여 상기 양자 회로에 포함된 하나 이상의 서브 회로 블록(Sub Circuit Block) 중 적어도 하나의 갱신 대상 서브 회로 블록에 대한 파라미터를 갱신하는 단계를 포함하는, 파라미터 기반 양자 회로 구성 방법.
  2. 청구항 1에 있어서,
    상기 파라미터를 갱신하는 단계는,
    상기 하나 이상의 서브 회로 블록 중 가장 최근에 추가된 서브 회로 블록만을 상기 갱신 대상 서브 회로 블록으로 지정하도록 구성되는, 파라미터 기반 양자 회로 구성 방법.
  3. 청구항 1에 있어서,
    상기 파라미터를 갱신하는 단계는,
    상기 하나 이상의 서브 회로 블록 전체를 갱신 대상 서브 회로 블록으로 지정하도록 구성되는, 파라미터 기반 양자 회로 구성 방법.
  4. 청구항 1에 있어서,
    상기 파라미터를 갱신하는 단계는,
    가장 최근에 추가된 서브 회로 블록부터 상기 학습 데이터에 대한 가장 최근의 오류율이 기록된 서브 회로 블록까지의 서브 회로 블록들을 갱신 대상 서브 회로 블록으로 지정하도록 구성되는, 파라미터 기반 양자 회로 구성 방법.
  5. 청구항 1에 있어서,
    상기 파라미터를 갱신하는 단계는,
    상기 계산된 오류율 및 상기 가장 최근의 오류율 간의 차이에 기초하여 파라미터 보정량을 계산하고, 계산된 상기 보정량을 상기 갱신 대상 서브 회로 블록에 분배하도록 구성되는, 파라미터 기반 양자 회로 구성 방법.
  6. 청구항 1에 있어서,
    기 설정된 횟수만큼 상기 학습 데이터를 입력하는 단계부터 상기 파라미터를 갱신하는 단계 사이의 단계들을 반복 수행하는 단계를 더 포함하는, 파라미터 기반 양자 회로 구성 방법.
  7. 청구항 6에 있어서,
    상기 반복 수행하는 단계의 수행 이후,
    상기 양자 회로에 검증 데이터를 입력하여 상기 양자 회로의 파라미터 학습 결과에 대한 검증(validation)을 수행하는 단계를 더 포함하는, 파라미터 기반 양자 회로 구성 방법.
  8. 청구항 7에 있어서,
    상기 검증 결과 상기 양자 회로의 오류율이 이전 검증 단계에서 계산된 오류율 보다 낮은 경우, 양자 회로에 신규 서브 회로 블록을 추가하는 단계를 더 포함하는, 파라미터 기반 양자 회로 구성 장치.
  9. 청구항 7에 있어서,
    상기 검증 결과 상기 양자 회로의 오류율이 이전 검증 단계에서 계산된 오류율 보다 높거나, 또는 상기 양자 회로에 포함된 서브 회로 블록의 개수가 기 설정된 개수에 도달한 경우, 상기 양자 회로를 최적 양자 회로로 출력하는 단계를 더 포함하는, 파라미터 기반 양자 회로 구성 방법.
  10. 양자 회로에 학습 데이터를 입력하고, 상기 양자 회로로부터 상기 학습 데이터에 대한 출력 데이터를 수신하여 이로부터 오류율을 계산하는 학습 모듈; 및
    상기 오류율에 기초하여 상기 양자 회로에 포함된 하나 이상의 서브 회로 블록(Sub Circuit Block) 중 적어도 하나의 갱신 대상 서브 회로 블록에 대한 파라미터를 갱신하는 파라미터 갱신 모듈을 포함하는, 파라미터 기반 양자 회로 구성 장치.
  11. 청구항 10에 있어서,
    상기 파라미터 갱신 모듈은,
    상기 하나 이상의 서브 회로 블록 중 가장 최근에 추가된 서브 회로 블록만을 상기 갱신 대상 서브 회로 블록으로 지정하는, 파라미터 기반 양자 회로 구성 장치.
  12. 청구항 10에 있어서,
    상기 파라미터 갱신 모듈은,
    상기 하나 이상의 서브 회로 블록 전체를 갱신 대상 서브 회로 블록으로 지정하는, 파라미터 기반 양자 회로 구성 장치.
  13. 청구항 10에 있어서,
    상기 파라미터 갱신 모듈은,
    가장 최근에 추가된 서브 회로 블록부터 상기 학습 데이터에 대한 가장 최근의 오류율이 기록된 서브 회로 블록까지의 서브 회로 블록들을 갱신 대상 서브 회로 블록으로 지정하는, 파라미터 기반 양자 회로 구성 장치.
  14. 청구항 10에 있어서,
    상기 파라미터 갱신 모듈은,
    상기 계산된 오류율 및 상기 가장 최근의 오류율 간의 차이에 기초하여 파라미터 보정량을 계산하고, 계산된 상기 보정량을 상기 갱신 대상 서브 회로 블록에 분배하는, 파라미터 기반 양자 회로 구성 장치.
  15. 청구항 10에 있어서,
    상기 파라미터 갱신 횟수가 기 설정된 횟수에 도달한 경우, 상기 양자 회로에 검증 데이터를 입력하여 상기 양자 회로의 파라미터 학습 결과에 대한 검증(validation)을 수행하는 검증 모듈을 더 포함하는, 파라미터 기반 양자 회로 구성 장치.
  16. 청구항 15에 있어서,
    상기 검증 모듈은,
    상기 검증 결과 상기 양자 회로의 오류율이 이전 검증 단계에서 계산된 오류율 보다 낮은 경우, 양자 회로에 신규 서브 회로 블록을 추가하는, 파라미터 기반 양자 회로 구성 장치.
  17. 청구항 15에 있어서,
    상기 검증 모듈은,
    상기 검증 결과 상기 양자 회로의 오류율이 이전 검증 단계에서 계산된 오류율 보다 높거나, 또는 상기 양자 회로에 포함된 서브 회로 블록의 개수가 기 설정된 개수에 도달한 경우, 상기 양자 회로를 최적 양자 회로로 출력하는, 파라미터 기반 양자 회로 구성 장치.
KR1020200056036A 2020-05-11 2020-05-11 파라미터 기반 양자 회로 구성 장치 및 방법 KR20210137767A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200056036A KR20210137767A (ko) 2020-05-11 2020-05-11 파라미터 기반 양자 회로 구성 장치 및 방법
US16/883,343 US10922460B1 (en) 2020-05-11 2020-05-26 Apparatus and method for constructing parameterized quantum circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200056036A KR20210137767A (ko) 2020-05-11 2020-05-11 파라미터 기반 양자 회로 구성 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20210137767A true KR20210137767A (ko) 2021-11-18

Family

ID=74570139

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200056036A KR20210137767A (ko) 2020-05-11 2020-05-11 파라미터 기반 양자 회로 구성 장치 및 방법

Country Status (2)

Country Link
US (1) US10922460B1 (ko)
KR (1) KR20210137767A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7223174B2 (ja) 2019-06-14 2023-02-15 ザパタ コンピューティング,インコーポレイテッド ロバストな振幅推定のための工学的尤度関数を用いたベイズ推論のためのハイブリッド量子古典コンピュータ
CA3210297A1 (en) * 2021-03-10 2022-09-15 Frederic Sauvage Flexible initializer for arbitrarily-sized parametrized quantum circuits

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10325218B1 (en) * 2016-03-10 2019-06-18 Rigetti & Co, Inc. Constructing quantum process for quantum processors
CN110692067A (zh) * 2017-06-02 2020-01-14 谷歌有限责任公司 量子神经网络
EP4282813A3 (en) * 2017-06-19 2024-02-21 Rigetti & Co, LLC Parametrically activated quantum logic gates

Also Published As

Publication number Publication date
US10922460B1 (en) 2021-02-16

Similar Documents

Publication Publication Date Title
US20220156628A1 (en) Software-defined quantum computer
US10909327B2 (en) Unsupervised learning of interpretable conversation models from conversation logs
US10755026B1 (en) Circuit design including design rule violation correction utilizing patches based on deep reinforcement learning
US11521066B2 (en) Method and apparatus for partitioning deep neural networks
US11455523B2 (en) Risk evaluation method, computer-readable recording medium, and information processing apparatus
KR20210137767A (ko) 파라미터 기반 양자 회로 구성 장치 및 방법
US11620564B2 (en) CSP-based quantum circuit modeling
WO2020141079A1 (en) Mapping logical qubits on a quantum circuit
US20210295201A1 (en) Fast Adaptive Optimization
US20200250529A1 (en) Arithmetic device
US10970447B2 (en) Leverage cycle stealing within optimization flows
US20030093765A1 (en) Method and system for robust distributed circuit synthesis
CN112955909A (zh) 神经网络的分布式训练方法及装置
US11900231B2 (en) Hierarchy optimization method for machine learning
US20220092387A1 (en) Systems and Methods for Producing an Architecture of a Pyramid Layer
US8984475B2 (en) Apparatus and method for generating code overlay
US20220405561A1 (en) Electronic device and controlling method of electronic device
US12008125B2 (en) Privacy filters and odometers for deep learning
KR20200052411A (ko) 영상 분류 장치 및 방법
EP3910556A1 (en) Generative adversarial networks for synthetic data generation satisfying differential privacy
KR20220036493A (ko) 뉴럴 네트워크 추론을 위한 최적화 방법 및 이를 수행하는 컴퓨팅 장치
JP2023553799A (ja) コンパイラで生成された量子化モデルを修正して正確度を修復する方法およびシステム
KR102522053B1 (ko) 적대적 공격에 강인한 맞춤형 분산 학습 방법 및 시스템
KR102681076B1 (ko) 개인화 디바이스에서 최적의 조건으로 구동될 생성 모델을 구성하기 위한 방법 및 시스템
CN116258207A (zh) 量子操作的处理方法、装置、设备及存储介质