선형 대수학 | Chapter 5. 행렬, 파트 2 : 행렬의 확장 개념

    728x90

     

    5.1 행렬 노름 (표기 : $||A||$ )

    행렬 노름 종류

    원소별 계열 : 원소별 노름은 행렬의 개별 원소를 기반으로 계산됨. 행렬의 원소의 크기를 반영해서 해석됨.

    유도 계열 : 행렬은 벡터를 변환하는 기능이 있는데 행렬의 유도별 노름은 이 변환으로 인해 벡터의 크기(노름)가 얼마나 조정되는지에(늘리거나 줄이거나) 대한 측정치인 것.

     

    원소별 노름 → 가장 일반적으로 사용되는 노름은 유클리드 노름

    : 벡터 노름을 그대로 행렬에 확장한 것.

    유클리드 노름은 프로베니우스 노름이라고도 함. 프로베니우스 노름은 $l2$노름이라고도 함.

    모든 행렬 원소의 제곱합의 제곱근으로 계산됨.

    $||A||_{F} = \sqrt{\sum^{M}_{i=1}\sum^{N}_{j=1}a^2_{ij}}$

    인덱스 $i, j$는 각각 M행과 N열에 해당됨.

     

     행렬 노름 사용

    ( 머신러닝 통계 )

    정규화 >> 정규화의 목표는 모델 적합성을 개선 + 발견되지 않은 데이터에 대한 모델의 일반화 성능 높이는 것 

    정규화의 기본 생각은 행렬 노름을 최소화 알고리즘에 비용 함수로 추가하는 것

    노름은 모델 매개변수가 너무 커지거나 (L2 정규화, 릿지 회귀), 희소 결과가 나오는 것을 방지함(L1 정규화, 라쏘 회귀)

    ( '행렬 거리' 계산)

    프로베니우스 노름은 '행렬 거리'를 계산할 때도 응용됨.

    동일한 행렬 사이의 거리 = 0

    서로 다른 행렬 사이의 거리는 행렬 안의 숫자의 차이가 클수록 증가함.

    행렬 거리 계산은 위 프로베니우스 식에서 행렬 $A$를 행렬 $C=A-B$로 바꾸기만 하면 됨.

    머신러닝 알고리즘에서 최적화 기준으로 사용될 수 있음.

    ex) 축소된 행렬과 원래 행렬 사이의 프로베니우스 거리를 최소화하면서 이미지의 데이터 저장 크기를 줄이는 것.

     

    행렬의 대각합과 프로베니우스 노름

    대각합 ( 표기 : $tr(A)$ )

    : 대각 원소의 합. 정방 행렬에 대해서만 존재함.

    : 행렬의 대각합은 행렬의 고윳값의 합과 같음. 즉, 행렬의 고유공간의 '부피'에 대한 측정치가 됨.

    : 흥미로운 사실 한 가지! 프로베니우스 노름은 어떤 행렬의 전치와 그 행렬을 곱한 결과의 대각합의 제곱근으로 계산할 수 있음.

    $||A||_{F} = \sqrt{\sum^{M}_{i=1}\sum^{N}_{j=1}a^2_{ij}} = \sqrt{tr(A^{T}A)}$

    이것이 성립하는 이유는 행렬 $A^{T}A$의 각 대각 원소는 동일한 행에 대한 내적이기 때문.

     

    5.2 행렬 공간 (열, 행, 영)

    행렬의 서로 다른 특징들 사이의 선형 가중 결합임.

    행렬의 열공간 ( 표기 : $C(A)$ )

    : 행렬을 열벡터의 집합으로 간주하고, 무한한 실수 스칼라를 적용해 벡터 집합을 무한히 선형 결합한 것.

    : 이 결과로 생성된 무한 벡터 집합을 행렬의 열공간이라고 함.

    : 열 공간의 차원 수는 열들이 선형 독립 집합을 형성하는 경우에만 열 수와 같음.

    : 행렬이 열공간에 벡터가 있는지 여부를 확인하는 정량적 방법은 행렬 계수 개념 활용하는 것.

     

    행렬의 행공간 ( 표기 : $R(A)$ = $C(A^{T})$ )

    : 행렬의 행으로 가능한 모든 가중 결합

     

    영공간 ( 표기 : $N(A)$ )

    : 영공간은 열공간과 중요한 차이점이 있음.

    열공간은 $Ax = b$ 라고 요약이 가능하고, 이 식의 의미는 '$A$의 열의 가중 결합으로 벡터 $b$를 생성하는 어떤 가중치의 집합 $x$를 찾을 수 있는지' 라는 의미임.

    답이 '그렇다'라면 $b \in C(A)$가 되고, 벡터 $x$는 $A$의 열에 어떤 가중치를 부여하면 $b$에 도달할 수 있는지를 의미하게 됨.

     

    : 반대로 영공간은 $Ay=0$으로 요약이 가능하고, 이 식의 의미는 '$A$의 열의 가중 결합이 영벡터가 되는 어떤 가중치의 집합 $y$를 찾을 수 있는지'라는 의미임.

    모든 행렬 $A$에 성립하는 정답은 $y=0$임.

    이렇게 뻔한 답 대신 '모든 값이 0이 아닌 가중치 집합을 찾을 수 있는지'를 살펴볼 수 있음.

    (예시 행렬)

    $\begin{bmatrix} 1 & -1 \newline -2 & 2 \end{bmatrix}$

    이 예시에서의 벡터 $y$는 [1, 1], [-1, -1], [2, 2], [7.34, 7.34] ... 등이 될 수 있음.

    즉, $Ay=0$을 만족하는 벡터 $y$는 무한히 존재함.

     

    하지만 위 예시와 다르게 행렬의 열들이 독립 집합이라면, 행렬의 영공간은 빈 집합이 됨. $N(A) = \{\,\}$

     

    5.3 계수 ( 표기 : $r(A)$ 또는 $rank(A)$, 'A는 계수 $r$의 행렬입니다.' )

    하나의 행렬과 연관된 고유한 숫자

    행렬 부분공간의 차원의 수와 관련 있음

    역행렬이나 방정식의 정답의 수를 결정하는 등의 행렬 연산에서 중요한 의미를 가짐

     

    계수의 속성

    : 음이 아닌 정수

    : 행렬의 계수는 하나의 고유한 계수를 가짐.

    : 행렬의 최대 가능한 계수는 행 또는 열의 개수 중에서 더 작은 값. 즉, $r=min\{M, N\}$

    : 최대로 가능한 계수를 가지는 행렬을 '최대 계수' 또는 '전 계수'라고 함.

    계수가 $r<min\{M, N\}$인 행렬은 '축소 계수', '계수 부족' 또는 '특이' 등으로 불림.

    : 스칼라 곱셈은 행렬 계수에 영향을 미치지 않음. (0은 예외)

     

    행렬 계수 정의 및 해석

    : 선형 독립 집합을 형성할 수 있는 최대 열(또는 행)의 수

    : 행렬 공간(열 공간, 행 공간)의 차원의 수 

    : 행렬 안의 정볼ㄹ 포함하는 차원 수 (선형 종속적인 경우, 행렬의 전체 열 또는 행 수와 같지 않을 수 있음)

    : 행렬에서 0이 아닌 특잇값의 수

     

    특수 행렬의 계수

    벡터 : 모든 벡터의 계수는 1

    영행렬 : 영행렬의 계수는 0

    단위 행렬 : 단위 행렬의 계수는 행의 수(열의 수), $r(I_{N}) = N$

    대각 행렬 : 대각 행렬의 계수는 0이 아닌 대각 원소의 수

    삼각 행렬 : 모든 대각선 원소에 0이 아닌 값이 있는 경우에만 최대 계수, 대각선에 0이 하나 이상 있는 경우 축소 계수 (정확한 계수는 행렬의 숫잣값에 따라 달라짐)

    무작위 행렬 : 무작위 행렬의 계수는 선험적으로 알 수 없음. 행렬의 원소를 도출한 수의 분포와 각 숫자의 도출 확률에 따라 달라짐. 

    계수-1 행렬 : 계수-1 행렬의 계수는 당연히 1. 계수-1 행렬에는 실제로 한 열(행)만 의미있는 정보가 있고, 다른 모든 열(행)은 이 열(행)의 선행 배수일 뿐임. 

     

    덧셈 및 곱셈 행렬의 계수

    $rank(A + B) ≤ rank(A)  + rank(B)$

    $rank(AB) ≤ min\{rank(A), rank(B)\}$

    : 계별 행렬의 계수를 알아도, 덧셈 행렬 또는 곱 행렬의 정확한 계수를 알 수 없음. 단, 원하는 행렬의 가질 수 있는 최대 가능 계수를 구할 수 있음.

    : 덧셈 행렬의 계수는 개별 행렬의 계수보다 클 수 있음.

    : 곱셈 행렬의 계수는 개별 행렬의 가장 큰 계수보다 클 수 없음.

     

    이동된 행렬의 계수

    : 행렬을 이동시키면 보통 최대 계수가 됨.

    : 정방 행렬을 이동하는 주된 목표는 $r < M$에서 $r = M$으로 계수를 늘리는 것임.

     

    5.4 계수 응용

    벡터가 열공간에 존재하는지 파악하는 방법

    1) 벡터로 행렬 확장하기 (원래 행렬 : $A$, 확장된 행렬 $\tilde A$

    2) $A$행렬과 $\tilde A$ 행렬의 계수 계산하기

    3) 두 계수 비교하기 

    $rank(A) = rank(\tilde{A})$ : 벡터갸 행렬 $A$의 열공간에 있음.

    $rank(A) < rank(\tilde{A})$ : 벡터가 행렬 $A$의 열공간에 없음.

     

    벡터 집합의 선형 독립성 여부를 확인하는 알고리즘

    : 벡터를 행렬에 넣고 행렬의 계수를 계산한 다음 해당 행렬의 최대로 가능한 계수와 비교 ($min\{M, N\}$)

    $r=N$ : 벡터 집합은 선형적으로 독립임

    $r<N$ : 벡터 집합은 선형적으로 종속임

     

    5.5 행렬식 ( 표기 : $det(A)$ 또는 $|A|$ )

    행렬식의 특성

    1) 정방식에 대해서만 정의됨.

    2) 특이(축소 계수) 행렬에 대해서는 0임.

    ($\Delta = 0$인 행렬로 변환하면 적어도 하나의 차원은 부피가 없이 평평해짐)

     

    행렬식 해석

    : 행렬이 벡터를 얼마나 늘릴 것인가와 연관이 있음.

    # 행렬식 함수
    np.linalg.det()
    scipy.linalg.det()

     

    행렬의 특성 다항식

    행렬 이동과 행렬식을 결합하는 것.

    $det(A-\gamma I) = \Delta$

    : 모든 정방 행렬을 방정식으로 표현할 수 있음.

    : $\Delta=0$이 되는 특성 다항식에 대한 해는 행렬의 고윳값임.

     

     

    728x90

    댓글