This page is devoted to evolutionary feature programming (EFP), and its cooperative variety, cooperative feature programming (CFP), the approaches to feature synthesis I've developed during the last few years.
The background of EFP are machine learning algorithms that explicitly change the representation of their input (training) data while learning. This process, known as feature construction or transformation of representation, "rewrites" learner's input data, getting rid of useless data components, and combining the useful ones in synergetic way with help of background knowledge. The objective is to improve learner's predictive performance and/or enable access to input data that is incompatible with learning algorithm, and could not be used directly (e.g., raster images).
In a sense, EFP puts the feature construction task into optimization perspective and uses evolutionary computation to effectively search the space of solutions. Each of the evolving individuals represents a specific feature extraction procedure. We design a novel variant of genetic programming to encode the way the training data undergoes transformation prior to being fed into learning algorithm. The rationale for this particular design and genetic encoding of solutions may be found in my papers listed below.
Apart from this canonical approach, I proposed a methodology for tackling with complexity of EFP. In coevolutionary feature programming (CFP), we decompose the feature construction task using cooperative coevolution, a variety of evolutionary computation that allows for semi-independent elaboration of solution components. We propose and discuss four different decomposition strategies for breaking up the feature construction process.
The practical utility of EFP and CFP has been verified in different application areas: machine learning from examples given in attribute-value form, and visual learning from raw raster images. Considered real-world case studies concerned glass type identification, diagnosing of diabetes, sonar-based object identification, 3D object recognition in visible spectrum, and vehicle identification in radar modality. The experimental results indicate that the proposed methodology is general and proves effective in different environments, and that it exhibits features that are appealing from practical viewpoint (performance, scalability, generalization, explanatory character, to mention the most important ones).
An exemplary feature extraction procedure evolved by means of linear genetic programming (click to enlarge)
See my Publications for papers concerning evolutionary features programming.