brunch

양자 컴퓨터 생각으로 시작하는...

by HJH

양자 컴퓨터는 프로그래머에게는 빠질 수 없는 주제다. 얄상하게 아는 나의 '앎'과 대부분의 '모름'을 이야기하는 글이지만, 이미 많은 기업 세미나에서 입증했듯이 그 어떤 이론보다 쉽게 설명할 수 있고, 내 세미나에 참석한 독자분들은 아니시기에 나름 믿게 하기 위한 정보도 적는다. 새벽 시간에 심심한 것도 있고, 화사첨족이 워낙 많을 터라 빠르게 읽고 싶으신 부은 볼드체의 글귀만 보셔도 된다. 일단 올리고 시간을 들여 차차 퇴고할 생각이다.



주제넘은 이야기 이기도 하지만 한국에 양자 컴퓨터가 들어오지 않을 때 국가 기관에 나름의 조언의 역할도 했다. 물론, 잘 모르는 상태지만 "나는 이렇게 생각한다"가 다였다. 최근에는 다양한 SNS를 통해 나를 나타내고 있고. 그렇게 가까운 사람이라고 자처하는 사람들도 내가 삼성 내부 고발 이후에 방송 출연하며, 힘 있는 사람들과 어울리다 보니 그 사람들을 소개 안 시켜 준다고 온갖 루머를 생산해 내며, 까 내리게 바쁨을 경험했다. 그러던 차에 그런 유명한 부류(삶을 치열하게 사는)의 네트워크는 더 커지고 지금은 그냥 이름을 나열해도 내가 프로그래머니까 이해해 줄 만큼의 입지도 다지게 된 것 같다. 다음 주에도 대전에 가서 특정 분야에서는 대한민국 최고라는 기술자들과 회의자 잡혀 있다. 그래서 나는 내 식대로 생각할 만큼 이런 분야에 오래 있었고, 내 분야로 나름의 네트워크를 형성했으며 현역이라는 말을 미리 하고 싶다. 그리고 정점에 있는 사람들은 "모른다"라는 것에 큰 의미를 두지 않는다. 모르는 것은 모른다고 편하게 말하고 아는 것은 안다고 말한다. 그렇게 투명하게 소통이 되며 빈 지식이 메워져 가고 그것이 일류의 사고방식이며 대화 방식이다. 젠슨황도 만약 본인이 틀렸다고 생각하거나 비즈니스 적으로 그게 맞다고 한다면, 쉽게 인정할 사람임을 만나보지 않아도 쉽게 알 수 있다.



그런데 이 말은 틀리지 않았다. 디웨이브는 타짜다. 디웨이브는 그동안 하도 구라를 치기도 했고, 더 구라를 쳐야 하는 입장이다. 물론, 디웨이브가 양자 컴퓨터 섹터에 불을 붙인 것은 맞다. 만들지도 못한 양자 컴퓨터를 만들었다며, 수많은 관심을 끌었으니 말이다. 구글의 경우 지금 인공지능 핵심 기술에 딥러닝에 투자를 하며 딥러닝 기술로 신약 개발과 양자 컴퓨팅 개발에 쏟고 있다. 삼성폰의 모든 자료는 구글을 통하고, 우리가 많이 쓰는 유튜브나 기타 서비스도 많이 들고 있어서 우리의 정보와 돈이 실제로 구글 베이스로 돌고 있다. 딥러닝 기술은 설명이나 이해는 되지 않지만 제품은 만들 수 있는 발판이 있는 것이다. 여기서 딥러닝은 데이터에서 수식을 찾아내는 기술이다. y=2x 하면 x 값에 따른 y를 찾을 수 있다. 그런데 y=2x 수식을 모를 때는 수많은 자료의 쌍을 가지고 y=2x라는 수식을 찾는다. 이렇게 찾은 수식을 인공지능 분야에서는 모델이라고 한다. 인공지능 안에 머신 러닝이 있고 머신러닝 안에 딥러닝이 있는데 대부분은 딥러닝의 이런 방식을 통하고 인공지능이라는 이름으로 확장시켜서 마치 사람 같은 인간이 똑같은 무언가를 할 수 있다는 희망을 준다. 딥러닝의 핵심 기술은 신경망이고, chatGPT와 같은 LLM 기술의 핵심 기술은 트랜스포머이며, 양자 컴퓨터의 핵심 개념은 힐베르트 공간이라고 생각한다.


2 나노면 머리카락의 약 7만분의 1이다. 그런데 반도체로 만든다. 원자는 원자핵과 전자로 구성되는데 그 크기가 0.1에서 0.5 나노미터라고 한다. 지금 우리 기술이 사실상 20배 혹은 4배 정도의 크기로는 만들 수 있다는 뜻이다. 양자는 전자, 양성자, 중성자, 쿼크, 광자 등... 이렇게 작은 미세 입자를 말하는 것이고 양자 역학은 이런 미세 입자들을 법칙을 연구하는 학문이다. 인간이 만드는 법처럼 마음대로 정하는게 아니라 이미 정해진 신의 법칙인 것이다. 여기 내 프로그래머의 자부심이 담겨 있는데 사실 법조계에 있는 분들과 이야기를 하면 엄청나게 까이는 점이기도 하다. 나는 매년 바뀌는 법에 대해 비판하면 인간 관계의 기본에서 출발하고 법도 본질은 변하지 않는다는 식으로 까인다고 할까? 믓튼, 반도체 자체가 양자역학 기술로 만들어 졌고, 그 크기도 이제 양자 대표격인 원자 크기에 다 다르고 있기 때문에 양자 컴퓨터가 막 무슨 신기술 같이 느껴지지는 않는다. 인터넷에 떠도는 수 많은 큐비트나 양자 얽힘에 대한 이야기는 사실 귀에 안 들어온다. 힐베르트 공간을 알아야 0과 1을 나누거나 공존하는 그 기준점을 찾을 수 있을텐데 쉽게 설명한다고 우리가 아는 평범 공간에서의 그림이나 x, y, z로 표현하는 것 때문에 오히려 이해하는데 방해가 되는 것 같다. 힐베르트공간은 수학적 개념이라 관련 논문을 봐도 이해가 잘 되지 않음이 내 '모름'의 근본이며 결국 수학을 알아야 양자 역학을 조금이나마 이해할 수 있다는 방법 정도는 아는 상태다. 양자 역학에서는 관측 자체가 0과 1의 결정에 영향을 미치고 그 관측 되는 순간에 우리가 정해 놓은 기준점(그게 에너지던 위상이던)에서 움직이기에 온도, 방사선, 진동 등의 조건을 달리하며 관측할 때마다 바뀌는데 모든 조건이 같아도 명확한 답이 나오진 않는다. 다만 확률적으로 똑같은 답이 나오는데 이러한 확률의 세계에서는 불완전한 해답을 최대한 내가 이해하는 수준의 결과와 1:1 매칭을 시키는 것이 이 동네 프로그래머들이 하는 일이다. 그리고 그것은 하나씩의 계산이 아닌 모든 상태가 공존하다가 관측하는 순간 한번에 결정되는 것이기에 현재로서는 특정 계산에서만 이용할 수 밖에 없다. 왜냐면 컴퓨터는 소수점 오차 하나 해결 못하지만 나름 정확하기 때문이다. 다음 코드는 사실 프로그래밍을 몰라도 바로 이해가 될 것이다(그게 고급 언어의 장점이기 때문)


a = 0.1

b = 0.2

result = a + b

print(result) # 출력: 0.30000000000000004


c = 1.0

d = 3.0

result_div = c / d

print(result_div) # 출력: 0.3333333333333333


sum_value = 0.0

for _ in range(10):

sum_value += 0.1

print(sum_value) # 출력: 0.9999999999999999


지금 컴퓨터도 정확한 값 계산이 안되기 때문에 확률적인 양자 컴퓨터의 미래가 밝을지도 모른다.


오늘 내가 양자 컴퓨터 관련해서 글을 쓰는 이유는 이런 희망이 요즘에는 두려움을 주는 것으로 바뀌었기 때문에 내가 포커싱하는 지식의 부족함을 나눔 해서 다음 세대가 양자 컴퓨터에 대한 도전을 했으면 하는 바람으로 쓴다.


우선, 최근 딥러닝 트랜스포머 모델과 오픈소스 LLM을 통해 파인 튜닝과 양자화를 거쳐 1GB 자료로 8GB 언더의 라마 2 모델을 만들었다. 뭔가가 된다고 한다는 것 자체가 큰 정보고 내가 처음 한 건 아니고 삼성에서 했다고 해서 나도 해 봤다.

https://www.newspim.com/news/view/20240119000974

미주 CDMA 팀에서 시작해서 B2B 개발팀 시절 내가 속한 부서의 상사시기도 하고, 같은 아파트 라인이라 분리수거하러 갈 때 간간히 뵙기도 해서 하는 말인데, 새벽에 출근하시는 모습, 늦은 밤 퇴근을 자주 봐서 삼성 임원은 그 누구보다 열심히 일하는 것도 현재 진행형이다. 난 작은 회사 임원이기도 하고 6개월 넘게 재택근무를 하고 있어서 어제도 엘리베이터에서 가족들과 함께 마주쳤는데, 근래엔 더 자주 마주치는 것 같다. 업계에서 선두에 있는 분들의 일상은 늘 한결같고 새벽같고 야심한 밤 같은게 그런 이유이다. 그렇다고 해도 산업법이 무서워서 인사 외엔 뭘 물어볼 수도 없고, 뉴스 기사를 통하지 않은 정보 얻기는 힘드니 언젠가 은퇴하시면 IT Field 이야기를 할 수 있지 않을까 한다. 물론, 삼성에서 핵심 기술을 담당하는 많은 사람들과 연계가 있고 그분들은 동기들 제외하고 내 아직 인스타에 공개하지도 않았기에, 다른 분들께 피해를 주지 않기 위함과 내가 사기꾼이 되지 않기 위에 최대한 내가 만들어 본 것 위주로, 또 내가 생각한 부분만 적을 수 밖에 없다.


y=2x 수식으로 다시 돌아가서... 최근에는 x, y 값이 수 없이 많은 데이터로 y=2x 수식이라는 모델을 찾아내지만 이미지 학습 분야로 넘어가니 비지도 학습이 유행이었다. 그냥 비스무리한 수 많은 무작위 데이터에서 특징점 자체를 찾아내는 것이다. 자료 7만개 정도를 크롤링해서 GAN 같이 석학들이 만들어 놓은 이론을 통해서 학습 시키니 꽤 괜찮은 제품이 나왔고, 그걸 네이버에서 이미 팔고 있었다. 나는 주력이 상품화 단 프로그래머다 보니 대기업을 나오고 나서는 앱스토어나 구글 플레이, 언리얼 마켓(지금은 FAB) 등 마켓에 상품을 등록하는 것 까지가 내 일의 시작이고 고객의 bug report를 통해 트러블 슈팅으로 모든 버그를 잡는 것이 내 일의 끝이다. 물론, 운영체제 업데이트 까지는 고려 안한다. 선행 개발은 그 전까지가 딱 재미있다. 이런 잔차로 양자 컴퓨터 기술을 멀리 떨어져서 생각할 수는 없다. 양자 컴퓨터에서 할 수 있다는 이론은 빠르게 포기하고 다른 분야에 집중을 해야 하기 때문이다. 그리고 디웨이브가 나온게 20년이 넘었는데(1999년) 아직도 소인수 분해 알고리즘 하나 못 깨서 비트코인이 1.5억이 된 것을 보고, 젠슨황의 말이 틀렸다고 어떻게 말할 수 있으랴? 딥러닝이 아니었다면 120년이라고 해도 되는 것이었는데 사실 요즘엔 y=2x가 아닌 1000차원 20000차원의 수식도 만들어 내는 터라. 그 수식은 설명 못해도 그 수식이 적용되는 chatGPT 가 얼마나 우리 삶에 도움을 주는지 눈에 보인다.


뻔한 결말인데, D-wave에서 경영하는 사람들은 쓸모가 없지만 결국 그 엔지니어들은 구글팀에 합류해서 양자 컴퓨터의 미래를 열어 갈 것이라 확신한다. 물론, 그들만의 리그에서 우리가 무조건 필요해! 라고 할수는 있겠지만... 요리 하나 하는데 20년이 넘게 걸리고 가끔씩 내어오는 것도 맛없는 요리라면... 거기에 대한 투자는 멈추고 알아서 지금 만든 요리로 자본주의에서 살아 남던지. 그레고리페렐만 같은 사람을 어떻게든 영입해서 우리는 무조건 인류의 지식에 도움을 줄 수 있다고 어필하는게 나아 보인다. 그게 아니면 아이비리그 교수나 실리콘벨리의 석학들이 참여했다가 사기꾼 소리 들은 코인들이 그랬듯이 사기꾼 도장이 땅하고 찍힐 것이다.


보통 초고를 쓰고 맞춤법 검사만 해서 내 보낸 후 퇴고하는 경우가 많은데 나노면 -> 나오면 으로 바꾸어 버리기에... ㅠㅠ 슬픈 새벽이다.


이제 가족들이 슬슬 깨고 있어서 여기까지 쓰고 좀 올려 두었다가 지우던지 해야겠다. 시스템경영과 컴퓨터과학 전공 이후에 어떤 학사를 할지 고민이었는데 수학과로 가야 겠다는 생각이 든다. 다만, 순수 학문으로 가면 내가 하는 일과 너무 동떨어져서 회사에도 미안해 지니 좀 더 고민은 해봐야 겠다. 60도 이제 16년 밖에 안 남았는데 더 이상 미루면 이해나 할 수 있을까 라는 걱정도 되긴 하지만.


이런 분도 계시니... 학위가 있으니 뉴스 기사까지 나겠지만,


학위가 아니더라도 난 뭔가를 깨닫고 아는 사람들이 부럽다. 양자 컴퓨터 변두리에서 멤돌다 양자 컴퓨터 이론에 다가갈 수 있는 수학을 전공하기 까지 현실적으로 해결해야 하는 주어진 임무가 많다. 하지만 또 이런 관심이 언젠가 내가 해결 못하는 문제에 당면했을 때 딥러닝을 아는 그런 절차와 방법론으로 문제를 풀지 못할 때


이런 인식이 널리 퍼져서 우리 한국도 명품백, 비싼차를 나이 먹어서도 자랑하는 문화가 좀 더 인간답게 바뀌었으면 한다. 양자역학을 이해한 사람들이 부러워서 늘 영상을 찾아보며 지낸다. 리처드 파인만이 양자 역학을 완벽히 이해한 사람은 없다가 사실상 불완전하고 확률적인 양자 세상에서 가장 명확한 정의로 보인다. 세상에 변하지 않는 것은 없다. 는 말처럼 말이다.



keyword
작가의 이전글오징어 게임 참가한 퇴계이황, 세종대왕