Matching Problems to Solutions: An Explainable Way of Solving Machine Learning Problems