모델의 구조
LLM 안에는 어떤 구조가 들어 있을까요?
출발점
번역하려고 만든 구조입니다
트랜스포머는 2017년 논문 'Attention Is All You Need'에서 나온 신경망 구조입니다. 처음 목적은 글쓰기가 아니라 번역이었습니다.
논문 제목은 '어텐션만 있으면 된다'는 뜻입니다. 어텐션은 이 편 뒤쪽에 나옵니다.
두 부분
읽는 쪽과 쓰는 쪽이 있습니다
읽는 쪽이 인코더, 쓰는 쪽이 디코더입니다. 인코더가 원문을 읽어 건네면, 디코더가 번역을 한 단어씩 씁니다.
그림의 번호는 순서입니다. 인코더가 건네는 것은 원문의 뜻을 담은 숫자 묶음이고, 이름은 임베딩입니다. 3강에서 다룹니다.
속을 보면
층을 여러 개 쌓았습니다
모델 안에서 단어는 숫자 묶음으로 다뤄집니다. 층 하나를 지날 때마다 그 묶음에 주변 문맥이 조금씩 더 담깁니다.
원본 트랜스포머는 이런 층을 인코더에 6개, 디코더에 6개 쌓았습니다. 층은 블록이라고도 부릅니다.
층 안의 핵심 · 셀프 어텐션
어느 단어를 볼지 스스로 정합니다
'그것'이 서버인지 요청인지는 글자만 봐서는 알 수 없습니다. 셀프 어텐션은 단어끼리의 관련도를 계산해서, 관련이 큰 '서버'의 정보를 많이 끌어옵니다.
어텐션은 주의를 기울인다는 뜻입니다. 계산 방법은 4강에서 다룹니다.
좋은 점
멀리 있는 단어도 바로 봅니다
트랜스포머 이전에는 단어를 하나씩 차례로 넘겨받아서, 문장이 길면 앞쪽 내용이 흐려졌습니다. 셀프 어텐션은 필요한 단어를 직접 참고하므로 길어져도 흐려지지 않습니다.
다음 편