벡터의 기초 개념 정리

2025. 7. 4. 10:24·Study/Mathematics For Machine Learning

1. 벡터란?

  • 숫자를 원소로 가지는 list 또는 array
    • numpy에서 np.array에서 나타내는 것은 보통 행벡터를 사용함.
  • 공간상의 한 점 또는 원점으로부터의 상대적 위치를 나타냄
    • 공간상의 한 점

 

  • 원점으로 부터의 상대적 위치

 

 

벡터의 차원 (Dimension of a Vector)

  • 벡터는 **스칼라(숫자)**를 원소로 가지는 순서 있는 집합
  • 이 원소의 개수를 벡터의 **차원 (dimension)**이라고 부름
    • 벡터가 갖는 원소 수 𝑑 를 차원이라고 함
    • $\mathbf{x} \in \mathbb{R}^d \quad$: $d$ - 차원 벡터
    • 열벡터: $d \times 1$, 행벡터: $1 \times d$
    • $\mathbf{x} =\begin{bmatrix}x_1 \\x_2 \\\vdots \\x_d\end{bmatrix}\in \mathbb{R}^d\quad (\text{열벡터})\quad \Rightarrow \quad\mathbf{x}^\top =[x_1, x_2, \dots, x_d]\quad (\text{행벡터})$

2. 벡터의 연산

백터의 덧셈/뺄셈

벡터는 같은 차원일 때만 연산 가능하다.

두 벡터의 덧셈은 다른 벡터로부터 상대적 위치이동을 표현한다.

$\mathbf{x} =\begin{bmatrix}x_1 \\x_2 \\\vdots \\x_d\end{bmatrix}, \quad\mathbf{y} =\begin{bmatrix}y_1 \\y_2 \\\vdots \\y_d\end{bmatrix}, \quad\mathbf{x} \pm \mathbf{y} =\begin{bmatrix}x_1 \pm y_1 \\x_2 \pm y_2 \\\vdots \\x_d \pm y_d\end{bmatrix}$

2.1 스칼라 곱

방향은 그대로, 크기만 변화한다.

\alpha \mathbf{x} =\begin{bmatrix}\alpha x_1 \\\alpha x_2 \\\vdots \\\alpha x_d\end{bmatrix}​

 

벡터의 성분곱(Hadamard product)

벡터끼리 같은 모양을 가지면 성분곱(Hadamard product)을 계산할 수 있다

$\mathbf{a} \odot \mathbf{b} =\begin{bmatrix}a_1 b_1 \\a_2 b_2 \\\vdots \\a_d b_d\end{bmatrix}$

3. 벡터의 노름

  • 벡터의 노름(norm)은 원점에서부터의 거리
  • 벡터의 노름은 임의의 차원 d에 대해 성립한다.
  • $L_1$, $L_2$ 노름은 기하학적 성질이 다르기 때문에 최적화할 시 성질에 맞게 사용한다.
  • $\|\mathbf{*}\|$ 기호는 노름(norm)이라고 한다.

 

 

L1 노름 (Manhattan Distance)

  • 각 성분의 변화량의 절대값을 모두 더한다.
  • $\|\mathbf{x}\|1 = \sum{i=1}^{d} |x_i|$

def l1_norm(x):
	x_norm = np.abs(x)
	x_norm = np.sum(x_norm)
	return x_norm

 

L2 노름 (Euclidean Distance)

  • 피타고라스 정리를 이용해 유클리드 거리를 계산한다

def l2_norm(x):
	x_norm = x*x
	x_norm = np.sum(x_norm)
	x_norm = np.sqrt(x_norm)
	return x_norm

L2-노름은np.linalg.norm을 이용해도 구현 가능

저작자표시 비영리 변경금지 (새창열림)

'Study > Mathematics For Machine Learning' 카테고리의 다른 글

평균, 표준편차, 분산, 그리고 Mahalanobis 거리  (0) 2025.07.04
'Study/Mathematics For Machine Learning' 카테고리의 다른 글
  • 평균, 표준편차, 분산, 그리고 Mahalanobis 거리
yoon-k
yoon-k
  • yoon-k
    To be || Not To be
    yoon-k
  • 전체
    오늘
    어제
    • 분류 전체보기 (84)
      • Study (13)
        • Linux (6)
        • Computer Vision (1)
        • Coursera - Deep Learning (4)
        • Mathematics For Machine Lea.. (2)
      • Programming (12)
        • Python (2)
        • ETC. (10)
      • virtual environment (44)
        • Docker (29)
        • conda (4)
        • Cloud (11)
      • Robotics (9)
        • Jetson (7)
        • ROS (2)
      • Upstage (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    Jetson
    업스테이지
    google cloud platform
    도커
    coursera
    LLM
    딥러닝
    Miniconda
    Installation
    GCP
    Anaconda
    ambassador
    docker
    cursor
    claude
    API
    futureofwork
    upstage
    OpenAI
    오린
    claude code
    nvidia
    Solar
    Deep Learning
    코세라
    ORiN
    redeem code
    vscode
    Andrew Ng
    conda
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
yoon-k
벡터의 기초 개념 정리
상단으로

티스토리툴바