즉,
A(T)xA 행렬을 직교대각화한 뒤, 고유값을 구하고, 고유값에 루트를 취하면 행렬 A의 특이값이 됨
구한 특이값 = 벡터의 크기 가 된다고 함.
행렬 A가 있고, Ax의 길이가 최대가 되는 벡터 x와 A의 특이값을 찾자.

먼저, SVD 분해는 행렬을 U, 시그마, V(T)의 곱으로 나타냅니다.
(2x3) 크기의 행렬 A가 있다고 가정합니다.

1️⃣ : A와 A의 전치행렬(T)을 곱하여 3x3 행렬을 만듭니다.
2️⃣ : 3x3 행렬의 대각 성분에 루트를 씌워 A의 특이값(그림의 o처럼 생긴 기호)을 구합니다.
3️⃣ : V는 A의 고유벡터로 만든 행렬, D는 A의 특이값으로 만든 대각행렬, 시그마는 행렬 D에 빈 값을 추가하여 행렬 A의 형태에 맞춘 값 이라고 보면 됩니다.
U는 A와 V의 곱에 특이값의 역수를 곱한 값입니다.

궁금해서 찾아본 SVD 분해의 쓰임새와 LU 분해의 쓰임새
(1) 주성분 분석(PCA):
목적: 데이터의 차원을 축소하고, 데이터의 분산을 최대한 유지하기 위해 사용합니다.
예시: 대규모 이미지 데이터 세트에서 PCA를 적용하여 주요한 특징(주성분)만 추출하고, 이로써 이미지의 차원을 줄이며 계산 효율성을 높일 수 있습니다. 예를 들어, 얼굴 인식 알고리즘에서 PCA를 사용하여 고차원 이미지 데이터를 저차원 공간으로 변환하여 인식 성능을 향상시킬 수 있습니다.
(2) 추천 시스템:
목적: 사용자-아이템 매트릭스를 분석하여 유사한 사용자나 아이템을 찾고 추천하는 데 사용됩니다.
예시: Netflix와 같은 영화 추천 시스템에서 SVD를 사용하여 사용자와 영화 간의 관계를 모델링하고, 유사한 취향을 가진 사용자들이 선호하는 영화를 추천하는 방식으로 활용됩니다.
(3) 노이즈 제거:
목적: 데이터에서 노이즈를 줄이고 중요한 패턴을 강조합니다.
예시: 측정 데이터나 이미지에서 SVD를 사용하여 작은 특이값에 해당하는 성분을 제거함으로써 노이즈를 줄이고, 신호를 더욱 명확하게 추출할 수 있습니다.
(1) 선형 회귀 분석:
목적: 회귀 계수를 구하는 과정에서 효율성을 높입니다.
예시: 다중 선형 회귀에서, 독립 변수의 수가 많을 경우 행렬의 계수를 계산하는 데 LU 분해를 활용하여 선형 시스템을 효율적으로 해결할 수 있습니다. 예를 들어, 회귀 모델의 파라미터를 계산할 때, AT x A 행렬을 LU 분해하여 보다 빠르게 해를 구할 수 있습니다.
다음 포스팅에 이어서...