정의
파라미터 \theta를 가진 회로를 아래처럼 씁니다.
$$
|\psi(\theta)\rangle=U(\theta)|0^n\rangle
$$측정 가능한 값은 보통 observable O의 기대값입니다.
$$
f(\theta)=\langle\psi(\theta)|O|\psi(\theta)\rangle
$$pQC 자체는 알고리즘 이름이라기보다 회로 형식입니다. VQA, QML, QAOA, VQE가 모두 pQC를 재료로 사용합니다.
기본 구성요소
| 요소 | 역할 |
|---|---|
| feature map | 고전 데이터 x를 회로 각도나 상태로 넣음 |
| ansatz | 학습 가능한 파라미터 회로 구조 |
| entangler | CX/CZ/RZZ 등으로 큐비트 사이 상관을 만듦 |
| measurement | 기대값 또는 bitstring 분포를 읽음 |
| classical loop | optimizer가 파라미터를 갱신 |
필요한 학부 수준 배경
pQC를 이해하려면 선형대수의 “벡터에 행렬을 곱한다”는 감각이 필요합니다. 양자상태는 복소벡터이고, 게이트는 대체로 유니터리 행렬입니다.
$$
|\psi_{\mathrm{out}}\rangle
=
U(\theta)|\psi_{\mathrm{in}}\rangle
$$고전 머신러닝에서 파라미터 \theta가 함수의 모양을 바꾸듯, pQC에서는 회전각 \theta가 양자상태의 방향과 상대위상을 바꿉니다. 중요한 차이는 출력 전체 상태를 그대로 읽을 수 없고, 측정을 통해 확률적 결과나 기대값만 얻는다는 점입니다.
그래서 pQC에는 양자컴퓨터의 세 성질이 직접 필요합니다. 첫째, 중첩은 여러 basis 성분을 동시에 가진 상태를 만듭니다. 둘째, 얽힘은 단순한 독립 feature 조합보다 복잡한 상관을 만듭니다. 셋째, 간섭은 어떤 결과의 진폭은 키우고 어떤 결과의 진폭은 지우는 방식으로 모델의 표현력을 만듭니다.
작은 예시
1큐비트 회로에서 R_y(\theta)를 적용하고 Z를 측정하면 아래입니다.
$$
R_y(\theta)|0\rangle
=
\cos{\theta\over2}|0\rangle+\sin{\theta\over2}|1\rangle
$$$$
\langle Z\rangle
=
\cos^2{\theta\over2}-\sin^2{\theta\over2}
=
\cos\theta
$$즉 회로 출력은 파라미터의 삼각함수로 나타납니다. 여러 큐비트와 얽힘층을 넣으면 이런 삼각함수들이 복잡하게 섞여 학습 가능한 함수가 됩니다.
Hardware-efficient ansatz
하드웨어에 맞춘 ansatz는 보통 단일 큐비트 회전층과 얽힘층을 반복합니다.
$$
U(\theta)
=
\prod_{\ell=1}^{L}
U_{\mathrm{ent}}
\left(\bigotimes_{j=1}^{n}R_z(\theta_{\ell,j,3})R_y(\theta_{\ell,j,2})R_x(\theta_{\ell,j,1})\right)
$$장점은 구현이 쉽다는 점입니다. 단점은 표현력이 너무 크면 barren plateau가 생기고, 너무 작으면 문제 구조를 담지 못합니다. 실무에서는 하드웨어 연결성, 2큐비트 게이트 오류율, 필요한 표현력 사이에서 타협합니다.
표현력과 trainability
pQC가 복잡한 함수를 표현하려면 충분한 회전층과 entangling layer가 필요합니다. 하지만 표현력이 너무 큰 회로는 학습이 쉬운 회로와 다릅니다. 랜덤한 깊은 회로는 상태공간을 넓게 덮을 수 있지만, gradient가 작아져 optimizer가 움직이기 어려울 수 있습니다.
실무에서는 아래 균형을 봅니다.
| 선택 | 좋은 점 | 나쁜 점 |
|---|---|---|
| 얕은 회로 | noise가 적고 학습이 비교적 안정적 | 표현력이 부족할 수 있음 |
| 깊은 회로 | 복잡한 상관을 표현 가능 | decoherence와 barren plateau 위험 |
| 문제 구조 ansatz | 필요한 상태공간을 효율적으로 탐색 | 도메인 지식이 필요 |
| hardware-efficient ansatz | 장비에서 실행하기 쉬움 | 문제 구조와 안 맞을 수 있음 |
gradient 계산
회전 게이트 e^{-i\theta P/2}에 대해 parameter-shift rule을 쓸 수 있습니다.
$$
{\partial f\over\partial\theta}
=
{1\over2}\left[
f\left(\theta+{\pi\over2}\right)
-f\left(\theta-{\pi\over2}\right)
\right]
$$한 파라미터의 gradient를 얻기 위해 회로를 두 번 더 실행합니다. 파라미터 수가 많으면 gradient 추정 비용도 커집니다. shots noise까지 있으면 optimizer가 흔들립니다.
측정 설계
pQC의 출력은 상태벡터가 아니라 측정입니다. 따라서 모델을 설계할 때 “무엇을 측정할 것인가”가 회로만큼 중요합니다.
$$
y(\theta)=\langle O\rangle_\theta
$$O=Z_0처럼 단일 큐비트만 보면 local한 정보만 읽습니다. O=Z_0Z_1처럼 상관 observable을 측정하면 두 큐비트의 parity 정보를 읽습니다. 회로가 얽힘을 만들었더라도 측정 observable이 그 얽힘을 볼 수 없으면 모델 출력에는 반영되지 않을 수 있습니다.
실사용 감각
- pQC는 “양자 신경망”이라는 말보다 더 정확한 실무 단위입니다.
- 데이터 인코딩, ansatz, 측정 observable이 모델의 inductive bias를 결정합니다.
- 2큐비트 게이트가 많으면 표현력은 늘 수 있지만 하드웨어 오류도 늘어납니다.
- 학습 곡선은 optimizer 문제인지, shots noise인지, ansatz 문제인지 분리해 봐야 합니다.