벡터화
단어나 문장을 숫자 배열(벡터)로 변환하는 과정. 비슷한 의미는 가까운 숫자로, 다른 의미는 먼 숫자로 표현된다.
먼저 읽으면 좋은 글
토큰을 읽고 오시면 이 글이 더 쉽게 느껴집니다.
쉽게 말하면
AI에게 “강아지”와 “개”가 비슷한 단어라는 걸 어떻게 알까요? 지도 위의 좌표를 생각해보면 됩니다. AI는 각 단어를 지도 위의 한 점으로 표현합니다. 비슷한 의미의 단어들은 지도에서 가까운 위치에, 전혀 다른 의미의 단어들은 먼 위치에 배치됩니다. “강아지”와 “개”는 가까이, “강아지”와 “자동차”는 멀리 있게 됩니다. 벡터화는 이 지도를 만드는 과정입니다.
좀 더 정확히
여기서부터 조금 기술적입니다. 건너뛰어도 괜찮습니다.
벡터화(또는 임베딩)는 토큰을 수백~수천 개의 숫자 배열로 변환하는 과정입니다. 각 숫자는 긍정적인지 부정적인지, 구체적인지 추상적인지, 사람에 관한 것인지 사물에 관한 것인지 같은 의미적 기준을 나타냅니다. 이 기준 하나하나를 ‘차원’이라고 부릅니다. 지도에서 위도와 경도 두 축으로 위치를 정하듯, AI는 수백 가지 기준을 동시에 사용해 단어의 의미 위치를 정합니다.
이 숫자 배열은 단순한 번호가 아니라, 학습 데이터에서 추출한 의미 관계를 담고 있습니다. 예를 들어 “왕 - 남자 + 여자 = 여왕”처럼, 벡터끼리 더하고 빼는 연산으로 의미 관계를 표현할 수 있습니다.
AI가 언어를 이해하는 것처럼 보이는 이유가 여기 있습니다. 실제로 의미를 이해하는 게 아니라, 의미 관계가 수학적으로 인코딩된 공간에서 연산을 수행하는 겁니다. 확률적 생성에서 다음 토큰을 예측할 때도 이 벡터 공간에서의 거리와 방향이 핵심 역할을 합니다.
이걸 왜 알아야 하나요?
벡터화를 알면 AI가 ‘의미’를 다루는 방식의 기초가 보입니다. AI 검색(RAG), 추천 시스템, 유사 문서 찾기 같은 기능들이 모두 이 벡터 공간에서 가까운 점을 찾는 원리로 작동합니다. AI 기반 서비스를 직접 만들거나 이해하고 싶다면, 벡터화를 이해하면 시야가 넓어집니다. 또한 AI가 왜 동의어를 잘 처리하고 맥락을 반영한 답을 내는지, 반대로 왜 특정 상황에서 엉뚱한 연결을 하는지도 이 구조로 설명됩니다.