- Turing Post Korea
- Posts
- MoR(Mixture-of-Recursions)은 무엇인가?
MoR(Mixture-of-Recursions)은 무엇인가?
'생각의 깊이'를 설계해서 거대 모델만큼 비용이 안 들면서도 거대 모델의 품질을 내게 해 주는, 'Configurable'한 트랜스포머를 만들어 준다
들어가며
이 글은 2025.9.14일 모든 구독자들이 보실 수 있게 공개되었습니다.
‘Recursion(재귀)’라는 단어, 우리가 평소에 많이 사용하는 단어는 아니죠. 대략 맥락을 세팅하고 글을 보시는게 좋을 것 같아 짧게 말씀드려보자면, Recursion은 ‘어떤 과정이 자기 자신을 반복해서 불러 쓰는 개념’이라고 하겠습니다. 프로그래밍에서는 함수가 스스로를 호출해서 문제를 조금씩 풀어나가고, 수학에서는 이전 값을 이용해서 다음 값을 정의하는 수열에서 자주 등장한다고 합니다 (배우기는 했을 텐데 기억이…^.^;). 핵심은 복잡한 문제를 같은 규칙으로 반복 적용해서 단순하게 해결한다는 점이라서, MoR에서는 이 원리를 적용해서 ‘소수의 레이어를 여러 번 돌려쓰면서 토큰마다 필요한 만큼만 깊이 있게 연산하도록 만드는 거다’라고 생각하시면 되지 않을까 합니다.
우리가 늘상 사용하는 AI가 점점 더 똑똑한 서비스로 받아들여지는 이유, 바로 딥리서치(Deep Research), 딥씽킹(Deep Thinking) 같은 것들 덕분이 아닐까 하는데요. 그동안 단순하게 ‘추론 능력’을 늘리는 데 많은 연산 자원을 썼다면, 이제는 작업(Task)과 토큰(Token)마다 연산 예산(Compute Budget)과 메모리를 유연하게 조절하고 맞춤형으로 활용하는 방법이 많은 주목을 받고 있습니다.
이런 관점에서, KAIST, 구글, MILA, 몬트리올 대학교의 연구진이 함께 작업해서 새로운 접근 방법을 내놓았습니다 - 바로 MoR(Mixture-of-Recursions)라는 기술입니다.
MoR의 가장 큰 특징은 레이어(Layer)를 얼마나 효율적으로 다시 쓸 수 있느냐에 있습니다. 각 토큰이 필요한 만큼만 처리 단계를 거치게 하는 것이죠. 이렇게 하기 위해서 MoR은 두 가지 라우팅(Routing) 메커니즘과 두 가지 KV(Key-Value) 캐싱 방식을 조합해서, 기존의 트랜스포머(Transformer)에 바로 적용할 수 있는 안정적인 기술 스택을 제공해 줍니다.
조금만 더 쉽게 말하면, MoR은 모델 안에 작은, 그리고 재사용할 수 있는 ‘사고 엔진(Thinking Engine)’을 넣어둔 것과 비슷합니다. 필요할 때만 더 깊이 생각하게 해 주는 거예요. 이런 기법 덕분에 더 큰 모델과 비슷한 품질을 내면서도, 훨씬 저렴하고 빠르고, 특정한 상황에 맞춰서 유연하게 적용할 수 있다고 합니다.
자, 그럼 이제부터 이 새로운 기술을 조금 더 가까이 들여다보죠 - MoR이 실제로 어떤 가치를 제공하는지, 어떻게 트랜스포머 모델을 효율적으로 업그레이드해서, 이 오래된(?) 구조를 대체할 수 있는지 살펴보겠습니다.
오늘 에피소드에서는 다음과 같은 내용을 다룹니다:
MoR(Mixture-of-Recursions)의 핵심 아이디어
언어모델을 크게 키우면 더 똑똑해지더라 하는 건 이미 일종의 ‘공리(Axiom)’ 같이 받아들여지는 걸 겁니다. 하지만 개발자들이 늘 마주하게 되는 어려운 점은, 바로 이렇게 모델을 확장하면서 요구되는 막대한 자원 - 대표적으로 컴퓨팅 파워와 메모리 - 을 어떻게 관리할 거냐 하는 거죠. 이런 이유 때문에, 모델의 학습과 운영이 점점 어려워지는 걸지도 모릅니다.
그런데, 거대하고도 똑똑한 AI 모델을 만들겠다는 경쟁의 한가운데, 효율성을 유지하게끔 도와주는, 두 가지의 잘 알려진 기법이 있습니다:
1) 파라미터를 공유한다(Parameter Sharing)
매번 새로운 레이어마다 별도의 가중치를 두는 대신에, 동일한 가중치를 재사용하는 방식입니다. 여기서 흥미로운 게 바로 레이어 타잉(Layer Tying)인데, 같은 레이어들을 여러 번 반복해서 텍스트를 통과시키는 방식이구요.
2) 적응형으로 연산을 한다(Adaptive Computation)
각각의 토큰(Token)을 처리할 때, 필요한 부분만 선택적으로 사용하는 접근법이죠. 이때 많이 쓰이는 기법이 Early Exiting입니다. 쉬운 토큰은 더 빨리 처리를 끝내게 해서, 모델이 불필요하게 연산 비용(Compute Budget)을 낭비하지 않게 하는 겁니다.
그런데, 굳이 두 기법 중에 하나만 선택할 필요가 있을까요? 둘 다 활용할 수 있다면 더 좋지 않을까요?
(자랑스러운) 카이스트, MILA, Google Cloud, Google DeepMind, Google Research, 그리고 몬트리올 대학교의 대규모 연구팀이, 이 두 가지 아이디어를 하나의 시스템으로 결합하는 실험을 했고, 그 결과물이 바로 MoR(Mixture-of-Recursions)입니다.
MoR은 기존에 있었던 리커시브 트랜스포머(Recursive Transformer)에서 한 단계 발전된 형태라고 할 수 있을 듯 합니다. 리커시브 트랜스포머는 소수의 레이어를 여러 번 순차적으로 재사용하는 모델인데, MoR은 여기에 더해서 각 토큰마다 고유한 “생각의 깊이(Thinking Depth)”를 학습하고, 동시에 메모리 사용까지 최적화할 수 있게끔 설계되었습니다.

Image Credit: MoR 오리지널 논문
리커시브 트랜스포머(Recursive Transformer)에 어떤 한계가 있길래, 굳이 MoR 같은 새로운 접근법이 필요하다고 연구진은 생각했을까요? 몇 가지 짚어볼 수 있습니다:
KV 캐시 문제
리커시브 트랜스포머에서는 레이어(Layer)를 공유하긴 하지만, 각각의 반복(Recursion) 단계마다 어텐션을 위한 별도의 메모리 캐시 ― KV(Key-Value) 캐시 ― 를 사용합니다. 이 캐시는 많은 공간을 차지할 뿐 아니라 속도까지 느리게 만들죠.똑같은 ‘생각의 깊이(Recursion Depth)’라는 한계
대부분의 리커시브 트랜스포머는 모든 토큰(Token)에 대해서 반복의 깊이가 똑같아요. 하지만 실제로는 어떤 토큰은 쉽게 처리할 수 있고, 어떤 토큰은 더 많은 단계를 필요로 하겠죠. 결국 연산 자원(Compute Power)의 낭비로 이어지게 됩니다.Early Exit의 한계
토큰마다 다른 깊이를 설정하기 위해서 Early Exit을 적용할 수 있지만, 모델의 성능을 떨어뜨리게 되는 경우가 종종 생기고, 추가적인 엔지니어링도 필요합니다.
이런 문제들 때문에, 결국은 기존 방식만 가지고는 뭔가 모자라다는 결론에 다다르게 된 겁니다. 그래서 등장한 게 바로 MoR이구요. MoR은 위에 이야기한 문제들을 해결하면서, 복잡한 워크플로우(Workflow) 개념을 구현할 수 있는 기술 스택을 갖추고 있습니다 - 그래서 한 단계 더 똑똑한 시스템으로 나아가는 중요한 돌파구가 될 수 있는 겁니다.
MoR의 핵심 메커니즘
MoR은 소수의 레이어(Layer) 세트를 계속해서 재사용하는 방식으로 작동합니다. 각 단계마다 ‘라우터’가 모든 토큰(Token)에 대해서 결정을 내리는데, 그 토큰이 레이어를 더 통과해야 하는지, 아니면 멈춰야 하는지를 판단하는 겁니다. 이 공유된 ‘재귀 단계(Recursion Step)’는 라우터의 결정에 따라서 토큰마다 최대 N번까지 반복될 수 있구요.
즉, MoR은 학습(Training)과 추론(Inference) 과정에서 각 토큰이 스스로 필요한 재귀 단계의 수를 선택할 수 있게 해 준다는 점에서 의미가 있습니다. 그렇게 한 결과, 기존의 리커시브 트랜스포머가 한 단계 더 적응형 시스템(Adaptive System)으로 발전할 수 있는 겁니다.
이런 워크플로우(Workflow) 개념을 실제로 구현해 내는 핵심적인 메커니즘이 두 개 있습니다:
라우팅 메커니즘(Routing Mechanism)
각 토큰이 공유된 재귀(Recursion) 블록을 몇 번 통과할지 결정합니다. 즉, 재귀의 깊이(Recursion Depth)를 조절하는 역할입니다.KV 캐싱 전략(KV Caching Strategy)
재귀의 깊이가 서로 다른 상황에서, 어텐션을 위한 Key–Value(KV) 쌍을 어떻게 저장하고 재사용할지를 정합니다.
자, 이제 좀 더 본격적으로 살펴볼까요?
라우팅 메커니즘
MoR이 재귀의 깊이(Recursion Depth)를 정하는 방법에는 두 가지가 있습니다.
1) 전문가 선택 라우팅(Expert-choice Routing)
이 방식은 일종의 다이나믹한 Early Exit이라고 할 수 있겠습니다. 어려운 토큰(Token)은 계속해서 레이어를 더 통과하고, 쉬운 토큰은 더 일찍 멈추고 재귀에서 빠져나오게 됩니다.

Image Credit: MoR 오리지널 논문
MoR은 각각의 재귀의 깊이(Recursion Depth)를 하나의 “전문가(Expert)”로 취급합니다.
각 단계마다 라우터는 토큰의 히든 상태(Hidden State)를 바탕으로 점수를 매기고, 상위 k개의 토큰만 다음 단계로 계속 진행시킵니다. 이전 단계에서 살아남은 토큰만 다음 단계에서 다시 평가되기 때문에, 자연스럽게 계층적으로 필터링(Hierarchical Filtering)이 일어나고, 깊이가 깊어질수록 후보 집합은 점점 더 줄어듭니다.
이 방식의 장점은 단계별로 연산 예산(Compute Budget)이 고정되어 있고 예측 가능하다는 점이지만, 학습 과정에서는 라우터가 미래의 토큰을 간접적으로 “보게 되는” 정보 누출(Information Leakage) 문제가 발생할 수 있습니다. 즉, 공정하게 학습을 했는가에 대한 이슈가 제기될 수 있고, 모델의 일반화 성능에 악영향을 줄 지도 모른다는 거죠. 그래서 이런 문제를 보완하기 위해서 보조 라우터(Auxiliary Router)나 보조 손실 함수(Auxiliary Loss) 같은 추가적인 해결책이 필요합니다.
2) 토큰 선택 라우팅(Token-choice Routing)
이 방식에서는 라우터가 각 토큰의 재귀의 깊이를 처음에 한 번만 결정합니다. 즉, 토큰마다 시작 시점에서 히든 상태를 기반으로 깊이(예: 1, 2, 3)를 할당받고, 그에 맞춰 정해진 횟수만큼 재귀 단계를 거친다는 거죠 - 더 많지도, 더 적지도 않게요.

Image Credit: MoR 오리지널 논문
전문가 선택 라우팅(Expert-choice Routing)과 비교했을 때, 토큰 선택 라우팅(Token-choice Routing)은 정보 누출(leakage) 문제가 없습니다. 하지만 반대로 깊이(Depth)별로 연산 부담을 균형 있게 유지하기가 어렵다는 단점이 있습니다.
그래서 이 방식을 제대로 활용하려면, 밸런싱 손실 함수(Balancing Loss Function)나, 깊이별 연산 분포를 고르게 해 주는 특화된 알고리즘(Specialized Algorithm)이 함께 필요합니다.
KV 캐싱 전략
MoR의 KV 캐싱(KV Caching)은 왜 특별한 요령이 필요할까요? 이유는 간단합니다. 어떤 토큰이 일찍 빠져나가면(Early Exit), 더 깊은 단계에서 사용해야 할 그 토큰의 KV(Key–Value) 쌍이 아예 존재하지 않게 됩니다. 이렇게 되면 나중에 들어오는 토큰들의 어텐션(Attention)이 깨질 수 있죠.
그래서 MoR은 이 문제를 해결하면서도 메모리 사용량을 줄이고 전체 속도까지 높여주는 두 가지 해법을 제안합니다.

Image Credit: MoR 오리지널 논문
MoR은 실제로 더 많은 단계가 필요한 토큰에 대해서만 메모리(Key–Value 쌍)를 저장하고 불러오는 방식을 사용합니다. 구체적으로는 두 가지 전략이 있습니다.
재귀 단위 KV 캐싱(Recursion-wise KV Caching)
이 방식에서는 해당 재귀 깊이에서 여전히 활성 상태인 토큰의 KV 쌍만 저장합니다. 따라서 그 단계에서의 어텐션은 캐싱된 토큰들에만 한정되죠. 이렇게 하면 메모리 사용량을 줄일 수 있고, 메모리 입출력(I/O) 과정에서 읽고 쓰는 데이터 양도 줄어듭니다. 말 그대로 필요한 것만 저장하는 방식입니다.재귀적 KV 공유(Recursive KV Sharing)
이 방식에서는 모든 토큰이 최소한 첫 번째 재귀 블록은 반드시 거치게 됩니다. KV 캐싱은 이 첫 번째 단계에서만 일어나고, 이후 단계에서는 이 값을 계속 재사용합니다. 이렇게 하면 생성 시작 속도를 높이고, 중복 계산을 피하고, 메모리까지 더 절약할 수 있습니다.
그리고 중요한 점은, MoR은 각 단계에서 여전히 처리 중인 토큰에 대해서만 연산량이 큰 어텐션(Attention) 연산을 수행한다는 겁니다.
정리하자면:
라우팅(Routing)은 MoR을 적응형(Adaptive)으로 만들어 줍니다. → 각각의 토큰이 필요한 만큼만 연산 파워를 받는 겁니다.
KV 캐싱(KV Caching)은 MoR을 효율적(Efficient)으로 만듭니다. → 덜 저장하고 더 재사용하면서 메모리와 연산을 절약합니다.
또 하나 기억해야 할 점은, MoR이 모든 라우팅 방식과 KV 캐싱 방식을 동시에 쓰는 것이 아니라는 것입니다. 모델의 설정에 따라 하나의 라우팅 전략 + 하나의 KV 캐싱 전략을 조합하는 구조로, 총 네 가지 유효한 조합이 가능합니다.
전문가 선택 라우팅(Expert-choice Routing) + 재귀 단위 캐싱(Recursion-wise Caching)
전문가 선택 라우팅(Expert-choice Routing) + 재귀적 공유(Recursive Sharing)
토큰 선택 라우팅(Token-choice Routing) + 재귀 단위 캐싱(Recursion-wise Caching)
토큰 선택 라우팅(Token-choice Routing) + 재귀적 공유(Recursive Sharing)
즉, 속도, 메모리, 단순성 사이의 트레이드오프(Trade-off)에 따라서 어떤 조합을 선택할지가 달라집니다.
실제 성능 결과
테스트 결과, MoR은 우리가 익숙하게 사용해 온 기존 트랜스포머보다 눈에 띄게 향상된 성능을 보여줍니다.
예를 들어서, 전문가 선택 라우팅(Expert-choice Routing)과 2번의 재귀(Recursions)를 적용한 MoR은, 표준 트랜스포머보다 검증 손실(Validation Loss)이 더 낮고, 퓨샷 정확도도 더 높게 나왔습니다.
MoR: 43.1%
표준 트랜스포머: 42.3%
게다가 이런 성능을 달성하면서도 모델 파라미터(Parameter) 수는 약 50% 줄일 수 있었습니다.

Image Credit: MoR 오리지널 논문
재귀(Recursion) 횟수를 3번이나 4번으로 늘렸을 때도, MoR은 풀사이즈 트랜스포머와 비슷한 수준의 성능을 유지했습니다.
훈련 시간은 19% 단축
최대 메모리 사용량은 25% 절감
이건 계층적 필터링(Hierarchical Filtering)과 재귀 단위 어텐션(Recursion-wise Attention) 덕분이라고 할 수 있을 겁니다. 쉽게 처리할 수 있는 토큰의 시퀀스를 일찍 줄여주기 때문에 이런 효과가 가능한 것이죠.
다만, 3번의 재귀 설정에서는 라우팅 방식에 따라 차이가 나타났습니다.
토큰 선택 라우팅(Token-choice Routing): 40.0% 정확도
전문가 선택 라우팅(Expert-choice Routing): 42.6% 정확도
즉, 전문가 선택 방식이 더 안정적인 성능을 보여주고 있습니다.
한편, KV 캐시 공유(KV Cache Sharing)는 메모리를 절약하는 효과는 있었지만, 정확도가 약간 떨어졌습니다. 그럼에도 메모리가 매우 중요한 상황이라면 충분히 감수할 수 있는 트레이드오프(Trade-off)라고 하겠습니다.
MoR은 또 하나의 특징으로 연속적 깊이 배치(Continuous Depth-wise Batching)를 활용합니다. 서로 다른 재귀 깊이를 가진 토큰들을 묶어서 한꺼번에 GPU에 태우는 방식인데, 덕분에 GPU 자원을 최대한 활용할 수 있습니다. 큰 배치 상황에서는 최대 2.06배까지 처리량(Throughput)이 향상되는 것을 관찰했다고 합니다.
또 한 가지 흥미로운 점은, MoR은 더 많은 데이터를 먹이는 것보다는, 파라미터를 늘리고 학습 스텝을 줄이는 방식에서 더 큰 이득을 본다는 겁니다.
연구자들은 다양한 설정을 실험한 끝에, 최적의 설계안(Best Design Choice)으로 다음과 같은 세팅을 제안했습니다:
미들-사이클 파라미터 공유(Middle-cycle Parameter Sharing)
→ 처음과 마지막 레이어는 고유하게 두고, 중간 레이어들을 공유하는 방식보조 손실(Auxiliary Loss)과 선형 라우터(Linear Router)를 사용한 전문가 선택 라우팅(Expert-choice Routing)
재귀 단위 캐싱(Recursion-wise Caching)
다만, 토큰 선택 라우팅(Token-choice Routing)을 쓰는 경우에는 KV 공유(KV Sharing)가 더 유리할 수 있음
👉 그럼, MoR에 대해서 한 번 정리하고, 이 기법의 장점과 단점을 살펴볼까요?
MoR의 장점
레이어(Layer)를 재사용하면 필요한 파라미터 수를 크게 줄일 수 있습니다. 매번 새로운 레이어를 두는 대신, 같은 레이어 스택을 여러 번 통과시키기 때문이죠.
MoR의 라우팅(Routing) 결정은 무작위로 이뤄지는 게 아닙니다. 토큰의 의미와 난이도에 맞게 정렬되는데, 쉬운 토큰은 적은 횟수만 거치고, 어려운 토큰은 더 많은 단계를 거치도록 하는 식입니다.
또 MoR은 어텐션과 메모리도 더 똑똑하게 사용하죠. 각 단계에서 여전히 “활성 상태”인 토큰에 대해서만 무거운 어텐션 연산을 수행하고, 그 토큰에 대해서만 메모리를 저장합니다.
여기에 더해서, MoR은 ‘재사용(Reusing)’을 효율적으로 하는 전략을 씁니다. 특별한 KV 캐싱(KV Caching) 버전을 적용해서, 첫 번째 패스에서 저장한 데이터를 이후 단계에서도 재사용합니다. 덕분에 속도는 빨라지고 메모리 사용량은 줄어듭니다.
이렇게 연산 효율(Compute Efficiency)이 높아진 덕분에, MoR은 같은 FLOP 예산 안에서도 더 많은 토큰을 처리할 수 있습니다.
또 하나 중요한 장점은 테스트-타임 스케일링(Test-time Scaling)이 가능하다는 점입니다. 즉, 재학습을 하지 않고도 추론(Inference) 시점에서 최대 재귀 깊이를 더 늘릴 수 있다는 것이죠.
MoR의 한계점
하지만, 당연하게도 한계점은 있죠 - MoR의 한계는, 무엇보다도 아직 이에 대한 연구가 충분히 진행되지 않았다는 점에서 비롯되는 것들입니다:
훈련 이후 라우팅 용량을 조정하기 어렵다
보조 손실(Auxiliary Loss)을 사용하는 전문가 선택 라우팅(Expert-choice Routing)에서는, 선택된 토큰과 선택되지 않은 토큰의 출력이 거의 완벽하게 분리됩니다. 그렇기 때문에, 추론(Inference) 시점에서 top-k(즉, 한 단계에서 몇 개 토큰을 통과시킬지) 값을 바꾸기가 힘듭니다. 한 번 학습되고 나면 라우팅 결정이 지나치게 경직(Rigid)되기 때문입니다.라우터의 유연성이 부족하다
현재 라우터는 토큰의 추론 복잡도(Reasoning Complexity)에 따라서 재귀 깊이를 다이나믹하게 조절하도록 최적화되어 있지 않습니다.실험 규모의 한계
지금까지 실험된 모델은 최대 17억(1.7B) 파라미터 사이즈 수준입니다. 그 이상, 예컨대 30억(3B) 파라미터 이상의 대규모 MoR 모델이 어떤 성능을 보일지는 아직 알 수 없습니다.토큰별 연산량의 즉각적인 조절 불가
현재 설계로는, 실행 도중에 각 토큰마다 얼마만큼의 연산을 배분할지 쉽게 바꿀 수 없습니다.희소 연산(Sparse Computation) 기법과의 결합이 미흡
아직 MoR은 희소 연산 최적화 기법과 통합되지 않았습니다.텍스트 영역 외에는 검증되지 않음
MoR은 지금까지 텍스트 모델에서만 테스트되었고, 이미지나 멀티모달 같은 다른 영역에서는 아직 실험을 해 본 적이 없습니다.
그렇다면, MoR이 우리에게 던지는 의미는 뭘까요?
맺으며
MoR(Mixture-of-Recursions)기법은, 오늘날 가장 중요한 아이디어 중의 하나를 보여줍니다. 즉, 앞으로의 AI 개발 방향은 단순히 끝없이 레이어(Layer)를 더하는 게 아니라, 정말 필요할 때만 더 깊이 생각할 줄 아는 모델을 만드는 데 있다는 것입니다.
재귀의 깊이(Recursion Depth), 라우팅(Routing), 메모리 사용 방식을 다시 설계해서, MoR은 지금 있는 자원을 훨씬 더 똑똑하게 활용할 수 있는 방법을 제시합니다.
MoR은 유연한 사고의 깊이(Flexible Reasoning Depth)라는 개념의 무대를 열어젖혀 줍니다. 트랜스포머에다가 적응형의 백본(Backbone)을 제공해서, 각 토큰이 필요한 만큼만 적절히 처리되도록 하는 겁니다.
물론 아직 초기 단계고 더 많은 실험이 필요하지만, MoR의 맞춤형 아키텍처는 이 기법을 사실상 범용적인 시스템으로 포지셔닝해 줍니다. 마치 진짜 트랜스포머 장난감처럼요.
이제 남은 것은, 현재의 한계들을 극복하는 것입니다. 그렇게만 된다면, MoR은 고도의 전문성과 효과성을 갖춘 차세대 모델로서 자리 잡을 수 있을 겁니다.
보너스: 참고자료
읽어주셔서 감사합니다. 친구와 동료 분들에게도 뉴스레터 추천해 주세요!
Reply