Support Vector Neural Network (SVNN)

A new training method for MLP neural networks based on the same principles of SVM.


Updated 11 Oct 2013

View License

This code implements a new training method for MLP neural networks, named Support Vector Neural Network (SVNN), proposed in the work: O. Ludwig; “Study on Non-parametric Methods for Fast Pattern Recognition with Emphasis on Neural Networks and Cascade Classifiers;” PhD Thesis, University of Coimbra, Coimbra, 2012. The input arguments are a N x L matrix of L representative N-element input vectors, a row vector, y, whose elements are the respective target classes, which should be -1 or 1, and the number of hidden neurons, nneu. Similarly to SVMs, the SVNN has a punishing parameter, C, which can be set in the line 16 of the code. The algorithm outputs the MLP parameters, W1, W2, b1, b2, which are input arguments of the MLP simulator “sim_NN.m” that also requires the matrix of testing data, as well as the target vector (in case of target unavailable, a empty vector must be supplied). “sim_NN.m” outputs the estimated class and the accuracy, acc (when testing targets are available). The code was developed to run on quad-core processors. In case of dual or single-core processors, the lines 53 and 163 should be commented, and line 62 must be replaced by 63. This code was developed by Oswaldo Ludwig, in case of publication, cite the paper: Oswaldo Ludwig, Urbano Nunes, Rui Araujo, Eigenvalue decay: A new method for neural network regularization, Neurocomputing, Available online 13 September 2013, ISSN 0925-2312,

Cite As

Oswaldo Ludwig (2023). Support Vector Neural Network (SVNN) (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2010a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

The reference paper.