# STFT:短时傅里叶变换
傅里叶变换的意义:把一个随时间变化的信号(时域信号),转换成一个由频率组成的信号(频域信号 ****)
但是傅里叶变换只能知道这个信号里有哪些频率,并不知道这些频率什么时候出现,短时傅里叶变换可以知道在一个较短的时间段内存在哪些频率,由此知道在时间顺序上,哪一段有哪个频率的信号,
比喻理解:
比如一首歌:前 5 秒是低音节奏接下来的 5 秒是高音独奏,你如果只做傅里叶变换,你只会知道「有低音也有高音」,却不知道「低音在前,高音在后」。这就好像:你只知道一道菜用了哪些调料,但不知道它们是什么时候加进去的。
理解:短时傅里叶变换弥补了傅里叶变换没有时间内定位能力的缺点,在实际应用中更加实用
# FFT:快速傅里叶变换:
普通 DFT | FFT |
对每个频率都从头算一遍 | 把计算结果递归拆分,再合并 |
需要 N2N^2 次运算 | 只需 NlogNN \log N 次运算 |
没有复用计算结果 | 大量复用共用部分 |
快速傅里叶变换是一种算法, 用来计算傅里叶变换
比喻这一块:
# 傅里叶变换:一把 “频率分析的大枪”—— 可以扫清楚所有频率成分,但是看不清时间变化。
# 短时傅里叶变换(STFT):在这把枪上加了个 “瞄准镜”,你可以锁定一小段时间分析频率,这样你能看清 “在什么时候出现了什么声音”。
# 快速傅里叶变换(FFT):对傅里叶变换的加速器 / 改良配件,让它跑得飞快!
https://zhuanlan.zhihu.com/p/671206212
凯斯西储大学 轴承数据分析
# Wavelet Transform 小波变换:
比较项 | 傅里叶变换(FT) | 小波变换(WT) |
分析方式 | 整体频率 | 局部时频(哪时什么频率) |
适合信号类型 | 平稳信号(频率不变) | 非平稳信号(频率变化) |
分辨率 | 时间差,频率好 | 时间和频率都能调节 |
———————————————— 公式 ————————————————
1. 傅里叶变换:

2. 短时傅里叶变换

快速傅里叶变换(这是对傅里叶变换的改进):

3. 小波变换

4. 连续小波变换

- 以上几种都是时频二维分析的方法
# 要掌握凯斯西储大学(CWRU)轴承数据的解读与分类处理,您需要学会以下知识点:
数据集理解:了解 CWRU 轴承数据集的来源、结构和特点。该数据集包含了不同类型的轴承故障数据,如内圈故障、外圈故障和滚动体故障,以及正常工况下的轴承数据。数据采集过程中,通过在轴承的驱动端和风扇端安装加速度计来记录轴承的振动信号。
数据预处理:学习如何对振动信号数据进行预处理,包括去除噪声、归一化和特征提取。常用的预处理方法包括去除噪声、归一化和特征提取。
特征提取:掌握从时域和频域提取特征的方法,例如均值、方差、峭度、频谱等。同时,了解时频域特征提取方法,如短时傅里叶变换、连续小波变换、希尔伯特 - 黄变换等。
分类方法:学习如何使用机器学习算法对轴承数据进行分类。这可能包括传统的机器学习算法,如支持向量机(SVM)、决策树、随机森林等,以及深度学习方法,如卷积神经网络(CNN)和循环神经网络(RNN)。
模型评估:了解如何评估分类模型的性能,包括准确率、召回率、F1 分数等指标。
数据可视化:学习如何使用可视化工具,如 Matplotlib、Seaborn 或 FineBI,进行数据可视化,以帮助理解数据分布和特征。
Python 编程:掌握 Python 编程语言,特别是使用 NumPy、Pandas、SciPy、Matplotlib 等库进行数据处理和分析。
信号处理知识:了解基本的信号处理概念,如傅里叶变换、小波变换等,这些对于理解和处理振动信号数据非常重要。
通过学习这些知识点,您将能够更好地理解和处理 CWRU 轴承数据集,进行有效的故障诊断和分类。
# svm 支持向量机,用一个超平面把数据分成两类。
如果二维不好分开,可以加上一个非线性的特征,比如在 xoy 二维直角坐标系上不好分开,加入一个新的坐标轴,是 x 方 + y 方轴,
在低纬度下对数据进行升维
或者使用核技巧(目前没弄懂)
# 更高阶模型
随机森林:多个决策树构成
Bagging:模型之间相互独立,共同投票选出最终结果
从原始数据集中有放回的随机采样
Boosting:通过迭代地训练一系列弱学习器,每个新的学习器都试图纠正前一个学习器的错误。所有学习器的预测结果会被加权汇总,以得到最终预测。AdaBoost、Gradient Boosting 和 XGBoost 是 Boosting 的常见算法。