Preventing overfitting in GP with canary functions
Overfitting is a fundamental problem of most machine learning techniques, including genetic programming (GP). Canary functions have been introduced in the literature as a concept for preventing overfitting by automatically recognizing when it starts to occur. This paper presents a simple scheme for implementing canary functions using cross-validation. The effectiveness of this technique is demonstrated by applying it to the numeric regression problem. A list of conditions and criteria for applying this technique to other problem domains is also identified. Other strategies for dealing with overfitting in GP are discussed.
Link to Published Version
Foreman, N., & Evett, M. (2005). Preventing overfitting in GP with canary functions. In Proceedings of the 7th Annual Conference on Genetic and Evolutionary Computation (pp. 1779–1780). New York, N. Y.: ACM. doi:10.1145/1068009.1068307