이전 강의에 이어서 projection에 대해서 조금 더 강의가 진행됩니다.
우리가 $Ax = b$에서 b가 A의 column space에 존재하지 않는다면 $A \hat{x} = p$으로 가장 가까운 점에 투영시켜서 답을 찾았습니다.
만약 $Ax = b$에서 b가 A의 column space에 존재한다면 어떻게 될까요?
- $p = b$
- $p^2 = p$
- $pb = b$
이러한 관계를 만족시키게 될 것입니다.
p와 b가 직교한다면 $pb = 0$이 될 것입니다. column space에 수직으로 있는 차원은 null space이기 때문입니다.
p와 b가 수직인 상태로 계속 설명해보겠습니다. 벡터 b를 투영한 p와 투영된 차원에 수직인 e를 더하면 b가 나옵니다.
$p + e = b$
저번 시간에 말했듯이 우리는 우리가 가지는 데이터들을 가장 잘 표현하는 직선을 찾고 싶습니다. 그렇게 하기 위해서는 오류가 가장 적은 직선을 찾아야 합니다. 오류는 무엇일까요?
이전 강의 예제에서 구한 방정식들이 있는데 이것을 시스템 행렬로 만들어 풀어보겠습니다.
다음과 같이 행렬이 만들어졌습니다. 우리의 직선과 점들의 거리 차이를 $e_1, e_2, e_3$라고 하겠습니다. (오류들)
여기서 오류를 나타내는 방법으로 최소 제곱법을 사용할 것입니다. 우리가 투영하여 근사한 값 $Ax$와 b의 오류를 구해보겠습니다.
$||Ax - b||^2 = ||e||^2 = e_1^2 + e_2^2 + e_3^2 $
이 값을 최소화 하는 x값을 찾으면 됩니다. 통계에서 이렇게 데이터에 직선을 맞추는 것을 선형 회귀(Linear regression)이라고 합니다.
우리가 회귀 문제를 접하다 보면 다음과 같이 이전 데이터들과의 양상과 너무 다른, 튀는 데이터가 존재할 때도 있습니다. 이런 경우 단순하게 최소 제곱법을 통해 진행을 하게 되면 이상치에 대한 과도한 보상이 일어나는 문제가 발생되게 됩니다. (우선 이 경우는 제외하고 진행합니다.)
데이터가 직선에 존재하지 않는 경우 각 점들을 직선에 투영하여 $b_1, b_2, b_3$를 $p_1, p_2, p_3$로 만들어서 진행합니다. 이렇게 해결하기 위해서는 투영된 값을 선형 조합으로 표현해줄 $\hat{x}$과 $P$(투영행렬)을 찾아야 합니다.
$Find$ $\hat{x} = \left[\begin{matrix} \hat{C} \\ \hat{D} \end{matrix} \right], P$
여기서 $\hat{x}$에 대한 방정식은 $A^TA \hat{x} = A^Tb$ 존재합니다. (오류나 noise가 있는 곳에서 사용되는 가장 중요한 방정식!)
다음과 같이 증강행렬을 만들어서 $A^TA$와 $A^Tb$를 계산했습니다. 이제 저 방정식들을 해결하면 $2D = 1$이라는 결과가 나오므로
$D = \frac1 2$
$C = \frac 2 3$
Best Line $\frac 2 3 + \frac 1 2 t$, 가장 좋은 회귀 모델을 구했습니다.
실제 오차값을 계산해보면 $e_1 = \frac {-1} 6$, $e_2 = \frac 2 6$, $e_3 = \frac {-1} 6$ 이 됩니다.
$A^TA$에서 A가 independent column을 가지고 있다면 $A^TA$는 가역행렬입니다.
$A^TAx = 0$
$x^TA^TAx = 0$
$(Ax)^T(Ax)$
벡터 $Ax$의 길이를 제곱한 것이 0이 되려면 x가 0일 수밖에 없습니다.
- column이 독립적인 경우 $A^TA$는 가역행렬이다!
'수학 > Gilbert Strang Linear Algebra' 카테고리의 다른 글
18. Properties of Determinants (0) | 2022.03.31 |
---|---|
17. Orthogonal Matrices and Gram-Schmidt (0) | 2022.03.21 |
15. Projections onto Subspaces (0) | 2022.03.19 |
14. Orthogonal vectors, subspace (0) | 2022.03.09 |
13. Quiz 1 Review (0) | 2022.03.02 |