SciML / SciML/NeuralOperators.jl
Implement Factorized Fourier Neural Operator (FFNO)
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 41
- Forks
- 15
- Avg merge
- 13h 14m
- Merged PRs (30d)
- 12
Description
Summary
Implement FFNO, which factorizes the spectral convolution along each spatial dimension independently, reducing model complexity by an order of magnitude.
Reference
- Tran et al., "Factorized Fourier Neural Operators," ICLR 2023. arXiv:2111.13802
Description
FFNO applies spectral convolutions along each spatial dimension separately (rather than jointly), significantly reducing the number of parameters. It also uses improved residual connections and channel mixing. The paper reports 31-83% improvement over standard FNO across benchmarks with far fewer parameters.
The existing FourierTransform and OperatorConv in src/transform.jl and src/layers.jl provide a foundation. FFNO would require a new factorized variant of the spectral convolution where the transform and weight application are done dimension-by-dimension.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read the FFNO paper and inspect FourierTransform and OperatorConv in src/transform.jl and src/layers.jl to understand the existing spectral-convolution interfaces. Implement and integrate a factorized variant that applies transforms and weights dimension by dimension, with the behavior and complexity described in the issue serving as the completion criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100