Yangja Wiki / 실무적 응용

양자컴퓨터 실사용 - VQA

VQA는 양자회로와 고전 optimizer를 번갈아 쓰는 알고리즘 계열입니다. NISQ 장비에서 긴 오류정정 회로 대신 짧은 파라미터 회로를 반복 실행하는 전략입니다.

기본 루프

  1. 파라미터 \theta로 회로 U(\theta)를 준비합니다.
  2. 양자장비에서 observable 기대값을 추정합니다.
  3. 고전 optimizer가 \theta를 갱신합니다.
  4. 목적함수가 수렴할 때까지 반복합니다.
$$
C(\theta)=\langle0|U^\dagger(\theta)HU(\theta)|0\rangle
$$

VQE에서는 이 cost가 에너지이고, QAOA에서는 combinatorial optimization 목적함수의 기대값입니다.

왜 VQA인가

이상적인 fault-tolerant quantum computer가 있으면 QPE, HHL, QSVT 같은 깊은 회로를 목표로 할 수 있습니다. 하지만 NISQ 장비에서는 긴 회로가 오류로 무너집니다. VQA는 이 현실을 받아들이고, 양자장비에는 짧은 회로의 기대값 계산을 맡기고, 파라미터 탐색은 고전컴퓨터에 맡깁니다.

즉 VQA는 양자컴퓨터의 모든 것을 대체하는 방식이 아니라 hybrid 방식입니다. 양자컴퓨터의 역할은 고전적으로 다루기 어려운 상태공간의 기대값을 샘플링하는 것이고, 고전컴퓨터의 역할은 noisy한 목적함수 위에서 다음 파라미터를 고르는 것입니다.

VQE

VQE는 변분 원리를 사용합니다. 해밀토니안 H의 바닥상태 에너지 E_0에 대해 임의 상태의 기대값은 항상 그 이상입니다.

$$
E(\theta)=\langle\psi(\theta)|H|\psi(\theta)\rangle\ge E_0
$$

따라서 E(\theta)를 낮추는 파라미터를 찾으면 바닥상태에 가까운 상태를 얻습니다. 해밀토니안은 보통 Pauli sum입니다.

$$
H=\sum_j c_jP_j,
\qquad
E(\theta)=\sum_j c_j\langle P_j\rangle_\theta
$$

각 Pauli 항의 기대값을 shots로 추정하므로 측정 예산이 중요합니다.

VQE에서 필요한 물리 감각

학부 양자역학에서 해밀토니안의 고유값은 가능한 에너지입니다. 바닥상태는 가장 낮은 에너지 고유상태입니다.

$$
H|E_j\rangle=E_j|E_j\rangle,
\qquad E_0\le E_1\le\cdots
$$

VQE가 필요한 이유는 분자나 물성 모델의 Hilbert space가 너무 빠르게 커지기 때문입니다. 고전컴퓨터가 전체 행렬을 직접 대각화하기 어려운 영역에서, 양자컴퓨터는 같은 Hilbert space를 물리적으로 표현할 수 있다는 기대가 있습니다. 다만 NISQ에서는 정확한 고유값 알고리즘 대신 짧은 ansatz로 바닥상태 근처를 찾는 전략을 씁니다.

QAOA

QAOA는 cost Hamiltonian과 mixer Hamiltonian을 번갈아 적용합니다.

$$
|\gamma,\beta\rangle
=
\prod_{\ell=1}^{p}e^{-i\beta_\ell H_M}e^{-i\gamma_\ell H_C}|+\rangle^{\otimes n}
$$

p가 커질수록 표현력은 커지지만 회로도 깊어집니다. NISQ에서는 작은 p에서 의미 있는 근사 성능을 얻는지가 핵심입니다.

Cost landscape와 shots noise

VQA의 optimizer는 정확한 함수값을 보는 것이 아니라 shots로 추정한 noisy한 함수값을 봅니다.

$$
\hat C(\theta)=C(\theta)+\eta_{\mathrm{shot}}+\eta_{\mathrm{hardware}}
$$

shots를 늘리면 통계 오차는 줄지만 실행 비용이 늘어납니다. 하드웨어 오류는 shots를 늘린다고 사라지지 않습니다. 그래서 VQA 실험에서는 optimizer가 실패했을 때 “ansatz가 나쁜지, shots가 부족한지, noise가 큰지, learning rate가 큰지”를 분리해야 합니다.

Barren plateau

파라미터가 많은 랜덤 회로에서는 gradient가 지수적으로 작아질 수 있습니다.

$$
\mathrm{Var}\left({\partial C\over\partial\theta_i}\right)\sim O\left({1\over 2^n}\right)
$$

이 현상을 barren plateau라고 합니다. optimizer 입장에서는 어디로 가야 할지 신호가 거의 없는 평평한 지형처럼 보입니다. 문제 구조를 반영한 ansatz, 얕은 회로, local cost, 좋은 초기화가 완화책입니다.

양자적 성질이 필요한 지점

VQA에서 양자컴퓨터가 필요한 이유는 단순히 “파라미터가 있는 함수”를 만들기 위해서가 아닙니다. 그런 함수는 고전 신경망으로도 만들 수 있습니다. 양자컴퓨터를 쓰는 이유는 특정 문제에서 상태공간, 얽힘, 해밀토니안 기대값이 자연스럽게 양자계 언어로 표현되기 때문입니다.

예를 들어 화학 문제는 전자 상태 자체가 양자상태입니다. 이 상태를 고전 bit로 모두 펼치면 차원이 폭발합니다. 반면 양자회로는 큐비트 수에 따라 Hilbert space가 지수적으로 커지므로, 적절한 ansatz가 있다면 전자 상태의 중요한 부분을 더 자연스럽게 표현할 수 있습니다. 이 기대가 VQE의 핵심 동기입니다.

Optimizer 선택

optimizer감각
COBYLA/Nelder-Meadgradient 없이 작은 문제에서 시작하기 좋음
SPSAshots noise가 있는 환경에서 자주 사용
Adam/SGDparameter-shift gradient와 결합 가능
natural gradientquantum geometry를 반영하지만 비용이 큼

VQA 실험 기록

  1. ansatz 구조와 depth
  2. observable 분해와 측정 grouping
  3. shots 수와 seed
  4. optimizer 이름과 hyperparameter
  5. raw cost, mitigated cost, gradient norm
  6. 최종 파라미터와 회로 리소스