마지막 업데이트 2025. 3. 16. 아직은 베타임.
들어가며
포스트를 기획하면서 가장 먼저 다루어야 하는 개념이 무엇일까 생각을 해보았습니다. 인공지능을 다루면서 우리가 자주 접하는 개념인 벡터로 시작을 해볼까 합니다.
What is vector?
(거의) 모든 것은 벡터입니다. 벡터에 대해 질문을 하면 다양한 답이 나오고는 합니다. 일반물리를 수강하셨다면 ‘방향이 없는 양은 스칼라, 방향이 있는 양은 벡터.’, $(1,0,0)$ 과 같은 단순한 숫자의 나열, 혹은 수학적 정의에 대해 살펴보고는 합니다. 저는 아마도 이렇게 답하고 싶습니다 “우리가 다루고자 하는 대상의 표현”.
우리가 다루고자 하는 이미지, 음성과 같은 대상은 다양한 특징이 있습니다. 우리는 이미지를 눈을 통해 바라보고, 음성을 귀를 통해 듣고 뇌에서 이해하지만, 컴퓨터는 눈과 귀가 직접 달려 있지는 않습니다. 카메라나 마이크와 같은 센서를 통해 이러한 실제의 대상을 추상적인 숫자로 표현을 합니다. 또, 컴퓨터가 잘 하는 것이 숫자에 관련된 연산입니다. 무언가를 더하고 빼고, 곱하고 나누고를 절차에 맞게 수행하는 것이 컴퓨터의 목적이니 이러한 대상으로 바꾸는 작업이 필요합니다. 즉, 우리가 다루고자 하는 대상을 컴퓨터가 잘 이해할 수 있도록 추상적인 개념인 벡터를 사용하게 됩니다.
정의
그렇다면 벡터를 왜 사용하게 될까요? 수학적 정의부터 살펴보도록 하겠습니다.