Software Engineering Practices for Machine Learning
  In the last couple of years we have witnessed an enormous increase of machine
learning (ML) applications. More and more program functions are no longer
written in code, but learnt from a huge amount of data samples using an ML
algorithm. However, what is often overlooked is the complexity of managing the
resulting ML models as well as bringing these into a real production system. In
software engineering, we have spent decades on developing tools and
methodologies to create, manage and assemble complex software modules. We
present an overview of current techniques to manage complex software, and how
this applies to ML models.
