# Neural Functional Networks (NFNs)

This provides PyTorch layers for implementing **neural functional networks** (NFNs), as described in [Permutation Equivariant Neural Functional Networks](https://arxiv.org/abs/2302.14040). NFNs are equivariant deep learning architectures for processing weight space features, such as the weights or gradients of another neural network.

## Installation
Simple installation from PyPI:
```bash
pip install nfn
```
If you want to install from (and edit) source, clone the repository and run the following commands:
```bash
git clone https://github.com/AllanYangZhou/nfn
cd nfn
pip install -e .
```
