추론 모델을 바닥부터 만들어 보는 세바스티안 라슈카의 영상 강의

Sebastian Raschka's from-scratch video course on building reasoning models

magazine.sebastianraschka.com ▲ 818 댓글 108 sgiannopoulos

요약

세바스티안 라슈카가 작은 언어 모델을 추론 모델로 키워 보는 11시간짜리 코딩 영상 강의를 공개했습니다.

머신러닝 연구자 세바스티안 라슈카가 자신의 뉴스레터 'Ahead of AI'에 올린 글입니다. 영상 8편은 그의 책 《Build a Reasoning Model (From Scratch)》의 장 순서를 따르며, 앞서 낸 LLM 코딩 강의의 후속편입니다.

왜 중요한가

  • 요즘 나오는 LLM 대부분이 추론 모델이거나 추론 모드를 갖추고 있어, 그 작동 원리를 코드로 직접 짜 보며 익힐 수 있습니다.
  • 사전 학습은 건너뛰고 이미 학습된 작은 모델에서 출발하므로, 초반 실습은 CPU로도 따라 할 수 있습니다.

핵심 내용

  • 검증기 점수를 보상으로 쓰는 RLVR(정답을 자동으로 확인할 수 있는 문제로 하는 강화학습)을 단순화한 GRPO로 구현합니다.
  • 답을 뽑아 정답과 수학적으로 같은지 따지는 검증기를 만들고, MATH-500 문제 모음으로 성능을 잽니다.
  • 추론 시점 확장(답할 때 계산을 더 들여 정확도를 높이는 방법)으로 여러 답의 다수결과 자기 비평 후 고쳐 쓰기를 다룹니다.
  • 마지막 편에서는 DeepSeek R1이 만든 답으로 작은 모델을 가르치는 증류를 실습합니다.
  • 출발점은 Qwen3 0.6B 모델이고, 파이썬과 PyTorch에 익숙하면 되며 뒤쪽 학습 실험은 GPU가 있어야 수월합니다.

HN 반응

  • 머신러닝은 연산 자원과 데이터가 많이 들어 집에서 배우기 어렵다는 고민에, 작은 모델 미세 조정은 일반 GPU로도 충분하다는 반론이 나왔습니다.
  • 바닥부터 만드는 강의의 목적은 쓸 만한 모델이 아니라 원리 이해라는 의견이 나왔고, 라슈카의 전작 책이 친절하다는 추천도 여럿 이어졌습니다.

댓글

30개 표시 · 전체 108개
  1. torben-friis HN

    질문이 하나 있습니다. 표현하기가 조금 어려운데, 제가 배움 그 자체를 위한 배움에 반대한다고는 생각하지 말아 주세요. 그런 얘기가 아닙니다.

    LLM이나 머신러닝 같은 걸 배우려고 할 때마다 소프트웨어를 배울 때와 달리 늘 찜찜한 기분으로 끝납니다.

    이론 강의는 수학 학위에 맞먹는 열정을 쏟을 각오가 아니라면 전부 걸음마 수준처럼 느껴집니다. 실습이나 응용 쪽은 손글씨 숫자 분류기 같은 기초 연습을 넘어가면 연산 자원이든 학습 데이터든 요구하는 수준이 높아서, 집에서 취미로 해보는 사람이 접근하기 어렵고요.

    이 “비실용적”이라는 느낌 자체는 전혀 문제가 아닙니다. 고전 문학이나 현대 미술 강의를 듣는 거라면 당연히 그럴 테니까요. 그런데 머신러닝은 직접 해보면서 배울 수 있고 완전히 무의미하지도 않은 응용이 있을 법한 분야로 느껴져서, 제가 못 찾고 있는 접근법이 있는 건 아닌지 궁금합니다.

    저와 같은 경험을 하신 분 계신가요? 있다면 조언도 부탁드립니다.

  2. peterlk HN

    깊은 수준에서는 우리가 잘 이해하지 못하는 시스템을 만지작거리고 있기 때문에 생기는 결과라고 생각합니다. 우리는 효과가 있는 레시피를 찾아냈고, 이 시스템을 이해하고 최적화하려고 경사 하강(graduate descent, 박사 논문이 수두룩하죠)을 써 왔지만, 결국 추론까지 함께 인코딩하는 언어 모델을 만들어 낸 셈이고, 그런 것들은 극도로 복잡합니다. 이를 수학적으로 엄밀하게 설명하려면 말씀하신 대로 수학 학위에 맞먹는 열정이 필요합니다. 게다가 언어는 워낙 복잡하고 미묘해서 아주 정밀한 통계 모델이 필요한데, 그러려면 데이터가 엄청나게 많이 들어요. 그래서 규모가 커지는 겁니다. 집에서 장난감 모델을 학습시킬 수는 있겠지만, 언어가 요구하는 뉘앙스를 담아내려면 실제로는 방대한 데이터가 필요하기 때문에 성능은 형편없을 겁니다. 멀티모달 모델은 말할 것도 없고요.

  3. billiam HN

    HN 같은 포럼에서 오가는 대화 수준을 보면, 추론을 언어로 인코딩하는 면에서 LLM과 인간 사이에 여전히 입을 쩍 벌린 격차가 있다는 걸 잘 알 수 있다고 생각해요. 여기에 글을 쓰는 사람들은 이미 어느 정도 걸러진 사람들인데도, 글쓴이가 헛소리를 하는 건지, 진지한 건지, 화가 난 건지, 부계정인지, 그냥 이상한 사람인지 거의 구분이 안 될 때가 얼마나 많은지 생각해 보세요.

  4. giardini HN

    *“...언어가 요구하는 뉘앙스를 담아내려면 실제로는 방대한 데이터가 필요하기 때문에...”*라고 하셨는데, 인간은 그만큼 필요하지 않습니다! 그런데 왜 LLM은 필요할까요?

    교육을 받는 동안 책을 몇 권이나 읽으셨습니까? LLM이 읽은 양보다는 분명히 훨씬 적을 겁니다. 물론 우리는 “삶이 있어서” 수백 명의 사람과 교류하는데, 이것도 일종의 학습이긴 합니다.

    그래도 어쨌든 이 두 시스템(LLM과 인간) 사이에는 우리가 아직 분명하게 파악하지 못한 근본적인 차이가 있습니다.

  5. nextaccountic HN

    그래도 우리한테는 DNA가 있잖아요. 수십억 년 동안 “사전 학습”을 거친 거죠. 후성유전 같은 것도 곁들여서요.

    어쩌면 미래에는 상태를 갖지 않는 추론 전용 모델을 대규모로 깔아 두는 대신, 인간의 경험을 흉내 내서 환경과 상호작용하며 계속 학습하는 로봇이 더 적은 수로 쓰이게 될지도 모르겠네요.

  6. jodrellblank HN

    LLM보다야 훨씬 적게 읽었지만, 저는 LLM보다 훨씬 적게 “알기”도 합니다. 샘 올트먼은 어떤 주제든 박사급 전문가라는 얘기를 했는데, 최신 최고 성능 모델이 도서관에 있는 어떤 주제의 어떤 질문에도 답하길 기대한다면, 아마 도서관 하나만큼의 책이 들어가야 하지 않을까요?

    인도에서 가장 사랑받는 크리켓 선수가 누구고 왜 그런지 물어본다고 해 보죠. 답이 틀릴 수는 있어도 어휘만큼은 제대로 갖출 겁니다. 제가 들어 본 적 없는 크리켓 용어와 경기 운영, 제가 모르는 선수 이름과 스타일, 비평가와 해설자가 경기 전략에서 좋아하는 점과 싫어하는 점 같은 것들이요. 거의 모든 주제가 그렇습니다.

    Python 함수를 환각으로 지어내더라도 “hn.create_user_account()”처럼 그럴듯한 함수로 보입니다. 이런 식으로 환각을 일으키지는 않죠.

        # create HN user account
        # requires eye of newt and frog leg
        “Oh great spirit of the internet I request and command you make a new account…”
    

    수많은 주제에 대해 그럴듯하게라도 글을 쓰려면 엄청난 양의 사실이 필요합니다.

  7. giardini HN

    우리에게 “도서관에 있는 어떤 주제의 어떤 질문에도 답하는” LLM은 필요 없습니다!

    특정 주제 분야의 모든 질문에 답하는 기계조차 필요 없습니다. 하지만 답을 계산할 수 없을 때 “모르겠습니다.”라고 답하는 기계는 쓸모가 있을 겁니다.

    물리, 화학, 수학, 의학처럼 제한된 분야의 질문에만 답하는 훨씬 작은 LLM이 가능하다고 생각해 보세요.

    그런 LLM은 존재할 수 없을까요? 그렇다면 왜일까요? 지금의 “만물박사” LLM보다 훨씬 더 유용하고, 만들고 돌리는 데 훨씬 쉽고 싸지 않을까요(어쩌면 하드웨어도 훨씬 적게 들고요)? 그리고 지금의 “만물박사” LLM에 따라붙는 문제들(환각, 기만, 바람직하지 않아 보이는 행동 등)도 피할 수 있지 않을까요?

  8. whatshisface HN

    직관이 여기서는 우리를 엉뚱한 곳으로 이끈다고 봐요. 지금까지 쓰인 모든 과학책의 글을 합쳐도 인간 뇌를 완전히 기술한 것의 크기에 비하면 훨씬 작거든요. 이성이라는 햄버거에게 도서관은 참깨 한 톨이에요.

  9. reactordev HN

    판돈을 올려야죠. 다들 알다시피 뭄바이 인디언스잖아요. ;)

    특정 작업에 맞는 괜찮은 모델은 집에서도 학습시킬 수 있습니다. 하지만 어떤 주제든 전문가인 모델을 만들려면 모든 주제에 대한 학습과 데이터가 필요하다는 말씀은 전적으로 맞습니다.

  10. splatter9859 HN

    읽다가 커피를 뿜을 뻔했어요. 어휘 선택이 기가 막히네요. 특히 “오, 위대한 인터넷의 영이시여” 부분이요.

    저도 기술에 익숙하지 않은 사람들에게 농담 삼아, “주문”(명령어)을 “비전서”(스크립트)에서 골라 올바른 순서로 외우고 손짓을 잔뜩 곁들이면 “마법”(애플리케이션, 웹 앱 등)이 일어난다고 설명하곤 해요.

    보통 그러면 환자분들 하루가 밝아지고, 기술 비전문가나 아이, 어르신 같은 분들도 쉽게 이해하게 돼요.

    요약: 웃게 해 주셔서 고마워요.

  11. tclancy HN

    인간은 그만큼 필요하지 않다고요? 18살이 될 때까지 가능한 모든 출처에서 단어를 얼마나 많이 받아들이셨나요? 게다가 그 단어 상당수에는 목소리 톤, 억양, 맥락이라는 추가 데이터가 붙어 있었습니다. 그리고 그중 일부(직접 만난 사람, 영상으로 찍은 예술)에는 몸짓과 표정에서 오는 엄청나게 미묘한 데이터까지 딸려 왔고요. 우리는 해마다 방대한 말뭉치를 받아들이고 있다고 생각합니다. 다시 읽은 책을 떠올려 보세요. 왜 다시 읽으셨습니까? 새로운 통찰을 얻으셨습니까?

  12. miki123211 HN

    머신러닝은 CS나 수학보다 생물학, 물리학, 법학에 가깝습니다.

    소프트웨어 엔지니어링 세계에서는 훌륭한 일을 하는 데 필요한 게 날카로운 두뇌와 저렴한 노트북뿐이라는 걸 당연하게 여깁니다. 더 좋은 도구가 도움은 되지만 꼭 필요하지는 않죠. 리눅스 커널 엔지니어도 헌신과 독학, 300달러짜리 노트북, 인터넷만 되는 허름한 아파트만 있으면 최고 수준까지 오를 수 있을 겁니다.

    하지만 ML은 그런 식으로는 배울 수 없습니다. 은행업, 전문 트레이딩, 의학을 그렇게 할 수 없는 것과 마찬가지입니다.

  13. viklove HN

    은행업과 트레이딩을 의학이나 ML과 같은 복잡도 수준에 놓다니 이상하네요.

  14. wanderingmind HN

    맞아요. 트레이딩과 은행업은 사회 시스템이라서 생물학적 시스템보다 더 복잡하죠.

  15. potsandpans HN

    뻔한 소리처럼 들리네요. 주장만 하고 이유는 설명하지 않으셨고요. 그리고 끝에 든 비유들도... 좀 이상합니다.

    맞는 말씀일 수도 있어요! 다만 근거를 더 듣고 싶습니다.

  16. ksh09 HN

    간단히 말해, 컴퓨터만 있으면 흥미로운 최첨단 소프트웨어 대부분은 취미 개발자도 무료로 소스에서 직접 컴파일하고 빌드할 수 있습니다.

    하지만 제가 흥미를 느끼는 DL 분야에서는 그렇게 할 수 없습니다. 사전 학습된 모델을 돌리는 것조차 대부분의 취미 개발자가 감당하기 어려운 하드웨어를 요구하니까요.

    클라우드라는 방법이 있긴 하지만, 전통적인 개발에서는 애플리케이션의 거의 모든 걸 로컬에서 테스트할 수 있었고, 경우에 따라 배포와 유통만 풀리지 않은 문제였습니다. 그건 인프라에 쓰는 비용으로 납득할 만합니다.

  17. leonidasrup HN

    취미 개발자가 흥미로운 최첨단 소프트웨어 대부분을 무료로 소스에서 컴파일하고 빌드할 수 있게 된 데에는 상업 기업이 비용을 대지 않은 수많은 노력과 노동이 들어갔습니다. 예를 들어 GCC가 그렇습니다.

    “ 1983년 말, GNU 운영체제를 부트스트랩하려던 리처드 스톨먼은 암스테르담 컴파일러 키트(자유 대학교 컴파일러 키트라고도 합니다)의 저자인 앤드루 S. 태넌바움에게 그 소프트웨어를 GNU에 쓸 수 있게 허락해 달라고 요청했습니다. 태넌바움이 컴파일러 자체는 자유롭지 않고 대학만 자유로울 뿐이라고 알려 주자, 스톨먼은 다른 컴파일러를 만들기로 했습니다. ”

    https://en.wikipedia.org/wiki/GCC

    GNU 프로젝트가 존재하는 이유 자체도 마찬가지입니다.

    “ 스톨먼에 따르면, 그가 GNU 프로젝트를 시작하게 된 계기는 앞서 제록스가 MIT 연구실에서 쓰던 레이저 프린터의 소스 코드에 접근하지 못하게 한 경험이었다. 소프트웨어를 공유하던 이 공동체가 끝나리라는 걸 깨닫고, 이전에 존재하던 소프트웨어 공유 문화를 무너뜨리며 확산되는 사유 소프트웨어를 보면서, 리처드 스톨먼은 사유 소프트웨어를 계속 쓰며 적응하기를 거부하고 운영체제 프로그래머로서의 기술을 살려 새로운 자유 운영체제 개발에 착수해, 잃어버린 소프트웨어 공유 공동체를 되살리기로 했다. 그것이 GNU이다. ”

    https://en.wikipedia.org/wiki/GNU

  18. fantispug HN

    실습이나 응용 쪽은 손글씨 숫자 분류기 같은 기초 연습을 넘어가면 연산 자원이든 학습 데이터든 요구하는 수준이 높아서, 집에서 취미로 해보는 사람이 접근하기 어렵고요.

    연산 자원이 문제 되는 건 대형 파운데이션 모델을 처음부터 학습시키려 할 때뿐입니다. 신경망이 아닌 모델은 CPU로도 쉽게 학습시킬 수 있고, 작은 모델(대략 4B 미만)은 일반 소비자용 GPU로 파인튜닝할 수 있습니다.

    학습 데이터는 온라인에 (Kaggle 같은) 데이터셋이 많이 있고, 직접 만들어도 됩니다. 라벨링도 직접 하거나 언어 모델에 맡기면 되고요. 좋은 데이터를 확보하는 게 ML에서 가장 어려운 부분이니 좋은 연습이 됩니다.

    그다음에는 취미 프로젝트를 해 보세요. 내 사진 중에 나나 특정 친구, 가족이 찍힌 사진을 분류하거나, 은행 거래 내역을 내보낸 파일에서 지출 카테고리를 예측하거나, 이메일을 카테고리별로 분류하거나, Hacker News에서 책 추천을 뽑아내는 식으로요.

  19. libraryofbabel HN

    여러 댓글 스레드에서 처음부터 LLM을 만들어 보는 튜토리얼이 무엇을 위한 것인지에 대해 오해가 많다고 느낍니다. 이런 튜토리얼을 마친다고 해서 쓸 만한 LLM을 처음부터 학습시킬 수 있게 되지는 않습니다. (연산 자원이 너무 많이 들고, 접근할 수 없는 데이터셋이 필요하고, 실제 학습 실행에는 해결해야 할 요령과 운영상 문제가 많으니까요.) 그것을 “비실용적”의 기준으로 삼는다면 맞습니다, 이건 비실용적입니다.

    하지만 요점은 그게 아닙니다. 요점은 이런 것들이 어떻게 만들어지는지(원한다면 길러지는지) 보면서 더 잘 이해하는 것입니다. 내가 앞으로 직접 다룰 일이 없는 더 깊은 층에서 무언가를 만들어 보면, 내가 실제로 다루는 윗층을 형성하는 세부 사항을 맞닥뜨리게 됩니다. HN에서 Crafting Interpreters가 그토록 사랑받는 이유 중 하나도 이것입니다.

    LLM은 이제 우리 모두가 날마다 쓰는 도구의 핵심에 있습니다. 어떻게 만들어지는지 알고 싶지 않으신가요? 자기가 쓰는 플랫폼과 도구를 이해하고 싶은 욕구가 모두에게 있는 건 아닐지 몰라도, 저는 분명히 있고 그게 몇 번이고 도움이 되었습니다. 물론 LLM은 운영체제나 컴파일러와는 다릅니다. 학습 중에 익힌 수십억 개 파라미터가 모인 준유기체적 덩어리이고, 솔직히 왜 이렇게 잘 작동하는지는 (기계적 해석 가능성 연구자들조차) 아무도 깊이 이해하지 못합니다. 그렇다고 완전히 포기할 이유는 없고, 배울 수 있는 건 여전히 많습니다.

    RLVR(“검증 가능한 보상으로부터의 강화학습”)을 예로 들어 보죠. 2025년과 2026년에 LLM이 프로그래밍과 수학을 그토록 잘하게 만든 학습 기법입니다. LLM의 능력에 대해 자신 있게 말하는 사람들 중에는 이걸 들어 본 적이 없어서 (그래서 2025년 이전 시대에서 나온 낡은 LLM 학습 상식을 앵무새처럼 되풀이하는) 사람도 많고, 아주 희미하게만 아는 사람도 많습니다. 이 강좌에서는 수학 문제를 더 잘 풀도록 LLM을 직접 강화학습으로 학습시킵니다. 세부 사항까지 깊이 들어가는 거죠. 그 자체로도 흥미롭지만, “2026년 중반에 LLM의 글이 왜 그렇게 이상하고 나빠졌나?”, “수학이나 프로그래밍 같지 않은 일을 잘하도록 LLM을 학습시키기는 왜 그렇게 어려운가?” 같은 질문을 논의할 바탕도 됩니다.

    아무튼 세바스찬의 책 두 권은 훌륭해서 강력히 추천합니다. 저는 1년 전에 첫 번째 책을 끝까지 따라 해 봤는데, 2025년 한 해 동안 시간을 들인 일 중 가장 잘한 투자 중 하나였습니다. 영상으로 배우는 쪽을 선호하신다면 이것도 훌륭합니다(그래도 책을 먼저 해 보시라고 말씀드리겠지만요).

  20. janalsncm HN

    2026년 중반에 LLM의 글이 왜 그렇게 이상하고 나빠졌나요?

  21. bariscimen HN

    AI가 쓴 출력 말고 프롬프트를 올리세요. 편향을 볼 수 있게.

  22. darrelld HN

    저는 그분의 책 Build Your Own LLM From Scratch를 샀는데, 아주 읽기 쉽고 전체 과정을 손잡고 이끌어 주듯 잘 알려 줍니다... 얼른 끝까지 읽어야 하는데 말이죠!

  23. len_testa HN

    동의합니다. 첫 책으로 훌륭하죠. 저는 이어서 그분의 "Build a Reasoning Model from Scractch"를 읽었는데, 두 번째 단계로 아주 좋았습니다.

  24. auraham HN

    저도 그랬습니다. 지난 크리스마스에 "Build Your Own LLM From Scratch"를 샀는데, 토큰화부터 텍스트 생성까지 LLM이 어떻게 동작하는지 배우기에 훌륭한 자료입니다. 저자가 새로운 개념마다 설명을 아주 잘해 줍니다. PyTorch를 아시거나 최소한 텐서를 아신다면 내용이 어렵지 않을 겁니다.

    세바스찬, 이 글을 보고 계신다면 다른 책 아이디어를 하나 드립니다. 적대적 코드 리뷰를 위해 에이전트를 오케스트레이션하는 방법입니다. 저는 이것[1]과 비슷한 걸 더 작은 규모로 만들 수 있는 학습 자료를 찾고 있었습니다. codex 서브에이전트가 있다는 건 알고 있지만요. 그래도 세바스찬이 이미 LLM에 대한 책과 계획 수립에 대한 책을 갖고 있으니, 적대적 코드 리뷰가 다음 단계로 흥미로울 것 같습니다.

    [1] https://bun.com/blog/bun-in-rust

    [2] https://learn.chatgpt.com/docs/agent-configuration/subagents?surface=app

  25. lucasoshiro HN

    저는 신경망 작업을 좋아하지 않고, 지금까지 나온 자료는 늘 지나치게 복잡하거나 지나치게 단순하거나, 때로는 둘 다 동시에라고 느꼈습니다.

    그런데 이 책은 거의 완벽합니다. 새로운 개념마다 설명이 잘 되어 있고 모든 것이 탄탄한 근거 위에 있습니다. 그리고 모든 단계가 나를 앞으로 나아가게 합니다(아시는 분은 아시죠).

  26. kavalg HN

    강력 추천합니다! 세바스찬은 복잡한 AI 주제를 아주 직관적으로 정말 잘 설명해 줍니다.

  27. artninja1988 HN

    카파시 2.0이네요!

  28. krosaen HN

    두 분은 동시대 사람입니다. cs231n과 세바스찬의 첫 ML 책이 둘 다 2015년에 나왔고, 둘 다 훌륭하죠!

  29. tomrod HN

    순서가 반대예요. 라슈카는 10년이 넘게 이 일을 해 왔어요.

  30. nxtfari HN

    카파시도 마찬가지예요. CS231n이 처음 나온 게 2015년이에요.

Hacker News에서 보기 ↗