번호표는 붙였는데, 컴퓨터는 이 번호를 어떻게 받을까?
이전 페이지에서는 카드마다 번호표를 붙여 순서를 알려주었습니다. 이제 그 번호표를 컴퓨터가 계산할 수 있는 형태로 바꿀 차례입니다.
‘첫 번째 자리’도 여러 숫자의 묶음이 된다
컴퓨터는 문장, 단어, 위치를 모두 숫자로 계산합니다. 따라서 “첫 번째 자리”라는 위치 정보도 여러 숫자가 나란히 놓인 위치 벡터(Position Vector)로 바꿉니다.
문장 안에서 가장 앞에 있는 자리
첫 번째 위치를 표현하는 숫자들의 묶음
의미 벡터와 위치 벡터를 더한다
“문을 열고”라는 단어 표현은 이미 임베딩을 통해 의미 벡터가 되었습니다. 여기에 “첫 번째 자리”를 나타내는 위치 벡터를 더합니다.
벡터는 같은 자리의 숫자끼리 더한다
벡터를 더하는 방법은 어렵지 않습니다. 첫 번째 숫자는 첫 번째 숫자끼리, 두 번째 숫자는 두 번째 숫자끼리 더합니다.
의미 위에 위치 정보를 덧칠한다고 생각해 보자
벡터 덧셈이 낯설다면 색을 덧칠하는 장면으로 생각할 수 있습니다. 파란색은 단어의 의미이고, 보라색 무늬는 문장 속 위치입니다.
이 단어가 무엇을 뜻하는가?
문장 안에서 몇 번째인가?
의미와 위치를 동시에 가진 표현
의미만 보고, 위치만 보고, 둘을 합쳐 보자
아래 버튼을 눌러 각 정보가 어떻게 나타나는지 확인해 보세요.
의미 벡터
“문을 열고”의 뜻
위치 벡터
첫 번째 자리의 정보
최종 입력 벡터
의미 + 위치
위치 정보가 단어의 원래 의미를 지우는 것은 아니다
위치 벡터를 더한다고 해서 “문을 열고”라는 말이 갑자기 다른 단어로 바뀌는 것은 아닙니다. 단어의 의미를 담은 정보 위에 문장 속 자리 정보를 함께 실어 보내는 것입니다.
이번 페이지에서 기억할 것
- 문장 속 위치도 컴퓨터가 계산할 수 있도록 벡터로 표현합니다.
- 단어 임베딩은 단어의 의미를 담은 의미 벡터입니다.
- 위치 벡터는 단어가 몇 번째 자리에 있는지 나타냅니다.
- 두 벡터는 같은 자리의 숫자끼리 더합니다.
- 그 결과 의미와 위치를 함께 담은 Transformer 입력 벡터가 만들어집니다.