Top Coder RAW novel - Chapter (121)
탑 코더-121화(121/303)
# 121
세기의 이벤트
네이처는 세계에서 가장 오래 되고, 저명하다고 알려진 학술지. 거기에 실렸다는 것 자체가 논문의 가치를 입증하는 것이나 다름없었다. 그런데 왜 하필이면 대결이 한 달 밖에 남지 않은 시점에 논문을 발표 했을까.
대결을 하고 나서 발표를 했어도 될 텐데.
왜 하필 이 시기에······.
‘내게 던지는 메시지 같은 건가.’
다른 이들은 모르겠지만 승호는 알 수 있었다. 대결을 성사시키기 위해 절박한 심정으로 포트를 찾았던 그때. 그곳에서 에이든을 비롯해 포트의 중요 기술자들을 만났다. 거기에는 제프 월슨도 있었다.
-당신이 강승호 입니까?
자신의 우상 이자 포트의 핵심이자 전부라 불리기도 하는 개발자.
-마, 맞습니다.
그 와의 인사에 승호도 긴장할 수밖에 없었다.
-에이든에게 이야기는 많이 들었습니다. 이 친구의 높은 콧대를 콱 눌러 줬다고.
농담인지 진담인지 모를 말에 어색하게 웃을 수밖에 없었다.
-하하. 네, 뭐.
-에이든의 코를 납작하게 해줬다는 건 에이든 보다 실력이 뛰어나다는 뜻. 굳이 실력을 검증해 볼 필요도 없겠습니다. 듣자하니 포트와 대결을 하고 싶다고요.
-네. 인공지능으로 바둑 대결을 하고 싶습니다.
-흐음······.
-여러 조건을 생각 해 봤는데······.
-알아보니 이미 회장님께서 인수 제안을 하셨더군요. 만약 포트가 이기게 된다면 당시 회장님이 제안한 인수 금액의 절반에 피인수 된다고 해도 괜찮겠습니까?
협상 당시 유니콘이라는 말을 듣고 있던 때였다.
즉 1조.
그런데 포트 회장이 제안한 금액 5억 달러의 절반이라면 2.5억 달러.
지게 되면 손해 보게 되는 금액이 한화로 7500억이 넘는다. 제프의 표정에서는 그게 아니라면 수락 할 수 없다는 의지가 넘쳐흘렀다. 그러나 시내소프트와 포트의 위치를 본다면. 승호는 손해 볼 게 없다고 생각했다.
-감사합니다.
이내 흥미로운 표정으로 승호를 보며 말했다.
-만약 대결 이전에 포기 하고 포트로 들어온다면 현재 유니콘이라 평가 받는 가치 그대로 지불 하겠습니다.
뜻밖의 제안에 승호가 되물었다.
-네?
-포트의 이름을 드높이면서, 강승호씨를 얻는데 그 정도 금액이면 충분히 합리적이라 생각합니다. 충분히 생각해 보고 결정해 주세요. 시간은 대결 1주일 전까지.
그때의 기억이 빠르게 스쳐 지나갔다.
‘아마 그래서 발표 한 거겠지. 압도적인 성능으로 대결을 포기 시키려고.’
승호가 침묵하고 있던 건 불과 수 초.
이내 빠르게 정신을 차리고, 말을 이었다.
“승부가 다시 박빙이 되었군요. 다시 질문 받겠습니다.”
그러나 굳어진 표정마저 감추지는 못했다.
***
D-15.
고동만이 착잡한 표정으로 탁자위에 놓여 있는 차를 한 입 삼켰다.
“시내 소프트에서는 아직 별 다른 반응이 없나?”
대기 하고 있던 비서가 바로 입을 열었다.
“네. 시연회 이후. 별 다른 액션은 없습니다.”
“ONE과 NPU의 기술 협력도 이젠 완전히 멈췄겠어.”
비서가 무겁게 고개를 끄덕였다.
“맞습니다. 사실상 기술 교류는 최초의 설계도를 공유하고 종료된 것이라 봐도 무방합니다.”
“흐음······.”
비서가 옆구리에 끼고 있던 결제 판을 내밀었다.
“시내 소프트가 패배할 경우 선진전자 대응 방안입니다.”
고동만이 비서가 내민 시나리오를 읽어 내려갔다. 미간에는 잔뜩 주름이 잡혀 있었고, 읽을수록 탄식이 흘러나왔다.
“결론은 선을 긋 겠다는 거군.”
“네. 어차피 저희는 NPU라는 칩을 공급했을 뿐 ONE의 개발에는 참여하지 않았으니까요. 선진전자의 위명에 누가 되는 일은 없을 겁니다.”
“자본을 쏟아 부어 마케팅을 하면 호박을 수박이라 해도 믿는 게 대중들이니.”
“일단 철저하게 준비 해놔.”
“알겠습니다.”
“반대의 경우 계획은 어떻게 되나?”
“초기 계획에서 큰 변화는 없습니다.”
“그것도 다시 올려봐. 약간 손봐야 할 수도 있으니까.”
“굳이 그럴 필요가 있을까요. 현재 인터넷 도박 사이트 에서도 9대1의 경우로 포트의 승리를 점치고 있습니다. 더욱이 사장님께서도 포트에서 발표한 논문을 보시지 않았습니까.”
고동만이 차를 한 입 더 머금었다. 고동만이 마시고 있는 건 중국에서 들여온 보이 차. 은은한 단맛이 입가를 머물며 머리를 맑게 만들어 주었다.
“알잖아. 강 대표가 지금 까지 보여준 행적을.”
“그야 그렇지만 이번에는 힘들지 않을까요.”
“이번, 이번, 이번. 그때마다 이변이 벌어졌어. 미리미리 준비해둬서 나쁠 건 없겠지.”
“알겠습니다. 준비해 두겠습니다.”
“그리고 또 한 가지 보고 드릴 사항이 있습니다.”
고동만이 고개를 끄덕이자 비서가 말을 이었다.
“이번 기술 교류를 통해 연구원들이 하나 같이 말한 것이 있습니다.”
고동만이 아랫입술을 꽉 깨물었다. 이건 비서에게 듣지 않아도 자신이 알고 있던 이야기였다.
“강 대표가 XRM사 출신이 아니냐는 말까지 나왔습니다.”
XRM.
세계 최고의 CPU 설계 회사로 PC용뿐만이 아니라, 스마트 폰에 들어가는 칩 설계에서도 부동의 세계 1위 업체였다. 선진이나 에이 폰을 만드는 망고 사에서도 XRM에서 설계한 스마트 폰 전용 AP 설계도를 사용하고 있는 실정. 연구원들의 입에서 그 정도의 말이 나왔다는 건.
“강 대표가 그 쪽 분야에도 식견이 있다는 말이군.”
“식견 정도가 아닙니다. 거의 전문가를 넘어서는 수준이더군요. 그런데 연구원들이 소극적으로 응대하는 바람에 강 대표가 내심 언짢아했다는 말이 있습니다.”
고동만이 비서를 직시하며 말했다.
“내가 한 점 숨기는 것 없이 적극적으로 대응하라는 지시를 내렸는데도 말인가?”
“연구원들 사이에서 자신들이 힘겹게 개발한 내용을 왜 공유 하냐는 분위기가 있었습니다. 그래서 정보 공유에 소극적으로 응대 한 모양입니다.”
“그래서 시연회 당시에도 그간의 성과만이 있고, 세세한 구조나 내용은 없었군.”
“네. 뿐만 아니라 ONE에 대한 개발 내용도 초기 버전 공유 이후 거의 유명무실 해졌다고 합니다.”
고동만이 고개를 흔들며 혀를 찼다.
“쯧쯧. 내가 그렇게 일렀건만 기어이.”
“죄송합니다. 저도 몇 번이나 강조 했지만 실무 진 쪽에서 그렇게 반응 할 줄은 몰랐습니다.”
“그 놈들이 들어온 복을 차버렸어.”
고동만이 남아 있는 차를 한 입에 털어버렸다. 쓴 맛이 올라오며 입안이 텁텁해졌다. 속도 별반 다르지 않았다.
“강 대표가 섭섭하게 생각하지는 않을까. 그게 걱정입니다.”
고동만도 내심 그게 걱정이었다. 그러나 이내 고개를 흔들며 잡념을 털어 냈다.
“오히려 잘 된 걸지도. 그와 협력하는 건 찬성이지만 의지하는 건 안 돼. 지금도 너무 의지하고 있는 건 아닌가 하는 생각이 들 정도니.”
협력(協力)과 의지(依支).
두 단어에 담긴 뜻을 알기에 비서도 무겁게 고개를 끄덕였다.
***
D-10 늦은 저녁.
시내소프트 인공지능 프로젝트 팀이 위치한 층은 환하게 불이 켜져 있었다.
“엘로 점수 5810 나왔습니다.”
백채원의 보고에 예카테리나 박사가 차갑게 중얼 거렸다.
“어제 보다 100점 올라갔군요.”
“이 속도면 대결 전에 6000점은 넘을 수 있을 것 같아요.”
“그 걸로는 부족합니다. 포트는 한 달 전에 6120점을 넘었어요. 대결 때 까지 6500점은 된다고 봐야 해요.”
백채원의 매끈한 이마에 잔주름이 생겼다.
“휴우······.”
그리고 이어진 한 숨.
근래 연일 계속되는 강행군에 몸과 마음이 슬슬 지치기 시작했다. 그런 백채원을 향해 예카테리나가 특유의 얼음 화살을 날렸다.
“포기할 거면 지금 나가세요. 분위기 해치지 말고.”
그러나 백채원도 만만치 않았다. 바로 두 볼을 짝 소리 나도록 쳤다.
“아니요. 그런 일은 없습니다.”
그러고는 다시 모니터를 보며 집중했다.
승호는 네이처 지에 올라온 포트의 논문을 보고 있었다.
‘정책 망과 가치 망을 통합해 단일 신경망으로 작동하게 만들었다.’
벌써 수백 번 논문을 보고 또 보고 있었다. 머릿속이 뿌연 안개가 드리운 것처럼 흐리멍덩했다. 팔과 눈을 이식받은 이후로 이런 경험은 처음이었다.
과연 포트라고 해야 할까.
논문을 이해하는 것조차 쉽지 않았다.
‘내용에 따르면 수(手)를 고르는 작업은 줄이고 수를 판단하는 가치 망. 즉 트리 탐색에는 더 많은 시간을 쏟는다고 되어 있어. 즉 예측 정확도는 다소 낮아지나 값의 오류를 줄이고 플레이 성능을 높이는 방식을 택한 거지.’
고민에 고민을 거듭했다.
‘해당 수(手)의 승률 분석하는데 더 많은 시간을 쏟는 대신. 델타 코어가 선택 하는 수(手)가 최선이 아닐 가능성이 높아진 거야.’
승호가 강하게 주먹을 쥐었다가 폈다.
어려웠다.
새롭게 태어난 이후로 이렇게 어려운 문제를 맞닥뜨린 건 처음이었다. NPU의 성능을 개선하는 것도 이렇게 어렵지는 않았다. 이미 초기 설계도가 있었고, 성능을 극한으로 올리는 것이 아닌 약간의 튜닝 정도였기에.
그러나 이번 건은 달랐다.
구조 자체를 완전히 바꿔야 하는 작업.
어떻게 했는지 알아낸다고 해서 이걸 기간 내에 다시 적용해 테스트를 해 볼 수 있을지도 약간 의문이 들 정도였다.
‘바둑에서 나오는 경우의 수는 361! 이 숫자는 10의 68승인 무량대수 보다 크니까. 해당 수(手)를 두었을 때 전체 경우의 수를 탐색하는 건 거의 불가능해. 다만 포트는 더 많은 경우의 수를 탐색하는 쪽으로 방향을 정한 거야.’
고민하고 또 고민했다. 하루 종일 논문을 붙들고 앉아 있었다. 이걸 완전히 자기 것으로 소화 하고, 그걸 통해 새로운 발전 된 안을 내놓기 위해.
‘그래서 신경망 함수 F에 의해 유도된 MCTS 알고리즘 탐색이 실행되는 거야. 이때 사용되는 건 우리가 알고 있는 일반 적인 MCTS 알고리즘이 아니라 포트가 향상시킨 내용이고. 그 내용은······.’
다행인 것은 벌써 수백 번을 곱씹다 보니 차츰 내용이 정리 되고 있다는 것. 델타 코어의 구조가 보이자 수식이 머릿속에 들어왔다.
함수 F.
MCTS A 같은 것들이 어떤 의미로 사용되는지 알 것 같았다. 그런 승호를 향해 예카테리나가 씁쓸한 표정으로 말했다.
“이제 그만 포기하고, 기존 성능을 높이는 방법을 찾아봐요. 어차피 엘로 점수 6000대면 우리와 100정도의 차이. 충분히 해볼 만한 점수니까요. 대표님이 거기에 시간을 쏟고 있으면 6000. 달성하지 못할 지도 모릅니다.”
그러나 승호는 듣지 못했다. 정신없이 바로 옆에 준비 해놓은 500cm*300cm 화이트보드에 수식을 적어 나가고 있었다.
‘해당 알고리즘을 향상 시킬 때 핵심 키워드는 검색 연산자. 검색 연산자를 통해 특정 수(手)가 어느 정도의 승률을 기록할 수 있는지 찾아내는 속도를 향상 시키고 있어.’
(p, v)=f(s) and l=(z-v)²-πlogp+c||θ||².
수식을 적은 승호가 마침 표를 찍었다. 이제 논문에 대한 이해는 완전히 끝났다는 뜻이었다. 예카테리나가 자리에서 일어나 수식을 적고 있는 승호에게 다가갔다.
“대표님. 제 말 안 들리세요? 여기서 지면 전부 끝입니다. 이길 수 있는 방법에 집중하셔야 되요.”
겨우 이해나 하려고 며칠 동안 논문을 붙잡고 있었던 게 아니다.
“거의 다 왔습니다.”
“네?”
그리고 승호가 기존의 수식에 몇 가지를 빼고 몇 가지를 추가 하고, 또 순서가 바뀌기도 했다.
(x, v)=f(s) or r=logp-∑f(θ)+(z-v)²-(c||θ||²*f(θ))
“이걸로 다시 구현해보세요.”
두 눈을 부릅뜬 예카테리나가 다시 자리로 돌아가 앉았다. 승호도 다시 자리에 앉아 모니터에 집중했다. 앉아 있는 고동수가 멍하니 화이트보드를 바라보며 중얼 거렸다.
“저게 뭔지 아는 사람······.”
백채원도 입을 떼지 못했다.