This repository contains the code associated with the journal articles "The Random Feature Model for Input-Output Maps between Banach Spaces" (SIAM J. Sci. Comput., Vol. 43, No. 5 (2021), pp. A3212–A3243) and "Operator learning using random features: a tool for scientific computing" (SIAM Review, Vol. 66, No. 3 (2024), pp. 535–571). It implements the function-valued random features method for two operator learning benchmark problems: 1) the solution operator of 1D viscous Burgers' equation and 2) the solution operator of the 2D Darcy flow elliptic partial differential equation.
Important
A more efficient and up-to-date GPU implementation of this code is available at:
https://github.com/nickhnelsen/error-bounds-for-vvRF
We recommend that users interested in the operator random features method migrate over to that repository. The current repo random-features-banach
should only be used to reproduce the results in the journal papers and not used for future developements.
- Python 3
- Numpy
- Numba
- Scipy
- Matplotlib
The data may be downloaded at , which contains two *.zip
files:
burgers
: input-output data as Python*.npy
files.darcy
: input-output data as MATLAB*.mat
files.
Nelsen, N. H. & Stuart, A.M. (2024). Operator learning using random features: a tool for scientific computing [Data set]. CaltechDATA. https://doi.org/10.22002/55tdh-hda68. Mar. 15, 2024.
The main reference that explains the two benchmark problems is the paper ``The Random Feature Model for Input-Output Maps between Banach Spaces'' by Nicholas H. Nelsen and Andrew M. Stuart. Other relevant references include:
- Error Bounds for Learning with Vector-Valued Random Features
- Fourier Neural Operator for Parametric Partial Differential Equations
- Operator learning using random features: a tool for scientific computing
If you use random-features-banach
in an academic paper, please cite the main references as follows:
@article{nelsen2021random,
title={The random feature model for input-output maps between Banach spaces},
author={Nelsen, Nicholas H. and Stuart, Andrew M.},
journal={SIAM Journal on Scientific Computing},
volume={43},
number={5},
pages={A3212--A3243},
year={2021},
publisher={Society for Industrial and Applied Mathematics},
doi = {10.1137/20M133957X}
}
@article{nelsen2024operator,
title={Operator learning using random features: a tool for scientific computing},
author={Nelsen, Nicholas H. and Stuart, Andrew M.},
journal={SIAM Review},
volume={66},
number={3},
pages={535--571},
year={2024},
month={8},
publisher={Society for Industrial and Applied Mathematics},
doi={10.1137/24M1648703}
}