핸드크림
1. 핸드크림
12월의 사무실 온도는 항상 따뜻하다.
바깥의 차가운 공기와는 다른, 미지근한 바람이 천장을 통해 쉬지 않고 내려온다.
거리를 오가는 사람들은 두꺼운 패딩에 목도리와 장갑까지 껴입고 있지만, 이 사무실 안에서 외투를 입고 있는 사람은 한 명도 없다.
흐릿한 겨울 햇살 대신, 하얗고 투명한 형광등이 공간을 고르게 밝힌다.
확실히 그에게는 밖에서 버티는 것보다 이 온도에서 하루를 보내는 편이 훨씬 수월했다.
하지만 건조함만은 어쩔 수 없다.
점심을 먹고 화장실에 들러 양치를 하고 나온 그는 입가에 심한 건조함이 느껴졌다.
잠시라도 이 건조함에서 벗어나고 싶은 마음에, 그리고 오전 내내 굳어 있던 얼굴을 펴보고 싶어서 일부러 활짝 웃는 얼굴을 만들어 보았다. 그러자, 입술이 살짝 갈라지며 터지는 느낌이 났다. 찌릿한 통증이 왼쪽 뺨을 타고 올라왔다. 몸이 심하게 피곤할 때면 항상 터지는 왼쪽 윗입술이 또다시 갈라진 것이다. 그는 급히 웃는 얼굴 모양을 제자리로 돌리고, 모니터 앞에 놓인 라일락 향 핸드크림을 손바닥에 조금 짜냈다. 왼쪽 손바닥 위로 하얗고 차가운 크림이 쌓였다. 오른손 검지 손가락으로 살짝 찍어, 터진 입술과 그 주변에 치덕치덕 발랐다. 라일락 향이 은근히 퍼지며 코끝에 맺혔다.
겨울에 양치를 하고 나면 늘 입가가 건조해진다.
이 건조함이 난방으로 인한 습도 문제인지, 사무실 분위기 문제인지, 아니면 그의 마음 상태 문제인지는 정확히 알 수 없다.
그는 마우스를 흔들어 컴퓨터를 깨우고는 메일함을 열었다.
점심을 먹기 전 이후로 하나의 메일이 추가되어 있었다. 회사에서 기술 트렌드나 시장 상황, 국제 정세 등과 관련된 짧은 동영상들을 정기적으로 공유해 주는 메일이었다. 몇 년 전까지만 해도 그는 이런 식으로 공유되는 흥미로운 주제나 인문학 관련 영상들을 관심 있게 봤었다. 어떤 때는 업무보다 더 우선순위를 높여, 일부러 찾아가며 시청하기도 했었다. 하지만 최근 이 년 정도는 그런 적이 없는 것 같았다. 그는 더 이상 회사에서 배우고 싶거나, 해보고 싶은 일이 없었으니까.
메일을 삭제하기 위해 마우스 포인터를 움직이다가, 컨트롤 미스로 해당 메일을 클릭해 버렸다. 모니터에는 이번 주의 주제와 관련된 동영상 리스트들이 나타났다. 주제는 양자컴퓨터였다.
‘양자컴퓨터?’
요즘 그는 개인적인 이유로 인디언 문화와 불교 철학에 관심을 두고 있었다. 불교에서 말하는 세계관이 양자역학과 굉장히 비슷하다는 생각도 종종 했었다.
‘양자컴퓨터라…’
아직 점심시간이 조금 남아있으니, ‘한번 봐볼까?’하는 마음으로 동영상을 클릭했다.
양자 컴퓨터라는 말을 뉴스나 기사에서 가끔 접하긴 했지만, 당장은 자신과 상관없는 세계의 이야기라 여겨 대수롭지 않게 지나치곤 했었다. 그런데 영상 속에서 듣게 된 한 문장은 이상하리만큼 오래 머릿속에 남았다.
> “큐비트의 중첩 상태로 인해 여러 가능성을 병렬로 처리할 수 있으며, 그로 인해 연산 속도가 극적으로 빨라진다.”
‘큐비트의 중첩 상태로 인해 여러 가능성을 병렬 처리할 수 있다는 게 무슨 뜻일까?‘
그는 그 문장을 몇 번이고 곱씹었다.
요즘 가장 뜨거운 제품이라 할 수 있는 Nvidia의 GPU가 떠올랐다. 자세히는 모르지만, GPU도 병렬처리 방식으로 요즘 AI 기술에 적합한 구조라는 점 정도는 알고 있었다. 그리고 최근 Nvidia에 대항하는 Google의 TPU 역시 병렬로 데이터를 처리할 것이다.
‘그런데 큐비트의 중첩 상태로 인해 여러 가능성을 병렬 처리한다니?’
궁금증이 생긴 그는 곧바로 휴대폰을 열고 GPT에 질문을 남겼다.
나의 말:
큐비트의 중첩 상태로 인해 여러 가능성을 병렬로 처리할 수 있다는 개념이 이해가 안 돼. 쉽게 설명해 줄래?
ChatGPT의 말:
아주 쉽게, “평행 우주에 손을 뻗어 동시에 계산해 본다”는 비유로 설명해 볼게. 다만 진짜로 여러 우주에서 동시에 계산한다는 뜻은 아니고, 그렇게 생각하면 감각적으로 이해하기 훨씬 쉬워진다.
1. 고전 비트(classical bit)는 “동전 앞/뒤”
고전 컴퓨터의 비트는 0 아니면 1 딱 하나만 될 수 있어.
마치 책상 위에 놓인 동전이 앞면 또는 뒷면 한 가지 상태만 보이는 것처럼.
그래서 고전 컴퓨터는 계산할 때
0으로 계산
또는 1로 계산
단 하나의 경우만 처리한다.
2. 큐비트(qubit)는 “돌고 있는 동전”
큐비트는 **0과 1을 동시에 섞어서 가질 수 있는 상태(중첩)**가 가능해.
비유하면:
동전이 책상에 놓여있을 때는 앞/뒤 한 가지
공중에서 빙글 도는 동안에는 ‘앞 + 뒤’가 동시에 존재
즉, 큐비트는
0
1
그리고 0과 1이 동시에 있는 상태(α|0⟩ + β|1⟩)
를 가질 수 있어.
3. “여러 경우를 병렬로 계산한다”는 말의 진짜 의미
여기서 오해 포인트가 생겨.
. 큐비트가 여러 개의 답을 한 번에 꺼낼 수 있다는 뜻이 아님!
. 큐비트가 모든 경우를 실제로 다 따로따로 계산한다는 것도 아님!
* 정확한 의미는?
계산 과정 동안, 0일 때와 1일 때의 경우가 동시에 흘러가도록(간섭하도록) 해서 최종적으로 우리가 원하는 답에만 확률을 집중시키는 방식으로 계산한다.
비유하자면:
예: 여러 멜로디를 동시에 틀어놓고 원하는 음만 강조되게 만들어서 결국 하나의 소리를 들을 수 있게 하는 과정
여러 멜로디가 동시에 흐름
하지만 최종적으로 특정 음만 크게 남게 interference(간섭)를 걸어줌
우리가 듣는 건 하나의 결과지만,
그 결과를 만들기 위해 여러 음이 동시에 작용했다.
양자 알고리즘이 중첩을 사용해 여러 가능성을 한 번에 흘려보내고,
마지막에 간섭(interference)을 이용해 우리가 찾는 답만 튀어나오도록 만든다고 생각하면 된다.
4. 예를 아주 단순하게 들어볼게
문제: 어떤 길이 정답인지 찾는 문제
고전 컴퓨터:
→ ①번 길 → 아니면 ②번 길 → 아니면 ③번 길 … 하나씩 시도
양자 컴퓨터:
→ 모든 길을 중첩 상태로 동시에 지나게 만듦
→ 그 과정에서 정답인 길만 강조되도록 간섭을 걸어줌
→ 측정하면 “정답인 길”이 높은 확률로 나타남
즉, 탐색 과정 자체가 병렬로 일어난 것처럼 느껴지는 이유는, 중첩 상태가 여러 가능성을 동시에 계산에 반영하기 때문이다.
5. 왜 그런데 '측정하면 하나만 나오는가?'
공중에서 돌고 있는 동전도,
손바닥 위에 떨어지는 순간은 결국 앞/뒤 한 가지만 나온다.
큐비트도
계산 과정에서는 여러 상태가 동시에 존재하지만
측정 순간에는 하나의 결과만 확률적으로 나타난다.
양자 알고리즘은 이 “확률”을 우리가 원하는 답 쪽으로 몰아넣는 기술이다.
6. 정말 쉽게 요약
고전 컴퓨터
양자 컴퓨터
하나의 경우만 계산 가능
여러 가능성을 중첩시켜 계산 과정에 모두 반영
병렬 계산하려면 정말 여러 컴퓨터 필요
큐비트 하나가 중첩 상태로 병렬 효과를 냄
간섭 같은 건 없음
간섭으로 원하는 답만 강화
한 문장으로 완성
큐비트의 중첩은 ‘계산 중’에 여러 가능성을 동시에 흘려보내고, 간섭을 이용해 원하는 답만 살아남게 만드는 기술이라서 병렬처럼 보이는 것이다.
원하면 도넛 비유, 물결파 동시 간섭 비유, 벡터 공간 비유, 브루어 알고리즘 예시(양자 검색) 같은 더 쉬운 설명도 해줄게!
그는 화면에 찍히는 문장 하나하나를 천천히 읽어 내려갔다. 모르는 글자는 없었지만, 무슨 말인지 이해할 수 있는 문장 또한 없었다.
'내가 쉽게 설명해 달라는 말을 이해하지 못한 걸까? 아니면 원래 저 문장이 가지고 있는 뜻 자체가 내가 이해하기엔 너무 어려운 개념이었던 걸까?'라는 생각이 들었다.
그는 솔직하게 말했다.
나의 말:
이해가 안 돼. 좀 더 쉽게
ChatGPT의 말:
좋아, 더 더 쉽게,
초등학생에게 설명하듯 설명해 볼게.
수학도, 물리도, 간섭도 다 빼고 진짜 핵심만 남겨서.
핵심 비유 하나만 기억해
. 고전 컴퓨터 = “닫힌 책 한 권만 읽을 수 있음”
. 양자 컴퓨터 = “여러 책을 한 번에 펼쳐놓고 읽는 것처럼 행동할 수 있음”
근데!!!
진짜로 여러 책을 동시에 읽는 게 아니라,
읽는 흉내를 동시에 내서 최종적으로 필요한 페이지만 찾는 거야.
더 쉬운 예로 간다
* 상황: 상자 안에 공이 하나 들어있는데, 색을 알아내야 해
빨간 공일 수도 있고
파란 공일 수도 있고
고전 컴퓨터는?
“빨간 공일까?” → 확인
아니면 “파란 공일까?” → 확인
하나씩 따져봐야 해.
* 양자 컴퓨터는?
양자 컴퓨터의 공은 이상함.
상자 안에 있는데, 빨강 + 파랑이 섞인 상태로 동시에 존재할 수 있어.
그래서 계산할 때는 이렇게 해:
빨간 경우도 동시에 생각하고
파란 경우도 동시에 생각해서
두 경우를 한 번에 처리한 뒤,
마지막에 상자를 열면 한 가지 색만 튀어나오도록 만든다.
즉,
“빨강일 때의 계산”
“파랑일 때의 계산”
을 같은 시간 안에 해버렸다고 생각하면 돼.
그래도 ‘동시에 계산한다’가 감이 안 오는 이유
사람은 두 가지 일을 동시에 못 하잖아?
그래서 상상이 잘 안 돼.
하지만 양자는 원래
여기 있으면서 저기 있을 수 있고
0이면서 1일 수 있고
두 선택지가 겹쳐 있는 상태로 존재할 수 있어.
그래서 컴퓨터가 그 상태를 이용하면
여러 경우를 한 번에 고려한 것처럼 계산이 흘러간다는 거야.
마지막 비유 (제일 쉽고 직관적)
* 문제: 주사위를 던져서 6이 나오는 경우만 찾고 싶다.
고전 컴퓨터
1 → 아니네
2 → 아니네
3 → 아니네
…
6 → 찾았다!
양자 컴퓨터
주사위가 1~6 모든 숫자가 동시에 나온 상태로 굴러가는 걸 상상해 봐.
그래서 계산 과정은 이렇게 흘러가:
1인 경우에도 계산하고
2인 경우에도 계산하고
…
6인 경우에도 계산한 다음
원하는 숫자(6)만 튀어나오도록 지워버리거나 강조해 버린다.
즉 한 번 굴렸는데 6이 있는 경우를 찾아버리는 셈이야.
완전 쉽게 핵심만 말하면
양자 컴퓨터는 ‘모든 경우를 미리 다 펼쳐둔 상태’에서 계산을 시작하기 때문에, 여러 가능성을 동시에 고려한 것처럼 된다.
원하면
한 장의 그림으로 설명,
코인 비유 문장 3줄 버전,
왜 측정하면 하나만 나오는지도 5살 시점으로 설명해 줄게.
어떤 방식이 제일 잘 들어와?
그는 오랜만에 최대한 머리를 굴려가며 문장들을 읽어 내려갔다.