NVIDIA/torch-harmonics

Differentiable signal processing on the sphere for PyTorch

解决的问题

torch-harmonics 提供了一个用于球面上可微分信号处理的框架,能够将球形数据整合到机器学习模型中。它解决了在球面上执行类傅立叶变换和卷积时,难以保持可微分性与效率的问题,这对于求解偏微分方程 (PDE) 以及在球形领域上训练神经算子至关重要。

运作原理

该库实现了球谐变换 (SHT),将傅立叶变换推广至球面上。它使用求积规则将信号投影到关联勒让德多项式上,并利用快速傅立叶变换 (FFT) 进行谐波基底运算。为了确保与深度学习的兼容性,它使用 PyTorch 原语构建,使所有运算皆可完全微分。它还引入了局部离散连续 (DISCO) 卷积和球形注意力机制,利用测地距离来确定邻域,确保运算具有近似等变性。

适用对象

处理球形数据的研究人员与工程师,例如开发可微分 PDE 求解器、球形傅立叶神经算子 (SFNO),或用于球面上深度估计与语义分割模型的人员。

特点

  • 可微分 SHT:球形、向量球形以及离散连续卷积的完全可微分实现。
  • GPU 加速:针对 NVIDIA GPU 高性能运算优化的 CUDA 扩展。
  • 分布式运算:支持空间分布式求积,以实现可扩展的模型并行。
  • 球形注意力:使用测地距离确定邻域,将注意力机制推广至球面上。
  • 广泛应用:用于求解浅水方程、深度估计以及球形网格上的语义分割等任务。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目