winterjung blog


『모두를 위한 양자 컴퓨터』 리뷰

2024년 12월 구글에서 Willow 양자 칩을 통해 양자 오류 수정에서 중요한 임계점을 달성했다는 뉴스가 나왔다. 다만 아쉽게도 양자 컴퓨팅의 이해가 높지 않아 얼마나 기념비적인 업적인지, 어떤 의의를 갖는지는 잘 느끼지 못했다. 이런저런 양자 컴퓨터와 관련된 책을 찾아 봤지만 대부분은 행렬 수학과 선형대수학 그리고 어떻게 읽어야 하는지도 모를 어려운 수식과 그 풀이 때문에 읽을 엄두도 안나는 책들이었고, 그나마 수식이 적은 책은 상대적으로 옛날에 출판된 책이라 최신 연구, 발전 동향을 알기엔 한계가 있었다.

그러던 중 서점에서 슥 훑어보다 수식이 적고 그동안의 양자 컴퓨터 발전 과정과 동향을 알 수 있겠다 싶은 책이 『모두를 위한 양자 컴퓨터』 책이었다. 장바구니에 담아 두고 다른 책을 먼저 읽다가 마침 한빛미디어 서평단 활동으로 책을 후원받을 수 있었고, 책을 읽고 그 후기를 남겨본다. 서평은 개인의 양심에 따라 작성했다.

책 정보

책 사진

  • 윌리엄 헐리, 플로이드 스미스, 『모두를 위한 양자 컴퓨터』, 류정원 옮김 (한빛미디어, 2025)
  • 온라인 서점 링크: 한빛미디어, 교보문고

내가 읽은 이 책은

위에서 말한대로 내가 책을 읽으며 기대했던 내용은 엄밀한 수식 풀이보다는 양자 컴퓨터는 어떻게 발전해 왔는지, 현대에 어디까지 왔는지, 양자 컴퓨팅을 가능케 하는 핵심 아이디어는 무엇인지, 현재 더 발전하기 위해 해결해야할 문제들은 무엇이 있는지, 우리가 흔히 갖고있는 오해는 무엇이며 이에 답해주는지였고, 책은 이 기대에 만족하는 책이다.

책에서 얻을 수 있는 것과 아닌 것

아래 감상을 통해 본인이 이 책을 읽었을 때 원하는 정보를 얻어갈 수 있는지 가늠이 되면 좋겠다.

  • 책에서 일부러 생략한 맥락과 자료들을 찾아보며 제대로 읽으려면 며칠로는 부족하고 몇 주 정도 걸림
  • 역사를 알려줘서 좋은 책
  • 양자 역학에서 소개되는 중첩, 얽힘, 결맞음 등의 개념이 대체 무엇이고, 특정 기술의 발전과 등장엔 어떤 맥락이 섞여있고, 어디까지 왔는지 이해할 수 있음
  • 다만 현대 양자 컴퓨팅의 각 요소들을 깊게 이해하기엔 아쉬움
    • 게이트 기반 양자 컴퓨팅에 사용되는 아다마르 게이트, 파울리 x 게이트, cnot 게이트가 무슨 게이트고 어떤 원리이며, 언제 필요한지 기술적으로 알려주진 않음
  • 파이썬 sdk를 사용해 클라우드 업체가 제공하는 양자 컴퓨팅을 실행시키는 코드를 보여는 주지만 그와 관련된 설명과 주석은 하나도 없음
    • 물리학, 수학, 코드와 관련된 이해를 높이는건 이 책의 목표가 아님
  • rsa 암호 체계를 무너뜨린다고 알려진 쇼어 알고리즘을 소개하나, 어떻게 무슨 원리로 소인수 분해를 빠르게 하는지 설명해주지 않음
    • 쇼어 알고리즘의 언급은 곳곳에서 등장하나, 나중에 14장에서 5줄 정도로만 그나마도 생략된 작동 원리를 언급하는데 그침
  • 양자 컴퓨팅으로 문제를 풀기 위해선 어떤 문제를 양자 알고리즘으로 변환하는게 필요하다고 하나 어떻게 그럴 수 있는지 how to를 제공해주지 않음

책의 내용과 감상 정리

책을 읽으며 인상깊었던 부분, 궁금증이 든 대목, 중요 내용을 정리했다. 책의 흐름에 따라 메모했으나 생략된 내용도 많으니 직접 책을 읽어볼 것을 권장한다.

파트 0. 이 책에 대하여

  • 다음과 같은 내용을 배울 수 있음
    • 양자 역학의 핵심 원리와 양자 컴퓨팅과의 관계
    • 실제 응용 사례로 살펴본 오늘날의 기술 현황과 비즈니스, 직업 연관성
    • 양자 컴퓨팅의 활용 방법
    • 양자 어닐링과 게이트 기반 양자 컴퓨팅의 차이점
    • 12가지 유형의 큐비트 중 적합한 게이트 양자 컴퓨팅 방식 선택하기
    • 비즈니스 문제를 해결하는 데 도움이 되는 19가지 양자 알고리즘
      • → 19가지 양자 알고리즘을 소개는 해주나 비즈니스 문제를 해결하는데 도움이 되기까지는 무척 깊은 골짜기가 남아있다.
  • 양자 컴퓨팅으로 뭘 할 수 있을까 질문에 대한 답을 줌
  • 물리학이나 수학을 안다고 가정하지 않음
  • 프로그래밍을 한 경험이 있다고 가정하지 않음

파트 1. 양자 컴퓨팅의 성능

  • 양자 컴퓨팅은 오늘날 우리가 사용하고 있는 전통적인 컴퓨팅을 보완하는 것이 목표이며, 이를 대체하려는 것이 아님
    • → 소설이나 영화에 표현된 것 처럼 양자 컴퓨터가 상위 호환이라 나중엔 이로 대체되는 줄 알았으나 오해였다.
  • 양자 컴퓨팅의 이해를 돕는 다섯 가지 핵심 아이디어 양자 컴퓨팅 다섯가지 핵심 개념
    • napkin.ai를 이용해봤다.
    • 큐비트: 양자 역학적 특성을 지닌 비트
      • → 큐비트는 특정 물리적 객체라기보단 일종의 추상화된 개념으로 받아들이는게 이해에 수월했다. 실제 비트 표현은 트랜지스터라는 물리적 매개체로 이루어지듯, 큐비트 표현은 광자, 전자, 초전도 금속 등의 물리적 매개체로 이루어질 수 있다.
    • 중첩: 큐비트는 측정되기 전까지는 0과 1 사이의 무한한 범위의 값을 가질 수 있음. 여러 값을 동시에 가질 수 있는 능력
    • 얽힘: 큐비트는 서로 얽힌 상태에 있을 수 있음. 한 입자의 값을 측정하면 다른 입자의 대응하는 값을 알 수 있는 상태
    • 터널링: 중간에 장벽이 있어도 입자가 한곳에서 다른 곳으로 순간적으로 이동하는 행동
    • 결맞음: 전자 같은 양자 입자가 외부의 교란을 받지 않은 상태. 결맞음 상태의 입자만이 중첩과 얽힘 상태에 있을 수 있음
  • 큐비트는 광자, 중성 원자, 이온 트랩, 매우 많은 원자로 구성된 작은 초전도 금속 조각으로 이루어진 작은 물리적 조각인 양자 입자
  • 좋은 큐비트는 비교적 쉽게 결맞음 상태를 만들고 유지할 수 있음
  • 큐비트의 계산 결과는 확률 집합임
    • 주어진 큐비트로 오류 없이 같은 계산을 여러 번 반복하면 어떤 실행에서는 0을, 다른 실행에서는 1을 나타냄.
    • 최종 결과는 각 큐비트가 0또는 1을 나타낸 횟수로 구성됨.
    • 대부분의 양자 계산 결과는 단일 숫자가 아닌 확률 집합으로 나타남.
  • 양자 컴퓨팅의 다양한 유형
    • → 양자 컴퓨터는 한 종류가 아니라 여러 갈래가 존재했다.
    • 양자 기반 컴퓨팅quantum-inspired computing
      • 양자 컴퓨팅에서 얻은 통찰력을 사용해 전통적인 컴퓨터에서 실행되는 새로운 알고리즘을 만들 때
      • 양자 컴퓨터 시뮬레이터를 전통적인 컴퓨터에서 실행할 때
      • 양자 컴퓨팅 개발의 초기 단계에서 생산적인 접근 방식이었음
    • 양자 어닐링quantum annealing
      • 기존 전통적인 컴퓨팅에서 존재하는 시뮬레이티드 어닐링 접근 방식
      • 금속을 가열해 내부 구조를 녹인 다음 냉각항여 더 부드럽고 작업하기 쉬운 형태로 만드는 금속 공학의 담금질(어닐링)과 유사함
      • 외판원 경로 탐색같은 최적화 문제를 해결하는 데 유용
      • 이 방식의 양자 컴퓨팅 버전을 양자 어닐링이라고 함
      • 큐비트 오류를 허용하고 정확하지 않은 결과를 얻을 수 있지만 유용함
    • 게이트 기반 양자 컴퓨팅gate-based quantum computing
      • 양자 회로를 사용해 전통적인 컴퓨터의 논리 게이트 구조를 재현
      • 구현이 매우 어렵고 오류에서 자유롭지 않기에 현재는 효용성이 떨어짐
      • 충분한 시간이 지나면 게이트 기반 양자 컴퓨팅이 모든 종류의 문제를 처리하는 가장 좋은 방법이 될 것이라 믿음
  • 큰 도전 과제
    • 큐비트 길들이기: 간섭을 최소화하고 결맞음 상태를 유지시키기
    • 온도 변화, 진동, 물리적 상호 작용으로 인한 노이즈를 최소화하고 오류를 감지하기
  • 양자 컴퓨터는 오늘날 우리가 사용하는 컴퓨터와 협력해야만 자기 역할을 제대로 할 수 있음
    • 아직 중요 문제에서 전통적인 컴퓨팅보다 우월함을 입증하지 못함
    • IBM에서 127개의 큐비트를 이용해 127개의 막대자석 간의 상호 작용을 시뮬레이션함
    • 전통적인 슈퍼컴퓨터는 63큐비트까지만 따라잡을 수 있었음
  • 양자 역학의 핵심
    • 양자화: 공간, 시간, 물질, 에너지가 더 나눠질 수 없는 개별적인 단위로 구성됨
    • 불확정성: 기본 입자의 위치와 운동량을 동시에 알 수 없음. 이로 인해 전자 궤도는 핵 주위의 구름으로 표시됨
    • 결맞음: 중첩과 얽힘을 유지할 수 있는 상태
  • 결맞음 상태의 물질은 작고 단단한 당구공 같은 일상적인 물질보다는 파동처럼 작용하는 에너지 다발로 작용함
    • 아인슈탄인의 질량-에너지 등가 관계로 질량은 응축된 에너지라고 말할 수 있음
  • 양자 기술 발전에 전환점을 나타내는 기술들, 양자 기술 1.0 양자 기술 1.0 이정표.svg
    • 태양 전지 1890
      • 1905년 양자 역학의 산물로 아인슈타인이 광전 효과를 설명함
      • 양자 컴퓨팅에 직접 사용되진 않음
      • 태양 전지의 효율은 2006년에 40%의 효율을 달성. 2024년 최고 기록은 47.6% 태양광 발전 효율 연표
      • Best Research-Cell Efficiency Chart
    • 전자 현미경 1931
      • 더 나은 큐비트 제작을 위한 재료 연구에 활용
    • 트랜지스터 1947
      • 전자 터널링 같은 양자 효과를 피하도록 신중하게 설계됨. 고전 약학 체계에서 작동하는 양자 역학적 장치
    • 원자시계 1955
      • 2010년엔 기존 세슘 시계보다 더 정확한 양자 시계가 사용되기 시작함
    • 레이저 1960
      • 큐비트를 과냉각하는 데 사용됨
      • 레이저 빔을 원자에 쏘면, 레이저 빔의 광자가 원자에 흡수됐다가 다시 방출되며 원자는 에너지를 잃고 냉각됨
    • MRI 스캐너 1977
      • 핵자기 공명 원리를 사용해 양자 상태를 조작하고 제어함
  • 1961년 란다우어의 원리
    • 비트를 설정, 초기화하는 정보를 조작하는 비가역적 작업은 열을 방출함
    • 양자 컴퓨팅은 가역적인 연산만을 사용하기에 연구자들에게 피해야 할 방향을 제시함
  • 1968년 스티븐 위스너의 양자 화폐 연구
    • 양자 상태와 복제 금지 정리를 일종의 양자 워터마크로 화폐에 적용하는 것
    • 실제 작동하는 시스템은 구현되지 않음
    • 반바지님의 양자 암호화폐를 주제로 한 단편 만화
    • 반-바지. @bahnbazi님의 단편 만화가 생각났다.
  • 초기 양자 오류 정정
    • 큐비트는 처리 중에 결어긋남이 발생하는 경향이 있음
    • 양자 컴퓨터는 오류를 감지하고 수정하여 잘못된 큐비트를 복원할 수 있어야 함
    • → 마치 해밍 코드처럼. But what are Hamming codes? The origin of error correction
    • 쇼어 알고리즘의 피터 쇼어가 여러 큐비트에 논리 정보를 분산시키는 양자 오류 정정을 위한 최초의 실용적인 계획을 제안
  • d-wave가 출시한 최초의 상업용 양자 컴퓨터는 양자 어닐러 방식
    • 양자 어닐러는 최적화 문제만 처리하고 일반적인 문제는 다루지 못함
  • 저자가 생각하는 세 가지 주요 과제
    • 큐비트 수 증가
    • 오류 정정의 표준화
    • 전 세계적인 양자 컴퓨팅 이해도 향상

파트 2. 양자 컴퓨팅 옵션

  • 양자 컴퓨팅은 조합 폭발 문제에 강점이 있음
    • 조합 문제 최적화: 외판원 문제, 배낭 포장 문제, 배달 경로 설정, 물류 문제, 포트폴리오 최적화
    • 선형 대수 문제: 행렬 수학 및 주성분 분석, dna 분류를 위한 염기서열 분석
    • 인수 분해: rsa 컴퓨터 보안과 관련
    • 미분 방정식: 유체 역학, 양자 입자 모델링, 차량 설계, 신약 개발 및 의학 연구에 필요한 분자 시뮬레이션
    • 단백질 설계 개선, 펩타이드 설계 개선, 분자 간 유사성 검색, 임상 시험 최적화, 공급망 최적화, 경로 스케줄링, 교대 스케줄링, 재고 관리, 복잡한 제조 주기 최적화
  • 양자 컴퓨팅의 이점을 얻으려면 양자 컴퓨터에 적합한 알고리즘을 찾거나 만들고, 문제를 양자 컴퓨터에 맞게 재구성해야함
  • 양자 컴퓨터용 스택
    • 큐비트 & 제어 하드웨어: 전통적인 컴퓨팅 전문가에게 양자 컴퓨팅이 아직 초기 단계임을 설명하려면, 큐비트 종류가 다섯 가지 이상이라는 점을 말하면 충분함. 초전도 큐비트, 이온 트랩, 광자 기술, 중성 원자, 퀀텀닷 등 다섯 가지 종류의 큐비트가 존재
    • 오류 완화 펌웨어: 큐비트는 온도, 우주선, 자기장, 진동 등 환경적 요인에 따른 오류에 민감함. 펌웨어는 큐비트가 직면하는 환경적 영향을 관리하며 안정성을 높이고 오류를 줄임
    • 오류 정정 계층: 현재 하드웨어와 소프트웨어를 결합할 수 있는 오류 정정 계층이 부족함. 이상적인 표준을 논리적 큐비트를 사용하는 것. 신뢰할 수 있는 논리적 큐비트 하나를 생성하는 데 여러 물리적 큐비트에 오류를 분산하는 방식.
    • 하드웨어 인식 컴파일러: 양자 컴퓨팅에서는 각 큐비트와 제어 하드웨어 조합마다 고유한 기계어가 있으며 자주 바뀌고 있음. 컴파일러는 프로그래밍 명령에 필요한 하드웨어 단계를 최소화하여 결어긋남이나 오류 발생 전에 완료될 확률을 높임.
    • 논리 계층 최적화 도구
    • 알고리즘 기반 응용 프로그램
    • quantum computing as a service와 sdk: 대부분의 사용자는 aws 브라켓, ibm 퀀텀, 스트레인지웍스 등이 클라우드 기반 양자 서비스Qaas를 이용함
  • 양자 어닐링은 양자 컴퓨팅의 다른 유형으로 d-wave에서만 제공함
    • 어닐러의 큐비트는 범용 양자 컴퓨터의 큐비트만큼 정교하지 않음
    • 양자 어닐링은 범용 양자 컴퓨팅보다 성숙한 단계
    • 특정 문제들은 항상 양자 어닐링에 적합하므로 유용한 도구로 가치가 있음
    • 어닐링 로직은 설명이 쉽고 알고리즘 요소의 좋은 예시가 됨
    • 양자 어닐러는 최적화 문제 해결에 뛰어나며 이차 비제약 이진 최적화 식으로 표현할 수 있는 모든 문제를 다룰 수 있음
    • → d-wave는 양자 어닐러 방식이라 여기서 큐비트 개수가 5천개 넘었다고 하는건 ibm들의 범용 양자컴퓨터에서 큐비트 100개 넘었다고 했을 때 규모가 50배 큰게아니라 아예 비교 대상 자체가 다름
  • 양자 컴퓨팅에 뛰어들 땐 목표를 정하는게 좋음
    • 학습과 전략 수립
    • 교육
    • 기회 평가
    • 프로젝트 작업

파트 3. 양자 컴퓨팅과 얽히기

  • 양자 컴퓨팅의 힘
    • 전통적인 컴퓨터가 2256개의 가능한 답이 있는 문제에서 하나의 답을 찾는 데 1초가 걸린다고 가정. 가능한 모든 답을 만들려면 2256번 문제를 풀어야 함
    • 256개의 오류 정정 큐비트가 있는 양자 컴퓨터도 1초가 걸린다고 가정
    • 양자 컴퓨터는 첫 번째 시도에서 2256개의 선택지 중 가능한 최고의 답을 1초만에 제시함
    • → 고전 컴퓨터는 8비트의 모든 상태를 모두 나열하려면 일단 가능한 상태 28가지만큼의 8비트 = 총 8 * 28 = 2,048개의 비트가 필요함
    • → 큐비트는 28가지의 모든 상태를 계산하기 위해 8개의 큐비트만 필요로 함
  • 양자 컴퓨팅 논리 게이트의 기능을 이해하려면 허수의 더 깊은 의미, 행렬 수학에 대한 이해, 블로흐 구면의 정보에 입각한 사용법에 대한 성찰이 필요함
  • 양자 근사 최적화 알고리즘QAOA, quantum approximate optimization algorithm 알고리즘은 논리 게이트 양자 컴퓨터로 매우 까다로운 문제를 해결하는 특별한 알고리즘
  • 양자 근사 최적화 알고리즘을 이용해 이차 비제약 이진 최적화QUBO, quadratic unconstrained binary optimization 문제를 해결함. 한 단어씩 풀어서 보자면
    • 최적화: 일련의 도시 간 최단 경로 찾기, 리소스 사용량 최소화, 비즈니스 수익 극대화 등 문제에 대한 최적의 해결책을 찾음
    • 이진: 문제의 변수가 0, 1처럼 두 가지 값 중 하나만 가질 수 있음. e.g. 여행 일정에서 특정 도시를 포함할지 여부(포함: 1, 비포함: 0)
    • 비제약: 가능한 솔루션에 제약이 없음. 즉 0과 1의 모든 조합이 허용됨. 반대로 '최소 3개 도시는 방문해야 함'같은 규칙은 제약 조건이 있는 것
    • 이차: 문제를 풀기 위해 사용되는 수학 함수의 유형으로 변수의 제곱을 포함함. 함수가 이차 함수로 정의됨
  • 다양한 응용 분야에 유용한 양자 컴퓨팅 알고리즘
    • 암호화 분야
      • 쇼어 알고리즘
      • 사이먼 알고리즘
    • 머신러닝 분야
      • 양자 신경망을 사용한 양자 위상 추정(QPE-QNN) 알고리즘
      • 양자 주성분 분석(PCA) 알고리즘
      • 양자 서포트 벡터 머신(QSVM) 알고리즘
      • 양자 k-평균 알고리즘
    • 검색 및 최적화 분야
      • 그로버 알고리즘
      • 양자 위상 추정(QPE) 알고리즘
      • 양자 푸리에 변환(QFT) 알고리즘
      • 핼-하시딤-로이드(HHL) 알고리즘
      • 양자 근사 최적화 알고리즘(QAOA)
      • 변분 양자 고유값 해법(VQE) 알고리즘
      • 양자 카운팅 알고리즘
      • 양자 푸리에 샘플링 알고리즘
      • 진폭 추정 알고리즘
      • 양자 걸음 알고리즘
      • 숨겨진 하위 그룹 문제(HSP) 알고리즘
      • 양자 행렬 반전 알고리즘
      • 비선형 함수의 양자 근사화(QANF) 알고리즘
  • 양자 컴퓨팅에 기대하는 속도 향상
    • 다항식 속도 향상: 전통적인 컴퓨터에게 O(n2) 시간이 필요하지만 양자 컴퓨터엔 O(n) 시간만 필요함. e.g. 그로버 검색 알고리즘
    • 기하급수적인 속도 향상: 전통적인 컴퓨터가 O(2n) 시간이 걸리는 문제를 양자 컴퓨터는 O(n) 시간만에 품. e.g. 쇼어 알고리즘이 인수 분해에서 이런 속도 향상을 보여줌
  • 쇼어 알고리즘에 대한 설명
  • 그로버 알고리즘에 대한 설명
  • 대표적 오해: 큐비트는 0과 1이 동시에 될 수 있다
    • 큐비트는 실행 중 실수와 허수의 선형 조합 값을 나타내는 상태의 중첩에 있을 수 있음
    • 이 중첩과 얽힘 덕분에 양자 컴퓨터는 병렬 연산을 수행할 수 있음
    • 회로의 끝에서 측정하면 큐비트는 0 또는 1로 측정되는 하나의 상태로 붕괴함
    • 오해를 더 정확히 풀어 표현해보자면
      • 큐비트는 처음 측정할 때 0 또는 1이 나올 수 있는 값으로 초기화함
      • 큐비트를 게이트라는 일련의 단계로 프로그래밍함
      • 각 단계에서 측정하면 0 또는 1이 나옴
      • 모든 게이트가 끝나면 큐비트를 측정해 최종적으로 0 또는 1을 얻음

책을 읽고

  • 앞서 소개한 Google의 최첨단 양자(quantum) 칩, Willow, 구글 윌로우라는 물건 글의 의의를 좀 더 이해할 수 있게 됐다.
  • 책을 읽으며 여러 궁금증이 들었는데 chatgpt와의 대화가 도움이 되었고, 책 내용을 rag로 넣을 수 있으면 더 좋았을텐데 아쉬웠다. 아래는 물어봤던 질문과 답변들
    • 프로그램의 실행 결과가 실제 양자 컴퓨터를 통한 결과인지 아니면 전통적인 컴퓨터를 통한 결과인지 어떻게 알 수 있나?
    • 결맞음 & 얽힘 상태에서 관측할 때 다른 입자의 상태가 결정된다는게 어떤 의의가 있는건지? 왜 성능을 증가시켜줄 수 있는건지?
    • 107p 레이저로 큐비트를 과냉각 한다는데 레이저를 쏘면 에너지를 얻는게 아니라 어떻게 냉각이 되는건가?
    • E=mc2이고 광자는 질량이 0이면 그럼 광자는 에너지가 0인가?
    • 흑체 복사 문제(black body problem)는 왜 문제(problem)였나? 그냥 에너지가 방출된다에 대한 증명 그 이상인가?
    • 134p 원래 업스핀 다운스핀이 50%, 50% 정해졌는데 관측을 안했을 뿐이지 이미 결정되어 있다는 개념 vs 관측순간 붕괴되어 결정된다 이 두 관점에 1. 차이가 있는건지? 2. 후자란걸 어떻게 증명하는지?
  • 생성형 ai, llm의 흐름으로 단순 코드 구현 능력은 점점 덜 중요해지고 있다.
    • 우리는 문제 해결 능력에 더 집중하는데 더 나아가 '무엇이 문제인가'를 정의하는 능력이 더 중요하겠단 생각이 든다.
    • 인문학과 상상력, 사회에 대한 관심, 창의력에 기반한 문제 정의 능력을 기르자
    • 최근 읽었던 『대체 뭐가 문제야』 책도 문득 떠오른다
  • 더 많은 분야에 흥미를 갖고 바운더리를 넓히며 살아야겠다

더 읽어볼 거리

책에서 소개해준 사이트와 개인적으로 찾아보며 좋았던 자료를 소개한다.