  Domain experts from all fields are called upon, working with data scientists,
to explore the use of ML techniques to solve their problems. Starting from a
domain problem/question, ML-based problem-solving typically involves three
steps: (1) formulating the business problem (problem domain) as a data analysis
problem (solution domain), (2) sketching a high-level ML-based solution
pattern, given the domain requirements and the properties of the available
data, and (3) designing and refining the different components of the solution
pattern. There has to be a substantial body of ML problem solving knowledge
that ML researchers agree on, and that ML practitioners routinely apply to
solve the most common problems. Our work deals with capturing this body of
knowledge, and embodying it in a ML problem solving workbench to helps domain
specialists who are not ML experts to explore the ML solution space. This paper
focuses on: 1) the representation of domain problems, ML problems, and the main
ML solution artefacts, and 2) a heuristic matching function that helps identify
the ML algorithm family that is most appropriate for the domain problem at
hand, given the domain (expert) requirements, and the characteristics of the
training data. We review related work and outline our strategy for validating
the workbench
