An Optimal Regression Algorithm for Piecewise Functions Expressed as Object-Oriented Programs
Juan Luo, Alexander Brodsky · 2010
Core Java is a framework which extends the programming language Java with built-in regression analysis, i.e., the capability to do parameter estimation for a function. Core Java is unique in that functional forms for regression analysis are expressed as first-class citizens, i.e., as Java programs, in which some parameters are not a priori known, but need to be learned from training sets provided as input. Typical applications of Core Java include calibration of parameters of computational processes, described as OO programs. If-then-else statements of Java language are naturally adopted to create piecewise functional forms of regression. Thus, minimization of the sum of least squared errors involves an optimization problem with a search space that is exponential to the size of learning set. In this paper, we propose a combinatorial restructuring algorithm which guarantees learning optimality and furthermore reduces the search space to be polynomial in the size of learning set, but exponential to the number of piece-wise bounds.