2014년 4월 30일 수요일

mathjax를 블로그에서 사용하기

블로그처럼 웹사이트 상에서 수식을 표현할 때 만약 그림파일을 사용한다면,

  • 고정된 해상도
  • 그림파일의 용량
  • 배경색과의 어울림
  • 수식의 편집 불가

등의 문제가 있을 것이다. mathjax[1]라는 곳에서 이런 문제를 해결해놨다. 수식은 매우 universal하게 사용되는 latex 문법을 따른다.

사용법

  1. 블로그 스킨의 기본 html를 사용자가 수정할 수 있는 메뉴가 들어가서 <head>와 </head> 사이에 다음 문구만 삽입하면 준비 끝.

    <script src='http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML' type='text/javascript'/>

  2. html모드가 아닌 보통의 글쓰기 모드에서, latex 문법으로 쓰여진 수식을 ₩( 와 ₩) 사이에 넣는다.[2]

    ₩( \mathbf{A}=\mathbf{B}^{-1} ₩)


결과

\( \mathbf{A}=\mathbf{B}^{-1} \)


[1] jax는 ajax에서 따왔을텐데, 발음을 어떻게 해야 할지 모르겠다. ajax만 해도 발음에 있어서 여러 논의가 있다.
[2] 백슬래시 backslash를 표현할 때 이 포스트에서는 억지로 특수문자를 사용했지만 실제로는 키보드에 있는 것을 써야한다.

선형대수학 linear algebra

선형대수만 배워서는 쓸데가 없다. 왜 중요한지도 모른다. 예를 들어 행렬식(det., determinant)을 구하는 방법을 배운 다음에, 그게 무엇인지 의미를 스스로 생각해보려고 하면 깨달음을 얻기도 힘들 뿐더러, 아무것도 배운 것 같지 않은 느낌만 남는다. 차라리 실제적인 문제를 푸는데 있어서 행렬식을 모르면 안 풀리는 상황을 가져다놓고, 스스로 궁금해하게 한 다음에 가르치는 게 더 의미있지 않을까 싶다.

선형대수학만 배운다는 것은, 펜을 잡는 법만 배우고 글씨는 한번도 안 써보는 것과 같다.

0의 0제곱(미작성)

미작성

자연수의 거듭제곱근은 자연수이거나 무리수

"2의 제곱근과 3의 제곱근이 무리수임을 증명하기"를 좀더 확장해서 생각해보면, 어떤 소수(prime number)의 제곱근은 모두 무리수일 것만 같다. 예를 들어 \( \sqrt{7} \)이 무리수(irrational number)인 것을 증명해본 사람은 거의 없겠지만, 그 값을 유리수(rational number)로 표현해본 사람도 없을 것이다. 무리수 맞다.

하지만 '소수의 제곱근은 무리수'가 참이라고 해서, '소수가 아닌 자연수의 제곱근은 유리수'인 것은 절대 아니다. 너무나 간단한 예가 있는데, \( \sqrt{6}=\sqrt{2}\sqrt{3} \)부터가 무리수 아니던가. 거꾸로 생각해보면, 애당초 자연수의 제곱근이 무리수가 아닌 경우는 매우 제한적이다. 그것도, 그냥 유리수가 아닌 자연수로만 나오게 된다. 그말은,

제곱수가 아닌 자연수의 제곱근은 무리수이다.

이며, 확장하면,

거듭제곱수가 아닌 자연수의 거듭제곱근은 무리수이다.

가 된다. 수식으로 표현한다면,

\( \sqrt[b]{a} \in \mathbb{I},\text{where}\ a, b\in \mathbb{N} \ \text{and}\ \sqrt[b]{a} \not\in \mathbb{N} \)

이 말은 다른 말로,

자연수의 거듭제곱근은 자연수이거나 무리수이다.


수 체계(number set)의 표기법이 익숙하지 않다면 [1]을 참조.

수 체계 표기법

수 체계(number set)는 다음의 표기로 통용된다.

\( \mathbb{C} \): 복소수(complex number)
\( \mathbb{R} \): 실수(real number)
\( \mathbb{I} \): 무리수(irrational number)[1]
\( \mathbb{Q} \): 유리수(rational number)[1]
\( \mathbb{Z} \): 정수(integer)
\( \mathbb{N} \): 자연수(natural number)
\( \mathbb{P} \): 소수(素數 prime number)[2]


[1] 무리수(無理數)는 무비수(無比數)로, 유리수(有理數)는 유비수(有比數)로 바로잡아야 한다고 엔하위키에 나와있는데, 나는 두 가지 상반된 견해로 비판하고 싶다. 첫 번째로, 理에는 다스리다 supervise, manage라는 뜻도 있으므로, 분수로써 다스릴 수(표현할 수) 있느냐 없느냐에 따라 有理/無理로 분류하는 것이 꽤 이치에 맞는 듯 하다. 두 번째로는, 만약 理가 오역에 의한 것이라면, 有比/無比로 개정하는 것은 어색하지 않을 수 없다. 비율이 없다기보다는, 비율로써 나타낼 수 없는 것이니까, 비수(比數)/불비수(不比數)가 더 낫지 않을까?
[2] 소수(小數)와 한국어 표기법이 같아 혼동될 수 있다. 옛날 책을 보면 솟수라고 불리었던 것 같은데, 1988년 맞춤법 규정에 따라 한자어 중 사이시옷이 허용되는 경우[3]에 포함되지 않았다.
[3] 딱 여섯가지 단어만 허용된다. (곳간, 셋방, 숫자, 찻간, 툇간, 횟수) 국문학자들이 수학을 잘 몰랐나보다. 혹시 장음 단음으로 구분하라는 걸까?

2014년 4월 29일 화요일

2의 제곱근과 3의 제곱근이 무리수임을 증명하기


\( \sqrt{2} \)가 무리수(irrational number)임을 증명

만약 \( \sqrt{2} \)가 유리수라면, 서로소(relative prime)인 정수 \( a \)와 \( b \)로 표현 가능하다.
\( \sqrt{2} =\frac{b}{a} \)
\(2=\frac{b^2}{a^2} \longrightarrow 2{a^2} ={b^2} \)

따라서 \( b^2 \)는 짝수. \( b \) 역시 짝수. 따라서 \( b \)를 \( 2c \)라 한다면,
\( 2a^2 =4c^2 \longrightarrow a^2 = 2c^2 \)

따라서 \( a^2 \)는 짝수. \( a \) 역시 짝수.
\( a \) 와 \( b \)가 모두 짝수라면 서로소가 아니어서 가정에 모순되므로, \( \sqrt{2} \)는 유리수가 아니다.


\( \sqrt{3} \)이 무리수임을 증명

만약 \( \sqrt{3} \)이 유리수라면, 서로소인 \( a \)와 \( b \)로 표현 가능하다.
\( \sqrt{2} =\frac{b}{a} \)
\(3=\frac{b^2}{a^2} \longrightarrow 3{a^2} ={b^2} \)

만약 \( a \)가 짝수라면, \( a^2 \)도 짝수다. 그렇다면 \( b^2 \)도 짝수이고, \( b \)도 짝수가 된다. 죄다 짝수면 서로소가 아니니까 \( a \)가 짝수이면 안 되나보다.
즉 \( a \)는 홀수이고, \( a^2 \)도 홀수다. 그렇다면 \( b^2 \)도 홀수이고, \( b \)도 홀수가 된다.

\( a=2m+1 \)로 두고,
\( b=2n+1 \)로 두자. (\( m \)과 \( n \)은 정수)

앞의 식에 다시 대입하면,

\( 3(4m^2+2m+1) =4n^2+2n+1 \)

정리하면
\( 6m^2+6m+1 =2n^2+n \)

\( 6m^2+6m \)는 짝수이고, 1을 더했으니 좌변은 홀수가 된다. 그러나 우변은 짝수다. 이것은 불능이므로, 이를 만족하는 \( a \)와 \( b \)는 없게 되어 \( \sqrt{3} \)이 유리수라는 가정은 틀렸다.


이렇게 명제의 부정을 가정한 뒤, 모순을 이용하여 원래 명제가 참임을 증명하는 것을 귀류법(proof by contradiction)이라 한다.

신호처리 (관련) 분야 이론들 - 수정중

  • Identity matrix: diagonal이 1, off-diagonal이 0인 행렬
  • Toeplitz matrix: diagonal-constant matrix
  • Hermitian matrix: conjugate transpose가 자기 자신과 같은 행렬
  • orthogonal matrix: 각 열(행)끼리 서로 직교한 행렬. 자기 자신과 transpose를 곱하면 identity matrix가 된다.(사실 직교하기만 한다고 해서 norm이 1인 것은 아니나, 보통 이런 의미로 쓰나보다) 즉, transpose가 역행렬이다.
    • orthonormal matrix: orthogonal하면서 normal하기까지 한 행렬. 그러나 orthogonal과 혼용되어 쓰이는 듯.
    • unitary matrix: orthogonal의 complex version. Hermitian을 취하면 역행렬이다.
      • positive semi-definite matrix
      • positive definite matrix
      • negative semi-definite matrix
      • negative definite matrix
      • indefinite matrix
  • similar matrix (=matrix similarity≠similarity matrix): 정방행렬 A의 왼쪽에 정방행렬 P의 역행렬을, 오른쪽에 P를 곱해줘서 나온 행렬 B. A와 B는 rank, det, trace, eigenvalue(그러나 eigenvector는 제외)를 공유한다. 그러나 eigenvalue를 공유한다고 해서 두 행렬이 similar하다는 것은 보장하지 못한다.

  • linear transform: 어떤 vector space를 다른 vector space로 변환하는데 있어서 linear operator(=matrix)를 사용
    • unitary transform: 그 matrix가 unitary하기까지 할 때. 사실 우리가 알고있는 많은 transform들이 거의 unitary transform이다.
      • orthogonal transform: unitary 행렬인데 실수로만 이루어져있을 때
  • Laplace transform: FT가 신호 자체를 해석하는 데 적합하다면, Laplace transform은 입력과 출력 관계를 다루는데 적합하다..고 한다. 이렇게 볼 수 도 있다. 신호에 감쇠함수 exp(-sigma*t)를 곱한 뒤 FT한 것이 바로 Laplace transform이다.
  • FT (Fourier transform): 신호에 exp(-jwt)를 곱하고 t에 대하여 -inf에서 inf까지 적분.
    • DFT (discrete Fourier transform): FT의 discrete version. 신호가 유한길이니까 inf번의 연산을 할 수 없고, 결과물도 최대 신호의 길이만큼밖에 될 수 없다는 것에 유의.
      • FFT (fast Fourier transform): DFT의 중복연산을 건너뛰어 빠르게 연산하는 방법. 이게 끝이 아니고 빠르게 연산하는 방법들이 여러 개 있다.
    • Z-transform: DFT랑 완전히 똑같다고 보면 된다. DFT는 신호에 exp(-jwn)을 곱하는데 Z-transform은 exp(jw)를 z로 치환한 것 뿐.
  • FRFT (fractional Fourier transform): FT의 generalized version. FT는 시간축과 orthogonal한 축으로 보내는 변환인데 비하여, FRFT는 orthogonal하지 않을 수도 있는 degree의 축으로 보낼 수 있다.
  • Spectrogram: method가 아니라 개념이다. spectrum과 달리, 시변신호의 특성을 보기 위하여 2차원(시간축, 주파수축)으로 확인한다. spectrogram을 만들기 위하여 여러 method가 사용된다.
    • STFT (short-time Fourier transform): FT를 시간대별로 구한다. 윈도우 크기와 오버랩의 특성을 많이 탄다.
    • WVD (Wigner–Ville distribution or Wigner distribution): STFT와 비슷하다고 볼 수 있지만 물리적 의미가 다름. conti.에서 정의된다. 잘 모름.
      • PWD (pseudo Wigner distribution): the windowed version of WVD.
      • Choi–Williams distribution: WVD와 비슷한 것으로 생각되나 잘 모름.
  • Hilbert transform
  • cepstrum: spectrum에 log를 취하고 다시 IFT한 것. speech에 쓰인다고 한다.
  • bi-spectrum: third-order cumulant-generating function의 FT 결과

classification; pattern recognition
  • maximum a posterior (MAP): Bayesian 정리에 의한 사전/사후 확률의 관계를 이용하여 사후확률을 최대로 만드는 클래스를 추정하는 방법.
  • EM (expectation maximization) algorithm: 반복 계산을 통해 MAP나 ML의 파라미터를 추정해나가는 방법. GMM (Gaussian mixture model)의 좋은 예가 있다.
  • SVM (support vector machine): 각 class에 대한 perpendicular distance를 동등하게 만들어주는 hyperplane를 설정하여 분류
  • ROC curve (Receiver operating characteristic curve): 가로축이 false positive(진짜가 아닌데 진짜로 판명된 경우), 세로축이 true positive(진짜가 진짜로 판명된 경우)를 나타내고, 이 곡선이 위로 많이 휘어있을 수록 좋다.

  • Shannon entropy
    • self information
  • conditional entropy
  • mutual information
  • relative entropy (Kullback-Leibler divergence): 두 확률분포의 차이를 계산. 그러나 asymmetric하므로 metric이라고 하기는 어렵다.
  • cross entropy
  • entropy rate
  • transfer entropy
  • Gaussian distribution
  • Poisson distribution
  • exponential distribution
  • binomial distribution
  • Bernoulli distribution

adaptive filter: 보통의 필터는 freq. resp.를 지정하고 설계하게 되나, 적응필터는 (cost func.를 최소화 하는) optimum performance를 만드는 데 초점이 있다. 원신호와 노이즈 신호에 대해서 완벽하게 알고 있다면 opt. filter coeff.를 구할 수 있으나, 그런 경우는 practical하게는 불가능하기 때문에 거의 모든 경우에 iteration을 통해 estimate한다.
  • Wiener filter: LTI system에서 additive noise가 stationary할 때, corrupted signal과 noise의 통계적 특성을 이용하여 opt. filter coeff.를 구한다. 단, 다음과 같은 방법들이 필요하다.
    • LMS (least mean square) filter: error signal의 mean square를 최소로 하기 위한 filter coeff.를 찾는 방법. LTI 가정 하에서 Wierner filter와 동일하다고 봐도 된다.
      • NLMS (normalized least mean square): filter coeff.의 update시 사용되는 vector의 scaling를 통해 더 빠른 수렴을 도모한다. normalized라고 해서 vector의 크기를 줄이는 게 아니라, 오히려 늘리는 것이 핵심임에 조심.
  • minimum mean square error (MMSE): LMS와의 관계?

2014년 4월 22일 화요일

MatLab (미작성)

MatLab에 대한 내용도 추가 예정