Оконное преобразование Фурье
Материал из MachineLearning.
| Строка 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> | + | <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> 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 в машинном обучении == | == Роль STFT в машинном обучении == | ||
| Строка 38: | Строка 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 | + | Наиболее распространённый способ использования 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>. |
=== Повышение эффективности рекуррентных сетей === | === Повышение эффективности рекуррентных сетей === | ||
| Строка 52: | Строка 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>. | ||
| + | |||
| + | == Выбор оконной функции и параметров == | ||
| - | <tex> | + | Выбор оконной функции <tex>w(t)</tex> и её параметров критически влияет на качество обучения модели. Согласно принципу неопределённости Гейзенберга (см. [[Преобразование Фурье]]), произведение эффективной длительности окна <tex>\Delta t</tex> и эффективной ширины его спектра <tex>\Delta \omega</tex> ограничено снизу: |
| - | \Delta t | + | |
| - | </tex> | + | |
| + | <tex> \Delta t \cdot \Delta \omega \geq \frac{1}{2}. </tex> | ||
Длинное окно даёт высокое частотное разрешение, но сглаживает быстрые изменения — подходит для стационарных компонент. Короткое окно даёт высокое временнóе разрешение, но снижает частотную точность — подходит для обнаружения кратковременных событий. В задачах машинного обучения оптимизация параметров часто выполняется эмпирически или с помощью дифференцируемого STFT<ref name="diff_stft"/>. На практике используются окна Ханна, Хэмминга и Гаусса. | Длинное окно даёт высокое частотное разрешение, но сглаживает быстрые изменения — подходит для стационарных компонент. Короткое окно даёт высокое временнóе разрешение, но снижает частотную точность — подходит для обнаружения кратковременных событий. В задачах машинного обучения оптимизация параметров часто выполняется эмпирически или с помощью дифференцируемого STFT<ref name="diff_stft"/>. На практике используются окна Ханна, Хэмминга и Гаусса. | ||
| Строка 71: | Строка 67: | ||
Наряду со STFT в машинном обучении применяются: | Наряду со STFT в машинном обучении применяются: | ||
| - | + | ||
| - | + | '''[[Вейвлет-преобразование]]''' — обеспечивает переменное разрешение по частоте и времени, но сложнее в настройке; | |
| - | + | ||
| + | '''Constant-Q Transform (CQT)''' — логарифмическая частотная шкала, полезна для музыки; | ||
| + | |||
| + | '''Mel-спектрограммы''' — шкала, приближённая к восприятию человека, часто даёт лучшие результаты в аудиозадачах. | ||
STFT остаётся наиболее распространённым выбором благодаря простоте, вычислительной эффективности и обратимости, что делает его предпочтительным во многих пайплайнах машинного обучения. | STFT остаётся наиболее распространённым выбором благодаря простоте, вычислительной эффективности и обратимости, что делает его предпочтительным во многих пайплайнах машинного обучения. | ||
| Строка 83: | Строка 82: | ||
== См. также == | == См. также == | ||
| - | + | [[Преобразование Фурье]] | |
| - | + | ||
| - | + | [[Дискретное преобразование Фурье]] | |
| - | + | ||
| - | + | [[Вейвлет-преобразование]] | |
| - | + | ||
| - | + | [[Преобразование Габора]] | |
| - | + | ||
| - | + | [[Спектрограмма]] | |
| + | |||
| + | [[Оконная функция]] | ||
| + | |||
| + | [[Свёрточная нейронная сеть]] | ||
| + | |||
| + | [[Рекуррентная нейронная сеть]] | ||
| + | |||
| + | [[Анализ временных рядов]] | ||
== Литература == | == Литература == | ||
<references /> | <references /> | ||
Текущая версия
| | Статья написана с использованием LLM DeepSeek-V3-0324 и проверена участником Nikita Elкhin 19:29, 18 июля 2026 (MSD) |
Оконное преобразование Фурье (англ. windowed Fourier transform, short-time Fourier transform, STFT) — это разновидность преобразования Фурье, предназначенная для анализа нестационарных сигналов, спектральный состав которых изменяется во времени. В современном машинном обучении STFT выступает не только как инструмент анализа, но и как ключевой компонент пайплайнов обработки данных, позволяя эффективно представлять одномерные временные ряды в форме, пригодной для обучения моделей.
Содержание |
Математическое определение
Пусть — анализируемый сигнал, а
— оконная функция (весовая функция), обладающая хорошей локализацией как во временной, так и в частотной областях. Тогда непрерывное оконное преобразование Фурье (НОПФ) определяется следующим образом[1]:
где:
— параметр сдвига окна, определяющий его положение на временной оси;
— угловая частота;
— оконная функция, сдвинутая в точку
.
Для дискретных сигналов ,
, используется дискретное оконное преобразование Фурье (ДОПФ)[1]:
где
— индекс частоты,
— индекс сдвига окна.
Спектрограмма — это квадрат модуля оконного преобразования Фурье:
Роль 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].
Выбор оконной функции и параметров
Выбор оконной функции и её параметров критически влияет на качество обучения модели. Согласно принципу неопределённости Гейзенберга (см. Преобразование Фурье), произведение эффективной длительности окна
и эффективной ширины его спектра
ограничено снизу:
Длинное окно даёт высокое частотное разрешение, но сглаживает быстрые изменения — подходит для стационарных компонент. Короткое окно даёт высокое временнóе разрешение, но снижает частотную точность — подходит для обнаружения кратковременных событий. В задачах машинного обучения оптимизация параметров часто выполняется эмпирически или с помощью дифференцируемого STFT[1]. На практике используются окна Ханна, Хэмминга и Гаусса.
Сравнение с альтернативными преобразованиями
Наряду со STFT в машинном обучении применяются:
Вейвлет-преобразование — обеспечивает переменное разрешение по частоте и времени, но сложнее в настройке;
Constant-Q Transform (CQT) — логарифмическая частотная шкала, полезна для музыки;
Mel-спектрограммы — шкала, приближённая к восприятию человека, часто даёт лучшие результаты в аудиозадачах.
STFT остаётся наиболее распространённым выбором благодаря простоте, вычислительной эффективности и обратимости, что делает его предпочтительным во многих пайплайнах машинного обучения.
Заключение
Оконное преобразование Фурье превратилось из классического инструмента цифровой обработки сигналов в фундаментальный строительный блок современных систем машинного обучения. Его способность преобразовывать нестационарные временные ряды в информативные частотно-временные представления делает его незаменимым для извлечения признаков, классификации, прогнозирования и генерации данных. Развитие дифференцируемых и обучаемых версий STFT открывает новые перспективы для совместной оптимизации преобразования и модели, что позволяет достигать высоких результатов в широком спектре прикладных задач.
См. также
Дискретное преобразование Фурье

