20
Fast Fourier Transform Lecture 6 Spoken Language Processing Prof. Andrew Rosenberg

Fast Fourier Transform Lecture 6 Spoken Language Processing Prof. Andrew Rosenberg

Embed Size (px)

Citation preview

  • Slide 1
  • Slide 2
  • Fast Fourier Transform Lecture 6 Spoken Language Processing Prof. Andrew Rosenberg
  • Slide 3
  • Overview Fast Fourier Transform Multiplying Polynomials Relationship between polynomial multiplication and Fourier Analysis 1
  • Slide 4
  • Multiplying polynomials Assume two polynomials of degree d. The Fast Fourier Transform is an efficient (divide-and-conquer) way to do this. 2
  • Slide 5
  • Multiplying polynomials Assume two polynomials of degree d. 3 Calculating c k takes (d) steps. To calculate C(x) requires (d 2 )
  • Slide 6
  • Fast Fourier Transform How to multiply polynomials efficiently. What this has to do with frequency decomposition. 4
  • Slide 7
  • Representing polynomials A d degree polynomial can be represented by d+1 points. any points determine a line 5 Coefficients Values Evaluation Interpolation
  • Slide 8
  • Multiplication algorithm Input: coefficients of two polynomials A(x) and B(x) and degree d Output: Their product C = AB Selection Pick points x 0, x 1, x n-1 where n >= 2d+1 Evaluation Compute A(x 0 ), A(x 1 ),..., A(x n-1 ) and B(x 0 ), B(x 1 ),..., B(x n-1 ) Multiplication Compute C(x k ) = A(x k )B(x k ) for all k = 0,..., n-1 Interpolation Recover C(x) = c 0 + c 1 x +... + c 2d x 2d 6
  • Slide 9
  • Divide and Conquer for multiplication How can we pick the n points used in evaluation? Can we pick them to make the algorithm more efficient? If we choose positive and negative pairs, the calculations overlap a lot. 7
  • Slide 10
  • Example representation as even powers generally 8 Where A e are the even coefficients and A o the odd. Degree of A e and A o are