선형대수 note 24: Markov matrices; fourier series

마르코프 행렬 (Markov Matrices)

n \times n 행렬 A 의 모든 성분들 a_{ij} \ge 0 이고, 모든 열들의 합이 1 이라면, A 는 마르코프 행렬 (Markov Matrices) 이다.

ex)

    \[A = \begin{bmatrix} 0.1 & 0.01 & 0.3 \\ 0.2 & 0.99 & 0.3 \\ 0.7 & 0 & 0.4 \end{bmatrix}\]

A\mathbf{x} 는 벡터 \mathbf{x} 의 값들을 다른 성분들에 분배해준다. 결코 값들의 합이 늘어나거나 줄어들지 않는다. 즉, \mathbf{x} 의 성분들의 합이 1 이라면 A\mathbf{x} 의 성분들의 합도 1 이다. A 를 거듭제곱하더라도 성분들의 합은 1 이라는 말이다. 값이 발산하지 않음으로 A|\lambda| \leq 1 이다.

A 의 행벡터들을 모두 더하면 \begin{bmatrix} 1 & 1 & 1 \end{bmatrix} 이므로, A^T 의 열벡터들을 모두 더하면 \begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix} 이다.

    \[A^T \begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix} =  \begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix}\]

즉, A^T 의 고유값은 1 이고, 고유벡터는 \begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix} 이다. AA^T 의 고유값은 동일하므로 A 의 고유값 \lambda_1 = 1 인 것을 알 수 있다.

마크코프 행렬 A 의 모든 성분들이 a_{ij} > 0 라면 \lambda_1 = 1 이고, 다른 고유값들은 |\lambda_k| < 1 이다.

    \[\mathbf{u}_k = A^k \mathbf{u}_0 = c_1 \lambda_1^k \mathbf{x}_1 + c_2 \lambda_2^k \mathbf{x}_2 + \dots c_n \lambda_n^k \mathbf{x}_n  \xrightarrow[]{\infty} c_1 \mathbf{x}_1\]

푸리에 급수 (Fourier Series)

임의의 벡터 \mathbf{v} 는 정규직교 기저 (orthonormal basis) 의 조합으로 표현할 수 있다.

    \[\mathbf{v} = x_1 \mathbf{q}_1 + x_2 \mathbf{q}_2 + \dots x_n \mathbf{q}_n\]

기저 벡터들은 서로 직교하므로, 기저들의 상수값 x_1, x_2, ...x_n 은 기저에 투영하여 얻을 수 있다.

    \[\begin{aligned} x_1 &= \mathbf{q}_1^T \mathbf{v} \\ x_2 &= \mathbf{q}_2^T \mathbf{v} \\ \vdots \\ x_n &= \mathbf{q}_n^T \mathbf{v} \end{aligned}\]

행렬로 표현하면,

    \[\begin{aligned} \mathbf{v} &= Q\mathbf{x} \\ \mathbf{x} &= Q^T \mathbf{v} \end{aligned}\]

이제 n 이 무한대일 때 무한차원 벡터를 상상해보자. 이 벡터는 함수 f(x) 로 표현할 수 있다. 유한 차원 벡터에서 기저벡터를 상정했던 것 처럼 함수벡터에서도 기저함수를 상정할 수 있다. n 이 정수일 때 \cos nx\sin nx 가 바로 기저 함수다. 임의의 벡터를 기저벡터의 조합으로 나타냈던 것 처럼 임의의 함수도 기저함수를 조합하여 나타낼 수 있다.

    \[f(x) = a_0 + a_1 \cos x + b_1 \sin x + a_2 \cos 2x + b_2 \sin 2x + \dots + a_n \cos nx + b_n \sin nx\]

위의 함수는 급수 형태가 되고, 발견한 사람의 이름을 따서 푸리에 급수 (Fourier Series) 라고 부른다.
상수 a_i, b_i 는 어떻게 구할까? 일반적인 벡터에서는 기저벡터에 투영하기 위해 dot product 를 했다.

    \[\mathbf{v}^T \mathbf{w} = v_1 w_1 + v_2 w_2 + \dots v_n w_n\]

각 벡터의 성분들을 곱해서 더했다. 무한 차원인 함수벡터에서 모든 성분을 곱해서 더하는 것은 적분이다.

    \[f^T g = \int f(x) g(x) dx\]

특별히 푸리에 급수에서는 구간을 [0, 2\pi] 로 잡아야 기저벡터들이 직교하므로 적분 구간도 그렇게 잡는다.
한번 a_1 을 구해보자. a_1 의 기저 함수인 \cos x 는 다른 모든 항들과 [0, 2\pi] 구간 안에서 직교하므로 f(x)\cos x 에 투영하면,

    \[\begin{aligned} \int_0^{2\pi} f(x) \cos x dx &= a_1 \int_0^{2\pi} \cos^2x dx \\ &= a_1 \pi  \end{aligned}\]

    \[a_1 = \frac{1}{\pi} \int_0^{2\pi} f(x) \cos x dx\]

실제 \cos nx, \sin nx 함수들이 직교하기는 하지만 정규직교함수 (Orthonormal Function) 는 아니다. 정규화를 거치려면 각각의 함수들을 제곱해서 적분한 후에 루트를 씌워서 나누면 된다.


선형대수 note 목록

Leave a Reply

Your email address will not be published. Required fields are marked *