1
00:00:00,200 --> 00:00:06,000
한글 자막 — Junwon Lee (romaanj.github.io/talks)
원본: Kimi AI 채널 (YouTube) · 기계번역 보조, 오류 제보 환영

2
00:00:11,960 --> 00:00:13,320
안녕하세요, 여러분.

3
00:00:13,320 --> 00:00:15,360
소개해 주셔서 감사합니다.

4
00:00:15,360 --> 00:00:17,560
이 자리에 서게 되어 기쁩니다.

5
00:00:17,560 --> 00:00:26,400
저희의 최근 성과와 노력을 여러분과
공유할 기회가 생겨 기쁩니다.

6
00:00:26,400 --> 00:00:33,920
저희의 주요 목표 중 하나는 더
나은 오픈 모델을 만드는 것입니다.

7
00:00:33,920 --> 00:00:36,760
그리고 저희는 지능의 민주화를 믿습니다.

8
00:00:36,760 --> 00:00:39,000
오픈 모델은 어디에든
배포할 수 있습니다.

9
00:00:39,000 --> 00:00:40,840
로컬 서버에서도 가능하고,

10
00:00:40,840 --> 00:00:42,240
클라우드에서도 가능합니다.

11
00:00:42,240 --> 00:00:46,288
블랙박스를 그냥 쓰는 대신 모델 가중치의

12
00:00:46,288 --> 00:00:49,600
모든 비트에 접근할 수 있습니다.

13
00:00:49,600 --> 00:00:56,440
이 슬라이드는 올해 초 젠슨 황의
CES 기조연설에서 가져온 것입니다.

14
00:00:56,440 --> 00:01:00,500
보시다시피 오픈 모델은
독점 모델과의 격차를

15
00:01:00,500 --> 00:01:04,559
빠르게 좁히며 프런티어에
도달하고 있습니다.

16
00:01:04,559 --> 00:01:10,269
오픈 모델이 점점 좋아질수록
세계 곳곳의 누구나

17
00:01:10,269 --> 00:01:15,320
지능에 더 쉽게 접근하게
되리라 믿습니다.

18
00:01:15,320 --> 00:01:18,320
하지만 오픈 모델은 그저 열려
있기만 해서는 안 됩니다.

19
00:01:18,320 --> 00:01:21,920
뛰어나기도 해야 합니다.

20
00:01:21,920 --> 00:01:27,400
이번 발표에서는 오픈 모델을 어떻게
뛰어나게 만드는지 말씀드리겠습니다.

21
00:01:27,400 --> 00:01:34,840
아시다시피 스케일링은 수많은
진전을 이끈 핵심 동력입니다.

22
00:01:34,840 --> 00:01:40,600
지난 몇 년간 우리가 목격한 거의
모든 주요 AI 발전이 그렇습니다.

23
00:01:40,600 --> 00:01:43,180
여기서는 저희가 모델을 여러 차원에서

24
00:01:43,180 --> 00:01:45,760
어떻게 스케일링하는지 논의하겠습니다.

25
00:01:45,760 --> 00:01:51,640
왼쪽에 보이는 첫 번째 그림은
표준적인 스케일링 법칙입니다.

26
00:01:51,640 --> 00:01:56,960
x축은 학습 토큰 수의 로그 값이고,

27
00:01:56,960 --> 00:01:59,880
y축은 로그 로스입니다.

28
00:01:59,880 --> 00:02:03,400
학습 토큰 수를 늘릴수록
로스는 낮아집니다.

29
00:02:03,400 --> 00:02:08,160
하지만 핵심은 학습 토큰
수만 늘리는 것이 아니라

30
00:02:08,160 --> 00:02:13,200
토큰 효율성도 함께
높이고자 한다는 것입니다.

31
00:02:13,200 --> 00:02:17,080
즉, 이 곡선을 왼쪽으로
옮기려는 것입니다.

32
00:02:17,080 --> 00:02:24,520
같은 학습 토큰 수로 훨씬 낮은
로스를 달성하기 위해서입니다.

33
00:02:24,520 --> 00:02:28,425
이는 더 나은 아키텍처와 옵티마이저로

34
00:02:28,425 --> 00:02:32,720
가능하며, 뒤 슬라이드에서 다루겠습니다.

35
00:02:32,720 --> 00:02:38,560
저희가 큰 관심을 갖는 두 번째 스케일링
축은 컨텍스트 길이 확장입니다.

36
00:02:38,560 --> 00:02:44,760
두 번째 그림에서 보시듯,
컨텍스트 길이를 늘리면

37
00:02:44,760 --> 00:02:54,600
주어진 위치의 토큰 로스를 예측하는
정확도가 훨씬 높아집니다.

38
00:02:54,600 --> 00:02:59,031
즉, 컨텍스트 길이를
늘려 더 복잡한 태스크를

39
00:02:59,031 --> 00:03:03,640
해내도록 모델 능력을 키울
수 있다는 뜻입니다.

40
00:03:03,640 --> 00:03:07,720
이것이 두 번째로 다룰
스케일링 축입니다.

41
00:03:07,720 --> 00:03:10,560
세 번째 스케일링 축은
에이전트의 수입니다.

42
00:03:10,560 --> 00:03:14,534
저희는 에이전트 스웜이라는
새로운 학습 패러다임을

43
00:03:14,534 --> 00:03:18,360
도입했습니다. 단일
에이전트에만 의존하는 대신,

44
00:03:18,360 --> 00:03:23,190
에이전트 스웜을 오케스트레이션해
서브 태스크를 병렬로

45
00:03:23,190 --> 00:03:27,520
수행시켜 태스크 복잡도를
높일 수 있게 합니다.

46
00:03:27,520 --> 00:03:31,480
이 모든 것을 에이전트의
언어로 바꿔 말할 수 있습니다.

47
00:03:31,480 --> 00:03:37,520
토큰 효율성은 결국 더 강한
프라이어(prior)를 갖는 것이고,

48
00:03:37,520 --> 00:03:40,811
그래야 더 나은 해법을 찾는 에이전트

49
00:03:40,811 --> 00:03:44,760
RL에서 더 높은 효율을
얻을 수 있습니다.

50
00:03:44,760 --> 00:03:47,834
롱 컨텍스트는 컨텍스트 길이를 늘려 더

51
00:03:47,834 --> 00:03:51,200
오래 실행되는 에이전트를
만드는 것입니다.

52
00:03:51,200 --> 00:03:55,091
아마 며칠, 몇 주,
몇 달씩 실행하며 더

53
00:03:55,091 --> 00:03:59,320
많고 복잡한 태스크를
해낼 수 있을 것입니다.

54
00:03:59,320 --> 00:04:04,840
그리고 에이전트 스웜은 여기에
더해지는 또 하나의 축입니다.

55
00:04:04,840 --> 00:04:10,320
결과적으로 각각 아주 긴 컨텍스트를
가진 에이전트 스웜을 갖게 되고,

56
00:04:10,320 --> 00:04:14,724
각 에이전트는 매우 강한
프라이어를 갖춰, 저희가 이

57
00:04:14,724 --> 00:04:19,280
전체 에이전트 RL 시스템에서
탐색할 수 있게 됩니다.

58
00:04:19,280 --> 00:04:19,560
좋습니다.

59
00:04:19,560 --> 00:04:23,160
자, 토큰 효율성부터 시작하겠습니다.

60
00:04:23,160 --> 00:04:28,920
이것은 머신러닝 역사상 가장
고전적인 그림 중 하나입니다.

61
00:04:28,920 --> 00:04:29,120
네.

62
00:04:29,120 --> 00:04:31,680
Kaplan et al.에서
가져온 그림입니다.

63
00:04:31,680 --> 00:04:36,594
요지는 학습 토큰 수와 모델 파라미터,

64
00:04:36,594 --> 00:04:41,040
컴퓨트 양을 비례해서 함께 확장하면

65
00:04:41,040 --> 00:04:42,800
로스를 계속해서 낮출
수 있다는 것입니다.

66
00:04:42,800 --> 00:04:48,442
이는 더 나은 지능을 위해
지난 몇 년간 커뮤니티

67
00:04:48,442 --> 00:04:53,040
전체가 이룬 주요 돌파구 중 하나입니다.

68
00:04:53,040 --> 00:04:59,960
하지만 여기서 저희의 관심사는 토큰
효율성을 계속 높이는 것입니다.

69
00:04:59,960 --> 00:05:01,680
그런데 중요한 점이 있습니다.

70
00:05:01,680 --> 00:05:05,320
제가 강조하고 싶은 것은 토큰 효율성이

71
00:05:05,320 --> 00:05:08,960
단지 효율의 문제가 아니라는 점입니다.

72
00:05:08,960 --> 00:05:13,880
사실 지능의 상한을
높이는 일이기도 합니다.

73
00:05:13,880 --> 00:05:15,480
그 이유는 이렇습니다.

74
00:05:15,480 --> 00:05:23,040
예컨대 고품질 토큰이 50조
개 있다고 가정해 봅시다.

75
00:05:23,040 --> 00:05:27,400
여기에 새로운 옵티마이저, 이를테면
Muon 옵티마이저를 적용합니다.

76
00:05:27,400 --> 00:05:31,080
그러면 갑자기 토큰
효율성이 2배가 됩니다.

77
00:05:31,080 --> 00:05:38,640
마치 마법처럼 100조 토큰을
확보한 것과 같아지는 셈입니다.

78
00:05:38,640 --> 00:05:41,200
요즘 우리는 스케일링 과정에서 데이터

79
00:05:41,200 --> 00:05:44,400
장벽(data wall)에
부딪히고 있습니다.

80
00:05:44,400 --> 00:05:47,600
고품질 데이터의 양은
상당히 제한적입니다.

81
00:05:47,600 --> 00:05:53,360
데이터 양이 일정하다고 가정할
때 토큰 효율성을 높이면,

82
00:05:53,360 --> 00:05:57,040
거기서 더 나은 지능을
얻게 된다는 뜻입니다.

83
00:05:57,040 --> 00:05:59,360
단순히 인프라 효율의 문제가 아닙니다.

84
00:05:59,360 --> 00:06:02,680
더 나은 지능의 문제입니다.

85
00:06:02,680 --> 00:06:07,341
그래서 저희는 이 부분에
많은 노력을 쏟고 있습니다.

86
00:06:07,341 --> 00:06:11,520
지능의 프런티어를 밀어
올릴 것이기 때문입니다.

87
00:06:11,520 --> 00:06:18,520
Muon 옵티마이저는 작년부터 저희가
크게 투자해 온 것 중 하나입니다.

88
00:06:18,520 --> 00:06:22,360
이는 2차(second-order)
옵티마이저입니다.

89
00:06:22,360 --> 00:06:26,380
기본적으로 모든 그래디언트 업데이트를

90
00:06:26,380 --> 00:06:30,600
각 성분이 서로 직교하도록 변환합니다.

91
00:06:30,600 --> 00:06:34,920
이 점이 기존 Adam
옵티마이저와 매우 다릅니다.

92
00:06:34,920 --> 00:06:41,920
이 옵티마이저를 제대로 구현하면 토큰
효율성을 2배 개선할 수 있습니다.

93
00:06:41,920 --> 00:06:47,620
저희는 Muon 옵티마이저가
LLM 학습에 실제로

94
00:06:47,620 --> 00:06:53,320
확장 가능함을 입증한
최초의 연구를 발표했습니다.

95
00:06:53,320 --> 00:06:56,303
다음은 대규모 학습에서 효과를 내기

96
00:06:56,303 --> 00:06:59,600
위해 적용한 두 가지 핵심 기법입니다.

97
00:06:59,600 --> 00:07:01,560
그중 하나가 weight
decay입니다.

98
00:07:01,560 --> 00:07:04,560
더 큰 모델로 확장하는
데 매우 중요합니다.

99
00:07:04,560 --> 00:07:10,280
두 번째는 Adam과 비교해 일관된
RMS 업데이트를 보장하는 것입니다.

100
00:07:10,280 --> 00:07:16,680
그래서 각 업데이트에 조정
가능한 계수를 적용해

101
00:07:16,680 --> 00:07:22,360
결과 RMS가 Adam과
비슷한 수준이 되도록 합니다.

102
00:07:22,360 --> 00:07:25,407
또한 엔비디아 GPU 클러스터 전반에서

103
00:07:25,407 --> 00:07:28,600
Muon을 메모리 효율적으로 만들기 위해

104
00:07:28,600 --> 00:07:32,900
옵티마이저 상태를 데이터
병렬 그룹에 분할하는

105
00:07:32,900 --> 00:07:37,200
분산 Muon 옵티마이저
구현도 개발했습니다.

106
00:07:37,200 --> 00:07:43,080
덕분에 Muon 옵티마이저를 매우
효율적으로 구현할 수 있었습니다.

107
00:07:43,080 --> 00:07:47,040
논문에 실린 결과 중 일부입니다.

108
00:07:47,040 --> 00:07:52,320
보시다시피 파라미터 수와
학습 토큰 수가 동일할 때

109
00:07:52,320 --> 00:07:57,760
기존 AdamW 옵티마이저를 새
Muon 옵티마이저로 교체하기만 해도

110
00:07:57,760 --> 00:08:04,320
성능이 전반적으로 크게 향상됩니다.

111
00:08:04,320 --> 00:08:10,920
하지만 더 크게 확장하는 과정에서
새로운 난관에 부딪혔습니다.

112
00:08:10,920 --> 00:08:14,727
1조 파라미터 모델로 Muon을 확장하자

113
00:08:14,727 --> 00:08:18,880
학습 불안정성이라는 새
문제가 나타났습니다.

114
00:08:18,880 --> 00:08:23,702
왼쪽 그림에서 보시듯 max logit이

115
00:08:23,702 --> 00:08:29,400
빠르게 폭주해 순식간에
1,000을 넘었습니다.

116
00:08:29,400 --> 00:08:34,627
학습 중 max
logit의 일반적인 값은

117
00:08:34,627 --> 00:08:39,400
대략 50, 많아야 100 미만입니다.

118
00:08:39,400 --> 00:08:42,800
하지만 Muon에서는 순식간에
1,000을 넘어섭니다.

119
00:08:42,800 --> 00:08:47,400
동시에 왼쪽에서는 학습
발산이 관찰됩니다.

120
00:08:47,400 --> 00:08:50,600
학습 로스를 보면 잠시 내려가다가

121
00:08:50,600 --> 00:08:55,800
결국 폭발해 기대한 대로
수렴하지 못합니다.

122
00:08:55,800 --> 00:09:00,320
이것이 저희가 해결해야 했던
기술적 난제 중 하나였습니다.

123
00:09:00,320 --> 00:09:06,320
해결책은 QK-Clip이라는
새로운 기법을 도입하는 것입니다.

124
00:09:06,320 --> 00:09:11,680
핵심은 전체 신경망의
각 어텐션 헤드에 대해

125
00:09:11,680 --> 00:09:16,080
포워드 패스에서 max
logit을 계산하는 것입니다.

126
00:09:16,080 --> 00:09:20,898
그다음 각 키 프로젝션과 쿼리 프로젝션에

127
00:09:20,898 --> 00:09:24,840
적용할 나누기 계수를 계산합니다.

128
00:09:24,840 --> 00:09:30,225
그렇게 쿼리와 키의 최대값을 클리핑해

129
00:09:30,225 --> 00:09:35,880
정해진 범위 안으로 제한하는 것입니다.

130
00:09:35,880 --> 00:09:40,120
그러면 더 이상 폭주가
발생하지 않습니다.

131
00:09:40,120 --> 00:09:42,120
이것이 실제 실험 결과입니다.

132
00:09:42,120 --> 00:09:47,360
왼쪽에는 곡선이 두 개 있는데,
서로 완전히 겹쳐 있습니다.

133
00:09:47,360 --> 00:09:52,080
클리핑 기법 적용 전과
후의 학습 곡선입니다.

134
00:09:52,080 --> 00:09:55,968
클리핑 기법이 학습 로스 감소에 전혀

135
00:09:55,968 --> 00:10:00,440
영향을 주지 않는 것을
보실 수 있습니다.

136
00:10:00,440 --> 00:10:05,334
반면 오른쪽에서 중간
지표인 max logit을

137
00:10:05,334 --> 00:10:10,040
살펴보면, 효과적으로
제한되는 것이 보입니다.

138
00:10:10,040 --> 00:10:14,540
처음에는 이전처럼
폭주하지만, 100 값에서

139
00:10:14,540 --> 00:10:19,040
클리핑되어 오랫동안
일정한 값을 유지합니다.

140
00:10:19,040 --> 00:10:22,680
그리고 일정 스텝이 지나면
자연스럽게 내려갑니다.

141
00:10:22,680 --> 00:10:28,283
신경망이 스스로 max
logit의 최대값을 제한하는

142
00:10:28,283 --> 00:10:34,080
방법을 찾아, 안정적인 학습
과정을 보장하는 것입니다.

143
00:10:34,080 --> 00:10:40,800
동시에 앞선 그림에서 보듯, 학습
수렴에는 영향을 주지 않습니다.

144
00:10:40,800 --> 00:10:45,220
저희는 이 기법을 K2
모델 학습에 적용해

145
00:10:45,220 --> 00:10:49,640
1조 파라미터까지
성공적으로 확장했습니다.

146
00:10:49,640 --> 00:10:58,280
이는 머신러닝 역사상 최초의
대규모 Muon 학습 사례입니다.

147
00:10:58,280 --> 00:11:04,080
저희가 큰 관심을 두는 두 번째
차원은 롱 컨텍스트입니다.

148
00:11:04,080 --> 00:11:05,640
여기 또 다른 그림이 있습니다.

149
00:11:05,640 --> 00:11:07,760
아마 덜 알려져 있을 것입니다.

150
00:11:07,760 --> 00:11:11,720
이 논문들에 숨은 보석
같은 결과 중 하나입니다.

151
00:11:11,720 --> 00:11:16,718
단순히 더 많은 토큰으로
학습 로스를 낮추는 것이

152
00:11:16,718 --> 00:11:21,160
아니라, 다른 관점의
통찰을 담고 있습니다.

153
00:11:21,160 --> 00:11:26,560
보시다시피 트랜스포머와
LSTM을 비교한 것입니다.

154
00:11:26,560 --> 00:11:30,839
왼쪽을 보면 트랜스포머가 더
낮은 학습 로스를 달성하는데,

155
00:11:30,839 --> 00:11:35,800
같은 파라미터 수와 같은 학습 토큰
수에서, 예상대로의 결과입니다.

156
00:11:35,800 --> 00:11:42,080
이것이 트랜스포머가 오늘날 사실상
표준 아키텍처가 된 이유입니다.

157
00:11:42,080 --> 00:11:46,657
하지만 정말 흥미로운 것은
오른쪽인데, 트랜스포머는

158
00:11:46,657 --> 00:11:51,560
컨텍스트 전체에 걸쳐 개선되기에
실제로 더 우수합니다.

159
00:11:51,560 --> 00:11:54,160
x축은 컨텍스트 내 토큰 인덱스입니다.

160
00:11:54,160 --> 00:11:57,642
토큰 인덱스가 커질수록 트랜스포머의 학습

161
00:11:57,642 --> 00:12:01,440
로스가 크게 떨어지는
것을 볼 수 있습니다.

162
00:12:01,440 --> 00:12:08,440
컨텍스트 길이를 계속 늘리기만
해도 로스가 계속해서 떨어집니다.

163
00:12:08,440 --> 00:12:16,120
하지만 LSTM의 곡선을 보면 일정
토큰 수 이후에는 그대로 포화됩니다.

164
00:12:16,120 --> 00:12:18,697
이는 트랜스포머가 더 긴 컨텍스트를

165
00:12:18,697 --> 00:12:21,680
포착하는 능력이 더 뛰어나다는 뜻입니다.

166
00:12:21,680 --> 00:12:25,000
바로 이 점이 트랜스포머를
더 낫게 만듭니다.

167
00:12:25,000 --> 00:12:28,310
10년 전으로 돌아가 보면 사람들은 기계

168
00:12:28,310 --> 00:12:31,920
번역 같은 태스크에
LSTM을 사용했습니다.

169
00:12:31,920 --> 00:12:36,080
하지만 예를 들어 코드베이스 전체를
이해하는 데는 적합하지 않습니다.

170
00:12:36,080 --> 00:12:40,620
리눅스 커널을 처음부터 작성하는
것처럼 아주 긴 에이전트

171
00:12:40,620 --> 00:12:44,720
궤적을 실행해 문제를 푸는
데도 적합하지 않습니다.

172
00:12:44,720 --> 00:12:47,320
LSTM으로는 해낼 수 없는 일입니다.

173
00:12:47,320 --> 00:12:56,200
태스크가 점점 어려워지는 에이전트
시대에 꼭 필요한 능력입니다.

174
00:12:56,200 --> 00:12:58,280
그리고 점점 더 긴
컨텍스트가 필요합니다.

175
00:12:58,280 --> 00:13:03,320
그래서 여기서의 연구
아이디어는 더 나은 아키텍처를

176
00:13:03,320 --> 00:13:08,360
개발해 더 긴 컨텍스트
길이로 효율적으로 확장하면서

177
00:13:08,360 --> 00:13:15,680
동시에 더 큰 토큰 인덱스에서 더 낮은
토큰당 로스를 달성하는 것입니다.

178
00:13:15,680 --> 00:13:19,720
이런 동기에서 Kimi Linear라는

179
00:13:19,720 --> 00:13:23,760
새로운 아키텍처를 소개하게 되었습니다.

180
00:13:23,760 --> 00:13:29,107
여기에는 Kimi Delta
Attention(KDA)이라는

181
00:13:29,107 --> 00:13:34,293
새 선형 어텐션 변형이 들어
있는데, 순환 메모리를 개선해

182
00:13:34,293 --> 00:13:39,640
기존 gated delta
rule(GDR)을 향상시킵니다.

183
00:13:39,640 --> 00:13:41,280
자세한 내용은 뒤에서 보여드리겠습니다.

184
00:13:41,280 --> 00:13:48,400
동시에 선형 어텐션 레이어와 풀 어텐션
레이어를 3:1 비율로 섞습니다.

185
00:13:48,400 --> 00:13:53,552
이를 통해 롱 컨텍스트
능력과 더 효율적인

186
00:13:53,552 --> 00:13:58,480
구현 사이에서 균형을 맞출 수 있습니다.

187
00:13:58,480 --> 00:14:01,160
이것이 관련 수식의 일부입니다.

188
00:14:01,160 --> 00:14:03,080
기본 아이디어는 간단합니다.

189
00:14:03,080 --> 00:14:09,360
선형 어텐션의 원래 수식을
보면 메모리가 전역적입니다.

190
00:14:09,360 --> 00:14:15,720
전역의 단일 감쇠 계수가
전 과정에 적용됩니다.

191
00:14:15,720 --> 00:14:20,480
즉, 기본적으로 두 가지
경우밖에 없습니다.

192
00:14:20,480 --> 00:14:26,880
한 경우에는 사실상 모든 것을 잊어버려
어떤 정보도 유지하지 못합니다.

193
00:14:26,880 --> 00:14:31,320
다른 경우에는 거의 모든 것을
유지하도록 선택할 수 있습니다.

194
00:14:31,320 --> 00:14:38,000
하지만 이때는 롱 컨텍스트 안의 불필요한
정보를 걸러낼 능력이 없습니다.

195
00:14:38,000 --> 00:14:42,267
여기서 강조된 알파
항에서 보듯, 세분화된

196
00:14:42,267 --> 00:14:46,720
감쇠 계수라는 핵심
아이디어를 도입했습니다.

197
00:14:46,720 --> 00:14:56,959
이 항은 스칼라가 아니라 대각 행렬이
되어 채널별 감쇠율을 제어합니다.

198
00:14:56,959 --> 00:14:58,640
이렇게 하면 두 가지가 가능해집니다.

199
00:14:58,640 --> 00:15:03,601
일부 채널은 아주 느리게
감쇠시켜 롱 컨텍스트

200
00:15:03,601 --> 00:15:08,959
정보를 매우 긴 범위에
걸쳐 유지할 수 있습니다.

201
00:15:08,959 --> 00:15:14,515
동시에 다른 채널은 과거
인덱스의 정보를 빠르게 잊고

202
00:15:14,515 --> 00:15:19,880
상태를 갱신해 새로운 정보를
받아들일 수 있습니다.

203
00:15:19,880 --> 00:15:27,079
이는 모델의 표현력을
높이기 위한 것입니다.

204
00:15:27,079 --> 00:15:32,477
물론 최신 GPU를 활용하려면 청크 단위

205
00:15:32,477 --> 00:15:38,120
공식화를 사용해 연산을
병렬화해야 합니다.

206
00:15:38,120 --> 00:15:45,120
첫 번째 수식이 Kimi
Linear의 청크 단위 공식입니다.

207
00:15:45,120 --> 00:15:49,283
하지만 보시다시피 새로 도입된 알파 항

208
00:15:49,283 --> 00:15:54,040
때문에 인프라 측면에서
큰 난제가 생깁니다.

209
00:15:54,040 --> 00:15:59,280
이제 스칼라가 아닌 행렬이라 쉽게
밖으로 빼낼 수 없기 때문입니다.

210
00:15:59,280 --> 00:16:04,048
그래서 효율적인 구현을 위해 전체 수식을

211
00:16:04,048 --> 00:16:08,600
아래 세 개의 수식으로 다시 썼습니다.

212
00:16:08,600 --> 00:16:17,160
역행렬 연산을 도입하고 누적
감쇠 계수도 함께 도입했습니다.

213
00:16:17,160 --> 00:16:24,480
덕분에 효율을 전혀 희생하지 않고
전체를 병렬로 구현할 수 있습니다.

214
00:16:24,480 --> 00:16:28,480
더 중요한 점은 이것이
근사가 아니라는 것입니다.

215
00:16:28,480 --> 00:16:35,002
수학적으로 완전히 동치인
정확한 공식이므로, 성능

216
00:16:35,002 --> 00:16:40,800
손실 없이 훨씬 효율적인
구현이 가능합니다.

217
00:16:40,800 --> 00:16:50,520
즉, 기존 선형 어텐션 변형만큼
효율적이면서도 표현력은 훨씬 뛰어납니다.

218
00:16:50,520 --> 00:16:55,760
공정한 비교를 통해 얻은 결과들입니다.

219
00:16:55,760 --> 00:17:00,640
왼쪽은 두 가지 유형의
태스크에 대한 성능입니다.

220
00:17:00,640 --> 00:17:03,880
MMLU는 숏 컨텍스트 태스크입니다.

221
00:17:03,880 --> 00:17:07,514
숏 컨텍스트 태스크에서
Kimi Linear는

222
00:17:07,514 --> 00:17:11,439
MLA와 GDN보다 더
나은 성능을 달성했습니다.

223
00:17:11,439 --> 00:17:18,985
동시에 RULER 같은 더
긴 컨텍스트 태스크에서도 다른

224
00:17:18,985 --> 00:17:25,800
변형들보다 우수하면서
MLA보다 훨씬 효율적입니다.

225
00:17:25,800 --> 00:17:30,531
컨텍스트 길이를 100만
토큰 이상으로 더

226
00:17:30,531 --> 00:17:35,880
늘리면 베이스라인 대비
효율이 훨씬 높아집니다.

227
00:17:35,880 --> 00:17:42,339
또한 숏 컨텍스트, 롱
인풋, 롱 아웃풋 태스크 전

228
00:17:42,339 --> 00:17:49,720
구간에서 풀 어텐션을 능가한
최초의 아키텍처이기도 합니다.

229
00:17:49,720 --> 00:17:55,000
지금까지가 저희가 주목하는
두 가지 핵심 차원이었습니다.

230
00:17:55,000 --> 00:17:59,160
세 번째 차원은 에이전트 스웜입니다.

231
00:17:59,160 --> 00:18:05,615
단일 에이전트 패러다임보다 복잡한
태스크를 풀기 위해 에이전트

232
00:18:05,615 --> 00:18:11,880
스웜 패러다임을 어떻게 설계했는지
보여주는 다이어그램입니다.

233
00:18:11,880 --> 00:18:16,800
여기 오케스트레이터, 즉
메인 에이전트가 있습니다.

234
00:18:16,800 --> 00:18:20,120
태스크를 조율하는 역할을 맡습니다.

235
00:18:20,120 --> 00:18:21,520
여러 선택지를 갖고 있습니다.

236
00:18:21,520 --> 00:18:27,600
예를 들어 서브 에이전트 그룹을 스폰해
새 태스크를 할당할 수 있습니다.

237
00:18:27,600 --> 00:18:32,440
또는 서브 에이전트가 반환한
결과를 수집할 수도 있습니다.

238
00:18:32,440 --> 00:18:37,800
이 과정을 반복적으로
수행할 수 있습니다.

239
00:18:37,800 --> 00:18:41,320
그러면 단일 에이전트를 쓸 때보다 더

240
00:18:41,320 --> 00:18:44,840
복잡한 태스크를 완수할 수 있습니다.

241
00:18:44,840 --> 00:18:47,560
이는 인간 사회와 비슷합니다.

242
00:18:47,560 --> 00:18:51,679
예를 들어 회사를 만들려면
다양한 역할이 필요합니다.

243
00:18:51,679 --> 00:18:55,279
태스크를 분해해 각 역할에 할당할

244
00:18:55,279 --> 00:18:59,679
오케스트레이터, 즉 CEO가 필요합니다.

245
00:18:59,679 --> 00:19:06,919
그러면 조직 전체가 같은
목표를 향해 나아가게 됩니다.

246
00:19:06,919 --> 00:19:10,555
예를 들어 여기서는 AI 연구자, 웹

247
00:19:10,555 --> 00:19:14,919
개발자, 물리학 연구자가
있을 수 있습니다.

248
00:19:14,919 --> 00:19:17,000
이들은 각자 다른 주제를
연구할 수 있습니다.

249
00:19:17,000 --> 00:19:19,480
마지막에는 결과만 수집하면 됩니다.

250
00:19:19,480 --> 00:19:25,409
그리고 팩트체커, 웹
개발자, 파일 다운로더

251
00:19:25,409 --> 00:19:32,080
그룹을 스폰해 결과를
하나의 보고서로 취합합니다.

252
00:19:32,080 --> 00:19:38,000
이 새로운 패러다임을 보는
또 다른 관점이 있습니다.

253
00:19:38,000 --> 00:19:43,159
x축은 태스크의 복잡도입니다.

254
00:19:43,159 --> 00:19:46,440
y축은 실행 시간입니다.

255
00:19:46,440 --> 00:19:55,080
태스크 복잡도는 여러 모델이 해당
태스크에서 내는 정확도로 측정합니다.

256
00:19:55,080 --> 00:20:08,000
보시다시피 에이전트 스웜은 단일
에이전트보다 실행 시간을 크게 줄입니다.

257
00:20:08,000 --> 00:20:10,929
더 효과적이며, 이는 에이전트 스웜

258
00:20:10,929 --> 00:20:14,320
패러다임을 스케일할 수 있다는 뜻입니다.

259
00:20:14,320 --> 00:20:17,957
예를 들어 서브 에이전트
100개, 나아가

260
00:20:17,957 --> 00:20:21,120
1,000개로 에이전트 스웜을 돌리면

261
00:20:21,120 --> 00:20:27,227
실질적 경제 가치를
내기에 감당 가능한 시간

262
00:20:27,227 --> 00:20:33,080
안에 복잡한 태스크를
완수할 수 있습니다.

263
00:20:33,080 --> 00:20:36,480
그리고 분명 여러 차원으로
스케일할 수 있습니다.

264
00:20:36,480 --> 00:20:37,920
입력을 스케일할 수 있습니다.

265
00:20:37,920 --> 00:20:41,108
예를 들어 수백 개의 소스나 수천 개의

266
00:20:41,108 --> 00:20:44,600
문서를 병렬로 내려받아
읽을 수 있습니다.

267
00:20:44,600 --> 00:20:51,960
출력 측면에서는 100페이지짜리 문헌
리뷰를 병렬로 작성할 수 있습니다.

268
00:20:51,960 --> 00:20:53,480
또는 액션을 대규모로
수행할 수도 있습니다.

269
00:20:53,480 --> 00:20:58,040
10개의 서로 다른 태스크에 대해
데이터 분석을 수행할 수 있습니다.

270
00:20:58,040 --> 00:21:00,960
그리고 이는 대규모
오케스트레이션이기도 합니다.

271
00:21:00,960 --> 00:21:06,400
서브 태스크를 설계하고 결과를
취합하는 법을 학습해야 합니다.

272
00:21:06,400 --> 00:21:10,250
기술적으로는 에이전트 스웜 시스템의 학습

273
00:21:10,250 --> 00:21:14,800
과정을 이끌 새로운 목적
함수들을 정의했습니다.

274
00:21:14,800 --> 00:21:21,571
기존의 단일 에이전트 RL
학습과 달리 여기서는

275
00:21:21,571 --> 00:21:27,040
세 가지 보상 목적 함수를 고려합니다.

276
00:21:27,040 --> 00:21:28,537
첫 번째 항은 인스턴스화

277
00:21:28,537 --> 00:21:31,760
보상(instantiation
reward)입니다.

278
00:21:31,760 --> 00:21:36,092
서브 에이전트 인스턴스화를 유도해 직렬

279
00:21:36,092 --> 00:21:42,280
붕괴(serial collapse)
현상을 방지합니다.

280
00:21:42,280 --> 00:21:47,400
즉, 단일 에이전트 실행으로 되돌아가는
것을 원치 않는다는 뜻입니다.

281
00:21:47,400 --> 00:21:56,800
특히 학습 초기 단계에서 병렬
실행을 장려하고자 합니다.

282
00:21:56,800 --> 00:22:00,101
물론 이 인스턴스화 보상 항의 가중치는

283
00:22:00,101 --> 00:22:03,560
학습이 진행되면서 감쇠시킬 수 있습니다.

284
00:22:03,560 --> 00:22:10,360
병렬 실행을 학습하고 나면
가중치를 줄여도 되기 때문입니다.

285
00:22:10,360 --> 00:22:13,600
두 번째 항은 완료 보상(finished
reward)입니다.

286
00:22:13,600 --> 00:22:19,585
학습 중에 일부 서브
태스크가 생성만 되고 끝내

287
00:22:19,585 --> 00:22:24,880
완료되지 않는 현상을
관찰했기 때문입니다.

288
00:22:24,880 --> 00:22:30,800
서브 에이전트만 잔뜩 스폰해서 첫 번째
항을 해킹하는 것과 다름없습니다.

289
00:22:30,800 --> 00:22:34,960
태스크가 너무 복잡하거나, 아예 말이
안 되는 태스크일 수도 있습니다.

290
00:22:34,960 --> 00:22:40,620
그래서 완료 보상을
통해 각 서브 태스크가

291
00:22:40,620 --> 00:22:46,280
비교적 높은 비율로
완료되도록 유도합니다.

292
00:22:46,280 --> 00:22:51,760
의미도 없는 가짜 태스크만 잔뜩
스폰하지 않도록 말입니다.

293
00:22:51,760 --> 00:22:57,560
이것이 두 번째 항이고, 여기에도
같은 감쇠 전략을 적용합니다.

294
00:22:57,560 --> 00:23:01,475
학습 초반에는 비교적
높은 가중치를 쓰고,

295
00:23:01,475 --> 00:23:04,880
후반에는 낮은 가중치로 감쇠시킵니다.

296
00:23:04,880 --> 00:23:06,880
물론 세 번째 항은 표준적인 항입니다.

297
00:23:06,880 --> 00:23:09,040
바로 결과 보상(outcome
reward)입니다.

298
00:23:09,040 --> 00:23:14,720
전체 태스크가 완수되었는지를 측정합니다.

299
00:23:14,720 --> 00:23:20,480
그리고 이 세 가지 보상 항을
강화학습 시스템에 추가합니다.

300
00:23:20,480 --> 00:23:23,973
물론 전체 인프라도 구축해야 합니다.

301
00:23:23,973 --> 00:23:27,640
병렬 실행을 지원해야 하기 때문입니다.

302
00:23:27,640 --> 00:23:33,061
또한 다양한 보상 함수를
지원하고, 전체 에이전트

303
00:23:33,061 --> 00:23:38,080
스웜 RL 시스템의
효율을 극대화해야 합니다.

304
00:23:38,080 --> 00:23:44,560
자, 지금까지 저희가 스케일링을
시도한 세 가지 축입니다.

305
00:23:44,560 --> 00:23:47,985
MuonClip 옵티마이저는
토큰 효율성을 높이고,

306
00:23:47,985 --> 00:23:51,410
Kimi Linear
아키텍처의 Kimi Delta

307
00:23:51,410 --> 00:23:55,080
Attention(KDA)은
롱 컨텍스트를 개선합니다.

308
00:23:55,080 --> 00:23:59,091
그리고 에이전트 스웜 패러다임으로 새로운

309
00:23:59,091 --> 00:24:02,920
스케일링 차원을 하나 더 만들어냅니다.

310
00:24:02,920 --> 00:24:07,263
이 모든 것을 합쳐 한 달여 전에 공개한

311
00:24:07,263 --> 00:24:12,000
새 모델, Kimi
K2.5를 만들었습니다.

312
00:24:12,000 --> 00:24:27,951
그 능력 일부를 보여드리는
짧은 영상입니다.

313
00:25:19,040 --> 00:25:25,120
이 모델에서 발견한 흥미로운
능력이 정말 많습니다.

314
00:25:25,120 --> 00:25:30,400
예를 들어 비전 능력과
코딩 능력을 결합합니다.

315
00:25:30,400 --> 00:25:33,840
그래서 수많은 새로운 것들이
자연스럽게 창발합니다.

316
00:25:33,840 --> 00:25:38,949
영상을 읽고, 원본
영상을 재현하거나 스타일을

317
00:25:38,949 --> 00:25:43,240
옮긴 웹사이트를 만들어낼 수 있습니다.

318
00:25:43,240 --> 00:25:50,400
이 모든 것은 사전학습 단계의
성공적이고 안정적인 학습 덕분입니다.

319
00:25:50,400 --> 00:25:56,080
이것은 제가 평생 본 것 중 가장
아름다운 곡선 중 하나이기도 합니다.

320
00:25:56,080 --> 00:26:01,080
K2.5 베이스 모델의 학습 곡선입니다.

321
00:26:01,080 --> 00:26:05,080
보시다시피 15조 개가
넘는 토큰을 학습했습니다.

322
00:26:05,080 --> 00:26:09,560
물론 K2.5에서는 15조
토큰을 추가로 더 학습했습니다.

323
00:26:09,560 --> 00:26:14,040
그리고 전체 학습 과정이
매우 안정적입니다.

324
00:26:14,040 --> 00:26:17,890
로스 스파이크가 없습니다. 특히
새로운 Muon 옵티마이저를

325
00:26:17,890 --> 00:26:21,040
도입했는데도 스파이크가
전혀 관찰되지 않았습니다.

326
00:26:21,040 --> 00:26:27,360
이 매끄럽고 안정적인 학습 과정은
매우 안정적인 결과물을 만들어냅니다.

327
00:26:27,360 --> 00:26:32,100
그 위에 파인튜닝해 영상에서
보여드린 것 같은 새로운

328
00:26:32,100 --> 00:26:36,840
능력을 얻을 수 있는 아주
강력한 베이스 모델입니다.

329
00:26:36,840 --> 00:26:42,800
물론 이 모델도 엔비디아
H100 GPU로 학습했습니다.

330
00:26:42,800 --> 00:26:47,511
H100 클러스터의 각
노드에는 2TB RAM과

331
00:26:47,511 --> 00:26:52,040
NVLink로 연결된
GPU 8장이 있습니다.

332
00:26:52,040 --> 00:26:58,752
Kimi K2.5의 또 다른 핵심
혁신은 네이티브 비전-텍스트

333
00:26:58,752 --> 00:27:04,280
합동 능력을 갖춘 최초의
오픈 모델이라는 점입니다.

334
00:27:04,280 --> 00:27:07,900
기존 오픈 모델을 보면
보통 텍스트 베이스

335
00:27:07,900 --> 00:27:11,520
위에 비전 능력을
덧붙이는 방식이었습니다.

336
00:27:11,520 --> 00:27:16,280
예를 들어 텍스트 모델을
20조 토큰으로 학습한 다음,

337
00:27:16,280 --> 00:27:20,767
그 위에 2조 토큰의 포스트 트레이닝을

338
00:27:20,767 --> 00:27:25,040
더해 비전 능력을 추가하는 것입니다.

339
00:27:25,040 --> 00:27:29,114
하지만 K2.5는 다릅니다. 첫날부터

340
00:27:29,114 --> 00:27:33,800
비전과 텍스트의 학습
과정을 융합했습니다.

341
00:27:33,800 --> 00:27:35,760
이를 얼리 퓨전(early
fusion)이라고 부릅니다.

342
00:27:35,760 --> 00:27:39,360
학습 진행률 0%부터 시작합니다.

343
00:27:39,360 --> 00:27:43,600
첫날부터 비전 토큰과 텍스트
토큰을 합쳐 학습합니다.

344
00:27:43,600 --> 00:27:49,440
예비 실험에서 보였듯이 이
방식은 레이트 퓨전을 능가합니다.

345
00:27:49,440 --> 00:27:55,080
우리가 관찰한 새로운 능력 일부도
이 학습 레시피에서 나옵니다.

346
00:27:55,080 --> 00:27:59,500
예를 들어 비전-투-코드를 하려면 비전과

347
00:27:59,500 --> 00:28:03,920
텍스트를 단일 브랜치로 합쳐야만 합니다.

348
00:28:03,920 --> 00:28:07,160
두 갈래 브랜치로 분리하면 불가능합니다.

349
00:28:07,160 --> 00:28:12,763
두 모달리티를 공유 임베딩
공간, 즉 공유 표현

350
00:28:12,763 --> 00:28:17,720
공간에 정렬해야 이를
달성할 수 있습니다.

351
00:28:17,720 --> 00:28:21,233
또 하나 흥미로운 관찰은 두 모달리티가

352
00:28:21,233 --> 00:28:25,080
실제로 서로를 강화할
수 있다는 점입니다.

353
00:28:25,080 --> 00:28:31,074
오랜 난제가 있었습니다.
텍스트 모델에 비전 능력을

354
00:28:31,074 --> 00:28:36,640
더하면 텍스트 성능이 다소
떨어진다는 것입니다.

355
00:28:36,640 --> 00:28:39,494
하지만 제대로 학습하면 두 모달리티가

356
00:28:39,494 --> 00:28:42,919
실제로 서로를 강화한다는
것을 발견했습니다.

357
00:28:42,919 --> 00:28:48,040
이것이 저희 학습에서 관찰한
핵심 발견 중 하나입니다.

358
00:28:48,040 --> 00:28:50,320
먼저, 비전이 텍스트를 개선합니다.

359
00:28:50,320 --> 00:28:51,800
정말 흥미로운 부분입니다.

360
00:28:51,800 --> 00:28:55,592
첫 번째 열이 비전 RL 이전 성능이고,

361
00:28:55,592 --> 00:28:59,040
그다음이 비전 RL 이후 성능입니다.

362
00:28:59,040 --> 00:29:05,320
여기서 비전 RL이란 비전 태스크만
사용하는 과정을 말합니다.

363
00:29:05,320 --> 00:29:08,520
텍스트 태스크는 전혀 포함되지 않습니다.

364
00:29:08,520 --> 00:29:09,600
오직 비전 태스크만 있습니다.

365
00:29:09,600 --> 00:29:13,127
예를 들어 모델에게 개수 세는 법이나

366
00:29:13,127 --> 00:29:17,360
비주얼 QA 문제에
답하는 법을 가르칩니다.

367
00:29:17,360 --> 00:29:22,200
이 과정에 수학이나 코딩
문제는 전혀 없습니다.

368
00:29:22,200 --> 00:29:25,794
그런데도 상당히 무거운
텍스트 태스크에서까지

369
00:29:25,794 --> 00:29:28,640
성능이 향상되는 것을 관찰했습니다.

370
00:29:28,640 --> 00:29:31,480
그리고 반대로, 텍스트도
비전을 향상시킵니다.

371
00:29:31,480 --> 00:29:35,034
텍스트 베이스가 매우
강력하면 학습 과정에서

372
00:29:35,034 --> 00:29:38,440
비전 SFT 데이터가
전혀 필요 없습니다.

373
00:29:38,440 --> 00:29:40,919
저희가 채택한 접근이 바로 이것입니다.

374
00:29:40,919 --> 00:29:43,560
이를 제로 비전 SFT라고 부릅니다.

375
00:29:43,560 --> 00:29:47,960
저희의 비전 SFT
데이터는 사실상 0입니다.

376
00:29:47,960 --> 00:29:52,240
보유한 SFT 데이터는
텍스트 SFT 데이터뿐입니다.

377
00:29:52,240 --> 00:29:55,560
그다음 텍스트와 비전에 대해
합동 RL을 수행합니다.

378
00:29:55,560 --> 00:29:58,805
그 결과 비전 데이터 없이도 비전 태스크

379
00:29:58,805 --> 00:30:02,640
전반에서 거의 최고 수준의
성능을 달성했습니다.

380
00:30:02,640 --> 00:30:06,013
따라서 강력한 텍스트
베이스가 있으면 비전

381
00:30:06,013 --> 00:30:09,240
성능도 함께 향상된다는 점이 분명합니다.

382
00:30:09,240 --> 00:30:17,320
사전학습에서 두 모달리티를 공유
공간에 정렬한다면 말입니다.

383
00:30:17,320 --> 00:30:26,200
몇 가지 예시도 있습니다.

384
00:30:26,200 --> 00:30:29,542
영상에서 보여드렸듯이 비주얼 디자인과

385
00:30:29,542 --> 00:30:33,720
프런트엔드 코딩에서
강력한 역량을 보여줍니다.

386
00:30:33,720 --> 00:30:38,640
이 역시 비전-텍스트
사전학습에서 창발한 능력입니다.

387
00:30:38,640 --> 00:30:44,040
자, 여기까지가 Kimi
K2.5에 대한 이야기였습니다.

388
00:30:44,040 --> 00:30:49,408
이미 아시겠지만, 어제 테크
리포트로 Attention

389
00:30:49,408 --> 00:30:54,240
Residual이라는 새
아키텍처를 공개했습니다.

390
00:30:54,240 --> 00:30:58,680
이 새 연구도 여기서
간단히 소개하겠습니다.

391
00:30:58,680 --> 00:31:07,200
아마 이후 모델에 채택하게 될 차세대
아키텍처를 미리 엿보는 셈입니다.

392
00:31:07,200 --> 00:31:10,920
동기는 아주 단순합니다.

393
00:31:10,920 --> 00:31:17,640
시간 차원에서 쓰는 기법 일부를
적용할 수 있지 않을까 하는 것입니다.

394
00:31:17,640 --> 00:31:23,880
거기서 영감을 얻어 깊이
차원에 적용해 봅니다.

395
00:31:23,880 --> 00:31:28,400
출발점은 잔차 연결입니다.

396
00:31:28,400 --> 00:31:33,580
10년 전 ICML 2016
튜토리얼에서 카이밍

397
00:31:33,580 --> 00:31:38,560
허의 강연을 들었던
기억이 아직도 생생합니다.

398
00:31:38,560 --> 00:31:40,560
정말 탁월한 아이디어였습니다.

399
00:31:40,560 --> 00:31:46,880
ResNet 이전에는 아무도 깊은
네트워크를 학습시키지 못했습니다.

400
00:31:46,880 --> 00:31:53,320
신경망의 깊이, 즉 레이어 수를
늘리면 아무도 학습시킬 수 없었습니다.

401
00:31:53,320 --> 00:31:59,280
그래디언트 폭발과 소실 같은 온갖
안정성 문제가 나타났기 때문입니다.

402
00:31:59,280 --> 00:32:02,590
하지만 ResNet 등장 이후에는 레이어

403
00:32:02,590 --> 00:32:06,200
수를 얼마든지 늘려도
학습이 가능해졌습니다.

404
00:32:06,200 --> 00:32:14,120
원하는 만큼 레이어를 쌓아도 학습
안정성 문제를 걱정할 필요가 없습니다.

405
00:32:14,120 --> 00:32:20,063
일리야 수츠케버는 2년
전 강연에서 잔차 연결은

406
00:32:20,063 --> 00:32:26,920
90도 회전한 LSTM의
변형이라고 말한 바 있습니다.

407
00:32:26,920 --> 00:32:28,320
그럼 이걸 어떻게 이해해야 할까요?

408
00:32:28,320 --> 00:32:32,480
LSTM은 순환
신경망(RNN)의 한 변형입니다.

409
00:32:32,480 --> 00:32:36,000
즉 순환적인 모델링 과정입니다.

410
00:32:36,000 --> 00:32:41,120
직전 스텝의 히든 스테이트를 가져온 다음

411
00:32:41,120 --> 00:32:47,600
게이팅 메커니즘 같은 함수를
거쳐 현재 상태를 만들어냅니다.

412
00:32:47,600 --> 00:32:53,040
깊이 차원에서 보면 잔차
연결도 본질적으로 같습니다.

413
00:32:53,040 --> 00:32:56,120
직전 레이어의 출력을 가져온 다음

414
00:32:56,120 --> 00:33:06,120
그 위에 어떤 함수를 적용해 현재
레이어의 출력을 만들어냅니다.

415
00:33:06,120 --> 00:33:07,920
단지 수식화 방식이 다를 뿐입니다.

416
00:33:07,920 --> 00:33:11,240
예를 들어 잔차 연결에서는
고정된 덧셈을 사용합니다.

417
00:33:11,240 --> 00:33:20,080
이전 히든 스테이트와 현재
출력을 더하는 것입니다.

418
00:33:20,080 --> 00:33:22,960
수식화만 다를 뿐 기본
아이디어는 같습니다.

419
00:33:22,960 --> 00:33:27,760
깊이 차원에 적용된 순환
신경망인 셈입니다.

420
00:33:27,760 --> 00:33:35,600
한편 이 함수를 다시 수식화하는
것도 생각해볼 수 있습니다.

421
00:33:35,600 --> 00:33:41,040
LSTM 대신 깊이 차원에
어텐션을 적용할 수는 없을까요?

422
00:33:41,040 --> 00:33:45,691
어텐션은 트랜스포머
시대에 큰 성공이 입증된

423
00:33:45,691 --> 00:33:49,760
만큼 새로운 가능성을 열어줄 것입니다.

424
00:33:49,760 --> 00:33:53,840
그래서 직전 히든 스테이트만
가져오는 것이 아니라

425
00:33:53,840 --> 00:33:56,960
이전의 모든 히든 스테이트를 고려해

426
00:33:56,960 --> 00:34:06,960
어텐션 메커니즘으로 이들을 모아
집계해서 현재 상태를 계산합니다.

427
00:34:06,960 --> 00:34:12,359
이것이 바로 90도 회전한 어텐션입니다.

428
00:34:12,359 --> 00:34:21,080
저희는 이를 LSTM 비유에서 잔차
연결의 자연스러운 일반화로 봅니다.

429
00:34:21,080 --> 00:34:23,600
자, 상세한 수식은 다음과 같습니다.

430
00:34:23,600 --> 00:34:26,760
왼쪽은 표준 잔차 연결입니다.

431
00:34:26,760 --> 00:34:30,840
말씀드렸듯이 이는 기본적으로
LSTM을 90도 회전한 것이고,

432
00:34:30,840 --> 00:34:34,960
두 번째 그림은 어텐션을
90도 회전한 것입니다.

433
00:34:34,960 --> 00:34:38,840
저희가 하는 일은 이전 히든
스테이트를 모두 모아,

434
00:34:38,840 --> 00:34:41,728
그 위에 간단한 어텐션 연산을 얹어

435
00:34:41,728 --> 00:34:44,919
현재 레이어의 출력을 만드는 것입니다.

436
00:34:44,919 --> 00:34:49,166
물론 효율을 높이고 통신·메모리 오버헤드

437
00:34:49,166 --> 00:34:52,640
같은 인프라 부담을 줄이기 위해,

438
00:34:52,640 --> 00:34:55,437
오른쪽에 있는 Block
Attention

439
00:34:55,437 --> 00:34:58,720
Residual이라는
새로운 변형도 설계했습니다.

440
00:34:58,720 --> 00:35:01,720
이 아이디어도 기본적으로 간단합니다.

441
00:35:01,720 --> 00:35:07,560
신경망의 모든 레이어를
여러 블록으로 나눕니다.

442
00:35:07,560 --> 00:35:10,280
예를 들어 각 블록은 16개 레이어일

443
00:35:10,280 --> 00:35:13,000
수도, 4개 레이어일 수도 있습니다.

444
00:35:13,000 --> 00:35:16,636
그리고 각 블록마다 Attention

445
00:35:16,636 --> 00:35:21,000
Residual을 블록의
출력에만 적용하고,

446
00:35:21,000 --> 00:35:24,960
블록 내부에서는 여전히 표준
잔차 연결을 사용합니다.

447
00:35:24,960 --> 00:35:29,224
이렇게 하면 학습 정확도
손실은 최소화하면서

448
00:35:29,224 --> 00:35:32,600
오버헤드를 크게 줄일 수 있습니다.

449
00:35:32,600 --> 00:35:39,040
이것이 이 새로운 아키텍처로
달성한 인상적인 결과들입니다.

450
00:35:39,040 --> 00:35:46,600
스케일링 법칙에서 토큰 효율성을
24% 개선할 수 있는데,

451
00:35:46,600 --> 00:35:51,305
즉 고품질 토큰이 50조 개 있다면

452
00:35:51,305 --> 00:35:57,000
마법처럼 60조 개
넘게 생기는 셈입니다.

453
00:35:57,000 --> 00:36:07,040
검증 로스 역시 원래 곡선보다
일관되게 낮은 것을 볼 수 있는데,

454
00:36:07,040 --> 00:36:11,816
이는 최적화 전반의
안정성을 보여줍니다. 또한

455
00:36:11,816 --> 00:36:18,120
코딩·수학·추론 중심 태스크에서
가장 큰 개선을 달성했는데,

456
00:36:18,120 --> 00:36:21,260
GPQA, MATH, HumanEval

457
00:36:21,260 --> 00:36:24,400
벤치마크 결과에서 확인할 수 있습니다.

458
00:36:24,400 --> 00:36:28,800
자, 커뮤니티 전체가
계속 전진하고 있고,

459
00:36:28,800 --> 00:36:35,200
새로운 기술로 커뮤니티에
기여할 수 있어 기쁩니다.

460
00:36:35,200 --> 00:36:42,880
이런 기술 중 일부는 오랫동안
사실상의 표준으로 자리 잡아 왔지만,

461
00:36:42,880 --> 00:36:47,840
보시다시피 여전히 개선할
기회가 많이 남아 있습니다.

462
00:36:47,840 --> 00:36:53,080
혁명적인 새로운 설계로 더 나은
성능을 달성할 수 있는 것입니다.

463
00:36:53,080 --> 00:36:56,251
이 모든 이득을 곱해 보면 실제로 훨씬

464
00:36:56,251 --> 00:36:59,120
더 좋은 모델을 얻을 수 있습니다.

465
00:36:59,120 --> 00:37:04,366
Adam은 2014년에 발명됐는데,
이제 저희는 Adam의 드롭인

466
00:37:04,366 --> 00:37:09,320
대체재인 MuonClip을
스케일링해 오픈소스로 공개했습니다.

467
00:37:09,320 --> 00:37:13,800
그리고 트랜스포머 LLM을
학습하고 계시다면,

468
00:37:13,800 --> 00:37:17,720
Adam 대신 MuonClip을 쓰는
것이 분명 훨씬 더 나을 것입니다.

469
00:37:17,720 --> 00:37:21,520
어텐션은 8년도 더 전에 발명됐는데,

470
00:37:21,520 --> 00:37:25,120
이제는 선형 버전인 Kimi
Linear가 있습니다.

471
00:37:25,120 --> 00:37:28,480
모든 레이어에 풀 어텐션을
쓸 필요가 없습니다.

472
00:37:28,480 --> 00:37:31,540
숏 컨텍스트와 롱 컨텍스트 모두에서 더

473
00:37:31,540 --> 00:37:34,600
뛰어난 선형 어텐션을 쓸 수 있습니다.

474
00:37:34,600 --> 00:37:40,600
그리고 잔차 연결도 이제
도전받고 있습니다.

475
00:37:40,600 --> 00:37:42,330
저희는 Attention
Residual을

476
00:37:42,330 --> 00:37:43,760
스케일링해 오픈소스로 공개했습니다.

477
00:37:43,760 --> 00:37:48,692
자, 우리 시대의 흥미로운
점 하나는 연구에

478
00:37:48,692 --> 00:37:54,240
임하는 사고방식이 달라졌다는
점이라고 생각합니다.

479
00:37:54,240 --> 00:37:59,800
10년 전만 해도 연구는 주로 새로운
아이디어를 발표하는 일이었습니다.

480
00:37:59,800 --> 00:38:04,280
하지만 실험의 엄밀성이
부족해 탄탄한 실험

481
00:38:04,280 --> 00:38:08,760
결과를 내기가 매우
어려웠다고 생각합니다.

482
00:38:08,760 --> 00:38:10,400
하지만 지금 우리에게는
스케일링이라는 사다리가 있습니다.

483
00:38:10,400 --> 00:38:14,680
모델을 학습할 충분한 리소스가 있고,

484
00:38:14,680 --> 00:38:21,000
진전을 측정할 벤치마크
세트도 두루 갖추고 있습니다.

485
00:38:21,000 --> 00:38:27,320
그래서 확신 있고 탄탄한 결론을
내리기가 더 쉬워졌습니다.

486
00:38:27,320 --> 00:38:35,040
이것이 이런 오래된 기법들에서 새로운
진전이 나타나는 이유 중 하나이며,

487
00:38:35,040 --> 00:38:40,080
특히 오픈소스 커뮤니티에서 분명
더 많은 진전을 보게 될 것입니다.

488
00:38:40,080 --> 00:38:44,024
앞으로 몇 년간 더 많고 더 나은

489
00:38:44,024 --> 00:38:49,720
아키텍처·최적화 개선이
나올 것이라 생각합니다.

490
00:38:49,720 --> 00:38:53,579
자, 정리하면 저희는
계속 모델을 스케일링할

491
00:38:53,579 --> 00:38:57,760
것이고, 그 축이 바로
이 세 가지 차원입니다.

492
00:38:57,760 --> 00:39:02,294
예를 들어 이 세 차원 모두를 최적화하는

493
00:39:02,294 --> 00:39:07,240
다양한 아키텍처와
옵티마이저가 나오고 있고,

494
00:39:07,240 --> 00:39:11,200
스케일링의 새로운 차원도
계속 등장할 것입니다.

495
00:39:11,200 --> 00:39:13,600
에이전트 스웜이 끝이 아닙니다.

496
00:39:13,600 --> 00:39:18,440
더 나은 지능을 향해 오픈소스 커뮤니티

497
00:39:18,440 --> 00:39:23,280
전체와 함께 나아갈 수 있어 기쁩니다.

498
00:39:23,280 --> 00:39:27,932
대단히 감사합니다.
