KR20220047128A - 양자회로 에러 보정 방법 및 그 장치 - Google Patents

양자회로 에러 보정 방법 및 그 장치 Download PDF

Info

Publication number
KR20220047128A
KR20220047128A KR1020210027981A KR20210027981A KR20220047128A KR 20220047128 A KR20220047128 A KR 20220047128A KR 1020210027981 A KR1020210027981 A KR 1020210027981A KR 20210027981 A KR20210027981 A KR 20210027981A KR 20220047128 A KR20220047128 A KR 20220047128A
Authority
KR
South Korea
Prior art keywords
quantum
quantum circuit
error correction
error
model
Prior art date
Application number
KR1020210027981A
Other languages
English (en)
Other versions
KR102669448B1 (ko
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 US17/493,091 priority Critical patent/US20220114047A1/en
Priority to EP21201624.0A priority patent/EP3982304A1/en
Publication of KR20220047128A publication Critical patent/KR20220047128A/ko
Application granted granted Critical
Publication of KR102669448B1 publication Critical patent/KR102669448B1/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/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
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • 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/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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • 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
    • 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)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 양자 컴퓨터에서의 양자회로 에러 보정 방법에 관한 것으로, 상기 양자 컴퓨터를 구성하는 복수의 양자회로들 중 보정 대상의 양자회로를 검출하는 단계; 상기 복수의 양자회로들의 에러 보정을 위해 미리 학습된 딥러닝 모델을 호출하는 단계; 상기 호출된 딥러닝 모델을 이용하여 상기 검출된 양자회로의 에러 보정 값을 추론하는 단계; 및 상기 추론된 에러 보정 값을 기반으로 상기 검출된 양자회로의 에러를 보정하는 단계를 포함한다.

Description

양자회로 에러 보정 방법 및 그 장치{METHOD FOR MITIGATING AN ERROR OF QUANTUM CIRCUIT AND APPARATUS THEREOF}
본 발명은 양자 컴퓨터 기술에 관한 것으로, 보다 구체적으로는, 양자 컴퓨터를 구성하는 양자회로들에 존재하는 에러를 보정(경감)할 수 있는 방법 및 그 장치에 관한 것이다.
양자 컴퓨터는 중첩(superposition), 얽힘(entanglement) 등 양자의 고유한 물리학적 특성을 이용하여, 다수의 정보를 동시 처리할 수 있는 새로운 개념의 컴퓨터이다. 현대 반도체 칩의 미세회로에서 발생하는 누설전류로 인한 고전 컴퓨터의 성능 한계를 돌파하기 위한 대안으로서 양자 컴퓨터의 필요성이 점차 커지고 있다. 양자 컴퓨터는 양자적 정보 단위인 양자비트 또는 큐비트(quantum bit, qubit)를 정보처리의 기본단위로 하는 양자병렬처리를 통해 정보처리 및 연산 속도가 지수 함수적으로 증가하여 빠른 속도로 문제를 해결할 수 있다. 이에 따라, 양자 컴퓨터는 최적경로탐색, 소인수분해, 대량 데이터 탐색 등 복잡한 계산과 대량 데이터 처리에 강점이 있어 금융, 화학, 제약 등 다양한 산업 분야에 거대한 혁신을 가져올 것으로 기대하고 있다.
양자 컴퓨터를 구성하는 주요 요소기술에는 큐비트(qubit) 구현 기술, 양자 알고리즘(quantum algorism) 기술, 양자오류정정부호(quantum error correction code, QECC) 기술 및 양자회로(quantum circuit) 기술 등이 있다. 이러한 요소기술 중 양자회로 기술에는 양자적 정보 단위인 큐비트(qubit)를 정보 처리하기 위한 양자 게이트(quantum gate)를 구현하는 기술과 양자회로에 존재하는 에러를 제거하는 기술이 있다. 상기 양자회로에 존재하는 에러를 제거하는 기술로는 대표적으로 양자회로 에러 정정(Quantum error correction, QEC) 기술이 있다.
기본적으로 양자회로에 존재하는 에러는 해당 회로를 구성하는 양자 게이트들의 종류에 따른 에러와 양자 게이트들의 조합 순서에 따른 에러로 구성된다. 즉, 양자회로에 존재하는 에러는 양자 게이트들의 구성뿐만 아니라 양자 게이트들의 조합 순서에 따라 달라지게 된다. 따라서, 종래의 양자회로 에러 정정(QEC) 기술은 양자회로를 구성하는 양자 게이트들의 종류 및 순서를 모두 고려하여 해당 회로에 존재하는 에러를 정정하였다. 그런데, 이러한 양자회로 에러 정정(QEC) 기술은 별도의 양자회로가 필요할 뿐만 아니라, 에러 정정을 위한 연산 과정이 매우 복잡하여 양자회로에 존재하는 에러를 정정하는 데 상당한 시간과 에너지가 소비되는 문제가 있다.
본 발명은 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 한다. 또 다른 목적은 미리 학습된 딥러닝 모델(Deep learning model)을 이용하여 양자회로에 존재하는 에러를 효과적으로 보정(경감)할 수 있는 양자회로 에러 보정 방법 및 그 장치를 제공함에 있다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따르면, 양자 컴퓨터를 구성하는 복수의 양자회로들 중 보정 대상의 양자회로를 검출하는 단계; 상기 복수의 양자회로들의 에러 보정을 위해 미리 학습된 딥러닝 모델을 호출하는 단계; 상기 호출된 딥러닝 모델을 이용하여 상기 검출된 양자회로의 에러 보정 값을 추론하는 단계; 및 상기 추론된 에러 보정 값을 기반으로 상기 검출된 양자회로의 에러를 보정하는 단계를 포함하는 양자 컴퓨터에서의 양자회로 에러 보정 방법을 제공한다.
본 발명의 다른 측면에 따르면, 양자 컴퓨터를 구성하는 복수의 양자회로들의 에러 보정을 위해 미리 학습된 딥러닝 모델을 저장하는 메모리; 및 상기 복수의 양자회로들 중 보정 대상의 양자회로를 검출하고, 상기 메모리에 저장된 딥러닝 모델을 이용하여 상기 검출된 양자회로의 에러 보정 값을 추론하며, 상기 추론된 에러 보정 값을 기반으로 상기 검출된 양자회로의 에러를 보정하는 프로세서를 포함하는 양자회로 에러 보정 장치를 제공한다.
본 발명의 또 다른 측면에 따르면, 양자 컴퓨터를 구성하는 복수의 양자회로들 중 보정 대상의 양자회로를 검출하는 과정; 상기 복수의 양자회로들의 에러 보정을 위해 미리 학습된 딥러닝 모델을 호출하는 과정; 상기 호출된 딥러닝 모델을 이용하여 상기 검출된 양자회로의 에러 보정 값을 추론하는 과정; 및 상기 추론된 에러 보정 값을 기반으로 상기 검출된 양자회로의 에러를 보정하는 과정이 컴퓨터 상에서 실행될 수 있도록 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램을 제공한다.
본 발명의 실시 예들에 따른 양자회로 에러 보정 방법 및 그 장치의 효과에 대해 설명하면 다음과 같다.
본 발명의 실시 예들 중 적어도 하나에 의하면, 미리 학습된 딥러닝 모델을 이용하여 양자회로에 존재하는 에러를 간편하게 보정함으로써, 양자회로 에러를 보정하기 위한 양자 게이트들을 별도로 추가할 필요가 없을 뿐만 아니라, 양자회로 에러 보정을 위한 연산 과정이 간단하여 양자회로에 존재하는 에러를 정정하는 데 소요되는 시간과 에너지를 절약할 있다는 장점이 있다.
다만, 본 발명의 실시 예들에 따른 양자회로 에러 보정 방법 및 그 장치가 달성할 수 있는 효과는 이상에서 언급한 것들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1a는 본 발명과 관련된 심층 신경망(DNN)의 기본적인 구조를 나타내는 도면;
도 1b는 본 발명과 관련된 심층 신경망(DNN)의 학습 과정을 설명하기 위해 참조되는 도면;
도 2a는 본 발명과 관련된 합성곱 신경망(CNN)의 기본적인 구조를 나타내는 도면;
도 2b는 본 발명과 관련된 합성곱 신경망(CNN)의 학습 과정을 설명하기 위해 참조되는 도면;
도 3은 본 발명과 관련된 양자 게이트들의 종류를 예시하는 도면;
도 4는 도 3의 양자 게이트들을 이용하여 구성된 양자회로의 일 예를 나타내는 도면;
도 5는 본 발명과 관련된 양자회로의 구조를 개략적으로 나타내는 도면;
도 6은 본 발명의 일 실시 예에 따른 양자회로 에러 보정 방법을 설명하는 순서도;
도 7은 본 발명의 일 실시 예에 따른 DNN 모델의 구조를 나타내는 도면;
도 8은 본 발명의 다른 실시 예에 따른 DNN 모델의 구조를 나타내는 도면;
도 9는 DNN 모델의 입력층에 입력되는 데이터를 설명하기 위해 참조되는 도면;
도 10은 학습 대상 양자회로의 선정과, 상기 선정된 학습 대상 양자회로를 기반으로 DNN 모델을 학습하는 과정을 설명하기 위해 참조되는 도면;
도 11은 보정 대상 양자회로의 종류와, 미리 학습된 DNN 모델을 이용하여 상기 보정 대상 양자회로의 에러를 보정하는 과정을 설명하기 위해 참조되는 도면;
도 12a 및 도 12b는 본 발명의 일 실시 예에 따른 H-CNN 모델의 구조와, 해당 모델의 입력층 및 출력층에 입력되는 학습 데이터를 설명하기 위해 참조되는 도면;
도 13은 학습 대상 양자회로의 선정과, 상기 선정된 학습 대상 양자회로를 기반으로 H-CNN 모델을 학습하는 과정을 설명하기 위해 참조되는 도면;
도 14는 보정 대상 양자회로의 종류와, 미리 학습된 H-CNN 모델을 이용하여 상기 보정 대상 양자회로의 에러를 보정하는 과정을 설명하기 위해 참조되는 도면;
도 15는 본 발명의 일 실시 예에 따른 컴퓨팅 장치의 구성 블록도.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 즉, 본 발명에서 사용되는 '부'라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '부'는 어떤 역할들을 수행한다. 그렇지만 '부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부'들로 결합되거나 추가적인 구성요소들과 '부'들로 더 분리될 수 있다.
또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명은 미리 학습된 딥러닝 모델을 이용하여 양자회로에 존재하는 에러를 효과적으로 보정(또는 경감)할 수 있는 양자회로 에러 보정 방법 및 그 장치를 제안한다. 상기 딥러닝 모델로는 심층 신경망(Deep neural network, DNN) 또는 하이브리드 합성곱 신경망(Hybrid Convolutional Neural Network, H-CNN)이 사용될 수 있으며 반드시 이에 제한되지는 않는다.
이하에서는, 본 발명의 다양한 실시 예들에 대하여, 도면을 참조하여 상세히 설명한다.
도 1a는 본 발명과 관련된 심층 신경망(DNN)의 기본적인 구조를 나타내는 도면이고, 도 1b는 도 1a에 도시된 심층 신경망(DNN)의 학습 과정을 설명하기 위해 참조되는 도면이다.
도 1a 및 도 1b를 참조하면, 본 발명과 관련된 다층 퍼셉트론(Multi-Layer Perceptron, MLP, 100)은, 심층 신경망(DNN)의 가장 기본적인 구조로서, 입력층(input layer, 110), 은닉층(hidden layer, 120) 및 출력층(output layer, 130)으로 구성된다.
다층 퍼셉트론(100)은 단일 퍼셉트론의 한계를 극복하기 위해 제안된 인공 신경망 구조이다. 즉, 다층 퍼셉트론(100)은 XOR 게이트(exclusive-OR gate)와 같이 비선형적으로 분리되는 데이터에 대해서도 학습이 가능하도록 제안된 인공 신경망 구조이다. 이를 위해, 다층 퍼셉트론(100)은, 단일 퍼셉트론과 달리, 하나 이상의 은닉층(120)을 더 포함하는 구조를 갖는다.
다층 퍼셉트론(100)의 입력층(110)은 학습 데이터에 해당하는 입력 벡터가 위치하는 층을 의미하고, 출력층(130)은 학습 모델의 최종 결과값이 위치하는 층을 의미한다. 그리고, 은닉층(120)은 입력층(110)과 출력층(130) 사이에 존재하는 모든 층을 의미한다. 은닉층(120)의 개수가 많아질수록 인공 신경망이 ‘깊어졌다(deep)’라고 부르며, 이렇게 충분히 깊어진 인공 신경망을 심층 신경망(DNN)이라 지칭한다.
이러한 다층 퍼셉트론 구조에서, 입력층(110)에 존재하는 노드들은 매개 변수(parameter)와 활성 함수(activation function)를 사용하지 않은 반면, 은닉층(120) 및 출력층(130)에 존재하는 노드들은 매개 변수와 활성 함수를 사용한다. 여기서, 상기 매개 변수는 학습 과정을 통해 자동으로 가변되는 값으로서 가중치(weight)와 편향(bias)을 포함할 수 있다. 가중치는 입력 신호가 결과 출력에 주는 영향도를 조절하는 매개 변수고, 편향은 노드(또는 뉴런)가 얼마나 쉽게 활성화(activation)되느냐를 조정하는 매개 변수다. 활성 함수는 어떠한 신호를 입력 받아 이를 적절히 처리하여 출력해주는 함수를 의미한다. 상기 활성 함수로는 시그모이드(sigmoid) 함수, ReLU(Rectified Linear Unit) 함수, 소프트맥스(softmax) 함수, 항등(identity) 함수 등이 사용될 수 있으며 반드시 이에 제한되지는 않는다.
다층 퍼셉트론(100)은 각 층의 노드들(즉, 뉴런들, nodes) 간에 2차원적으로 연결되는 완전 연결 구조(fully-connected structure)를 갖는다. 이때, 상기 완전 연결 구조는 서로 같은 층에 위치한 노드들 간에는 연결 관계가 존재하지 않으며, 바로 인접한 층에 위치한 노드들 간에만 연결 관계가 존재하는 구조이다.
이와 같은 다층 퍼셉트론(100)의 학습 동작을 간단히 설명하면 다음과 같다. 먼저, 각 층에서의 매개 변수인 가중치(weight)와 편향(bias)의 초기값을 설정한다. 이후, 하나의 학습(훈련) 데이터에 대해 각 층에서의 순입력 함수값을 계산하고 최종적으로 활성 함수(activation function)에 의한 출력값(즉, 결과값)을 계산한다. 여기서, 상기 순입력 함수값은 각 노드의 활성 함수에 입력되는 값을 의미한다. 그 다음, 출력층의 활성 함수에 의한 출력값과 실제값 간의 차이가 허용 오차 이내가 되도록 각 층에서의 가중치 및 편향을 업데이트한다. 마지막으로, 모든 학습 데이터에 대해서 출력층의 활성 함수에 의한 출력값과 실제값 간의 차이가 허용 오차 이내가 되면 학습을 종료한다.
가령, 도 1b에 도시된 바와 같이, 다층 퍼셉트론(100)의 학습 과정은 순전파(feedforward, FF)와 역전파(backpropagation, BP)의 반복 과정으로 정의될 수 있다. 이러한 반복 과정은 출력층(130)에서 계산한 결과값과 실제값 사이의 차이(즉, 오차, error)가 0에 가까워질 때까지 계속될 수 있다.
순전파(FF) 과정은 입력층(110)에서 출력층(130) 방향으로 이동하면서 각 입력에 해당하는 가중치(w)가 곱해지고, 결과적으로 가중치 합으로 계산되어 각 층의 활성 함수로 입력되며, 최종적으로 출력층(130)의 활성 함수에서 결과값이 출력되는 일련의 학습 과정을 일컫는다.
역전파(BP) 과정은 출력층(130)에서 입력층(110) 방향으로 이동하면서 순전파 과정에서 발생한 오차를 줄이기 위해 각 층의 가중치 및 편향을 업데이트하는 일련의 학습 과정을 일컫는다. 상기 역전파(BP) 과정에서 가중치를 결정하는 방법으로는 경사 하강법(Gradient Descent)이 사용될 수 있으며 반드시 이에 제한되지는 않는다.
경사 하강법은 손실 함수(loss function)의 최저 지점을 찾아가는 최적화 기법으로서, 상기 손실 함수의 기울기를 구하여 기울기가 낮은 쪽으로 계속 이동시켜서 최저 지점에 이를 때까지 계속 반복하는 기법이다. 여기서, 상기 손실 함수는 출력층(130)에서 계산한 결과값과 실제값 간의 차이(즉, 오차)를 정의한 함수이다. 상기 손실 함수로는 평균 제곱 오차(Mean Squared Error, MSE) 또는 교차 엔트로피 오차(Cross Entropy Error, CEE)가 사용될 수 있으며 반드시 이에 제한되지는 않는다.
도 2a는 본 발명과 관련된 합성곱 신경망(CNN)의 기본적인 구조를 나타내는 도면이고, 도 2b는 도 2a에 도시된 합성곱 신경망의 학습 과정을 설명하기 위해 참조되는 도면이다.
도 2a 및 도 2b를 참조하면, 본 발명과 관련된 합성곱 신경망(Convolutional Neural Network, CNN, 200)은 입력층(input layer, 210), 하나 이상의 컨벌루션층(convolution layer, 220), 하나 이상의 풀링층(pooling layer, 230), 완전 연결층(Fully connected layer, 240) 및 출력층(output layer, 250)을 포함한다. 여기서, 상기 풀링층(230)은 컨볼루션층(220)에 포함될 수 있다.
합성곱 신경망(200)은 입력 데이터의 특징(feature)을 추출하는 부분과 입력 데이터의 클래스(class)를 분류하는 부분으로 구성된다. 여기서, 특징 추출 부분은 입력층(210), 컨벌루션층(220) 및 폴링층(230)으로 이루어지며, 클래스 분류 부분은 완전 연결층(240) 및 출력층(250)으로 이루어진다.
입력층(210)은 학습 데이터, 즉 훈련 데이터(training data) 및 시험 데이터(test data)가 입력되는 층을 의미한다. 통상, 합성곱 신경망(CNN)에 사용되는 학습 데이터는 영상 데이터(image data) 또는 행렬(matrix) 등과 같은 다차원 데이터일 수 있다.
컨볼루션층(220)은 입력 데이터와 가중치들의 집합체인 필터(filter) 간의 컨볼루션 연산을 통해 입력 데이터의 특징을 추출하는 역할을 수행한다. 상기 컨볼루션층(220)은 입력 데이터의 특징을 추출하는 필터와, 상기 입력 데이터와 필터 간의 컨볼루션 연산 값을 비선형 값으로 변환하는 활성 함수로 이루어진다. 상기 활성 함수로는 ReLU(Rectified Linear Unit) 함수가 사용될 수 있으며 반드시 이에 제한되지는 않는다.
컨볼루션층(220)은 입력 데이터와 다양한 필터 간의 컨볼루션 연산을 통해 복수의 특징 맵들(feature maps)을 출력할 수 있다. 이후, 컨볼루션층(220)은 복수의 특징 맵들에 대해 활성 함수를 적용하여 복수의 활성 맵들(activation maps)을 출력할 수 있다.
풀링층(또는 서브 샘플링층, 230)은 컨볼루션층(220)의 출력 데이터를 입력으로 받아서 출력 데이터(즉, 활성 맵)의 크기를 줄이거나 특정 데이터를 강조하는 역할을 수행한다. 상기 풀링층(230)의 풀링 방식으로는 Max Pooling 방식, Average Pooling 방식 및 Min Pooling 방식이 있으며, 그 중에서 Max Pooling 방식이 가장 많이 사용된다.
완전 연결층(240)은 합성곱 신경망(CNN, 200)의 데이터 타입을 Fully Connected Neural Network 형태로 변경하는 역할을 수행한다. 즉, 완전 연결층(240)은 풀링층(230)의 3차원 출력 값을 1차원 벡터로 평탄화(flattening)하여 일반 신경망 연결처럼 출력층(250)의 모든 노드와 연결시켜주는 역할을 수행한다.
출력층(250)은 입력 데이터의 클래스를 분류한 결과 값을 출력하는 역할을 수행한다. 상기 출력층(250)은 완전 연결층(240)으로부터 입력 받은 값을 0 내지 1 사이의 값으로 정규화하며, 출력 값들의 총합이 항상 1이 되도록 하는 역할을 수행할 수 있다. 이를 위해, 상기 출력층(250)은 소프트맥스(softmax)와 같은 활성 함수를 포함할 수 있다.
이와 같은 구조를 갖는 합성곱 신경망(200)의 학습 동작을 간단히 설명하면 다음과 같다. 먼저, 각 층에서의 매개 변수인 가중치(Weight, W)와 편향(Bias, B)의 초기값을 설정한다. 이후, 하나의 학습(훈련) 데이터에 대해 각 층에서의 순입력 함수값을 계산하고 최종적으로 활성 함수에 의한 출력값(즉, 결과값)을 계산한다. 여기서, 상기 순입력 함수값은 각 층의 활성 함수에 입력되는 값을 의미한다. 그 다음, 출력층의 활성 함수에 의한 출력값과 실제값의 차이가 허용 오차 범위 이내가 되도록 각 층에서의 가중치 및 편향을 업데이트한다. 마지막으로, 모든 학습 데이터에 대해서 출력층의 활성 함수에 의한 출력값과 실제값의 차이가 허용 오차 범위 이내가 되면 학습을 종료한다.
즉, 도 2b에 도시된 바와 같이, 합성곱 신경망(200)의 학습 과정은 순전파(feedforward, FF)와 역전파(backpropagation, BP)의 반복 과정으로 정의될 수 있다. 이러한 반복 과정은 출력층(250)에서의 오차가 0에 가까워질 때까지 계속될 수 있다.
도 3은 본 발명과 관련된 양자 게이트들의 종류를 예시하는 도면이고, 도 4는 도 3의 양자 게이트들을 이용하여 구성된 양자회로의 일 예를 나타내는 도면이다.
도 3 및 도 4를 참조하면, 양자 컴퓨터를 구성하는 양자회로(quantum circuit)는 여러 개의 양자 게이트(quantum gate)로 이루어진다. 양자 컴퓨터의 큐비트는 기존 컴퓨터의 비트와는 다르게 0과 1이 동시에 될 수 있는 상태를 가질 수 있지만, 양자 컴퓨터 또한 연산 등을 위해 사용되어야 하는 만큼 연산 도중에는 특정 상태를 갖추어야 한다. 이를 위해 양자 컴퓨터에는 양자 게이트가 반드시 필요하다.
양자 게이트는 기본적으로 복소수 벡터들에 대한 행렬 곱셈을 통해 연산이 이루어진다. 이는 양자 컴퓨터의 양자적 정보 단위인 큐비트가 2차원 벡터로 표현되기 때문이다.
이러한 양자 게이트의 종류로는 NOT 게이트, Hadamard 게이트, Pauli XYZ 게이트, Phaseshift 게이트(S 게이트, T 게이트), CNOT 게이트, CZ 게이트 및 SWAP 게이트 등이 있다.
NOT 게이트는 기존 컴퓨터의 논리 게이트 중 NOT 게이트와 동일한 게이트로서, 큐비트의 상태를 0이었으면 1로, 1이었으면 0으로 변경하는 게이트이다.
Hadamard 게이트는 0이나 1의 상태를 띄고 있는 큐비트를 중첩 상태로(0과 1이 동시에 존재) 만들어주는 게이트이다. Hadamard 게이트를 행렬로 표현하면 도면의 행렬식과 같이 표현된다.
Pauli 게이트는 총 X, Y, Z로 3가지 종류가 있다. 이는 각각 큐비트를 X, Y, Z 축을 중심으로 회전을 시킨다는 의미이다. 각각 게이트를 행렬로 표현하면 도면의 행렬식과 같이 표현된다.
Phaseshift 게이트는 큐비트의 위상을 변경해주는 게이트이다. 상기 Phaseshift 게이트의 종류로는 S 게이트 및 T 게이트 등이 있으며, 각각에 대한 형렬식은 도면과 같다.
CNOT 게이트 및 CZ 게이트는 양자 컴퓨터에서 한 큐비트가 다른 큐비트에 영향을 끼치는 얽힘 상태를 볼 수 있는 게이트이다. CNOT 게이트는 첫 번째 큐비트가 1인 경우, 두 번째 큐비트에 NOT 게이트 연산을 수행하는 게이트이고, CZ 게이트는 첫 번째 큐비트가 1인 경우, 두 번째 큐비트에 Pauli-Z 게이트 연산을 수행하는 게이트이다.
SWAP 게이트는 양자 컴퓨터에서 두 큐비트가 있을 때, 각각의 상태를 서로 바꾸는 게이트이다. SWAP 게이트를 행렬로 표현하면 도면의 행렬식과 같이 표현된다.
이와 같은 복수의 양자 게이트들을 조합하여 다양한 양자회로를 구성할 수 있다. 일 예로, 도 4에 도시된 바와 같이, 제1 Hadamard 게이트(310), CNOT 게이트(330) 및 제3 Hadamard 게이트(320)를 순차적으로 연결하여 양자회로(300)를 구성할 수 있다.
도 5는 본 발명과 관련된 양자회로의 구조를 개략적으로 나타내는 도면이다. 도 5에 도시된 바와 같이, 본 발명과 관련된 양자회로(400, 500)는 하나 이상의 양자 게이트들에 각각 대응하는 유니터리들(U1~Uj)의 조합으로 구성될 수 있다. 여기서, 이상적인 양자 게이트(즉, 에러가 존재하지 않는 양자 게이트)는 U로 표현될 수 있고, 실질적인 양자 게이트(즉, 에러가 존재하는 양자 게이트)는
Figure pat00001
로 표현될 수 있다.
양자회로(400, 500)의 입력 상태(input state)는 밀도 행렬(density matrix)
Figure pat00002
로 정의될 수 있고, 출력 상태(output state)는 j로 정의될 수 있으며, 해당 양자회로(400, 500)의 입력과 출력 사이는 양자 게이트들에 대응하는 유니터리들(unitary)의 조합으로 정의될 수 있다.
이상적인 양자회로(400)의 출력을 측정한 결과 값을 나타내는 출력 결과 확률(measurement outcome probability without error,
Figure pat00003
)은 아래 수학식 1과 같이 정의될 수 있다.
Figure pat00004
Figure pat00005
여기서,
Figure pat00006
는 양자회로의 입력 상태, U는 이상적인 유니터리 변환,
Figure pat00007
는 measurement operator임.
한편, 실질적인 양자회로(500)의 출력을 측정한 결과 값을 나타내는 출력 결과 확률(measurement outcome probability with error,
Figure pat00008
)은 아래 수학식 2와 같이 정의될 수 있다.
Figure pat00009
Figure pat00010
여기서,
Figure pat00011
는 양자회로의 입력 상태,
Figure pat00012
는 실질적인 양자 프로세스,
Figure pat00013
는 measurement operator임.
실질적인 양자회로(500)에 존재하는 에러는 실질적인 양자회로(500)의 제1 측정 결과 확률(
Figure pat00014
)과 이상적인 양자회로(400)의 제2 측정 결과 확률(
Figure pat00015
)을 기반으로 정량화될 수 있다. 즉, 양자회로의 에러 값(
Figure pat00016
)은 아래 수학식 3과 같이 계산될 수 있다.
Figure pat00017
이처럼, 각각의 양자 게이트에는 고유의 에러가 존재하기 때문에, 복수의 양자 게이트들로 구성된 양자회로에는 각 양자 게이트의 에러가 누적된 에러가 존재한다. 그리고, 양자회로에 존재하는 에러는 양자 게이트들의 구성뿐만 아니라 양자 게이트들의 조합 순서에 따라 달라지게 된다. 따라서, 양자 게이트들의 구성 및 조합 순서를 고려하여 양자회로에 존재하는 에러를 보정할 필요가 있다. 이하, 본 명세서에서는, 미리 학습된 딥러닝 모델을 이용하여 양자회로에 존재하는 에러를 효과적으로 보정할 수 있는 방안에 대해 상세히 설명하도록 한다.
도 6은 본 발명의 일 실시 예에 따른 양자회로 에러 보정 방법을 설명하는 순서도이다.
도 6을 참조하면, 본 발명의 일 실시 예에 따른 양자회로 에러 보정 장치는 양자 컴퓨터 내부에 설치되어, 해당 양자 컴퓨터를 구성하는 양자회로들의 에러를 보정하는 동작을 수행할 수 있다.
좀 더 구체적으로, 양자회로 에러 보정 장치는 양자 컴퓨터를 구성하는 양자회로들의 에러 보정을 요청하는 명령이 사용자 등으로부터 수신되는지를 확인할 수 있다(S610).
상기 610 단계의 확인 결과, 양자회로 에러 보정을 요청하는 명령이 사용자 등으로부터 수신된 경우, 양자회로 에러 보정 장치는 에러 보정의 대상이 되는 양자회로(이하, '보정 대상 양자회로'라 칭함)를 검출할 수 있다(S620). 여기서, 상기 보정 대상 양자회로는 양자 컴퓨터를 구성하는 복수의 양자회로들 중 적어도 하나일 수 있다. 한편, 실시 형태에 따라, 상술한 610 단계는 생략 가능하도록 구성될 수 있다.
이후, 양자회로 에러 보정 장치는 미리 학습된 딥러닝 모델을 호출할 수 있다(S630). 이때, 상기 딥러닝 모델로는 DNN 모델 또는 하이브리드 CNN 모델 등이 사용될 수 있으며 반드시 이에 제한되지는 않는다.
양자회로 에러 보정 장치는 보정 대상 양자회로에 대응하는 딥러닝 모델의 입력 데이터를 검출할 수 있다. 상기 입력 데이터는 해당 양자회로를 구성하는 1-큐비트 게이트 개수 정보, 해당 양자회로를 구성하는 2-큐비트 게이트 개수 정보, 해당 양자회로의 에러 정보, 해당 양자회로의 측정 결과 확률 정보 등을 포함할 수 있다.
양자회로 에러 보정 장치는 미리 학습된 딥러닝 모델을 기반으로 해당 양자회로에 존재하는 에러를 완화하기 위한 에러 보정 값(또는 에러 보정 행렬,
Figure pat00018
)을 추론할 수 있다(S640). 즉, 양자회로 에러 보정 장치는 상기 검출된 입력 데이터를 미리 학습된 딥러닝 모델에 입력하여 해당 양자회로에 존재하는 에러를 완화하기 위한 에러 보정 값(
Figure pat00019
)을 추론할 수 있다.
양자회로 에러 보정 장치는 딥러닝 모델을 통해 추론된 에러 보정 값(
Figure pat00020
)을 이용하여 해당 양자회로에 존재하는 에러를 보정할 수 있다(S650). 즉, 양자회로 에러 보정 장치는 실질적인 양자회로의 출력을 측정한 결과 값(
Figure pat00021
)에서 에러 보정 값(
Figure pat00022
)을 차감하여 해당 양자회로에 존재하는 에러를 보정할 수 있다.
이상 상술한 바와 같이, 본 발명의 일 실시 예에 따른 양자회로 에러 보정 방법은 미리 학습된 딥러닝 모델을 이용하여 양자회로에 존재하는 에러를 간편하게 보정함으로써, 양자회로 에러를 보정하기 위한 양자 게이트들을 별도로 추가할 필요가 없을 뿐만 아니라, 양자회로 에러 보정을 위한 연산 과정이 간단하여 양자회로에 존재하는 에러를 정정하는 데 소요되는 시간과 에너지를 절약할 수 있다. 상기 딥러닝 모델로는 심층 신경망(DNN) 모델 또는 하이브리드 합성곱 신경망(H-CNN) 모델이 사용될 수 있다. 먼저, 심층 신경망(DNN) 모델을 이용하여 양자회로의 에러를 보정하는 방법에 대해 상세히 설명하도록 한다.
도 7은 본 발명의 일 실시 예에 따른 DNN 모델의 구조를 나타내는 도면이다.
도 7을 참조하면, 본 발명의 일 실시 예에 따른 DNN 모델(700)은, N 큐비트 시스템의 양자회로 에러를 보정하기 위한 학습 모델로서, 하나의 입력층(input layer, 710)과, 두 개의 은닉층(hidden layer, 720, 730)과, 하나의 출력층(output layer, 740)을 포함할 수 있다.
DNN 모델(700)의 입력층(710)에 존재하는 복수의 노드들로 입력되는 데이터는 양자회로를 구성하는 1-큐비트 게이트 개수 정보(G1(a:b)), 양자회로를 구성하는 2-큐비트 게이트 개수 정보(G2(a:b)), 양자회로의 에러 정보(
Figure pat00023
), 양자회로의 측정 결과 확률 정보(
Figure pat00024
)를 포함할 수 있다. 여기서, a와 b는 양자회로의 깊이(depth)를 나타낸다. 따라서, G1(a:b)는 양자회로의 깊이 a와 깊이 b 사이에 위치하는 양자 게이트들의 1-큐비트 게이트 개수를 의미하고, G2(a:b)는 양자회로의 깊이 a와 깊이 b 사이에 위치하는 양자 게이트들의 2-큐비트 게이트 개수를 의미한다.
가령, 도 9에 도시된 바와 같이, DNN 모델(700)의 학습 대상 또는 보정 대상이 되는 양자회로(900)는 복수의 양자 게이트들에 대응하는 복수의 유니터리들(U1~UK)의 조합으로 표현될 수 있다. 이러한 양자회로 구조에서, DNN 모델(700)의 입력층(710)으로 입력되는 1-큐비트 게이트의 개수 정보(G1)는 [G11 ?? G1N]로 표현될 수 있고, 2-큐비트 게이트의 개수 정보(G2)는 [G21 ?? G2N]로 표현될 수 있다. 그리고, DNN 모델(700)의 입력층(710)으로 입력되는 양자회로의 에러 정보(
Figure pat00025
)는 양자회로의 깊이 a에 위치하는 유니터리(Ua)의 에러로 정의될 수 있고, 양자회로의 측정 결과 확률 정보(
Figure pat00026
)는 양자회로의 깊이 b에 위치하는 유니터리(Ub)의 측정 결과 확률로 정의될 수 있다.
DNN 모델(700)의 입력층(710)은 총 2N+2N+1(=N+N+2N+2N)개의 노드들을 포함할 수 있다. 여기서, N 개의 노드들은 1-큐비트 게이트의 개수를 입력하기 위한 노드들이고, N개의 노드들은 2-큐비트 게이트의 개수를 입력하기 위한 노드들이고, 2N 개의 노드들은 양자회로의 에러(
Figure pat00027
)를 입력하기 위한 노드들이며, 2N 개의 노드들은 양자회로의 측정 결과 확률(
Figure pat00028
)을 입력하기 위한 노드들이다.
DNN 모델(700)의 출력층(740)에 존재하는 복수의 노드들을 통해 출력되는 데이터는 양자회로에 존재하는 에러를 경감(또는 완화)하기 위한 에러 보정 값(
Figure pat00029
)을 포함할 수 있다. 상기 출력층(740)은 2N 개의 노드들을 포함할 수 있다.
DNN 모델(700)의 출력층(740)에 존재하는 복수의 노드들로 입력되는 데이터는 양자회로의 에러 정보(
Figure pat00030
)를 포함할 수 있다. 여기서, 상기 에러 정보(
Figure pat00031
)는 양자회로의 깊이 b에 위치하는 유니터리(Ub)의 에러로 정의될 수 있다. 그리고, 상기 에러 정보(
Figure pat00032
)는 해당 모델(700)의 학습 과정에서 손실 함수(loss function)를 계산하기 위해 사용될 수 있다.
DNN 모델(700)로 입력되는 데이터들은 해당 모델의 독립 변수로 설정될 수 있고, 상기 DNN 모델(700)로부터 출력되는 데이터는 해당 모델의 종속 변수로 설정될 수 있다.
DNN 모델(700)의 은닉층(720, 730)에 존재하는 노드들에 사용되는 매개 변수는 가중치(weight)와 편향(bias)을 포함할 수 있다. 또한, DNN 모델(700)의 은닉층(720, 730)에 존재하는 노드들에 사용되는 활성 함수(activation function)는 시그모이드 함수(sigmoid function)일 수 있으며 반드시 이에 제한되지는 않는다. 따라서, 실시 형태에 따라, 상기 시그모이드 함수 대신 ReLU 함수, 소프트맥스 함수 또는 항등 함수 등이 사용될 수 있다.
DNN 모델(700)의 손실 함수(loss function, ERMS)는 아래 수학식 4와 같이 정의될 수 있다.
Figure pat00033
여기서,
Figure pat00034
은 양자회로의 실제 에러 값(
Figure pat00035
)에서 에러 보정 값(즉, 에러 추정 값,
Figure pat00036
)을 차감한 값으로서, 해당 양자회로의 최종 에러 값을 나타내며, 해당 값은 아래 수학식 5와 같이 정의될 수 있다.
Figure pat00037
DNN 모델(700)은 손실 함수(loss function)의 최저 지점을 찾아가는 최적화 기법을 이용하여 은닉층(720, 730)에 존재하는 노드들의 가중치(weight) 및 편향(bias)을 업데이트하는 학습 과정을 거치게 된다. 이때, 상기 최적화 기법으로는 대표적으로 경사 하강법(Gradient Descent)이 사용될 수 있으며 반드시 이에 제한되지는 않는다.
즉, DNN 모델(700)은 손실 함수를 최소화하는 에러 보정 값을 찾는 것을 목표로 한다. 따라서, DNN 모델(700)의 목표 함수(F)는 아래 수학식 6과 같이 정의될 수 있다.
Figure pat00038
한편, 본 실시 예에서는, 상기 DNN 모델(700)이 두 개의 은닉층(720, 730)을 구비하는 것을 예시하고 있으나 반드시 이에 제한되지는 않으며, 그 보다 더 적거나 혹은 더 많은 개수의 은닉층을 구비할 수 있음은 당업자에게 자명할 것이다.
도 8은 본 발명의 다른 실시 예에 따른 DNN 모델의 구조를 나타내는 도면이다.
도 8을 참조하면, 본 발명의 다른 실시 예에 따른 DNN 모델(800)은, N 큐비트 시스템의 양자회로 에러를 보정하기 위한 학습 모델로서, 하나의 입력층(input layer, 810)과, 세 개의 은닉층(hidden layer, 820, 830, 840)과, 하나의 출력층(output layer, 830)을 포함할 수 있다.
본 발명에 따른 DNN 모델(800)은, 상술한 도 7의 DNN 모델(700)과 달리, 하나의 은닉층(820)을 더 포함할 수 있다. 즉, 상기 DNN 모델(800)은 특정 입력 데이터와 연결된 노드들에 대해서만 배치 정규화(Batch Normalization, BN)를 수행하는 은닉층(820)을 더 포함할 수 있다. 여기서, 상기 배치 정규화(BN)는 학습 과정에서 각 배치 단위 별로 데이터가 다양한 분포를 가지더라도 각 배치 별로 평균과 분산을 이용해 정규화하는 것을 의미한다.
DNN 모델(800)의 입력층(810)으로 입력되는 데이터 중 양자회로의 게이트 개수는 정수 값을 갖는 반면, 양자회로의 에러 값(
Figure pat00039
)과 측정 결과 확률(
Figure pat00040
)은 0과 1 사이의 값을 갖는다. 따라서, 정수 값을 갖는 입력 데이터들(G1(a:b), G2(a:b))과 연결된 제1 은닉층(820)의 노드들에 대해 배치 정규화를 수행함으로써, 상기 제1 은닉층(820)과 연결된 제2 은닉층(830)의 입력 데이터 분포를 0과 1 사이의 값으로 균일화할 수 있다.
이와 같은 구조를 갖는 DNN 모델(700, 800)에 대해 기계 학습을 수행할 수 있다. 좀 더 구체적으로, 미리 결정된 학습 집합(training set)에 속하는 학습 대상 양자회로를 선정하고, 상기 선정된 학습 대상 양자회로를 구성하는 양자 게이트들을 분석하여 DNN 모델에 입력할 데이터를 검출할 수 있다. 이때, 상기 DNN 모델에 입력할 데이터는 학습 대상 양자회로의 1-큐비트 게이트 개수 정보(G1(a:b)), 2-큐비트 게이트 개수 정보(G2(a:b)), 에러 정보(
Figure pat00041
) 및 측정 결과 확률 정보(
Figure pat00042
)를 포함할 수 있다.
입력 데이터의 검출이 완료되면, 상기 검출된 입력 데이터를 DNN 모델에 입력하여 해당 DNN 모델을 학습시킬 수 있다. 이때, 상기 검출된 입력 데이터의 변수(a, b, i)를 순차적으로 변경해가면서 해당 DNN 모델을 반복적으로 학습시킬 수 있다.
해당 양자회로에 대한 학습이 완료되면, 미리 결정된 학습 집합에 속하는 다른 양자회로를 순차적으로 선정하여 동일한 학습 과정을 수행할 수 있다. 이러한 학습 과정은 해당 학습 집합에 포함된 모든 양자회로에 대해 반복적으로 수행될 수 있다.
도 10은 학습 대상 양자회로의 선정과, 상기 선정된 학습 대상 양자회로를 기반으로 DNN 모델을 학습하는 과정을 설명하기 위해 참조되는 도면이다. 도 10에 도시된 바와 같이, 학습 대상 양자회로들을 선정하고, 상기 선정된 학습 대상 양자회로들을 기반으로 양자회로 에러를 보정(완화)하기 위한 DNN 모델을 학습시킬 수 있다. 이때, 상기 학습 대상 양자회로들은 미리 결정된 제1 개수 이하의 양자 게이트들을 구비하는 양자회로들일 수 있다. 가령, 상기 학습 대상 양자회로들은 10개 이하의 양자 게이트들을 갖는 양자회로들일 수 있다.
도 11은 보정 대상 양자회로의 종류와, 미리 학습된 DNN 모델을 이용하여 상기 보정 대상 양자회로의 에러를 보정하는 과정을 설명하기 위해 참조되는 도면이다. 도 11에 도시된 바와 같이, 보정 대상 양자회로(또는 추정 대상 양자회로)를 선택하고, 상기 선택된 양자회로를 미리 학습된 DNN 모델에 입력하여 해당 양자회로의 에러 보정 값을 추론하며, 상기 추론된 에러 보정 값을 기반으로 해당 양자회로의 에러를 보정할 수 있다.
보정 대상 양자회로들은, 학습 대상 양자회로들의 양자 게이트 구성과 동일한 양자 게이트 구성을 갖는 양자회로들(U1~Uk), 상기 학습 대상 양자회로들의 양자 게이트 구성보다 더 많은 개수의 양자 게이트 구성을 갖는 양자회로들(U1~Uk+l), 상기 학습 대상 양자회로들의 양자 게이트 구성과 다른 양자 게이트 구성을 갖는 양자회로들(V1~Vj)을 포함할 수 있다. 이때, 상기 보정 대상 양자회로들은 미리 결정된 제2 개수 이하의 양자 게이트들을 구비하는 양자회로들일 수 있다. 가령, 상기 보정 대상 양자회로들은 20개 이하의 양자 게이트를 갖는 양자회로들일 수 있다.
이처럼, 본 발명은 상대적으로 깊이가 짧은 양자 게이트 구성을 갖는 양자회로들을 기반으로 DNN 모델을 학습시키고, 상대적으로 깊이가 긴 양자 게이트 구성을 갖는 양자회로들에 대해서는 미리 학습된 DNN 모델을 적용하여 양자회로들의 에러를 보정하게 된다.
한편, 상술한 양자회로 에러 보정 방법은 심층 신경망(DNN) 모델에 입력되는 데이터들의 개수가 많아 DNN 모델을 학습하기 위한 연산 과정이 다소 복잡한 측면이 있다. 이러한 문제는 하이브리드 CNN 모델을 이용한 양자회로 에러 보정 방법을 통해 해결될 수 있다. 이하에서는, 하이브리드 CNN 모델을 이용하여 양자회로의 에러를 보정하는 방법에 대해 상세히 설명하도록 한다.
도 12a 및 도 12b는 본 발명의 일 실시 예에 따른 하이브리드 CNN 모델의 구조와, 해당 모델의 입력층 및 출력층에 입력되는 학습 데이터를 설명하기 위해 참조되는 도면이다.
도 12a 및 도 12b를 참조하면, 본 발명의 일 실시 예에 따른 하이브리드 CNN 모델(1200)은 심층 신경망(DNN) 알고리즘에 합성곱 신경망(CNN) 알고리즘을 결합하여 양자회로 에러 보정 성능을 향상시킨 학습 모델이다. 상기 H-CNN 모델(1200)은, N 큐비트 시스템의 양자회로 에러를 보정하기 위한 학습 모델로서, 입력층(input layer, 1210), 하나 이상의 은닉층(hidden layer, 1220) 및 출력층(output layer, 1230)을 포함할 수 있다. 여기서, 상기 입력층(1230)은 입력 데이터 중 일부를 전 처리하기 위한 하나 이상의 컨볼루션층, 풀링층 및 완전 연결층을 포함할 수 있다.
H-CNN 모델(1200)의 입력층(1210)에 존재하는 복수의 노드들로 입력되는 데이터는 양자회로의 큐비트 i와 큐비트 j 사이의 게이트 개수를 나타내는 게이트 행렬 정보(G'ij)), 양자회로의 제1 로컬 에러 정보(
Figure pat00043
), 양자회로의 제2 로컬 에러 정보(
Figure pat00044
), 양자회로의 타겟 상태 정보(t), 양자회로의 타겟 측정 결과 확률 정보(
Figure pat00045
)를 포함할 수 있다. 여기서, a와 b는 양자회로의 깊이(depth)를 나타낸다.
가령, 도 12a에 도시된 바와 같이, H-CNN 모델(1200)의 학습 대상 또는 보정 대상이 되는 양자회로(1300)는 복수의 양자 게이트들에 대응하는 복수의 유니터리들(U1~UK)의 조합으로 표현될 수 있다. 이러한 양자회로 구조에서, H-CNN 모델(1200)의 입력층(1210)으로 입력되는 양자회로의 제1 로컬 에러 정보(
Figure pat00046
)는 a번째 깊이에 위치하는 유니터리(Ua)의 로컬 에러로 정의될 수 있고, 양자회로의 제2 로컬 에러 정보(
Figure pat00047
)는 b번째 깊이에 위치하는 유니터리(Ub)의 로컬 에러로 정의될 수 있다. 그리고, 양자회로의 타겟 상태 정보(t)는 2N개의 큐비트 상태 중 어느 하나의 상태를 나타내는 비트 정보로 정의될 수 있고, 양자회로의 타겟 측정 결과 확률 정보(
Figure pat00048
)는 b 번째 깊이에 위치하는 유니터리(Ub)의 타겟 큐비트 상태의 측정 결과 확률로 정의될 수 있다.
H-CNN 모델(1200)의 입력층(1210)으로 입력되는 게이트 행렬(G'i, j)은 양자회로의 큐비트 i와 큐비트 j 사이에 존재하는 게이트들의 개수를 나타내는 행렬로서, N*N 행렬로 정의될 수 있다. 여기서, 상기 게이트 행렬(G'i, j)은 하나 이상의 컨볼루션층, 풀링층 및 완결 연결층을 통해 전 처리된 후 입력층(1210)으로 입력될 수 있다. 가령, 도 12b에 도시된 바와 같이, 컨볼루션층은 입력 데이터(즉, G'i, j)와 하나 이상의 필터 간의 컨볼루션 연산을 통해 복수의 특징 맵들(feature maps)을 생성하고, 상기 특징 맵들에 대해 활성 함수를 적용하여 복수의 활성 맵들(activation maps)을 생성할 수 있다. 이후, 풀링층은 컨볼루션층의 출력 데이터를 입력으로 받아서 출력 데이터(즉, 활성 맵)의 크기를 줄이거나 특정 데이터를 강조할 수 있다. 완전 연결층은 해당 CNN 알고리즘의 데이터 타입을 Fully Connected Neural Network 형태로 변경할 수 있다. 상기 완결 연결층의 출력 데이터는 입력층(1210)으로 입력될 수 있다. 이처럼, H-CNN 모델(1200)은 CNN 알고리즘을 이용하여 게이트 행렬(G'i, j)의 특징을 추출한 다음 해당 특징을 입력층(1210)으로 입력할 수 있다.
H-CNN 모델(1200)의 입력층(1210)은 복수 개의 노드들을 포함할 수 있다. 여기서, N개의 노드들은 양자회로의 제1 로컬 에러 정보(
Figure pat00049
)를 입력하기 위한 노드들이고, N개의 노드들은 양자회로의 제2 로컬 에러 정보(
Figure pat00050
)를 입력하기 위한 노드들이고, N개의 노드들은 양자회로의 타겟 상태 정보(t)를 입력하기 위한 노드들이며, 1개의 노드는 양자회로의 타겟 측정 결과 확률 정보(
Figure pat00051
)를 입력하기 위한 노드이다.
H-CNN 모델(1200)은 양자회로의 에러 정보(가령,
Figure pat00052
)를 입력층(1210)에 로컬(local) 단위로 입력할 수 있다. 즉, H-CNN 모델(1200)은 양자회로의 에러 정보를 큐비트 단위로 입력할 수 있다. 이에 따라, H-CNN 모델(1200)은, 상술한 DNN 모델(700)과 달리, N개의 데이터만을 학습 모델에 입력함으로써, 해당 학습 모델의 연산 과정을 간소화할 수 있다.
H-CNN 모델(1200)의 출력층(1240)에 존재하는 노드를 통해 출력되는 데이터는 양자회로에 존재하는 에러를 경감(또는 완화)하기 위한 에러 보정 값(
Figure pat00053
)을 포함할 수 있다. 상기 출력층(540)은 1 개의 노드를 포함할 수 있다.
H-CNN 모델(1200)의 출력층(1240)에 존재하는 노드로 입력되는 데이터는 양자회로의 타겟 에러 정보(
Figure pat00054
)를 포함할 수 있다. 여기서, 상기 타겟 에러 정보(
Figure pat00055
)는 양자회로의 b 번째 깊이에 위치하는 유니터리(Ub)의 타겟 큐비트 상태의 에러로 정의될 수 있다. 상기 타겟 에러 정보(
Figure pat00056
)는 해당 모델의 학습 과정에서 손실 함수(loss function)를 계산하기 위해 사용될 수 있다.
H-CNN 모델(1200)로 입력되는 데이터들은 해당 모델의 독립 변수로 설정될 수 있고, H-CNN 모델(1200)로부터 출력되는 데이터는 해당 모델의 종속 변수로 설정될 수 있다.
H-CNN 모델(1200)의 은닉층(1220)에 존재하는 노드들에 사용되는 매개 변수는 가중치(weight)와 편향(bias)을 포함할 수 있다. 또한, H-CNN 모델(1200)의 은닉층(1220)에 존재하는 노드들에 사용되는 활성 함수는 시그모이드 함수(sigmoid function)일 수 있으며 반드시 이에 제한되지는 않는다.
H-CNN 모델(1200)의 손실 함수(loss function, ERMS)는 아래 수학식 7과 같이 정의될 수 있다.
Figure pat00057
여기서,
Figure pat00058
은 양자회로의 실제 에러 값(
Figure pat00059
)에서 에러 보정 값(
Figure pat00060
)을 차감한 값으로서, 상기 양자회로의 최종 에러 값을 나타내며, 해당 값은 아래 수학식 8과 같이 정의될 수 있다.
Figure pat00061
H-CNN 모델(1200)은 손실 함수(loss function)의 최저 지점을 찾아가는 최적화 기법을 이용하여 은닉층(1220)에 존재하는 노드들의 가중치(weight) 및 편향(bias)을 업데이트하는 학습 과정을 거치게 된다. 이때, 상기 최적화 기법으로는 대표적으로 경사 하강법(Gradient Descent)이 사용될 수 있으며 반드시 이에 제한되지는 않는다.
도 13은 학습 대상 양자회로의 선정과, 상기 선정된 학습 대상 양자회로를 기반으로 H-CNN 모델을 학습하는 과정을 설명하기 위해 참조되는 도면이다. 도 13에 도시된 바와 같이, 학습 대상의 양자회로들을 선정하고, 상기 선정된 학습 대상 양자회로들을 기반으로 양자회로 에러를 보정(완화)하기 위한 H-CNN 모델을 학습시킬 수 있다. 이때, 상기 학습 대상의 양자회로들은 미리 결정된 개수 이하의 양자 게이트들을 구비하는 양자회로들일 수 있다. 가령, 상기 학습 대상의 양자회로들은 10개 이하의 양자 게이트들을 갖는 양자회로들일 수 있다.
도 14는 보정 대상 양자회로의 종류와, 미리 학습된 H-CNN 모델을 이용하여 상기 보정 대상 양자회로의 에러를 보정하는 과정을 설명하기 위해 참조되는 도면이다. 도 14에 도시된 바와 같이, 보정 대상 양자회로(또는 추론 대상 양자회로)를 선택하고, 상기 선택된 양자회로를 미리 학습된 H-CNN 모델에 입력하여 해당 양자회로의 에러 보정 값을 추론하며, 상기 추론된 에러 보정 값을 기반으로 해당 양자회로의 에러를 보정할 수 있다.
보정 대상 양자회로들은, 학습 대상 양자회로들의 양자 게이트 구성과 동일한 양자 게이트 구성을 갖는 양자회로들(U1~Uk), 상기 학습 대상 양자회로들의 양자 게이트 구성보다 더 많은 개수의 양자 게이트 구성을 갖는 양자회로들(U1~Uk+l), 상기 학습 대상 양자회로들의 양자 게이트 구성과 다른 양자 게이트 구성을 갖는 양자회로들(V1~Vj)을 포함할 수 있다. 이때, 상기 보정 대상 양자회로들은 미리 결정된 개수 이하의 양자 게이트들을 구비하는 양자회로들일 수 있다. 가령, 상기 보정 대상 양자회로들은 20개 이하의 양자 게이트를 갖는 양자회로들일 수 있다.
이처럼, 본 발명은 상대적으로 깊이가 짧은 양자 게이트 구성을 갖는 양자회로들을 기반으로 H-CNN 모델을 학습시키고, 상대적으로 깊이가 긴 양자 게이트 구성을 갖는 양자회로들에 대해서는 미리 학습된 H-CNN 모델을 적용하여 양자회로들의 에러를 보정하게 된다.
도 15는 본 발명의 일 실시 예에 따른 컴퓨팅 장치의 구성 블록도이다.
도 15를 참조하면, 본 발명의 일 실시 예에 따른 컴퓨팅 장치(1500)는 적어도 하나의 프로세서(1510), 컴퓨터 판독가능 저장매체(1520) 및 통신 버스(1530)를 포함한다. 상기 컴퓨팅 장치(1500)는 상술한 양자회로 에러 보정 장치 또는 상기 양자회로 에러 보정 장치에 포함되는 하나 이상의 컴포넌트일 수 있다.
프로세서(1510)는 컴퓨팅 장치(1500)로 하여금 앞서 언급된 예시적인 실시 예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(1510)는 컴퓨터 판독가능 저장매체(1520)에 저장된 하나 이상의 프로그램들(1525)을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(1510)에 의해 실행되는 경우 컴퓨팅 장치(1500)로 하여금 예시적인 실시 예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독가능 저장매체(1520)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독가능 저장매체(1520)에 저장된 프로그램(1525)은 프로세서(1510)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시 예에서, 컴퓨터 판독가능 저장매체(1520)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(1500)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(1530)는 프로세서(1510), 컴퓨터 판독가능 저장매체(1520)를 포함하여 컴퓨팅 장치(1500)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(1500)는 또한 하나 이상의 입출력 장치(1550)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(1540) 및 하나 이상의 네트워크 통신 인터페이스(1560)를 포함할 수 있다. 입출력 인터페이스(1540) 및 네트워크 통신 인터페이스(1560)는 통신 버스(1530)에 연결된다.
입출력 장치(1550)는 입출력 인터페이스(1540)를 통해 컴퓨팅 장치(1500)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(1550)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(1550)는 컴퓨팅 장치(1500)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(1500)의 내부에 포함될 수도 있고, 컴퓨팅 장치(1500)와는 구별되는 별개의 장치로 컴퓨팅 장치(1500)와 연결될 수도 있다.
전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
700: DNN 모델 1200: H-CNN 모델
710/1210: 입력층 720/730/1220: 은닉층
740/1230: 출력층 1500: 컴퓨팅 장치
1510: 프로세서 1520: 컴퓨터 판독가능 저장매체
1530: 통신 버스

Claims (15)

  1. 양자 컴퓨터에서의 양자회로 에러 보정 방법에 있어서,
    상기 양자 컴퓨터를 구성하는 복수의 양자회로들 중 보정 대상의 양자회로를 검출하는 단계;
    상기 복수의 양자회로들의 에러 보정을 위해 미리 학습된 딥러닝 모델을 호출하는 단계;
    상기 호출된 딥러닝 모델을 이용하여 상기 검출된 양자회로의 에러 보정 값을 추론하는 단계; 및
    상기 추론된 에러 보정 값을 기반으로 상기 검출된 양자회로의 에러를 보정하는 단계를 포함하는 양자회로 에러 보정 방법.
  2. 제1항에 있어서,
    상기 검출된 양자회로에 대응하는 딥러닝 모델의 입력 데이터를 검출하는 단계를 더 포함하는 양자회로 에러 보정 방법.
  3. 제2항에 있어서, 상기 추론 단계는,
    상기 검출된 입력 데이터를 상기 딥러닝 모델에 입력하여 상기 에러 보정 값을 추론하는 것을 특징으로 하는 양자회로 에러 보정 방법.
  4. 제1항에 있어서, 상기 보정 단계는,
    상기 검출된 양자회로의 실제 출력을 측정한 결과 값에서 상기 추론된 에러 보정 값을 차감하여 해당 양자회로에 존재하는 에러를 보정하는 것을 특징으로 하는 양자회로 에러 보정 방법.
  5. 제1항에 있어서,
    각각의 양자회로는 복수의 양자 게이트들에 대응하는 복수의 유니터리들(Unitary)의 조합으로 구성되는 것을 특징으로 하는 양자회로 에러 보정 방법.
  6. 제5항에 있어서,
    상기 딥러닝 모델은 심층 신경망(Deep neural network, DNN) 모델 또는 하이브리드 합성곱 신경망(Hybrid Convolutional Neural Network, H-CNN) 모델을 포함하는 것을 특징으로 하는 양자회로 에러 보정 방법.
  7. 제6항에 있어서, 상기 딥러닝 모델이 DNN 모델인 경우,
    상기 DNN 모델의 독립 변수는, 상기 양자회로의 깊이 a와 깊이 b 사이에 위치하는 유니터리들의 1-큐비트 게이트 개수 정보(G1(a:b)), 양자회로의 깊이 a와 깊이 b 사이에 위치하는 유니터리들의 2-큐비트 게이트 개수 정보(G2(a:b)), 양자회로의 깊이 a에 위치하는 유니터리의 에러 정보(
    Figure pat00062
    ) 및 양자회로의 깊이 b에 위치하는 유니터리의 측정 결과 확률 정보(
    Figure pat00063
    ) 중 적어도 하나를 포함하는 것을 특징으로 하는 양자회로 에러 보정 방법.
  8. 제7항에 있어서,
    상기 DNN 모델의 종속 변수는 양자회로의 깊이 b에 위치하는 유니터리의 에러 보정 정보(
    Figure pat00064
    )를 포함하는 것을 특징으로 하는 양자회로 에러 보정 방법.
  9. 제8항에 있어서,
    상기 양자회로의 깊이 b에 위치하는 유니터리의 에러 정보(
    Figure pat00065
    )는, 상기 DNN 모델의 학습 과정에서 손실 함수(loss function)를 계산하기 위해 사용되는 것을 특징으로 하는 양자회로 에러 보정 방법.
  10. 제6항에 있어서, 상기 딥러닝 모델이 H-CNN 모델인 경우,
    상기 H-CNN 모델의 독립 변수는 양자회로의 큐비트 i와 큐비트 j 사이의 게이트 개수를 나타내는 게이트 행렬 정보(G'ij), 양자회로의 깊이 a에 위치하는 유니터리의 제1 로컬 에러 정보(
    Figure pat00066
    ), 양자회로의 깊이 b에 위치하는 유니터리의 제2 로컬 에러 정보(
    Figure pat00067
    ), 양자회로의 타겟 상태 정보(t), 양자회로의 깊이 b에 위치하는 유니터리의 타겟 측정 결과 확률 정보(
    Figure pat00068
    )를 포함하는 것을 특징으로 하는 양자회로 에러 보정 방법.
  11. 제10항에 있어서,
    상기 H-CNN 모델의 학습 과정에서, 상기 게이트 행렬 정보(G'ij)는 하나 이상의 컨볼루션층, 풀링층 및 완결 연결층을 통해 전 처리되어 상기 H-CNN 모델의 입력층으로 입력되는 것을 특징으로 하는 양자회로 에러 보정 방법.
  12. 제10항에 있어서,
    상기 H-CNN 모델의 종속 변수는 양자회로의 깊이 b에 위치하는 유니터리의 타겟 에러 정보(
    Figure pat00069
    )를 포함하는 것을 특징으로 하는 양자회로 에러 보정 방법.
  13. 제12항에 있어서,
    상기 양자회로의 깊이 b에 위치하는 유니터리의 타겟 에러 정보(
    Figure pat00070
    )는, 상기 H-CNN 모델의 학습 과정에서 손실 함수(loss function)를 계산하기 위해 사용되는 것을 특징으로 하는 양자회로 에러 보정 방법.
  14. 제1항 내지 제13항 중 어느 하나의 항에 따른 방법이 컴퓨터 상에서 실행될 수 있도록 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
  15. 양자 컴퓨터를 구성하는 복수의 양자회로들의 에러 보정을 위해 미리 학습된 딥러닝 모델을 저장하는 메모리; 및
    상기 복수의 양자회로들 중 보정 대상의 양자회로를 검출하고, 상기 메모리에 저장된 딥러닝 모델을 이용하여 상기 검출된 양자회로의 에러 보정 값을 추론하며, 상기 추론된 에러 보정 값을 기반으로 상기 검출된 양자회로의 에러를 보정하는 프로세서를 포함하는 양자회로 에러 보정 장치.
KR1020210027981A 2020-10-08 2021-03-03 양자회로 에러 보정 방법 및 그 장치 KR102669448B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/493,091 US20220114047A1 (en) 2020-10-08 2021-10-04 Method for mitigating error of quantum circuit and apparatus thereof
EP21201624.0A EP3982304A1 (en) 2020-10-08 2021-10-08 Method for mitigating error of quantum circuit and apparatus thereof

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR1020200130044 2020-10-08
KR20200130044 2020-10-08
KR1020200175727 2020-12-15
KR20200175727 2020-12-15

Publications (2)

Publication Number Publication Date
KR20220047128A true KR20220047128A (ko) 2022-04-15
KR102669448B1 KR102669448B1 (ko) 2024-05-28

Family

ID=81211884

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210027981A KR102669448B1 (ko) 2020-10-08 2021-03-03 양자회로 에러 보정 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102669448B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240018909A (ko) 2022-08-03 2024-02-14 경희대학교 산학협력단 양자 정보 통합 처리시스템에서의 양자 상태 분류 장치 및 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170364362A1 (en) * 2016-06-15 2017-12-21 University Of Southern California Nested quantum annealing correction
US20190044542A1 (en) * 2018-05-05 2019-02-07 Justin Hogaboam Apparatus and method including neural network learning to detect and correct quantum errors

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170364362A1 (en) * 2016-06-15 2017-12-21 University Of Southern California Nested quantum annealing correction
US20190044542A1 (en) * 2018-05-05 2019-02-07 Justin Hogaboam Apparatus and method including neural network learning to detect and correct quantum errors

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240018909A (ko) 2022-08-03 2024-02-14 경희대학교 산학협력단 양자 정보 통합 처리시스템에서의 양자 상태 분류 장치 및 방법

Also Published As

Publication number Publication date
KR102669448B1 (ko) 2024-05-28

Similar Documents

Publication Publication Date Title
US11151450B2 (en) System and method for generating explainable latent features of machine learning models
US11461628B2 (en) Method for optimizing neural networks
US10832138B2 (en) Method and apparatus for extending neural network
US20210256422A1 (en) Predicting Machine-Learned Model Performance from the Parameter Values of the Model
MacKay A practical Bayesian framework for backpropagation networks
CN111602149A (zh) 自组织偏序网络
EP3861481A1 (en) Quantum convolutional neural networks
EP3338221A1 (en) Discrete variational auto-encoder systems and methods for machine learning using adiabatic quantum computers
EP3982304A1 (en) Method for mitigating error of quantum circuit and apparatus thereof
US20210133585A1 (en) Apparatus and method for unsupervised domain adaptation
US20230018960A1 (en) Systems and methods of assigning a classification to a state or condition of an evaluation target
Gutiérrez et al. Combined projection and kernel basis functions for classification in evolutionary neural networks
KR102669448B1 (ko) 양자회로 에러 보정 방법 및 그 장치
Singh et al. Multilayer feed forward neural networks for non-linear continuous bidirectional associative memory
KR102308752B1 (ko) 객체 추적 방법 및 장치
US20210216864A1 (en) Apparatus and method with neural network model reconfiguration
Ciarelli et al. An incremental neural network with a reduced architecture
US20220180167A1 (en) Memory-augmented neural network system
US20220300800A1 (en) Techniques for adaptive generation and visualization of quantized neural networks
Meinhardt et al. Quantum Hopfield neural networks: A new approach and its storage capacity
JP7230324B2 (ja) ニューラルネットワークの学習方法、コンピュータプログラム及びコンピュータ装置
Sajadimanesh et al. NISQ-Friendly Non-Linear Activation Functions for Quantum Neural Networks
US20230196745A1 (en) Adversarial attack method for malfunctioning object detection model with super resolution
US20210383221A1 (en) Systems And Methods For Machine-Learned Models With Message Passing Protocols
JP4586420B2 (ja) 多層ニューラルネットワーク学習装置及びソフトウェア

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant