有效计算$q$元函数的稀疏傅里叶变换
Efficiently Computing Sparse Fourier Transforms of $q$-ary Functions
摘要:
伪布尔函数的傅立叶变换是分析二元序列函数的常用工具。真实世界的函数通常具有稀疏傅立叶变换中表现的结构,并且先前的工作已经表明,在稀疏性的假设下,可以有效地计算变换。但是,如果我们想计算定义在$q$元字母表上的函数的傅立叶变换,该怎么办?这些类型的功能在包括生物学在内的许多领域自然出现。典型的解决方法是以二进制编码$q$ -ary序列,然而,这种方法在计算上是低效的,并且与现有的稀疏傅立叶变换技术根本不兼容。本文中,我们开发了一种专门针对长度为$n$序列的$q$ -ary函数的稀疏傅立叶变换算法,称为$q$-SFT,它可证明地计算$S$ -稀疏变换,在$O(Sn)$函数评估和$O(S n^2 \log q)$计算中,具有消失误差为$q^n \rightarrow \infty$,其中对于某些$δ< 1$,$S = q^{nδ}$.在一定的假设下,我们表明,对于固定的$q$,一个强大的版本的$q$-SFT具有$O(Sn^2)$的样本复杂度和$O(Sn^3)$的计算复杂度具有相同的渐近保证。我们提出了数值模拟的合成和真实世界的RNA数据,证明了可扩展性的$q$ -SFT大规模高维$q$ -ary功能。
英文摘要:
Fourier transformations of pseudo-Boolean functions are popular tools for analyzing functions of binary sequences. Real-world functions often have structures that manifest in a sparse Fourier transform, and previous works have shown that under the assumption of sparsity the transform can be computed efficiently. But what if we want to compute the Fourier transform of functions defined over a $q$-ary alphabet? These types of functions arise naturally in many areas including biology. A typical workaround is to encode the $q$-ary sequence in binary, however, this approach is computationally inefficient and fundamentally incompatible with the existing sparse Fourier transform techniques. Herein, we develop a sparse Fourier transform algorithm specifically for $q$-ary functions of length $n$ sequences, dubbed $q$-SFT, which provably computes an $S$-sparse transform with vanishing error as $q^n \rightarrow \infty$ in $O(Sn)$ function evaluations and $O(S n^2 \log q)$ computations, where $S = q^{nδ}$ for some $δ< 1$. Under certain assumptions, we show that for fixed $q$, a robust version of $q$-SFT has a sample complexity of $O(Sn^2)$ and a computational complexity of $O(Sn^3)$ with the same asymptotic guarantees. We present numerical simulations on synthetic and real-world RNA data, demonstrating the scalability of $q$-SFT to massively high dimensional $q$-ary functions.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。