NVIDIA/torch-harmonics

Differentiable signal processing on the sphere for PyTorch

解決的問題

torch-harmonics 提供了一種可微分的方式在球面上進行訊號處理。它允許研究人員將球面訊號投影至調和基底(以及反向投影),這對於在球面上求解偏微分方程(PDE)以及建構能夠學習球面資料動態的神經運算子至關重要。

工作原理

該庫實作了球面調和變換(SHT),這是傅立葉變換在球面上的推廣。它結合了經度方向的快速傅立葉變換(FFT)與緯度方向的高斯求積規則,以計算投影至關聯勒讓德多項式上。由於使用 PyTorch 原語建構,整個過程完全可微分。它還支援分散式求積,以實現跨多個 GPU 的模型平行。

適用對象

專為處理球面資料的科學家與機器學習工程師設計,例如開發球面傅立葉神經運算子(SFNO)或在旋轉球面上求解複雜物理模擬(如淺水方程)的研究人員。

特色亮點

  • 可微分 SHT:與 PyTorch 完全整合,支援基於梯度的優化。
  • 高階卷積:實作了適用於球面結構與非結構化網格的局部離散-連續(DISCO)卷積。
  • 球面注意力:使用測地距離將注意力機制推廣至球面,實現鄰域注意力。
  • 可擴展性:支援分散式 SHT,適用於大規模模型平行。
  • CUDA 優化:提供自訂 CUDA 擴充,以在 NVIDIA GPU 上實現高效能執行。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案