Skip to content

Beginners Guide for FNO #418

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

Robertboy18
Copy link
Member

A compressive beginner's guide to Fourier Neural Operators (FNOs). The guide aims to help newcomers understand FNOs and get started implementing them using our library.

Key additions:

  1. Introduction to FNOs and their importance in scientific computing
  2. Detailed explanation of FNO architecture and its components
  3. Step-by-step tutorial on implementing and training a simple FNO model
  4. Comparisons with traditional numerical solvers and other machine learning approaches
  5. Overview of practical applications in various scientific domains

This is just an initial draft, let me know what you think!

x = torch.fft.irfft2(out_ft, s=(x.size(-2), x.size(-1)))
return x

b) MLP Layer
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to make sure we're clear that the MLP is only applied to channels, see neuralop.layers.channel_mlp

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point! Let me make an edit.


This structure allows FNOs to efficiently learn mappings between function spaces, making them particularly effective for solving PDEs and other complex mathematical problems. Now finally let's see how to train an FNO model.

3. Set Up the FNO Model
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure we need another full training guide within the docs here

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Its more of just a simplified version and how to train it.


# Evaluation code here (omitted for brevity)

7. Visualize Results
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be better to direct people to the gallery of examples with plots

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This guide is great, thanks @Robertboy18! There are a few small grammar/punctuation nitpicks with the PPT slides and I think the guide belongs somewhere more prominent on the website. Otherwise great.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! Yeah of course

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants