Loading [MathJax]/jax/output/CommonHTML/jax.js

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

728x90

 

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

행렬 노름 종류

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

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

 

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

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

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

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

||A||F=Mi=1Nj=1a2ij

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

 

 행렬 노름 사용

( 머신러닝 통계 )

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

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

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

( '행렬 거리' 계산)

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

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

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

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

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

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

 

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

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

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

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

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

||A||F=Mi=1Nj=1a2ij=tr(ATA)

이것이 성립하는 이유는 행렬 ATA의 각 대각 원소는 동일한 행에 대한 내적이기 때문.

 

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

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

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

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

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

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

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

 

행렬의 행공간 ( 표기 : R(A) = C(AT) )

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

 

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

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

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

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

 

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

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

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

(예시 행렬)

[1122]

이 예시에서의 벡터 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(IN)=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, 확장된 행렬 ˜A

2) A행렬과 ˜A 행렬의 계수 계산하기

3) 두 계수 비교하기 

rank(A)=rank(˜A) : 벡터갸 행렬 A의 열공간에 있음.

rank(A)<rank(˜A) : 벡터가 행렬 A의 열공간에 없음.

 

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

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

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

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

 

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

행렬식의 특성

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

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

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

 

행렬식 해석

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

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

 

행렬의 특성 다항식

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

det(AγI)=Δ

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

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

 

 

728x90

댓글