[3B1B] 푸리에 변환의 시각적 설명 (식을 시각적으로 이해)
우리가 생활 속에서 듣는 소리는, 여러 소리 파동의 중첩이다.
피아노를 생각해보면, C D E F G A B 등의 노트는 각각 고유의 진동수(Frequency)를 가지고 있고, 여러 노트가 섞이며 복잡한 파형의 음악이 만들어진다.
궁금증한 점은, 이렇게 섞여버린 음파를 다시 분해할 수는 없을까?
저자(동영상 제작자 3B1B)는 이색적인 설명으로 '각 음파를 Frequency-domain에서 표현했을 때, 고유한 peak를 가진다'를 시각적으로 보여준다.
아이디어) 파형의 일부분을 잘라서 좌표평면에 원처럼 둘러서 붙힌 뒤 (wind-up the graph around the circle), 그 파형의 'center of mass'를 그래프에 표시해서 시각화한다. (실제 무게중심은 아니고, 그냥 그렇게 생각하자는 것)
파형을 얼마만큼 잘라서 원 한 사이클로 붙일건지에 따라 center of mass의 위치도 계속 바뀐다 (영상 확인)
- 많이 자르면? 원 전체를 도는데 매우 오래 걸림. cycles/sec ↓
- 적게 자르면? 조금만 돌아도 원 한바퀴 돎. cycles/sec ↑
이 무게중심의 x좌표가 Frequency(=cycles/sec)가 변함에 따라 어떻게 움직이는지 그래프로 표현하면 (오른쪽 아래),
놀랍게도 원래 파형의 진동수와 우리가 선택한 진동수가 같아질 때 (그림에선 3), 좌표평면의 파형이 조화를 이루며 무게중심도 오른쪽으로 쏠리게 된다 (peak).
다른 음으로 해봐도 같은 결과를 얻을 수 있다.
놀라운 점은, 두 음파를 섞은 복잡한 파형에 같은 방법을 적용할 시,
2와 3에 각각 피크가 나타난다는 사실.
즉, 두 신호를 각각 transform한 뒤 합한거나, 두 신호를 합친 뒤 transform한거나 같다는 속성을 보인다는 뜻.
선형성(Linearity)의 additivity 특성을 생각하면 쉽다.
$f(x+y) = f(x) + f(y)$
즉, 섞여버린 음악도 frequency-domain으로 보내, peak를 분석하면 어떤 음이 섞여있는지 알 수 있다는 점이다.
놀라운 점은, inverse Fourier transform이라는게 있어서, 특정 주파수 대를 제거한 음파도 얻을 수 있다는 것 (소리에서 노이즈 제거 등 기술에 사용)
지금까지는 시각화를 통해 개념을 설명하고자 만든 모델이었고, 이제 실제 푸리에 변환 식을 이해할 차례다.
복소평면 상에서 $e^{ix}$꼴의 식은 원을 그린다는 것을 저번 '오일러 등식' 편에서 잘 이해했다.
(* 기본은 counter-clockwise지만, 지수에 - 붙이면 clockwise로 움직임)
이 원을 그리는 식에 우리의 음파를 나타내는 함수(시간에 대한 파동)를 곱하면?
위에서 'Almost-Fourier transform' 시각화를 위해 했던 짓과 똑같다!
(음파를 잘라서 원에 두르는식으로 붙인 것)
그 다음에 우리가 뭘 했던가.
바로 center-of-mass를 구한 뒤, frequency가 달라짐에 따라 위치가 어떻게 바뀌는지 봤었지.
위 식으로 나타내면 다음과 같다.
(파동에서 여러 지점의 값을 샘플링해서 평균낸 것. 샘플링할 값의 수를 쭉 (무한대까지) 늘려서 결국엔 적분)
다만 실제 푸리에 변환에선 $\frac{1}{t_2 - t_1}$ 부분이 없는데, scaling 때문에 그런 거라고 설명하네.
peak가 나타나는 frequency에선 값이 크게, 나머지 freq에선 작게 나오게 하기 위해? (잘 모르겠음)
결론 : 시간에 대한 파동 g(t)를 푸리에 변환하면, Frequency에 대한 복소수 $\hat{g}(f)$를 얻을 수 있다.
요놈의 실수, 허수 부분을 그려서 어느 주파수에서 peak가 나타나는지 알아내 원래 파동을 분해할 수 있다.
'<기타 공부> > [수학]' 카테고리의 다른 글
[선형대수학] PCA, Eigenvalue/vector, Dimension reduction (0) | 2021.10.18 |
---|---|
[선형대수학] 벡터 연산의 시각화 (0) | 2021.10.16 |
[통계] 가능도 (Likelihood)와 MLE (0) | 2021.08.10 |
피보나치 수의 주기 - 피사노 주기 (0) | 2021.06.19 |
P=NP 문제 (0) | 2021.05.23 |