Online Support Vector Regression

Support vector regression (SVR) are state-of-art learning machines for solving linear and non-linear regression problems. In real-time applications involving streaming data two major issues need particular care: the inefficiency of batch-mode learning and the arduous task of training the learning machine in presence of non-stationary behaviour. This is an implementation of on-line support vector regression. The original method was described in Ma et al. (2003). They derived an online version of SVR by classifying all training points into three distinct auxiliary sets according to the KKT conditions that define the optimal solution -- then derived rules to recursively update the optimal solution based on this classification. Our implementation solves a few inconsistencies found in the original article and is very efficient. Building on this implementation, in Montana and Parrella (2008) we propose an SVR-based ensamble learning approach and describe an application to statistical arbitrage.


C++ Code

Installation and Usage

Compile as usual


Ma, J. et al. (2003) Accurate on-line support vector regression. Neural Computation, 15(11), pp. 2683-2703

Montana, G. and Parrella, F. (2008) Learning to trade with incremental support vector regression experts. E. Corchado, A. Abraham, and W. Pedrycz (Eds.): Lecture Notes in Artificial Intelligence Vol. 5271, pp. 591-598. Springer-Verlag


Back Home