HamiltonianNeuralNetworks
HamiltonianNeuralNetworks learns Hamiltonian vector fields from data. Its network approximates the Hamiltonian, and the vector field is the symplectic gradient of the network [1].
The package provides
- the architecture
StandardHamiltonianArchitecture, - the losses
HNNLoss, for vector field data, andSymplecticEulerLoss, for pairs of states one timestep apart, - the
SymbolicPullbackofHNNLoss, a gradient that SymbolicNeuralNetworks generates in closed form.
The networks train with the DataLoader, Batch, train! and the optimisers of GeometricMachineLearning; the tutorial shows the whole workflow.
HamiltonianNeuralNetworks — Module
HamiltonianNeuralNetworksHamiltonian neural networks: an architecture whose network is a Hamiltonian and whose vector field is its symplectic gradient, the losses that train it, and its symbolic pullback.