수학

[AI 수학] 인공지능 수학 - 1. 벡터/내적/코사인유사도

mhiiii 2025. 2. 6. 19:50
728x90

인공지능을 위한 기초수학 교재를 통해 공부한 내용을 서술하였습니다.

 


 

Vector, 벡터

Scalar : 크기만 주어지지만, 완전히 표시되는 양

Vector : 크기뿐만 아니라 방향까지 지정하지 않으면 완전히 표현할 수 없는 양

 

2차원, 3차원 공간의 벡터는 화살표로 표현 가능

 

영벡터 : 시작점(A)과 끝점(B)이 같아서 크기가 0인 벡터

 

  • 크기와 방향이 같은 벡터는 모두 같은 벡터
  • 시작점을 원점으로 고정한다면 그 벡터는 끝점의 좌표로 유일하게 나타낼 수 있음

 

왼쪽 : $ \vec{OA}= a = (a_1, a_2)$

오른쪽 : $ \vec{OA}= a = (a_1, a_2, a_3)$

 

여기서 $a_1, a_2, a_3$는 element라고 함

 


벡터의 정의

  1. n차원 벡터

    n개의 실수의 순서조 $(x_1, x_2, ... , x_n)$를 n차원 벡터라 하고,
    $$x = (x_1, x_2, ..., x_n) = \begin{bmatrix}
    x_1 \\
    x_2 \\
    ... \\
    x_n\end{bmatrix}_{n\times  1 }$$ 
    로 나타냄

  2. $-x$를 $x$의 음벡터라 함

  3. $x + 0 = x$

  4. $ x =\begin{bmatrix}
    x_1 \\
    x_2 \\
    ... \\
    x_n\end{bmatrix},  y = \begin{bmatrix}
    x_1 \\
    x_2 \\
    ... \\
    x_n\end{bmatrix}$ 일때, $x + y =  \begin{bmatrix}
    x_1 + y_1 \\
    x_2 + y_2 \\
    ... \\
    x_n + y_n \end{bmatrix}$

  5. 스칼라배
    $kx = \begin{bmatrix}
    kx_1 \\
    kx_2 \\
    ... \\
    kx_n\end{bmatrix}$

평행사변형법칙

728x90

내적

동일 차원의 두 벡터의 같은 성분끼리 곱한 값을 모두 더한 결과

dot product

$ x \cdot y = x_1y_1+ x_2y_2+...+x_ny_n = y^Tx$

$x \cdot x = \left\| x\right\|^2$

 


노름

x의 norm, length, magnitude 

$\to$ 벡터의 크기

 

$$\left\| x\right\| = \sqrt{x^2_1+ x^2_2+...+x^2_n}$$

 

$\left\| x\right\|$는 사실상 원점에서 점 $P(x_1,x_2, ..., x_n)$에 이르는 거리

 

$\left\| x - y\right\|$은 두 점 $\vec{x}$와 $\vec{y}$의 거리

 

주어진 두 데이터에 대하여, 거리가 가까우면 두 데이터는 유사하고, 거리가 멀면 두 데이터는 관계없다고 판단할 수 있음

 

 

데이터 유사도란?

 

주어진 데이터가 각 범주와 얼마나 가까운지 혹은 유사한지 판단하는 척도

벡터의 노름은 데이터의 유사도를 판단하는 하나의 기준

 

다만, 데이터의 방향(패턴)에만 관심이 있는 경우 이 거리에 관한 척도는 적합하지 않을 수 있음

 

 

a와 b는 방향은 유사하지만 거리는 매우 큰 값을 갖게 되어 거리 척도로는 두 데이터가 유사하지 않은 걸로 판단될 수 있음

 

이때는 두 벡터가 이루는 사잇각 $\theta$로 유사도를 측정

 

$\theta$가 크면 유사도가 낮고, 작으면 유사도가 높다.

 

이를 코사인 유사도라고 함

 

실제로는 사잇각을 계산하지 않고, 내적을 통해 $\theta$의 코사인 값으로 유사도를 측정 $\to $ 코시-슈바르츠 부등식

 

코시-슈바르츠 부등식

벡터 $x, y$에 대하여 다음 부등식이 성립

 

$$ \left | x \cdot y\right | \leq \left\| x\right\|  \left\| y\right\| $$

 

 

$$x \cdot y = \left\| x\right\| \left\| y\right\| cos\theta, (0\leq \theta \leq \pi )$$

 

$cos\theta$는 결국 [-1,1]의 범위를 가지기 때문에 $ -1 \leq \frac{x\cdot y}{\left\| x\right\|\left\| y\right\|} \leq 1$가 성립

즉, 두 벡터가 이루는 사잇각 θ의 코사인 값이 -1에서 1 사이의 범위를 가지므로,

  • cos⁡θ=1이면 두 벡터가 같은 방향을 가리키며,
  • cos⁡θ=0이면 두 벡터가 서로 직교(orthogonal)하며,
  • cos⁡θ=−1이면 두 벡터가 정반대 방향.

이러한 성질을 이용하여 벡터의 방향성을 기반으로 유사도를 측정하는 것이 코사인 유사도의 핵심 개념

 

정사영

한 벡터를 다른 벡터(또는 공간)에 대해 수직으로 투영한 벡터를 의미

 

벡터 y를 벡터 x위로 정사영한 벡터를 $proj_xy$로 표현

$$proj_xy = \frac{x\cdot y}{x \cdot x}x$$

 

아래 그림에서

점 P에서 OQ에 내린 수선의 발 S,

$\overrightarrow{OS}$를 x 위로의 y의 정사영,

w는 x에 직교인 y의 벡터성분이라고 함 

y는 p+w

 

내적 $x \cdot y$는 벡터 xy와 얼마나 같은 방향을 가지는지를 측정

전체 수식은 벡터 x의 방향을 유지하면서, y가 x 방향으로 얼마만큼 성분을 가지는지를 계산한 것

 

 

예제) x=(2,-1,3), y=(4,-1,2)에 대하여 x 위로의 y의 정사영 $proj_xy$와 x에 직교인 y의 벡터성분 w를 구하여라.

 

답) x= (2, -1, 3) y= (4, -1, 2) p= (15/7, -15/14, 45/14) w= (13/7, 1/14, -17/14) 

 

풀이는 30페이지 http://matrix.skku.ac.kr/math4ai/

 

http://matrix.skku.ac.kr/math4ai/

 

matrix.skku.ac.kr

 

 

References

https://swjman.tistory.com/88

 

3장 선형대수(1~3절) - 기본편 - 인공지능을 위한 수학

교재링크(광고 아님): freelec.co.kr/book/인공지능을-위한-수학/ 3-1 벡터3-2 덧셈과 뺄셈, 그리고 스칼라배3-3 유향선분  3-1 벡터벡터(vector) : '여러개의 데이터를 한 줄에 담아낸 것'이라고 교재에

swjman.tistory.com

http://matrix.skku.ac.kr/math4ai/Math4AI.pdf

https://wikidocs.net/214412

728x90