Better Software Analytics via "DUO": Data Mining Algorithms Using/Used-by Optimizers
This addresses the need for more robust and efficient predictive models in empirical software engineering, though it appears incremental as it builds on existing data mining and optimization techniques.
The paper introduces DUO, a combined approach of data mining and optimization for software analytics, claiming it can produce better predictive models with either greater accuracy or faster modeling time.
This paper claims that a new field of empirical software engineering research and practice is emerging: data mining using/used-by optimizers for empirical studies or DUO. For example, data miners can generate models that are explored by optimizers. Also, optimizers can advise how to best adjust the control parameters of a data miner. This combined approach acts like an agent leaning over the shoulder of an analyst that advises "ask this question next" or "ignore that problem, it is not relevant to your goals". Further, those agents can help us build "better" predictive models, where "better" can be either greater predictive accuracy or faster modeling time (which, in turn, enables the exploration of a wider range of options). We also caution that the era of papers that just use data miners is coming to an end. Results obtained from an unoptimized data miner can be quickly refuted, just by applying an optimizer to produce a different (and better performing) model. Our conclusion, hence, is that for software analytics it is possible, useful and necessary to combine data mining and optimization using DUO.