A second approach we have explored is to use deep learning to learn a function dictionary or a set of observables during training [1]}. deepDMD uses a form of stochastic gradient descent (SGD) to train a deep artificial neural network to select observables. Because the neural network is a universal function approximator [2]}, it can learn any set of observables and parameterize the approximate Koopman operator. The deepDMD algorithm has been generally successful at learning both small and large scale systems with many types of strong nonlinearities [1]}.
