You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Sep 28, 2024. It is now read-only.
where ``v_t(x_i)`` is the input function for ``t``-th layer, ``x_i`` is the node feature for ``i``-th node and ``\mathcal{N}(x_i)`` represents the neighbors for ``x_i``.
49
+
Activation function ``\sigma`` can be arbitrary non-linear function.
50
+
51
+
```@docs
52
+
GraphKernel
53
+
```
54
+
55
+
Reference: [Neural Operator: Graph Kernel Network for Partial Differential Equations](https://arxiv.org/abs/2003.03485)
The demonstration shown above is Navier-Stokes equation learned by the `MarkovNeuralOperator` with only one time step information.
14
12
Example can be found in [`example/FlowOverCircle`](https://github.com/foldfelis/NeuralOperators.jl/tree/master/example/FlowOverCircle).
15
13
16
-
## Abstract
17
-
18
-
Neural operator is a novel deep learning architecture.
19
-
It learns a operator, which is a mapping between infinite-dimensional function spaces.
20
-
It can be used to resolve [partial differential equations (PDE)](https://en.wikipedia.org/wiki/Partial_differential_equation).
21
-
Instead of solving by finite element method, a PDE problem can be resolved by training a neural network to learn an operator mapping
22
-
from infinite-dimensional space (u, t) to infinite-dimensional space f(u, t).
23
-
Neural operator learns a continuous function between two continuous function spaces.
24
-
The kernel can be trained on different geometry, which is learned from a graph.
25
-
26
-
**Fourier neural operator** learns a neural operator with Dirichlet kernel to form a Fourier transformation.
27
-
It performs Fourier transformation across infinite-dimensional function spaces and learns better than neural operator.
28
-
29
-
**Markov neural operator** learns a neural operator with Fourier operators.
30
-
With only one time step information of learning, it can predict the following few steps with low loss
31
-
by linking the operators into a Markov chain.
32
-
33
-
**DeepONet operator** (Deep Operator Network) learns a neural operator with the help of two sub-neural net structures described as the branch and the trunk network.
34
-
The branch network is fed the initial conditions data, whereas the trunk is fed with the locations where the target(output) is evaluated from the corresponding initial conditions.
35
-
It is important that the output size of the branch and trunk subnets is same so that a dot product can be performed between them.
36
-
37
-
Currently, the `OperatorKernel` layer is provided in this work.
38
-
As for model, there are `FourierNeuralOperator` and `MarkovNeuralOperator` provided.
39
-
Please take a glance at them [here](apis.html#Models).
40
-
41
14
## Quick start
42
15
43
16
The package can be installed with the Julia package manager. From the Julia REPL, type `]` to enter the Pkg REPL mode and run:
A more complete example using DeepONet architecture to solve Burgers' equation can be found in the [examples](../../example/Burgers/src/Burgers_deeponet.jl)
88
+
A more complete example using DeepONet architecture to solve Burgers' equation can be found in the [examples](https://github.com/foldfelis/NeuralOperators.jl/tree/master/example/Burgers/src/Burgers_deeponet.jl).
Neural operator is a novel deep learning architecture.
4
+
It learns a operator, which is a mapping between infinite-dimensional function spaces.
5
+
It can be used to resolve [partial differential equations (PDE)](https://en.wikipedia.org/wiki/Partial_differential_equation).
6
+
Instead of solving by time-consuming finite element method, a PDE problem can be resolved by training a neural network to learn
7
+
an operator mapping from infinite-dimensional space ``(u, t)`` to infinite-dimensional space ``f(u, t)``.
8
+
Neural operator learns a continuous function between two continuous function spaces.
9
+
The kernel can be trained on different geometry, including regular Euclidean space or a graph topology.
10
+
11
+
## Fourier Neural Operators
12
+
13
+
Fourier neural operator (FNO) learns a neural operator with Dirichlet kernel to form a Fourier transformation.
14
+
It performs Fourier transformation across infinite-dimensional function spaces and learns better than neural operator.
15
+
16
+
## Markov Neural Operators
17
+
18
+
Markov neural operator (MNO) learns a neural operator with Fourier operators.
19
+
With only one time step information of learning, it can predict the following few steps with low loss
20
+
by linking the operators into a Markov chain.
21
+
22
+
## Deep Operator Network
23
+
24
+
Deep operator network (DeepONet) learns a neural operator with the help of two sub-neural network structures described as the branch and the trunk network.
25
+
The branch network is fed the initial conditions data, whereas the trunk is fed with the locations where the target(output) is evaluated from the corresponding initial conditions.
26
+
It is important that the output size of the branch and trunk subnets is same so that a dot product can be performed between them.
27
+
28
+
Currently, the `OperatorKernel` layer is provided in this work.
29
+
As for model, there are `FourierNeuralOperator` and `MarkovNeuralOperator` provided.
0 commit comments