엄밀히 말하면 암호화폐 관련 내용은 아니지만, 제가 예전에 다뤘던 예측 시장과 관련이 있어 독자 여러분께서도 관심을 가지실 만한 주제라고 생각합니다. 게다가 몇몇 독자분들이 이런 글을 써달라고 요청하셨기에 이렇게 글을 쓰게 되었습니다!
저는 지난 몇 주 동안 Dota 2(e스포츠 비디오 게임) 경쟁 경기에서 누가 이길지 예측하는 모델을 개발해 왔습니다. Claude Code의 Vibe Coding 기능을 활용하여 (OpenClaw를 통해 Yoshi의 도움을 약간 받았지만, Claude Code를 직접 사용하는 것만으로도 모든 것이 가능했습니다) 이 모든 작업을 진행했습니다. 저는 머신러닝 관련 학위나 데이터 과학 배경 지식이 전혀 없습니다.
아직 초기 단계이긴 하지만 결과는 매우 유망해 보입니다. 모델을 백테스팅해 봤는데 결과가 정말 환상적 입니다. 솔직히 너무 좋아서 믿기 어려울 정도이니, 어느 정도 회의적인 시각으로 받아들이시기 바랍니다.
오늘은 예측 모델이 어떻게 작동하는지, 제가 어떻게 만들었는지, 그리고 바이브 코딩의 힘을 이용해 여러분도 어떻게 자신만의 모델을 만들 수 있는지에 대해 이야기해 보겠습니다.
성공적인 예측 모델에 필요한 핵심 구성 요소를 분석하고, 실질적인 관점에서 이러한 모델을 구축하고 개발하는 방법에 대한 몇 가지 추가적인 제안을 드리겠습니다.
아직 초기 단계이지만, 새로운 회원을 모집하고 있습니다. 이번 뉴스레터 말미에 프리미엄 구독자를 위한 특별 혜택을 알려 드리겠습니다. 정식 가격 대비 70% 할인된 가격입니다.
1. 명확하고 잘 정의된 질문으로 시작하세요.
누가 이 도타 2 경기에서 이길까요? 좋은 질문입니다. 결과는 명확하게 정해져 있고, 예측도 가능합니다. 맞았을 때와 틀렸을 때를 알 수 있죠.
시작하기 좋은 방법은 스스로에게 다음과 같은 질문을 던져보는 것입니다.
이 네 가지 질문에 대한 명확한 답을 가지고 있다면, 예측 모델을 사용하여 답을 찾을 수 있는 좋은 질문을 생각해낼 수 있을 것입니다.
만약 당신이 베팅을 하고 돈을 벌기 위한 모델을 만들려고 한다면, 이미 해당 분야에 대한 지식과 전문성을 가지고 있는 것부터 시작하는 것이 가장 좋다고 생각합니다.
2. 인공지능에게 모든 단계에서 도움을 요청하세요.
이 모든 걸 혼자서 해내는 데에는 아무런 영광도 없다. AI는 세상에서 가장 강력한 도구이니, 그것을 활용하고 잘 활용하라.
원하는 질문을 선택하셨다면, 이제 원하는 코딩 플랫폼을 실행하고 AI에게 도움을 요청할 차례입니다. 몇 주 전에 Claude Code에 대해 글을 썼는데 , 제가 모델을 구축한 곳이 바로 거기입니다. 코딩 분야에서 현재 가장 앞선 두 모델인 Opus 4.6 버전의 Claude Code나 GPT 5.4 버전의 Codex를 사용하는 것을 추천합니다.
물론 저렴한 모델로 시도해보고 실험해 볼 수도 있습니다 (그리고 이는 훌륭한 학습 방법입니다). 하지만 수익을 창출하려는 목적이라면 최고급 모델을 사용하는 것이 훨씬 나을 거라고 생각합니다.
Claude Code/Codex를 실행한 후 새 프로젝트를 만들고 방금 생각한 질문을 바탕으로 원하는 기능을 설정하세요. 예를 들어 다음과 같이 설정할 수 있습니다.
저는 Dota 2 경기에서 어느 팀이 이길지 예측하는 예측 모델을 만들고 싶습니다. 이 프로젝트를 도와주시면 감사하겠습니다. 먼저 예측 모델 구축, 특히 Dota 2 및 e스포츠 모델 구축에 대해 심도 있는 조사를 해 주세요. 관련 연구 논문이나 성공적인 모델 사례를 찾아보고 참고할 만한 자료를 공유해 주시면 좋겠습니다. 이 모든 정보를 바탕으로 단계별 계획을 세우고, 시작하는 데 필요한 사항들을 알려주세요.
AI가 앞으로 꽤 괜찮은 계획을 세워주겠지만, 제가 정말 유용하고 중요하다고 생각하는 한 가지는 바로 자료와 연구 논문을 직접 읽어보는 것입니다( 적어도 몇 편은요). 우리 모두 AI 요약이나 핵심 요점에 의존하는 데 익숙해져 있지만, 모든 것이 어떻게 작동하는지 기본적인 비트(Bit) 를 이해하는 것이 앞으로 나아가는 데 큰 도움이 될 겁니다.
이 편지의 나머지 부분은 이러한 맥락을 이해하고 여러분이 이 문제들을 파악하는 데 도움이 될 것입니다.
3. 신뢰할 수 있고 깨끗한 데이터가 필요합니다.
모델은 데이터를 통해 학습합니다. 데이터가 잘못되었거나, 불완전하거나, 일관성이 없다면 모델은 잘못된 것을 학습하게 됩니다.
제 Dota 2 모델의 경우, 대부분의 데이터를 공식 API에서 가져옵니다. 웹에서 데이터를 직접 스크래핑하는 것보다는 좋은 API를 활용하는 것을 항상 추천합니다. 제가 사용하는 Dota API는 수년간의 경기 데이터를 포괄적으로 제공합니다. 팀 구성, 선수 통계, 경기 결과, 패치 정보 등 다양한 정보를 포함하고 있죠. 데이터는 체계적으로 구성되어 있고, 문서화도 잘 되어 있으며, 정기적으로 업데이트됩니다.
안타깝게도 (어쩌면 기회가 될 수도 있겠지만) 모든 도메인에 깔끔한 API가 제공되는 것은 아닙니다. 때로는 웹사이트를 스크래핑하거나, PDF를 파싱하거나, 복잡한 스프레드시트를 다뤄야 할 때도 있습니다.
일반적으로는 두 가지 방법을 모두 어느 비트(Bit) 사용해야 합니다 (API에서 95%를 가져오지만, 저도 일부 데이터는 직접 스크래핑합니다).
궁극적으로 형식보다는 신뢰성이 더 중요합니다. 데이터가 실제로 일어난 일을 정확하게 나타낸다고 믿어야 합니다. API를 사용하는 것이 더 쉽긴 하지만, 이 목표를 달성하는 유일한 방법은 아닙니다.
신뢰할 수 있는 데이터 외에도, 깔끔한 데이터는 매우 중요합니다. 즉, 중복된 레코드가 없어야 하고, 형식이 일관적이어야 하며, 중요한 필드에 누락된 값이 없어야 하고, 각 필드가 무엇을 나타내는지에 대한 명확한 설명이 있어야 합니다.
AI가 어떻게 도움을 줄 수 있을까요?
데이터 품질 검사를 위한 스크립트를 작성해 달라고 요청할 수 있습니다. 예를 들어, "경기 데이터를 불러와서 중복을 확인하고, 팀 ID가 누락된 경기를 표시하고, 월별 경기 분포를 보여주는 스크립트를 작성해 줘."라고 요청할 수 있습니다. 더 간단하게 "데이터가 깨끗하고 신뢰할 수 있도록 하려면 어떻게 해야 할까요?"라고 요청하면, 프로그램이 몇 가지 제안과 계획을 제시해 줄 것이고, 그 계획을 바탕으로 작업을 진행할 수 있습니다.
4. 당신의 외모가 전부입니다
예측 모델을 구축할 때 가장 중요한 개념 중 하나는 특징(feature)을 이해하는 것입니다. 간단히 말해, 특징은 모델이 예측을 수행하는 데 사용하는 입력값입니다. 원시 데이터 자체는 거의 유용하지 않습니다. 원시 데이터는 특징을 생성하는 데 사용되지만, 실제로 예측에 사용되는 것은 바로 이 특징들입니다.
도타 2에서 "A팀이 200경기를 치렀다"와 같은 단순한 통계는 다음 경기 승패에 대해 거의 아무것도 알려주지 않습니다. 하지만 "A팀이 현재 패치에서 최근 20경기 중 65%의 승률을 기록했다"와 같은 통계는 현재 메타에서의 최근 경기력에 대해 유용한 정보를 제공합니다.
바로 이런 부분에서 여러분의 전문 지식이 빛을 발합니다. 여러분은 해당 분야를 잘 이해하고 있고, 결과에 영향을 미치는 요인들을 알고 있습니다. 예를 들어 열렬한 골프 팬이라면 날씨가 경기 결과에 영향을 미친다는 것, 잔디 종류가 중요하다는 것, 오전에 시작하는지 오후에 시작하는지가 스코어에 영향을 미친다는 것, 장타자가 특정 코스에서 더 좋은 성적을 낸다는 것 등을 알고 있을 것입니다.
모델은 처음에 이런 것들을 전혀 알지 못합니다. 모델은 여러분이 특징을 통해 알려주는 정보만 알게 됩니다.
좋은 특징은 예측 이전에 이용 가능하고, 결과와 관련이 있으며, 다른 특징들과 중복되지 않는 정보를 포착합니다.
AI가 어떻게 도움을 줄 수 있을까요?
먼저 기능을 제안해 달라고 요청하여 어떤 유형의 기능을 사용할 수 있는지 파악하세요. 그런 다음 자신의 전문 지식과 중요하다고 생각하는 요소를 설명하여 결과에 영향을 미칠 수 있는 추가 기능 목록을 브레인스토밍하세요.
그다음, 원시 데이터에서 해당 특징들을 추출하도록 요청하세요. 그러면 AI가 변환 코드를 작성합니다. 사용자는 추출된 특징들이 타당한지 평가합니다. 이러한 상호작용이 바로 바이브 코딩의 진가를 발휘하는 부분입니다. 사용자는 사고력(적어도 일부)과 해당 분야 지식을 제공하고, AI는 나머지 모든 작업을 수행합니다.
5. 적합한 모델 선택
질문, 데이터, 그리고 특징들이 있습니다. 이제 이러한 특징들을 입력받아 예측값을 도출하는 무언가가 필요합니다. 그것이 바로 모델입니다.
모델을 함수라고 생각해 보세요. 입력값(특징)을 제공하면 출력값(예측값)을 내놓습니다. 다양한 유형의 모델은 이 함수를 학습하는 방식이 각기 다릅니다. 어떤 모델은 단순하고, 어떤 모델은 복잡합니다. 어떤 모델을 선택할지는 해결하려는 문제에 따라 다르지만, 정형화된 데이터를 사용하는 대부분의 예측 작업에서는 생각보다 간단한 해답이 있습니다.




