AI用語集・ディープラーニングの応用例

高速フーリエ変換(FFT)とは

こうそくふーりえへんかんfast Fourier transform略語 FFT

別名:FFT、高速フーリエ変換

  • シラバス 技術28
  • ◯×チェック3問
  • 練習問題3問

最終更新日:作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未出典

1行定義

高速フーリエ変換(FFT)とは、信号に含まれる周波数成分を求める離散フーリエ変換(DFT)を、少ない計算量で行うアルゴリズムのことです。

くわしく

高速フーリエ変換(FFT)は、音などの波形に、どの高さ(周波数)の成分がどれだけ含まれるかを素早く求める計算方法です。和音を聞いて、どの音がどの強さで鳴っているかを聞き分ける作業を、コンピュータで行うイメージです。

フーリエ変換とDFT

波形は、さまざまな周波数のなめらかな波(正弦波)の足し合わせとして表せます。波形から各周波数の成分の大きさを求める処理がフーリエ変換です。A-D変換で得た有限個の標本に対して行うものを、離散フーリエ変換(DFT)と呼びます。横軸を周波数、縦軸を成分の強さとしたグラフがスペクトルです。

なぜ「高速」なのか

N個の標本のDFTをそのまま計算すると、約N × N回の掛け算が必要です。代表的なFFTは、大きなDFTを半分の大きさのDFTに分ける操作を繰り返し、同じ計算の重複を省きます。これにより、計算量はN × log2 Nに比例する程度まで減ります。N = 1,024なら、N × Nの1,048,576に対し、N × log2 Nは10,240で、約100分の1です。結果は近似ではなく、DFTと同じです。1965年にクーリーとテューキーが発表して広まりました。同じ考え方は、19世紀初めのガウスの計算にも見られることが、のちに指摘されています。

音声処理での使い方

音声は時間とともに性質が変わるため、20〜30ミリ秒程度の短い区間(フレーム)に区切り、少しずつずらしながら区間ごとにFFTをかけます。これを短時間フーリエ変換といい、結果を時間の順に並べた図をスペクトログラムと呼びます。MFCCやメルスペクトログラムも、このFFTの結果から求めます。周波数の細かさは標本化周波数 ÷ Nで決まり、16kHzの音声に256点のFFTを使うと、16,000 ÷ 256 = 62.5Hz刻みになります。

覚え方

「FFTは、DFTと同じ答えを速く出す計算の工夫」と覚えます。

G検定での出題

出題のされ方

音声の波形を周波数成分に分解する処理であること、MFCCやスペクトログラムを求める手順の初めのほうで使われること、DFTと同じ結果をより少ない計算量で得る点が問われます。

シラバスでは「高速フーリエ変換(FFT)」と表記されています。

◯×チェック

3問

次の文が正しいか、誤りかを選んでください。

  1. FFTは、計算を速くする代わりにDFTの結果を近似的に求める手法であり、得られる周波数成分はDFTの結果と一致しない。

    答えを見る

    答え × 誤り

    FFTは、DFTと同じ計算を、重複を省いて効率よく行う手順です。コンピュータでの丸め誤差を除けば、結果はDFTと一致します。

  2. N個の標本のDFTをそのまま計算すると約N×N回の掛け算が必要だが、FFTを使うと、N×log2 Nに比例する程度の回数まで減らせる。

    答えを見る

    答え ◯ 正しい

    N = 1,024なら、`N × N`は`1,048,576`、`N × log2 N`は`1,024 × 10 = 10,240`で、約100分の1です。Nが大きいほど差は広がります。

  3. 音声全体にFFTを1回かけるだけで、周波数成分が時間とともにどう変わるかも読み取れる。

    答えを見る

    答え × 誤り

    全体に1回かけると、全体を平均した周波数成分しか分かりません。時間の変化を見るには、短い区間ごとにFFTをかける短時間フーリエ変換を使います。

この用語の練習問題

3問
  1. #0071音声認識に使う特徴量難易度 応用・単一選択未回答
  2. #0415FFTの周波数分解能難易度 標準・組合せ未回答
  3. #0416メルフィルタバンクの帯域配置難易度 基礎・単一選択未回答

出典

作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未 最終確認日: 対応シラバス:シラバス第1.4版 技術28

誤りを報告

表示設定

テーマ
文字の大きさ
問題演習