Abstract
Most problems from classical machine learning can be cast as an optimization problem. I will present GENO (GENeric Optimization), a framework that lets the user specify a constrained or unconstrained optimization problem in an easy-to-read modeling language. GENO then generates a solver that can solve this class of optimization problems. The generated solver is usually as fast as hand-written, problem-specific, and well-engineered solvers. Often the solvers generated by GENO are faster by a large margin compared to recently developed solvers that are tailored to a specific problem class. I will dig into some of the algorithmic details, e.g., computing derivatives of matrix and tensor expressions, the optimization methods used in GENO, and their implementation in Python.
Talk in the series “Train Your Engineering Network”.