[ML 스터디] - ch3. 머신러닝을 위한 선형대수

Dreamer ·2023년 5월 21일
0

Machine Learning

목록 보기
2/3
post-thumbnail

1. 행렬의 기초

1-1. 행렬이란

  • 행렬은 스칼라(scalar), 벡터(vector)로 구성되어 있음.
  • 스칼라(scalar) : 행렬을 구성하는 요소인 각 숫자로서, 행렬의 구성 요소 중 최소 단위에 해당함.
  • 벡터(vector) : 스칼라의 집합으로, 벡터는 크기와 방향을 가짐.
  • 행렬(Matrix) :벡터의 집합, 행렬을 구성하는 각 스칼라값을 행렬 원소(element)라고 함.
  • 텐서(Tensor) : n차원으로 일반화한 행렬을 의미.

1-2. 대각 행렬

  • 대각 행렬(diagonal matirx) : 행렬의 대각 원소 이외의 모든 성분이 0인 행렬
  • 단위 행렬(identity matirx) : 행 번호와 열번호가 동일한 주 대각선의 원소가 모두 1이며, 나머지 원소는 모두 0인 정사각 행렬(square matrix)을 의미함.
  • 정사각행렬은 행과 열의 크기가 같은 행렬을 의미.
  • 대각 행렬은 D, 단위 행렬은 I로 표기함.

1-3. 전치 행렬

  • 전치 행렬(transoposed matrix) : 기존 행렬의 행과 열을 바꾸는 행렬

1-4. 행렬의 덧셈, 뺄셈

  • 행렬의 행 번호와 열 번호가 일치하는 원소끼리 계산함. 단, 더하거나 빼려는 행렬의 크기가 같아야 함.

1-5. 행렬의 스칼라곱

  • 행렬의 스칼라곱은 행렬을 구성하는 모든 원소가 스칼라값만큼 커지는 것을 의미하며, 이는 행렬을 구성하는 백터의 길이가 스칼라값만큼 길어진다는 것을 의미함.

1-6. 행렬곱(matirx multiplication)

  • 행렬간 서로 곱하는 것을 의미함.
  • 단, 앞 행렬으리 열 크기와 뒷 행렬의 행 크기가 일치해야 계산이 가능함.

1-7. 행렬의 원소곱

  • 행렬 원소곱(matrix element multiplication)은 차원이 동일한 두 행렬의 동일 위치 원소를 서로 곱하는 방법. 딥러닝 최적화 관련 알고리즘에 자주 사용됨.

1-8. 행렬식

  • 행렬식(determinant) : 행렬의 특성을 하나의 숫자로 표현하는 방법으로, 행렬식의 절댓값은 해당 행렬이 단위 공간을 얼마나 늘렸는지 혹은 줄였는지를 나타냄. 즉, 해당 행렬의 행렬식을 구한다는 것은 행렬을 구성하고 있는 벡터로 만들 수 있는 도형의 부피를 계산한다는 의미와 같음.

1-9. 역행렬

  • 역행렬(inverse matrix) : AB=I를 만족하는 행렬 B가 존재한다는 뜻으로, 이때 B를 행렬 A의 역행렬이라고 함. 역행렬은 행렬식이 0이라면 존재하지 않음. 또한, 역행렬이 존재하는 행렬을 가역 행렬(invertible matirx)라고 함.

2. 내적(inner product)

  • 스칼라+스칼라 = 스칼라,벡터 + 벡터 = 벡터이지만, 백터와 벡터의 연산 결과값이 스칼라가 나옴.
  • <u,v> = u*v = u1v1+ u2v2 + ... + unvn
  • 내적을 구하면 벡터의 길이(norm), 벡터 사이의 관계를 파악할 수 있음
  • 내적 > 0 -> 두 벡터 사이의 각도 < 90
  • 내적 < 0 -> 두 벡터 사이의 각도 > 90
  • 내적 = 0 -> 두 벡터 사이의 각도 = 90
  • 벡터 u의 길이 = ||u||

3. 선형 변환

  • 선형 변환(linear transformation) : 두 벡터 공간 사이의 함수.

4. 랭크, 차원

4-1. 벡터 공간, 기저

  • 벡터 공간(vector space) : 벡터 집합이 존재할 때, 해당 벡터들로 구성할 수 있는 공간.
  • 기저(bias) : 벡터 공간을 생성하는 선형 독립인 벡터들. 즉, 기저의 조합으로 공간을 생성할 수 있음.
  • 부분 공간(subspace) : 벡터 공간의 일부분을 의미함.
  • 백터 공간 V가 3차원이고, 2개의 기저 벡터 집합을 S라 할 때, 집합 S에 속하는 기저 벡터들로 구성되는 2차원 부분 공간을 W라고 했을 때, S는 부분 공간 W를 span한다고 말함 : W = span(S)

4-2. 랭크와 차원

  • 행벡터로 span 할 수 있는 공간을 행공간(row space)라고 하고, 열벡터로 span 할 수 있는 공간을 열공간(column space)라고 함.
    = 차원 (dimension) : 기저 벡터의 개수를 의미, 즉, 벡터 공간을 구성하는 데 필요한 최소한의 벡터 개수가 차원(dimension)임.
  • 랭크(Rank) : 열벡터에 의해 span된 벡터 공간의 차원.
  • 영공간(null space) : 행렬 A가 주어질 때 Ax = 0을 만족하는 모든 벡터 x의 집합이라고 함.

4-3. 직교 행렬

  • 직교 행렬(orthogonal matrix) : 어떤 행렬의 행벡터와 열벡터가 유클리드 공간의 정규 직교 기저를 이루는 행렬을 의미함.
  • '정규' : 벡터의 길이가 1인 벡터를 의미함.
  • '직교' : 벡터간 사이 각도가 90도임을 의미함. 두 벡터의 내적값이 0임.
  • 직교 행렬의 성질
    1. 직교 행렬의 전치 행렬은 직교 행렬.
    1. 직교 행렬의 역행렬은 직교 행렬.
    1. 직교 행렬끼리의 곱의 결과는 직교 행렬.
    1. 직교 행렬의 행렬식은 1 또는 -1.

4-4. 고윳값, 고유 벡터

  • 고윳값 (eigenvalue) : 특성값
  • 고유벡터 : 특성 벡터
  • 백터는 방향과 크기로 구성됨, 특성이란 방향은 변하지 않고 크기만 변하는 특성을 의미함. 즉, 고유벡터는 벡터에 선형 변환을 취했을 때, 방향은 변하지 않고 크기만 변하는 벡터를 의미함.
  • 선형 변환 이후 변한 크기가 고윳값을 의미함.

4-5. 특이값 분해

4-5-1. 닮음

  • 행렬 간 닮음(similar) = p-1AP=B를 만족하는 가역 행렬 P가 존재할 때, 정사각 행렬 A,B는 서로 닮음이라고 함. 행렬 A,B는 정사각 행렬이어야 하므로 행 크기와 열 크기가 같다.
  • 가역 행렬 : 역행렬이 존재한다는 의미.
  • B= P-1AP를 만족하는 직교 행렬 P가 존재할 때 B는 A에 직교 닮음이라고 함.

4-5-4. 특이값 분해

  • 특이값 분해 (Singular Value Decomposition) : 대상 행렬을 m * n 행렬로 일반화 시킨 것을 의미.
  • 행렬을 분해하는 방법 가운데 하나로서, 행렬의 차원 축소를 위한 도구로 쓰임.
  • 주성분 분석(principal component analysis)와 같은 차원 축소 분야에서 특이값 분해가 많이 쓰임.
  • 즉 대상 행렬 A가 p차원이라고 했을 때, A를 d차원으로 축소한 행렬을 B라고 함. 특이값 분해는 차원 축소 행렬 B를 찾는데 사용됨.
  • 행렬 A의 크기가 n*p라는 말은 p차원에 n개의 점이 존재한다고 볼 수 있음. 즉, 행렬 A에 대한 차원 축소란 n개의 점을 표혆랄 수 있는 기존 p보다 작은 차원인 d차원인 부분 공간(subspace)을 찾는 문제라고 볼 수 있다.

4-8. 이차식 표현

  • 이차식(quadratic form) : 다항식을 벡터 형태로 나타낼 때 사용한느 방법.
  • x^TWx = W는 대칭행렬로서, 대각 원소는 최고차항이 2인 제곱 항을 의미함.
  • 대각 원소가 아닌 원소는 cross product term의 절반 값.
  • x^TWx 형태로 표현한 식을 W에 대한 이차식이라고 함.
profile
To be a changer who can overturn world

0개의 댓글