[선형대수 시리즈 3편] 벡터의 덧셈과 스칼라배, 선형성의 출발점

English version

이번 글에서 다룰 내용

이 글에서는 벡터에 대해 가장 먼저 익혀야 할 두 연산을 다룹니다.

  • 벡터 덧셈이 무엇을 뜻하는지 설명합니다.
  • 스칼라배가 벡터의 크기와 방향에 어떤 영향을 주는지 정리합니다.
  • 두 연산이 왜 선형성의 출발점인지 연결합니다.
  • 데이터 혼합, 가중합, 이동량 계산 같은 프로그래밍 예시로 이해합니다.

이번 글에서 새로 나오는 용어

  • 벡터 (vector): 여러 성분을 함께 다루는 기본 표현입니다.
  • 스칼라 (scalar): 벡터의 크기나 방향을 조절하는 숫자입니다.
  • 선형변환 (linear transformation): 덧셈과 스칼라배를 보존하는 변환입니다.

핵심 아이디어

벡터를 이해했다면 그 다음은 연산입니다. 선형대수에서 가장 기본이 되는 연산은 두 가지뿐입니다.

  1. 벡터 덧셈
  2. 스칼라배

이 두 연산이 중요한 이유는 이후의 거의 모든 개념이 여기서 만들어지기 때문입니다. 선형결합, 생성 범위(span), 기저(basis), 선형변환, 행렬곱, 정사영(projection)까지 모두 결국은 "벡터를 더하고, 스칼라를 곱하는 방식"을 확장한 것입니다.

벡터 덧셈

벡터 덧셈은 같은 차원의 벡터에서 성분별(componentwise) 로 더하는 연산입니다.

벡터 v = (v1, v2)w = (w1, w2)가 있으면

v + w = (v1 + w1, v2 + w2)

입니다.

이 식은 계산 규칙처럼 보이지만, 의미는 더 중요합니다. 벡터 덧셈은 같은 좌표계 안에서 각 축의 기여를 합치는 연산입니다.

  • 위치 변화 벡터에서는 여러 이동 효과를 누적합니다.
  • 속도 벡터에서는 여러 방향의 영향을 합칩니다.
  • 특성 벡터(feature vector)에서는 여러 효과를 동시에 반영한 결과를 만듭니다.

스칼라배

스칼라배는 벡터에 숫자 하나를 곱하는 연산입니다. 스칼라 a와 벡터 v = (v1, v2)가 있으면

a v = (a v1, a v2)

입니다.

스칼라배는 벡터의 크기를 키우거나 줄이고, 경우에 따라 방향을 뒤집습니다.

  • a > 1이면 벡터가 늘어납니다.
  • 0 < a < 1이면 벡터가 줄어듭니다.
  • a = 0이면 영벡터가 됩니다.
  • a < 0이면 방향이 반대가 됩니다.

왜 이게 선형성의 출발점인가

선형성(linearity)은 덧셈과 스칼라배를 잘 보존하는 구조를 말합니다. 어떤 함수나 변환 T가 선형이라는 것은 다음 두 조건을 만족한다는 뜻입니다.

T(v + w) = T(v) + T(w)
T(a v) = a T(v)

이 조건이 중요한 이유는 복잡한 입력도 기본 조각의 조합으로 분해해서 이해할 수 있게 해 주기 때문입니다. 선형 구조가 있으면 큰 문제를 작은 조각의 조합으로 바꾸기 쉬워집니다.

선형성의 간단한 결과도 같이 기억하면 좋습니다.

T(0) = 0
T(x1 v1 + x2 v2 + ... + xn vn) = x1 T(v1) + x2 T(v2) + ... + xn T(vn)

즉 선형변환은 영벡터를 영벡터로 보내고, 선형결합을 그대로 보존합니다.

단계별 예시

예시 1) 위치와 이동량

현재 위치가 p = (10, 5)이고, 이번 프레임의 이동량이 d = (2, -1)이라고 합시다. 새 위치는 다음처럼 계산합니다.

p + d = (10, 5) + (2, -1) = (12, 4)

이 계산은 매우 단순하지만, 여기서 하나를 구분해야 합니다. p는 엄밀하게 말하면 점(point) 또는 위치이고, d는 이동량을 뜻하는 벡터입니다. 입문 단계에서는 위치도 좌표 벡터처럼 다루지만, 더 엄밀한 수학에서는 점과 벡터를 구분합니다. 지금 단계에서는 좌표를 가진 점이 벡터처럼 계산되는 경우가 많다 정도로 이해하면 충분합니다.

이제 속도를 0.5초 동안 적용한다고 하면 이동량은 다음처럼 쓸 수 있습니다.

0.5 d = (1, -0.5)

즉 스칼라배는 시간 비율, 강도 비율, 가중치 비율처럼 다양한 실전 문맥에서 등장합니다.

예시 2) 2차원 수치 예시

벡터 v = (2, 3)w = (-1, 4)를 보겠습니다.

v + w = (2 + -1, 3 + 4) = (1, 7)
2v = (4, 6)
-1v = (-2, -3)
0v = (0, 0)

이렇게 작은 수치 예시를 직접 계산해 보면, 벡터 덧셈은 성분별 덧셈이고 스칼라배는 각 성분에 같은 비율을 곱하는 것이라는 점이 훨씬 분명해집니다.

예시 3) 두 효과를 섞는 가중합

어떤 추천 시스템에서 사용자의 취향을 두 가지 큰 요인으로 본다고 합시다.

  • 장르 취향 벡터 g
  • 가격 민감도 벡터 p

이 두 효과를 단순히 반반 섞고 싶다면 다음처럼 쓸 수 있습니다.

0.5 g + 0.5 p

장르 취향을 더 강하게 반영하고 싶다면

0.8 g + 0.2 p

처럼 가중합을 만들 수 있습니다. 이것이 바로 선형결합의 가장 초기 형태입니다. 이후 12편에서 다룰 생성 범위(span)도 결국 이런 가중합이 어디까지 가능한지를 묻는 개념입니다.

다만 실무 모델은 여기서 끝나지 않습니다. 실제 추천 점수에는 편향(bias) 항이 붙거나, 비선형 함수가 뒤따를 수 있습니다. 지금 예시는 선형대수의 핵심 뼈대를 단순화해 보여 주는 예시라고 이해하면 됩니다.

예시 4) 색상 보간

색상 A = (255, 0, 0)B = (0, 0, 255)가 있다고 해 봅시다. 둘의 중간색을 단순 평균으로 만들면 다음과 같습니다.

0.5 A + 0.5 B = (127.5, 0, 127.5)

실제 그래픽스 구현에서는 색공간과 감마 보정까지 고려해야 하지만, 벡터 덧셈과 스칼라배의 기본 직관을 익히기에는 좋은 예시입니다.

예시 5) 선형이 아닌 예시 하나

위치 벡터 x를 오른쪽으로 항상 3만큼 옮기는 변환을 생각해 봅시다.

T(x) = x + (3, 0)

이 변환은 직관적으로는 단순하지만 선형변환은 아닙니다. 왜냐하면

T(0) = (3, 0) != 0

이기 때문입니다. 즉 평행이동(translation) 은 자주 등장하지만 선형성(linearity)을 만족하지 않는 대표 예시입니다.

수학 주석

  • 벡터 덧셈과 스칼라배는 벡터공간을 만드는 가장 기본 연산입니다.
  • 선형대수에서 중요한 대부분의 대상은 이 두 연산에 대해 닫혀 있거나, 이 두 연산을 보존하는 구조로 정의됩니다.
  • 영벡터 0는 스칼라배와 덧셈의 기준점 역할을 합니다. 예를 들어 0v = 0, v + 0 = v입니다.
  • 각 벡터 v에는 -v라는 덧셈 역원이 있어서 v + (-v) = 0이 됩니다.
  • 덧셈과 스칼라배는 분배법칙(distributive law)도 만족합니다.
a(v + w) = av + aw
(a + b)v = av + bv

또 하나 중요한 점은, 같은 차원의 벡터라 해도 같은 의미 체계 안에 있을 때만 더하기가 자연스럽다는 것입니다. 수학 책에서는 보통 차원만 맞으면 더하지만, 실무에서는 단위와 특성(feature) 의미를 함께 봐야 합니다.

자주 하는 오해

성분별 계산만 외우기

(a, b) + (c, d) = (a + c, b + d)만 외우면 시험 문제는 풀 수 있습니다. 하지만 왜 이런 연산이 필요한지, 어떤 상황에서 의미가 있는지 놓치기 쉽습니다. 벡터 덧셈은 "같은 종류의 효과를 성분별로 합친다"는 해석과 함께 기억해야 합니다.

위치와 벡터를 완전히 같은 것으로 생각하기

입문 단계에서는 위치 좌표를 벡터처럼 다루는 일이 많지만, 엄밀하게는 점(point)과 변위(displacement vector)는 다릅니다. 지금은 계산 감각이 더 중요하므로 너무 깊게 들어갈 필요는 없지만, 둘이 완전히 같은 개념은 아니라는 점은 알아 두면 좋습니다.

스칼라배를 단순 확대라고만 생각하기

음수를 곱하면 방향이 반대가 되고, 0을 곱하면 영벡터가 됩니다. 스칼라배는 크기만 바꾸는 연산이 아니라 부호에 따라 방향까지 바꾸는 연산입니다.

아무 벡터나 마구 섞기

가중합은 강력하지만, 서로 다른 의미 체계의 벡터를 무작정 더하면 해석이 깨집니다. 예를 들어 좌표 벡터와 확률 벡터를 같은 공간의 대상으로 바로 합치는 것은 보통 자연스럽지 않습니다.

연습 또는 확장

다음 식이 어떤 상황을 표현하는지 말로 설명해 보세요.

  1. (3, 1) + (-1, 4)
  2. 2 (5, -2)
  3. 0.25 a + 0.75 b
  4. -1 v
  5. T(x) = x + (2, 0)가 왜 선형이 아닌지 설명하기

그리고 아래 질문도 함께 생각해 보세요.

  • 여기서 덧셈은 어떤 효과를 합치는가?
  • 스칼라배는 어떤 비율 조절을 뜻하는가?
  • 결과가 여전히 같은 종류의 벡터로 해석되는가?
  • 어떤 예시는 선형이고 어떤 예시는 선형이 아닌가?

이 과정을 거치면 계산식이 단순 기호가 아니라 실제 의미를 가진 모델로 읽히기 시작합니다.

마무리

이번 글에서는 벡터의 두 핵심 연산을 다뤘습니다.

  • 벡터 덧셈은 성분별로 같은 축의 정보를 합치는 연산입니다.
  • 스칼라배는 크기와 방향을 조절하는 연산입니다.
  • 이 두 연산이 선형결합과 선형성의 출발점입니다.
  • 프로그래밍에서는 이동량 계산, 가중합, 보간, 특성(feature) 조합으로 자주 나타납니다.
  • 평행이동(translation)처럼 익숙하지만 선형이 아닌 예시도 함께 구분해야 합니다.

다음 글에서는 벡터의 길이와 두 벡터 사이의 거리를 정의하면서, "얼마나 다른가"를 수치로 읽는 방법을 다룹니다.

💬 댓글

이 글에 대한 의견을 남겨주세요