Epoch AI, 현재 AI 인프라 한계와 그 돌파에 대한 분석을 내놓아 - 1편
1. 먼저 AI의 병목 중에 전력을 분석합니다.
우선 GPT-4, 라마3를 훈련시키는데 든 에너지는 15-30 메가와트(MW).
30MW는 3만 가구에 공급할 수 있는 전력.
하지만 지금부터 스케일링이 계속된다면 컴퓨트가 1만배 증가하게 될 것이고, 전력도 그에 따라 증가할 것.
하지만 하드웨어 성능이 좋아지면서 그대로 1만 배 더 큰 전력이 필요하진 않을 것이고
모델 훈련기간을 '더 늘리면' 전력 '피크' 자체는 그렇게 높게 필요하지 않을 수 있다.
이 모든 것들을 단순 외삽하고 계산해보면 사전학습에 필요한 전력은 200-250배 정도.
대략 5-15GW 가량이 필요하게 된다.
이는 원전 하나가 한 자릿수 GW를 생산하는 것에 고려하면, 그것을 뛰어넘는 전력이기 때문에 꽤 높은 전력규모다.
지구상에서 가장 큰 제련소가 사용하는 전력은 2GW 수준인데
5GW 급 데이터센터를 구축하는 것은 쉽지 않은 일.
때문에 EpochAI는 분산 학습이 가능한지를 분석합니다.
- 분산학습이 가능하다면 10GW 급 데이터센터조차도 구축 가능
- 고려해야할 주요 제약은 대역폭과 지연
- 이 중에 대역폭은 큰 제약이 아니다. 분산된 데이터센터 간에 더 많은 광케이블을 깔아버리면 그만이기 때문. 광섬유를 까는 비용은 데이터센터 구축비용이나 GPU 구입 비용에 비하면 매우 싸기 때문에 큰 문제가 아니다. 유럽산 광케이블로 대서양을 가로지르도록 하나 까는 비용이 1억 달러에 불과하기 때문.
- 수천억 달러를 데이터센터 구축에 사용하는데 그 연결비용이 수억달러라면 큰 문제가 아니라는 것.
- 나머지는 지연(latency) 문제인데 지금 방식의 트레이닝은 일종의 순차적(sequential) 처리 방식. 즉, 한 배치(batch)를 처리하고 모델을 업데이트한 뒤, 업데이트된 모델로 다음 배치를 처리하는 식. 이런 방식대로라면 미국 서부와 동부 끝으로 연결하는 정도에서 지연은 충분히 감당 가능. 이는 향후 10년 간 '지연'이 문제가 되지 않는 수준.
그렇다는 것은 분산학습을 사실상 충분히 가능하다고 Epoch AI는 보고 있고, 이미 마이크로소프트는 대규모 광섬유 계약을 2024년에 진행한 바 있음.
- 결국 전력은 문제가 안되며 '오히려 그 모든 병목 중에 유연하게 늘릴 수 있는' 부분.
2. 이어서 EpochAI는 컴퓨트 즉, GPU의 병목 가능성을 분석합니다.
만약 AI가 우리가 생각하는 만큼 강력하고 경제적으로도 가치가 있다면, 결국 이 병목을 해결해 GPU를 충분히 생산해내려는 노력이 많이 이뤄질 것.
TSMC 입장에서도, 만약 충분히 많은 선주문(advanced orders)을 받고, 하이퍼스케일러(hyperscalers)들이 GPU 생산 규모를 크게 늘려줄 것을 실제로 지불할 의사가 있음을 설득력 있게 보여준다면, TSMC도 첨단 패키징(capacity)을 확장해서 실리콘 웨이퍼를 고급 데이터센터용 GPU로 만드는 일을 기꺼이 추진할 거라고 보고 있음.
이미 그들은 이에 맞춰 빠르게 확장 중. 증가하는 수요를 지원하기 위해 새 패키징 공장을 짓고 있음.
하지만, TSMC가 데이터센터 GPU 수요에 대해 100% 확신하지 못해서 주저하는 부분이 있어 보입니다.
즉, 정작 TSMC가 AI 혁명에 대해 아직 반신반의하며 확실한 증설에는 나서지 않고 있다는 것.
여러 하이퍼스케일러가 함께 “큰 자금 투입”을 약속하고, TSMC 측에 “이 정도 투자가치가 있다”는 확신을 준다면, TSMC가 대규모 확장 투자에 나설 수도 있다고 판단.
지금 들려오는 소문에 따르면, OpenAI와 Microsoft가 1,000억 달러(USD) 규모의 대형 트레이닝 데이터센터를 함께 구축한다는 말이 있고 이런 주문들이 실제 이뤄진다면 TSMC도 움직일 수 밖에 없을 것.
EpochAI 연구원 개인적으로는 이게 실제로 일어날 가능성이 꽤 높다고 판단. 다만, 연구실-하이퍼스케일러-반도체 공장(팹)으로 이어지는 이 설득 과정이 적절한 시기에 제대로 이루어지지 않으면, 결국 시기상 안 맞아서 계획이 틀어질 가능성도 있다고 생각한다고.
현 시점 TSMC가 생산한 H100 급 GPU는 약 400만 대가 세계에 퍼져있다고 추정. 이는 TSMC가 만드는데 수년이 걸리는 규모.
10^28 FLOP 혹은 그 이상의 모델 규모가 만들어지려면 현 400만 대보다 최소 10배는 더 큰 4000만 대가 필요할 것.
GPU 자원이 한데로 모이면 더 빨라지겠지만 현실성은 낮고, 아마 하이퍼스케일러는 3곳 정도로 압축될 것.
또 추론용, 사전학습용 따로 GPU가 나간다고 생각하면 여기서 더 필요하게 됨.
결국 어느쪽이든 TSMC는 생산 캐파를 최소 10배는 늘려야하는데,
현재 연례보고서를 보면 연 30-60% 씩 확장이 가능하다고 말하고 있음.
그럼 10년 뒤면 10배 이상 규모를 늘리는 것은 가능한 수준.
3. 전력과 GPU 문제가 해결된다면, 데이터는 충분할까?
라마3는 15조 개 이상의 토큰으로 훈련. 이는 엄청난 양이긴 하지만 인터넷 전체 분량의 일부에 불과.
Common Crawl 같은 프로젝트들이 인터넷에서 데이터를 긁어 와서, 품질을 필터링하기 쉽게 인덱스를 만들어 놓긴 하지만 이런 케이스는 전체 인터넷 데이터의 1/5 정도.
따라서 이론적으로 더 철저하게 크롤링을 하면, 품질 필터를 그대로 적용하더라도 지금의 5배 정도 데이터를 얻을 수 있을것. 그럼에도 여전히 최종적으로 고품질 데이터만 남도록 필터링할 수 있다.
또 한 가지 변수는, 현재 SOTA(State of the Art) 학습 방식에서는 “데이터가 부족하지 않으니 한 데이터 포인트(샘플)를 한 번씩만 학습시키자”고 해왔다. 즉 더 다양한 데이터를 사용하는 게 낫다는 전제.
그런데 만약 데이터가 정말 부족해진다면, 사전 학습(pre-training) 단계에서 같은 데이터 포인트를 여러 번 학습시키는 방식을 택할 수도 있다.
-> 즉, 예전에는 모델에게 여러 반찬(데이터)를 먹이는 것이 모델이 성장하는데 도움이 되었다고 판단해서 그렇게 했지만 반찬(데이터)가 부족해진다면 몇 끼를 동일한 반찬으로 먹이는 것도 모델을 키우는 방법이 될 수 있다는 이야기.
이게 어느 정도 효용이 있을까?
-> 이미 몇몇 연구소들은, 특히 고품질 데이터에 대해, 여러 에폭(epoch)으로 학습을 시작했다고 들었다고. 멀티 에폭 트레이닝에 대한 연구들이 있어 왔는데, 거기서 보면, 같은 데이터를 계속 반복해서 봤을 때 나타나는 한계효용 감소(diminishing returns)가 본격적으로 나타나기 전까지는 최대 10에폭 정도 학습이 가능하다는 결과가 있다.
즉, 같은 데이터 학습을 10번 정도는 반복하는 것이 괜찮은 성과가 나오고 있다.
그 전까지는 마치 새로운 데이터셋을 사용하는 것처럼 효과가 난다는 것. 그러니까 지금 사람들이 흔히 2에폭 정도로 학습하는 것에 비해,
예를 들어 4배 정도 에폭을 늘린다고 치면, 실질적인 데이터셋 크기가 4배로 늘어나는 셈.
그리고 거기서 또 2배 정도 늘려서 학습해도, 아직은 컴퓨트를 쓴 만큼 어느 정도 이득을 얻을 수 있다는 얘기.
- 중요한 점은 컴퓨트가 1만 배 더 커질 때 필요한 데이터의 양은 거기에 루트를 씌운 값 정도이기에 데이터는 100배 키우면 된다.
그러니까 GPT-4보다 만 배 더 큰 모델(컴퓨트 기준)을 만들려면 데이터가 막 엄청나게 더 필요한 게 아니라, 100배 정도 더 많으면 충분할 수 있다.
-> 지금까지를 정리하면 좀 더 크롤링을 정교하게, 철저하게 해서 4-5배 정도 텍스트 데이터를 더 구하며(common crawl이 1/5이기에)
에폭을 반복시켜, 현 2에폭을 10에폭으로 늘린다면 4배 이상이므로 약 4-5배 정도의 데이터셋 규모가 커진다고 보면
여기까지 총 약 25배 데이터셋이 증가하게 되는 셈. 그럼 1만배 더 큰 모델을 만들기 위한 나머지 4배는 어디에서 구할까?
- 두가지 길이 남아있다. 하나는 텍스트 데이터가 아닌 멀티모달리티 데이터를 동원하는 것이고 다른 하나는 합성 데이터의 길.
- 비전데이터는 광자를 통한 비디오 데이터만 생각할 수도 있지만 에이전트가 실제 투입되었을 때 컴퓨터 스크린샷 등을 보게 되는 것 역시 멀티모달리티 데이터다.
- EpochAI는 합성데이터에 대해 굉장히 유망하다고 판단.
"우리는 모델 디스틸(distillation)이 가능하다는 걸 알고 있죠. 즉, 아주 큰 모델을 먼저 여러 데이터를 가지고 학습시킨 뒤,
그 모델이 만들어 낸 출력(데이터)을 기반으로 조금 더 작은 모델을 다시 학습시키는 방식이에요.
그러면 작은 모델이 적어도 큰 모델의 출력을 흉내 낼 수 있게 되죠. 또 한편으로는, 추론(inference)을 더 오래 시키면 결과물이 더 좋아진다는 “추론 스케일링” 개념이 있잖아요.
그렇다면 여기서 자가-재귀적(SOGAS) 피드백 루프가 생깁니다.
가장 앞선 성능의 모델로부터 합성 데이터를 생성해 내는데, 원하는 만큼 시간을 줘서 디지털 프롬프트 하나당 100개의 답변을 뽑아내고, 또 다른 모델이 그중 가장 품질이 높은 답을 골라낸다든지, 아니면 수학처럼 정답 검증이 가능한 분야에서는 “이 답이 정말 맞는지” 확인해서 품질 높은 데이터만 추려내죠.
이렇게 얻은 고품질 데이터셋으로 다시 학습하면, 모델을 더 오래, 더 많이 학습시킬 수 있게 되는 겁니다."
이미 포스트 트레이닝(post-training) 단계에서는 이런 일이 일어나고 있죠.
예를 들어 메타(Meta)는 꽤 투명하게 밝힌 바 있는데,
“먼저 코드 데이터로 모델 버전 하나를 학습시키고,
그 모델을 이용해 더 많은 코드 예시(합성 데이터)를 생성한 뒤,
그것을 다시 학습에 활용했다”라는 겁니다.
그렇다면 이 방식이 사전 학습(pre-training)에도 쓸모가 있을까요?
저는 ‘그렇다’고 봅니다.
그리고 오픈AI(OpenAI) 같은 대형 연구소 내부에서도 이미,
전체 컴퓨트 중 일정 비율은 협의 불가능할 정도로
“합성 데이터 생성”에 배정해 놓았을 거라고 추측합니다.
보통 한 토큰을 학습시키는 데 드는 컴퓨트가, 한 토큰을 생성하는 데 필요한 컴퓨트의 세 배 정도.
학습 = 생성x3.
때문에 학습에는 충분한 규모의 컴퓨트를 투입해야 하는데, 아무리 생성이 좀 더 적은 양의 컴퓨트가 든다 하더라도 고품질이어야하고 데이터셋 규모는 상당하기에, 결국 한정적인 연산 자원을 분배하는 것이 정말 중요할 것으로 보인다.
(이는 최근 openai 팀이 소라보다는 o시리즈에 힘을 주는 것이 왜 인지를 짐작하게 해줍니다. 비디오 생성모델보다는 합성데이터 쪽이 차기, 차차기 모델의 정교함을 더 끌어올릴 수 있다고 판단한 것이죠.)
EpochAI 연구원은 하나 더 흥미로운 이야기를 합니다.
그런데 한편으로, 합성 데이터가 무작정 인터넷에서 긁어온 데이터(아무리 필터링했다 해도)보다
훨씬 더 고품질일 수 있다는 기대가 있습니다.
왜냐하면 인간이 과업을 학습하는 방식을 생각해 보면,
어떤 건 다른 사람의 텍스트나 행동을 보고 배우는 게 충분할 수도 있지만,
예컨대 체스나 바둑, 프로그래밍처럼 좀 더 복잡한 과업의 경우,
남이 하는 걸 아무리 많이 지켜봐도 그게 전부는 아니죠.
직접 연습해 봐야 훨씬 더 많은 이득을 얻는 것처럼 보입니다.
합성 데이터가 이와 비슷하게, 토큰 하나하나가 훨씬 더 가치가 있게끔 만들어질 수 있다는 희망이 있는 거예요.
그래서 굳이 지금 사전 학습용 데이터만큼이나 큰 양을 생성하지 않아도,
10년 말까지 우리가 목표로 하는 스케일링에 도달할 수 있다는 거죠.
만약 합성 데이터가 기존 데이터 분포와 비슷한 품질밖에 안 된다면 어려울 테지만,
합성 데이터가 훨씬 더 질 높은 정보를 담고 있다면 가능할 거라고 봅니다.
이게 무슨 말이냐, 합성데이터는 '모델이 직접' 만든 데이터이기 때문에 인간으로 치면 직접 '바둑'을 둬본 것이나 다름 없습니다. '직접 만들어보고' '직접 생성해본 것' 이기에 '질'만 확보된다면 모델이 학습할 때 오히려 인간이 만든 것을 곁눈질로 보고 배우는 raw 데이터보다 자신들이 만들어본 데이터로 학습하는 것이 더 좋은 학습 효과를 낼 수도 있다는 이야기입니다. 이는 상당히 흥미롭고 재미있는 시선이었습니다.
이에 다른 EpochAI 연구원 역시 그 말이 합리적으로 들린다며, 결국은 데이터 역시 합성데이터로 돌파구를 마련할 것으로 보인다고 말합니다.