1.1 양자 컴퓨터가 스스로 배우는 방법
변분 양자 알고리즘(Variational Quantum Algorithm, VQA) 기반 최적화
먼저 비유 하나로 시작하자
주방에 로봇 요리사가 있다.
이 로봇은 최고의 라면을 끓이고 싶다. 그런데 처음엔 레시피를 모른다. 물을 얼마나 넣을지, 불을 얼마나 세게 할지, 몇 분 끓일지. 아무것도 모른다.
그래서 이렇게 한다.
일단 물 500ml, 불 세기 5, 3분. 맛을 본다. 너무 짜다. 다음엔 물 600ml, 불 세기 4, 3분. 맛을 본다. 조금 나아졌다. 이렇게 조금씩 바꿔가며 맛을 본다. 수백 번 시도한다. 결국 최고의 조합을 찾는다.
VQA가 하는 일이 바로 이것이다.
양자 컴퓨터가 문제를 푸는 회로를 조금씩 바꿔가며, 가장 좋은 답을 찾아가는 것이다.
1부 — 양자 회로는 악보다
양자 컴퓨터 안에 회로가 있다.
이 회로를 악보라고 생각하자. 악보에는 어떤 음을 얼마나 세게, 얼마나 길게 연주할지가 적혀있다. 연주자가 이 악보대로 연주하면 음악이 나온다.
양자 회로도 마찬가지다. "이 큐비트를 이만큼 회전시켜라. 저 큐비트와 얽어라." 이런 지시들이 순서대로 적혀있다. 큐비트들이 이 지시를 따르면 계산이 이루어진다.
그런데 이 악보에는 특별한 부분이 있다. 연필로 쓴 부분이 있다. 지우고 다시 쓸 수 있는 부분. "이 음을 얼마나 세게" 하는 부분이 고정되지 않았다. 조절할 수 있다.
이것을 어려운 말로 파라미터(Parameter) 라고 한다. 그냥 조절 손잡이라고 기억하면 된다.
악보의 조절 손잡이를 이리저리 돌려가며, 가장 아름다운 음악이 나오는 조합을 찾는 것. 그것이 VQA다.
2부 — 누가 무슨 일을 하는가
이 과정에 두 명의 선수가 있다.
첫 번째 선수: 양자 컴퓨터
양자 컴퓨터는 운동장이다. 아주 특별한 운동장. 큐비트들이 중첩과 얽힘을 이용해서 수많은 가능성을 동시에 탐색한다. 이 운동장에서만 할 수 있는 일들이 있다. 클래식 컴퓨터로는 엄청난 시간이 걸릴 계산을 여기서는 빠르게 할 수 있다.
그런데 양자 컴퓨터는 한 가지를 못 한다. 스스로 판단을 못한다. "이번 계산 결과가 좋은가 나쁜가. 다음엔 어떻게 바꿔야 하는가." 이것을 결정하지 못한다.
두 번째 선수: 클래식 컴퓨터
클래식 컴퓨터는 감독이다. 양자 컴퓨터가 계산한 결과를 받는다. "이번 결과가 얼마나 좋은가"를 점수로 매긴다. 그리고 결정한다. "다음엔 조절 손잡이를 이쪽으로 조금 더 돌려보자."
이 두 선수가 함께 일한다.
양자 컴퓨터가 계산한다 → 클래식 컴퓨터가 평가한다 → 클래식 컴퓨터가 손잡이를 조금 바꾼다 → 양자 컴퓨터가 다시 계산한다 → 반복.
이것을 하이브리드 루프라고 한다. 어렵게 들리지만 그냥 양자 컴퓨터와 클래식 컴퓨터가 번갈아가며 협력하는 것이다.
3부 — 점수를 어떻게 매기는가
라면 맛을 어떻게 평가하는가.
한 입 먹어본다. "음, 아직 짜다." 짠 정도를 1점에서 10점으로 매긴다. 10점에 가까울수록 짜다. 0점에 가까울수록 맛있다. 이 점수를 줄이는 것이 목표다.
양자 컴퓨터도 마찬가지다. 계산이 끝나면 결과를 측정한다. 그 결과로 점수를 매긴다. 이 점수를 어려운 말로 손실 함수(Loss function) 라고 한다. 그냥 얼마나 틀렸는지를 나타내는 점수다.
이 점수가 높으면 많이 틀린 것이다. 점수를 낮추는 방향으로 손잡이를 돌린다. 점수가 내려간다. 또 돌린다. 또 내려간다. 점수가 거의 0에 가까워지면 최고의 답을 찾은 것이다.
4부 — 손잡이를 어느 방향으로 돌리는가
여기서 중요한 문제가 생긴다.
라면 손잡이가 열 개 있다. 물의 양, 불의 세기, 끓이는 시간, 면의 양, 스프의 양... 어느 손잡이를 어느 방향으로 얼마나 돌려야 점수가 낮아지는가.
한 가지 방법은 하나씩 다 돌려보는 것이다. 물 손잡이를 조금 올렸다가 내려봤다가. 불 손잡이를 올렸다가 내려봤다가. 열 개를 전부 이렇게 해보면 어느 방향이 좋은지 알 수 있다.
이것을 파라미터 시프트 룰이라고 한다. 각 손잡이를 "조금 올렸을 때"와 "조금 내렸을 때"를 비교해서, 어느 방향이 점수를 낮추는지 계산하는 방법이다.
정확하다. 그런데 손잡이가 많으면 시간이 오래 걸린다. 손잡이가 100개면 200번을 해봐야 한다.
더 빠른 방법이 있다. SPSA라고 부른다.
이것은 이런 방법이다. 열 개의 손잡이를 모두 동시에 무작위로 조금 올리거나 내린다. 단 두 번만 해본다. "이렇게 했을 때"와 "저렇게 했을 때"를 비교한다. 정확하진 않지만 방향을 대충 안다. 그리고 그 방향으로 손잡이를 조금 돌린다.
정확도는 조금 낮지만 엄청 빠르다. 손잡이가 1,000개여도 두 번만 해보면 된다. 실제 양자 컴퓨터처럼 시간이 소중한 상황에서 아주 유용하다.
5부 — 가장 큰 문제: 바렌 플래토
여기서 무시무시한 함정 이야기를 해야 한다.
사막을 상상해보자.
사막 한가운데 보물이 묻혀있다. 보물을 찾으려면 어딘가 땅이 꺼진 곳, 움푹 들어간 곳을 찾으면 된다. 경사를 따라 아래로 내려가면 보물이 나온다.
그런데 문제가 있다. 사막이 너무 넓어서 아무리 봐도 경사가 없다. 평평하다. 어느 방향이 아래인지 알 수가 없다. 어디로 가야 할지 모른다.
이것이 바렌 플래토다. 한국말로 하면 메마른 고원이다.
양자 회로가 커지면 커질수록, 손실 함수의 지형이 이 사막처럼 평평해진다. 손잡이를 어느 방향으로 돌려도 점수가 거의 변하지 않는다. 방향을 잡을 수가 없다. 학습이 멈춰버린다.
큐비트가 50개만 넘어가도 이 문제가 심각해진다. 양자 컴퓨팅의 가장 어려운 숙제 중 하나다.
6부 — 함정을 피하는 방법들
과학자들이 이 함정을 피하는 방법을 찾아냈다.
첫 번째 방법: 작은 것에 집중하기
사막 전체를 보지 말고, 바로 내 발 아래만 봐라. 전체적인 점수 대신 아주 작은 부분의 점수만 측정한다. 작은 범위에서는 경사가 보인다. 이것을 지역적 측정이라고 한다.
축구 경기 전체를 한 번에 분석하는 것보다, 내가 있는 구역 10미터 안만 분석하는 것이 더 정확한 것과 같다.
두 번째 방법: 양자 컴퓨터 앞뒤에 일반 컴퓨터를 붙이기
선생님과 학생의 비유를 들어보자.
학생(양자 컴퓨터)이 수학 문제를 푼다. 아주 독창적인 방식으로 푸는데, 가끔 엉뚱한 방향으로 간다. 경험 많은 선생님(클래식 신경망)이 앞에서 문제를 정리해준다. 다른 선생님이 뒤에서 결과를 다듬어준다.
양자 컴퓨터 앞뒤에 클래식 신경망을 붙이는 것이다. 양자 컴퓨터의 강점인 표현력은 살리면서, 클래식 컴퓨터의 안정성으로 학습이 제대로 되도록 도와주는 것이다.
이렇게 하면 바렌 플래토 함정에 덜 빠진다.
전체를 한눈에
여기까지 한 이야기를 표로 정리하면 이렇다.
↓
[양자 컴퓨터] — 악보(회로)대로 연주한다
↓
결과를 측정한다
↓
[클래식 컴퓨터] — 점수를 매긴다 (얼마나 틀렸나)
↓
손잡이(파라미터)를 조금 바꾼다
↓
다시 양자 컴퓨터로 올라간다
↓
(이것을 수백 번 반복)
↓
[최고의 답 발견]
라면 로봇이 수백 번 맛을 보며 최고의 레시피를 찾는 것이다. 양자 컴퓨터는 요리를 하고, 클래식 컴퓨터는 맛을 보고 레시피를 조정한다.
왜 이것이 중요한가
지금의 양자 컴퓨터는 완벽하지 않다.
큐비트가 예민하다. 외부 환경에 쉽게 영향을 받는다. 오류가 생긴다. 오랫동안 계산하기 어렵다.
그래서 이 시대의 양자 컴퓨터를 특별한 이름으로 부른다. NISQ. 잡음이 있는 중간 규모 양자 컴퓨터. 완벽하지 않지만 지금 존재하는 양자 컴퓨터다.
VQA는 이 불완전한 컴퓨터를 최대한 활용하는 방법이다. 복잡한 계산을 한꺼번에 양자 컴퓨터에 맡기지 않는다. 잘게 쪼개서 짧게 짧게 계산한다. 그리고 나머지는 클래식 컴퓨터가 도와준다.
마라톤 선수가 아직 훈련 중이다. 42킬로미터를 혼자 다 뛰기는 힘들다. 그래서 10킬로미터씩 나눠서 뛰고, 중간에 코치가 페이스를 조절해준다. 함께 완주하는 것이다.
VQA가 지금 양자 컴퓨터와 AI를 연결하는 가장 현실적인 방법인 이유가 여기에 있다.
[참고]
'퀀텀 > 하이브리드 양자' 카테고리의 다른 글
| 2.3. 양자 슈퍼컴퓨터의 총사령부 HPC 네트워크 (1) | 2026.05.07 |
|---|---|
| 2.2 양자 컴퓨터의 오류 수정팀 QEC 네트워크 (0) | 2026.05.07 |
| 2.1 양자 컴퓨터와 일반 컴퓨터가 함께 일하는 방법 - 초저지연 제어(QRT) (0) | 2026.05.07 |
| 1.3 양자 컴퓨터가 배우는 엔진의 비밀 - 변분 학습 레이어 (0) | 2026.05.07 |
| 1.2 양자 컴퓨터에 데이터를 여러번 먹이는 방법 (1) | 2026.05.05 |