Machine learning research has been very successful at producing powerful, broadlyapplicable classification learners. However, many practical learning problems do not fit the classification framework well, and as a result the initial phase of suitably formulating the problem and incorporating the relevant domain knowledge can be very difficult and time-consuming. Here we propose a framework to systematize and speed this process, based on the notion of version space algebra. We extend the notion of version spaces beyond concept learning, and propose that carefully-tailored version spaces for complex applications can be built by composing simpler, restricted version spaces. We illustrate our approach with SMARTedit, a programming by demonstration application for repetitive text-editing that uses version space algebra to guide a search over text-editing action sequences. We demonstrate the system on a suite of repetitive text-editing problems and present experimental results showing its e...
Tessa A. Lau, Pedro Domingos, Daniel S. Weld