Оконное преобразование Фурье

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
 
(1 промежуточная версия не показана)
Строка 7: Строка 7:
Пусть <tex>x(t) \in L_2(\mathbb{R})</tex> — анализируемый сигнал, а <tex>w(t)</tex> — [[Оконная функция|оконная функция]] (весовая функция), обладающая хорошей локализацией как во временной, так и в частотной областях. Тогда '''непрерывное оконное преобразование Фурье''' (НОПФ) определяется следующим образом<ref>Allen J., Rabiner L. ''Short-time Fourier transform and its applications'' // Proceedings of the IEEE. — 1977. — Vol. 65, No. 11. — P. 39–65.</ref>:
Пусть <tex>x(t) \in L_2(\mathbb{R})</tex> — анализируемый сигнал, а <tex>w(t)</tex> — [[Оконная функция|оконная функция]] (весовая функция), обладающая хорошей локализацией как во временной, так и в частотной областях. Тогда '''непрерывное оконное преобразование Фурье''' (НОПФ) определяется следующим образом<ref>Allen J., Rabiner L. ''Short-time Fourier transform and its applications'' // Proceedings of the IEEE. — 1977. — Vol. 65, No. 11. — P. 39–65.</ref>:
-
<tex>
+
<tex> X(\omega, b) = \int_{-\infty}^{\infty} x(t) \, w(t - b) \, e^{-i \omega t} \, dt, </tex>
-
X(\omega, b) = \int_{-\infty}^{\infty} x(t) \, w(t - b) \, e^{-i \omega t} \, dt,
+
-
</tex>
+
-
 
+
где:
где:
-
* <tex>b \in \mathbb{R}</tex> — параметр сдвига окна, определяющий его положение на временной оси;
 
-
* <tex>\omega \in \mathbb{R}</tex> — угловая частота;
 
-
* <tex>w(t - b)</tex> — оконная функция, сдвинутая в точку <tex>b</tex>.
 
-
Для дискретных сигналов <tex>x[n]</tex>, <tex>n = 0, 1, \dots, L - 1</tex>, используется '''дискретное оконное преобразование Фурье''' (ДОПФ)<ref>Сергиенко А. Б. ''Цифровая обработка сигналов''. СПб.: Питер, 2002. — Гл. 7.</ref>:
+
<tex>b \in \mathbb{R}</tex> — параметр сдвига окна, определяющий его положение на временной оси;
-
<tex>
+
<tex>\omega \in \mathbb{R}</tex> — угловая частота;
-
X[k, m] = \sum_{n=0}^{L-1} x[n] \, w[n - m] \, e^{-i 2\pi k n / L},
+
 
-
</tex>
+
<tex>w(t - b)</tex> — оконная функция, сдвинутая в точку <tex>b</tex>.
 +
 
 +
Для дискретных сигналов <tex>x[n]</tex>, <tex>n = 0, 1, \dots, L - 1</tex>, используется '''дискретное оконное преобразование Фурье''' (ДОПФ)<ref>Сергиенко А. Б. ''Цифровая обработка сигналов''. — СПб.: Питер, 2002. — Гл. 7.</ref>:
 +
<tex> X[k, m] = \sum_{n=0}^{L-1} x[n] \, w[n - m] \, e^{-i 2\pi k n / L}, </tex>
где <tex>k</tex> — индекс частоты, <tex>m</tex> — индекс сдвига окна.
где <tex>k</tex> — индекс частоты, <tex>m</tex> — индекс сдвига окна.
'''Спектрограмма''' — это квадрат модуля оконного преобразования Фурье:
'''Спектрограмма''' — это квадрат модуля оконного преобразования Фурье:
-
<tex>
+
<tex> S(\omega, b) = |X(\omega, b)|^2. </tex>
-
S(\omega, b) = |X(\omega, b)|^2.
+
-
</tex>
+
-
 
+
-
Именно спектрограмма служит основным мостом между STFT и машинным обучением, поскольку она преобразует одномерный временной сигнал в двумерное «изображение», пригодное для обработки [[Свёрточная нейронная сеть|свёрточными нейронными сетями]] (CNN) и другими архитектурами глубокого обучения<ref name="deep_sound_vision">DeepSoundVisionNet: A new approach to urban sound classification using visual representations of audio signals // ScienceDirect, 2026.</ref>.
+
-
 
+
== Роль STFT в машинном обучении ==
== Роль STFT в машинном обучении ==
Строка 40: Строка 32:
=== Преобразование в изображения для глубокого обучения ===
=== Преобразование в изображения для глубокого обучения ===
-
Наиболее распространённый способ использования STFT — преобразование одномерных рядов в спектрограммы, которые подаются на вход свёрточным нейронным сетям<ref name="stft_cnn_class">Classification of Time-Domain Signals Using Short-Time Fourier Transform and 2D Convolutional Neural Networks // IEEE, 2025.</ref><ref name="deep_sound_vision"/>. Это позволяет задействовать мощные архитектуры компьютерного зрения для извлечения иерархических частотно-временных паттернов. Такой подход даёт высокую точность в задачах классификации звуков, диагностики оборудования и биомедицинского анализа<ref name="motor_diag">Deep Learning-Based Machine Condition Diagnosis Using Short-Time Fourier Transformation Variants // IEEE, 2024.</ref><ref name="eeg_stft">Novel machine learning-driven comparative analysis of CSP, STFT, and CSP-STFT fusion for EEG data classification across multiple meditation and non-meditation sessions in BCI pipeline // PMC, 2025.</ref>.
+
Наиболее распространённый способ использования STFT — преобразование одномерных рядов в спектрограммы, которые подаются на вход свёрточным нейронным сетям<ref name="stft_cnn_class">Classification of Time-Domain Signals Using Short-Time Fourier Transform and 2D Convolutional Neural Networks // IEEE, 2025.</ref>. Это позволяет задействовать мощные архитектуры компьютерного зрения для извлечения иерархических частотно-временных паттернов. Такой подход даёт высокую точность в задачах классификации звуков, диагностики оборудования и биомедицинского анализа<ref name="motor_diag">Deep Learning-Based Machine Condition Diagnosis Using Short-Time Fourier Transformation Variants // IEEE, 2024.</ref><ref name="eeg_stft">Novel machine learning-driven comparative analysis of CSP, STFT, and CSP-STFT fusion for EEG data classification across multiple meditation and non-meditation sessions in BCI pipeline // PMC, 2025.</ref>.
=== Повышение эффективности рекуррентных сетей ===
=== Повышение эффективности рекуррентных сетей ===
Строка 54: Строка 46:
STFT находит применение в широком спектре областей:
STFT находит применение в широком спектре областей:
-
* '''Промышленная диагностика''' — вибрационный и токовый анализ для обнаружения неисправностей электродвигателей и конструкций<ref name="stft_shm"/><ref name="motor_diag"/>.
 
-
* '''Биомедицина''' — анализ ЭЭГ, ЭКГ и фотоплетизмограмм для распознавания состояний (медитация, паника, эпилептические разряды)<ref name="eeg_stft"/><ref>Осипов А. В. и др. ''Методы машинного обучения для распознавания эмоционального состояния абонента телекоммуникационных систем'' // ИТиВС, 2024, № 1.</ref>.
 
-
* '''Аудио и речь''' — классификация звуков, распознавание речи и музыкальная информация, где часто используются мел-спектрограммы как вариант STFT<ref>Comparison of Time-Frequency Representations for Environmental Sound Classification using Convolutional Neural Networks // arXiv.</ref>.
 
-
* '''Прогнозирование временных рядов''' — финансовые данные, энергопотребление и климатические показатели, где STFT помогает улавливать локальные периодичности<ref>A combined Adaptive Gaussian Short-Term Fourier Transform and Mamba framework for stock price prediction // Dimensions for DTIC.</ref>.
 
-
* '''Обработка 3D-данных''' — новейшие архитектуры (например, STFT-KAN) интегрируют STFT в нейронные сети для облаков точек, сокращая число параметров<ref>Introducing the Short-Time Fourier Kolmogorov Arnold Network: A Dynamic Graph CNN Approach for Tree Species Classification in 3D Point Clouds // arXiv:2503.23647, 2025.</ref>.
 
-
== Выбор оконной функции и параметров ==
+
'''Промышленная диагностика''' — вибрационный и токовый анализ для обнаружения неисправностей электродвигателей и конструкций<ref name="stft_shm"/><ref name="motor_diag"/>.
-
Выбор оконной функции <tex>w(t)</tex> и её параметров критически влияет на качество обучения модели. Согласно [[Принцип неопределённости Гейзенберга|принципу неопределённости Гейзенберга]], произведение эффективной длительности окна <tex>\Delta t</tex> и эффективной ширины его спектра <tex>\Delta \omega</tex> ограничено снизу:
+
'''Биомедицина''' — анализ ЭЭГ, ЭКГ и фотоплетизмограмм для распознавания состояний (медитация, паника, эпилептические разряды)<ref name="eeg_stft"/><ref>Осипов А. В. и др. ''Методы машинного обучения для распознавания эмоционального состояния абонента телекоммуникационных систем'' // ИТиВС, 2024, № 1.</ref>.
 +
 
 +
'''Аудио и речь''' — классификация звуков, распознавание речи и музыкальная информация, где часто используются мел-спектрограммы как вариант STFT<ref>Comparison of Time-Frequency Representations for Environmental Sound Classification using Convolutional Neural Networks // arXiv.</ref>.
 +
 
 +
'''Прогнозирование временных рядов''' — финансовые данные, энергопотребление и климатические показатели, где STFT помогает улавливать локальные периодичности<ref>A combined Adaptive Gaussian Short-Term Fourier Transform and Mamba framework for stock price prediction // Dimensions for DTIC.</ref>.
 +
 
 +
'''Обработка 3D-данных''' — новейшие архитектуры (например, STFT-KAN) интегрируют STFT в нейронные сети для облаков точек, сокращая число параметров<ref>Introducing the Short-Time Fourier Kolmogorov Arnold Network: A Dynamic Graph CNN Approach for Tree Species Classification in 3D Point Clouds // arXiv:2503.23647, 2025.</ref>.
 +
 
 +
== Выбор оконной функции и параметров ==
-
<tex>
+
Выбор оконной функции <tex>w(t)</tex> и её параметров критически влияет на качество обучения модели. Согласно принципу неопределённости Гейзенберга (см. [[Преобразование Фурье]]), произведение эффективной длительности окна <tex>\Delta t</tex> и эффективной ширины его спектра <tex>\Delta \omega</tex> ограничено снизу:
-
\Delta t \cdot \Delta \omega \geq \frac{1}{2}.
+
-
</tex>
+
 +
<tex> \Delta t \cdot \Delta \omega \geq \frac{1}{2}. </tex>
Длинное окно даёт высокое частотное разрешение, но сглаживает быстрые изменения — подходит для стационарных компонент. Короткое окно даёт высокое временнóе разрешение, но снижает частотную точность — подходит для обнаружения кратковременных событий. В задачах машинного обучения оптимизация параметров часто выполняется эмпирически или с помощью дифференцируемого STFT<ref name="diff_stft"/>. На практике используются окна Ханна, Хэмминга и Гаусса.
Длинное окно даёт высокое частотное разрешение, но сглаживает быстрые изменения — подходит для стационарных компонент. Короткое окно даёт высокое временнóе разрешение, но снижает частотную точность — подходит для обнаружения кратковременных событий. В задачах машинного обучения оптимизация параметров часто выполняется эмпирически или с помощью дифференцируемого STFT<ref name="diff_stft"/>. На практике используются окна Ханна, Хэмминга и Гаусса.
Строка 73: Строка 67:
Наряду со STFT в машинном обучении применяются:
Наряду со STFT в машинном обучении применяются:
-
* '''[[Вейвлет-преобразование]]''' — обеспечивает переменное разрешение по частоте и времени, но сложнее в настройке;
+
 
-
* '''Constant-Q Transform (CQT)''' — логарифмическая частотная шкала, полезна для музыки;
+
'''[[Вейвлет-преобразование]]''' — обеспечивает переменное разрешение по частоте и времени, но сложнее в настройке;
-
* '''Mel-спектрограммы''' — шкала, приближённая к восприятию человека, часто даёт лучшие результаты в аудиозадачах.
+
 
 +
'''Constant-Q Transform (CQT)''' — логарифмическая частотная шкала, полезна для музыки;
 +
 
 +
'''Mel-спектрограммы''' — шкала, приближённая к восприятию человека, часто даёт лучшие результаты в аудиозадачах.
STFT остаётся наиболее распространённым выбором благодаря простоте, вычислительной эффективности и обратимости, что делает его предпочтительным во многих пайплайнах машинного обучения.
STFT остаётся наиболее распространённым выбором благодаря простоте, вычислительной эффективности и обратимости, что делает его предпочтительным во многих пайплайнах машинного обучения.
Строка 85: Строка 82:
== См. также ==
== См. также ==
-
* [[Преобразование Фурье]]
+
[[Преобразование Фурье]]
-
* [[Дискретное преобразование Фурье]]
+
 
-
* [[Вейвлет-преобразование]]
+
[[Дискретное преобразование Фурье]]
-
* [[Преобразование Габора]]
+
 
-
* [[Спектрограмма]]
+
[[Вейвлет-преобразование]]
-
* [[Оконная функция]]
+
 
-
* [[Свёрточная нейронная сеть]]
+
[[Преобразование Габора]]
-
* [[Рекуррентная нейронная сеть]]
+
 
-
* [[Анализ временных рядов]]
+
[[Спектрограмма]]
 +
 
 +
[[Оконная функция]]
 +
 
 +
[[Свёрточная нейронная сеть]]
 +
 
 +
[[Рекуррентная нейронная сеть]]
 +
 
 +
[[Анализ временных рядов]]
== Литература ==
== Литература ==
<references />
<references />

Текущая версия

Статья написана с использованием LLM DeepSeek-V3-0324 и проверена участником Nikita Elкhin 19:29, 18 июля 2026 (MSD)


Оконное преобразование Фурье (англ. windowed Fourier transform, short-time Fourier transform, STFT) — это разновидность преобразования Фурье, предназначенная для анализа нестационарных сигналов, спектральный состав которых изменяется во времени. В современном машинном обучении STFT выступает не только как инструмент анализа, но и как ключевой компонент пайплайнов обработки данных, позволяя эффективно представлять одномерные временные ряды в форме, пригодной для обучения моделей.

Содержание

Математическое определение

Пусть x(t) \in L_2(\mathbb{R}) — анализируемый сигнал, а w(t)оконная функция (весовая функция), обладающая хорошей локализацией как во временной, так и в частотной областях. Тогда непрерывное оконное преобразование Фурье (НОПФ) определяется следующим образом[1]:

 X(\omega, b) = \int_{-\infty}^{\infty} x(t) \, w(t - b) \, e^{-i \omega t} \, dt, где:

b \in \mathbb{R} — параметр сдвига окна, определяющий его положение на временной оси;

\omega \in \mathbb{R} — угловая частота;

w(t - b) — оконная функция, сдвинутая в точку b.

Для дискретных сигналов x[n], n = 0, 1, \dots, L - 1, используется дискретное оконное преобразование Фурье (ДОПФ)[1]:

 X[k, m] = \sum_{n=0}^{L-1} x[n] \, w[n - m] \, e^{-i 2\pi k n / L}, где k — индекс частоты, m — индекс сдвига окна.

Спектрограмма — это квадрат модуля оконного преобразования Фурье:

 S(\omega, b) = |X(\omega, b)|^2.

Роль STFT в машинном обучении

Оконное преобразование Фурье выполняет в задачах машинного обучения несколько ключевых функций.

Извлечение признаков

STFT служит мощным инструментом для извлечения признаков из нестационарных сигналов. В отличие от классического преобразования Фурье, STFT сохраняет временную локальность, что критично для многих прикладных задач[1]. Получаемое частотно-временное представление может быть использовано непосредственно как вектор признаков для классических алгоритмов, таких как SVM или случайный лес[1]. Для снижения высокой размерности применяются методы сжатия, например, автокодировщики[1].

Преобразование в изображения для глубокого обучения

Наиболее распространённый способ использования STFT — преобразование одномерных рядов в спектрограммы, которые подаются на вход свёрточным нейронным сетям[1]. Это позволяет задействовать мощные архитектуры компьютерного зрения для извлечения иерархических частотно-временных паттернов. Такой подход даёт высокую точность в задачах классификации звуков, диагностики оборудования и биомедицинского анализа[1][1].

Повышение эффективности рекуррентных сетей

STFT позволяет обрабатывать окна отсчётов одновременно, перенося их в частотную область, где рекуррентные сети работают с пониженной тактовой частотой[1]. Это сокращает число вычислений, позволяет фильтровать шум и уменьшает размерность представления. При этом градиенты могут распространяться через STFT, что даёт возможность сквозного обучения[1].

Обучаемое представление

Традиционные параметры STFT (тип и длина окна, шаг сдвига) подбираются вручную. Однако предложена дифференцируемая формулировка STFT, которая позволяет оптимизировать эти параметры с помощью градиентного спуска совместно с весами модели[1]. Это устраняет необходимость в эвристическом подборе и повышает качество обучения.

Аугментация данных и интерпретируемость

Спектрограммы открывают новые возможности для аугментации (например, размытие в частотно-временной области[1]) и для построения интерпретаций решений моделей путём маскирования значимых областей спектрограммы.

Применение в конкретных задачах машинного обучения

STFT находит применение в широком спектре областей:

Промышленная диагностика — вибрационный и токовый анализ для обнаружения неисправностей электродвигателей и конструкций[1][1].

Биомедицина — анализ ЭЭГ, ЭКГ и фотоплетизмограмм для распознавания состояний (медитация, паника, эпилептические разряды)[1][1].

Аудио и речь — классификация звуков, распознавание речи и музыкальная информация, где часто используются мел-спектрограммы как вариант STFT[1].

Прогнозирование временных рядов — финансовые данные, энергопотребление и климатические показатели, где STFT помогает улавливать локальные периодичности[1].

Обработка 3D-данных — новейшие архитектуры (например, STFT-KAN) интегрируют STFT в нейронные сети для облаков точек, сокращая число параметров[1].

Выбор оконной функции и параметров

Выбор оконной функции w(t) и её параметров критически влияет на качество обучения модели. Согласно принципу неопределённости Гейзенберга (см. Преобразование Фурье), произведение эффективной длительности окна \Delta t и эффективной ширины его спектра \Delta \omega ограничено снизу:

 \Delta t \cdot \Delta \omega \geq \frac{1}{2}. Длинное окно даёт высокое частотное разрешение, но сглаживает быстрые изменения — подходит для стационарных компонент. Короткое окно даёт высокое временнóе разрешение, но снижает частотную точность — подходит для обнаружения кратковременных событий. В задачах машинного обучения оптимизация параметров часто выполняется эмпирически или с помощью дифференцируемого STFT[1]. На практике используются окна Ханна, Хэмминга и Гаусса.

Сравнение с альтернативными преобразованиями

Наряду со STFT в машинном обучении применяются:

Вейвлет-преобразование — обеспечивает переменное разрешение по частоте и времени, но сложнее в настройке;

Constant-Q Transform (CQT) — логарифмическая частотная шкала, полезна для музыки;

Mel-спектрограммы — шкала, приближённая к восприятию человека, часто даёт лучшие результаты в аудиозадачах.

STFT остаётся наиболее распространённым выбором благодаря простоте, вычислительной эффективности и обратимости, что делает его предпочтительным во многих пайплайнах машинного обучения.

Заключение

Оконное преобразование Фурье превратилось из классического инструмента цифровой обработки сигналов в фундаментальный строительный блок современных систем машинного обучения. Его способность преобразовывать нестационарные временные ряды в информативные частотно-временные представления делает его незаменимым для извлечения признаков, классификации, прогнозирования и генерации данных. Развитие дифференцируемых и обучаемых версий STFT открывает новые перспективы для совместной оптимизации преобразования и модели, что позволяет достигать высоких результатов в широком спектре прикладных задач.

См. также

Преобразование Фурье

Дискретное преобразование Фурье

Вейвлет-преобразование

Преобразование Габора

Спектрограмма

Оконная функция

Свёрточная нейронная сеть

Рекуррентная нейронная сеть

Анализ временных рядов

Литература

Личные инструменты