메모리와 더 큰 모델

숫자 1억 6,300만 개를 담으려면 공간이 얼마나 필요할까요?

메모리

621.83MB를 차지합니다

파라미터 하나를 적는 칸의 크기가 4바이트입니다. 그런 칸이 163,009,536개면 621.83MB입니다. 개인 컴퓨터로도 다룰 수 있는 크기입니다.

바이트는 컴퓨터가 정보를 담는 단위입니다. 이 모델은 숫자 하나를 적는 칸으로 4바이트를 씁니다. 1MB(메가바이트)는 1,048,576바이트입니다.

블록 하나 속

피드 포워드가 어텐션의 두 배

블록 하나에서 피드 포워드는 4,722,432개, 어텐션은 2,360,064개입니다. 피드 포워드가 가운데를 4배로 넓히느라 표가 크기 때문입니다.

쿼리, 키, 값, 합치기는 어텐션 안에 있는 표 네 개의 이름입니다. 네모의 넓이가 파라미터 수이고, 따로 더하는 숫자가 조금 있어 정확히 두 배는 아닙니다.

더 큰 모델

숫자 세 개만 바꿉니다

임베딩 차원, 층 수, 헤드 수만 키우면 더 큰 GPT-2가 됩니다. 부품도, 잇는 순서도 그대로입니다.

임베딩 차원은 토큰 하나를 나타내는 숫자의 개수이고, 헤드는 블록 안에서 함께 도는 어텐션 하나하나입니다. small이 지금까지 만든 모델입니다.

세어 보면

가장 큰 것은 16억 개가 넘습니다

가장 작은 모델이 163,009,536개, 가장 큰 XL이 1,637,792,000개입니다. 열 배쯤 차이가 납니다.

6강에서 본 수는 3억 4,500만, 7억 6,200만, 15억 4,200만이었습니다. 이 코드로 직접 세면 표를 묶어도 그보다 조금 많습니다.

다음 편

크기를 쟀으니 이제 글을 쓰게 할 차례입니다

7편점수에서 토큰을 고르는 법 7강 목록