본문으로 건너뛰기

© 2026 Molayo

Reddit요약2026. 06. 29. 01:29

모든 숫자가 화면에 들어올 때까지 Transformer를 축소하고 가중치(weights)를 편집할 수 있게 만들었습니다 [R]

요약

Transformer의 작동 원리를 행렬 곱셈 단계부터 시각적으로 이해할 수 있도록 구현한 웹 기반 시뮬레이터입니다. 임베딩부터 로짓 생성까지의 전 과정을 스프레드시트 방식으로 보여주며 가중치 편집이 가능합니다.

핵심 포인트

  • Transformer의 순전파 과정을 행렬 연산 단위로 시각화
  • 가중치 및 단어 벡터 편집 시 실시간 재계산 기능 제공
  • 단일 HTML 파일로 구성된 독립형 교육용 도구
  • 어텐션 메커니즘과 피드포워드 네트워크의 흐름 파악 가능

저는 LLM(대규모 언어 모델)이 실제로 어떻게 작동하는지 API 수준이 아니라 행렬 곱셈(matrix multiplications) 단계까지 스스로 학습하고 있습니다. 순전파(forward pass) 과정을 정말로 이해하기 위해, 먼저 임베딩(embeddings)부터 손실(loss)에 이르기까지 전체 Transformer를 스프레드시트로 직접 구축했습니다. 그 후, 공유하기 쉽도록 순전파 과정을 웹 페이지로 만들었습니다.

이것은 모든 숫자가 화면에 들어올 수 있는 가장 작은 크기로 축소된 완전한 Transformer(단일 어텐션 헤드(single attention head), 단일 블록(single block))입니다. 6개의 단어 어휘(vocabulary)와 3차원 임베딩(3-dimensional embeddings)을 사용합니다. 이 모델은 네 개의 단어를 읽고 다음 단어를 예측하며, 단어 벡터(word vectors), Q/K/V, 어텐션 점수(attention scores), 인과적 마스크(causal mask), 소프트맥스(softmax), 피드포워드 네트워크(feed-forward network), 로짓(logits), 그리고 최종 확률(final probabilities)에 이르기까지 전체 과정을 위에서 아래로 보여줍니다.

제가 이해하는 데 가장 유용했던 부분은 가중치(weights)와 단어 벡터(word vectors)를 편집할 수 있으며, 그 이후의 모든 과정이 실시간으로 재계산된다는 점입니다. 또한 모든 가중치를 뒤섞는 'Randomize' 버튼도 있는데, 이를 누르면 예측 결과가 즉시 무의미한 값으로 변합니다. 이것이 이 프로젝트의 핵심적인 포인트입니다. 무작위(학습되지 않은) 가중치를 사용하면 예측은 의미가 없으며, 학습(training)이야말로 이 페이지에서 의도적으로 제외한 전체 이야기의 핵심입니다.

이것은 라이브러리나 빌드 단계가 없는 단일 독립형 HTML 파일입니다. 역전파(backward propagation, 가중치가 실제로 좋아지는 방식)는 제가 다음에 만들고 싶은 기능입니다.

링크: https://dgochin.github.io/transformer/

저는 ML(머신러닝) 연구자가 아니라 기초부터 배우고 있는 소프트웨어 엔지니어입니다. 따라서 틀린 부분이 있거나 더 잘 설명될 수 있는 부분이 있다면 진심으로 듣고 싶습니다. 이것은 Transformer를 가장 기본적인 방식으로 이해하려는 저의 시도였습니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 r/OpenAI Codex (search)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0