Declarative Machine Learning