  In this work, we investigate various approaches that use learning from
training data to solve inverse problems, following a bi-level learning
approach. We consider a general framework for optimal inversion design, where
training data can be used to learn optimal regularization parameters, data
fidelity terms, and regularizers, thereby resulting in superior variational
regularization methods. In particular, we describe methods to learn optimal $p$
and $q$ norms for ${\rm L}^p-{\rm L}^q$ regularization and methods to learn
optimal parameters for regularization matrices defined by covariance kernels.
We exploit efficient algorithms based on Krylov projection methods for solving
the regularized problems, both at training and validation stages, making these
methods well-suited for large-scale problems. Our experiments show that the
learned regularization methods perform well even when there is some inexactness
in the forward operator, resulting in a mixture of model and measurement error.
