cleaned learning algorithm interface per discussion with Miro