手工计算离散傅里叶变换

Hacker News Top 新闻

摘要

本文提供了手工计算离散傅里叶变换(DFT)的逐步指南,展示其涉及类似深度神经网络中的矩阵乘法。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/08/14 18:30

# 手算离散傅里叶变换 ✍️ 来源: https://www.byhand.ai/p/28-discrete-fourier-transform ### 资源库 (https://www.byhand.ai/p/library) › 手算AI ✍️ (https://www.byhand.ai/p/library-series-math-calc) 1. 手算矩阵乘法 ✍️ (https://www.byhand.ai/p/4-can-you-multiply-these-matrices) 2. 手算多层感知机 \(MLP\) ✍️ (https://www.byhand.ai/p/6-can-you-code-a-multi-layer-perceptron) 3. 手算反向传播 ✍️ (https://www.byhand.ai/p/7-can-you-calculate-backpropagation) 4. 手算支持向量机 \(SVM\) ✍️ (https://www.byhand.ai/p/22-svm) 5. 手算批归一化 ✍️ (https://www.byhand.ai/p/9-can-you-calculate-batch-normalization) 6. 手算随机失活 ✍️ (https://www.byhand.ai/p/12-can-you-calculate-dropout-by-hand) 7. 手算循环神经网络 \(RNN\) ✍️ (https://www.byhand.ai/p/2-can-you-calculate-an-rnn-by-hand) 8. 手算长短期记忆网络 \(LSTM\) ✍️ (https://www.byhand.ai/p/26-lstm) 9. 手算深度循环神经网络 ✍️ (https://www.byhand.ai/p/23-deep-rnn) 10. 手算自注意力机制 ✍️ (https://www.byhand.ai/p/11-can-you-calculate-self-attention) 11. 手算Transformer ✍️ (https://www.byhand.ai/p/8-can-you-calculate-a-transformer) 12. 手算自编码器 ✍️ (https://www.byhand.ai/p/13-can-you-calculate-an-autoencoder) 13. 手算变分自编码器 \(VAE\) ✍️ (https://www.byhand.ai/p/24-variational-auto-encoder-vae) 14. 手算稀疏自编码器 \(SAE\) ✍️ (https://www.byhand.ai/p/25-sparse-auto-encoder-sae) 15. 手算生成对抗网络 \(GAN\) ✍️ (https://www.byhand.ai/p/10-can-you-calculate-a-generative) 16. 手算句子采样 ✍️ (https://www.byhand.ai/p/5-can-you-sample-a-sentence-by-hand) 17. 手算残差网络 ✍️ (https://www.byhand.ai/p/16-can-you-calculate-resnet-by-hand) 18. 手算U\-Net ✍️ (https://www.byhand.ai/p/21-u-net) 19. **手算离散傅里叶变换 ✍️** 20. 手算图卷积网络 \(GCN\) ✍️ (https://www.byhand.ai/p/17-can-you-calculate-a-graph-convolutional) 21. 手算CLIP ✍️ (https://www.byhand.ai/p/clip) 22. 手算向量数据库 ✍️ (https://www.byhand.ai/p/14-can-you-calculate-a-vector-database) 23. 手算混合专家模型 \(MoE\) ✍️ (https://www.byhand.ai/p/1-can-you-calculate-an-moe-model) 24. 手算Switch Transformer ✍️ (https://www.byhand.ai/p/19-can-you-calculate-gemini-15s-switch) 25. 手算Mamba的S6模型 ✍️ (https://www.byhand.ai/p/3-can-you-calculate-mambas-s6-model) 26. 手算Sora的扩散Transformer \(DiT\) ✍️ (https://www.byhand.ai/p/18-can-you-calculate-soras-diffusion) 27. 手算BitNet ✍️ (https://www.byhand.ai/p/29-bitnet) 28. 手算基于人类反馈的强化学习 \(RLHF\) ✍️ (https://www.byhand.ai/p/20-rlhf) 在信号处理中,离散傅里叶变换 \(DFT\) 无疑是最重要的方法。但其背后的数学极其复杂,字面意义上复杂,因为它涉及对复数项 e^\(\-iwt\) 的求和,其中 e 是欧拉数,i 是虚数单位,w 是角频率,t 是时间。 [](https://substackcdn.com/image/fetch/$s_!3E30!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c6831fe-f9e1-4953-8349-23cd8bf7b794_810x1080.gif) 我设计这个练习,就是为了展示在如此复杂的表象之下,DFT 不过是一系列你可以手算的矩阵乘法。✍️ 一旦你明白了这一点,你就不会惊讶于一个深度神经网络(它本质上也是一系列中间带有激活函数的矩阵乘法)能够学习执行 DFT,从而如此有效地处理和分析信号了。 💡**学习型 vs. 固定型:** U\-Net 从数据中学习其滤波器,以便在空间域处理信号。DFT 则是经典的反面——一种固定变换,是人工设计而非学习得到的,它将同一信号在频域中视为多个余弦波的组合。 DFT 是如何工作的? [](https://substackcdn.com/image/fetch/$s_!3PRD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe34cd9cc-1f44-4b55-9ba9-1b75805b1707_1080x1080.png) - 🟧 频域中的信号 A、B 和 C: - A = cos\(w\) \+ 2cos\(2w\) - B = cos\(w\) \+ cos\(3w\) \+ cos\(4w\) - C = \-cos\(2w\) \+ cos\(3w\) - 每个信号都是频率为 1w、2w、3w 和 4w 的四个余弦波的加权和。 - 我们将应用离散傅里叶逆变换将这些信号转换到时域表示,然后演示 DFT 如何将它们转换回原始的频域表示。 - 🟩 时域中的信号 X。X 在 10 个时间点 1t、2t、…、10t 被采样: - X = \[\-2\.5, \-1\.8, 3, \-0\.7, \-1\.0, \-0\.7, 3, \-1\.8, \-2\.5, 5\] - 假设 X 也是同样四个余弦波的加权和,但我们事先并不知道它们的权重。我们将应用 DFT 来找出这些权重。 [](https://substackcdn.com/image/fetch/$s_!wkDH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff72bfc49-5d63-4070-a815-ed3259d7ca66_1080x1080.png) - 将 A、B、C 的系数写成一个矩阵 F。每个信号是一行,每个频率是一列。 - A → \[1, 2, 0, 0\] - B → \[1, 0, 1, 1\] - C → \[0, \-1, 1, 0\] [](https://substackcdn.com/image/fetch/$s_!BNqa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67055571-9145-4105-9dba-5fc14dea63c1_1080x1080.png) - 在离散时间点 1t、2t、3t、…、10t 对连续的余弦波进行采样。

相似文章

离散时间傅里叶级数与变换笔记

Eli Bendersky

本文详细笔记了离散时间傅里叶级数(DTFS)与离散时间傅里叶变换(DTFT),涵盖其理论基础及信号处理应用实例。

傅里叶变换笔记

Eli Bendersky

深入探索傅里叶变换,从傅里叶级数出发,延伸至非周期函数,包含交互式可视化与数学推导。

新手学FFT

Lobsters Hottest

一个面向初学者的快速傅里叶变换(FFT)指南,使用R语言,解释如何解读fft函数的输出、幅度、相位以及奈奎斯特极限。