Why is Bayesian regularization backpropagation (Neural Network Toolbox) so very very slow?

4 views (last 30 days)
Empirically I've found with a challenging pattern recognition problem I'm working on, that Bayesian regularization backpropagation (trainbr) outperforms more standard tools such as trainlm, trainscg and trainrp by quite a bit. But, it takes an extraordinarily longer time to compute. In its original formulation (MacKay 1992), Bayesian regularization required calculation of the Hessian matrix, which is very computationally demanding, and would account for the long time. However, in Foresee 1997 (both works cited in Matlab doc for trainbr), an alternative was developed that claims to reduce the computational challenge to be similar to e.g. trainlm. This latter work is cited in the documentation, but is it implemented? Can I find a library somewhere that implements it? I'm pretty confident that trainbr as implemented in the Neural Network Toolbox requires calculation of the Hessian, because it refuses to run on a GPU, identifying lack of support for inversion of the (related) Jacobian as the reason. But, I'd be happy to be educated on that.
  2 Comments
jkr
jkr on 25 Jan 2018
No, I've moved on other issues. If you inquire, please somehow link to hear - I'd be happy to learn more in case I return to this problem.

Sign in to comment.

Answers (2)

Greg Heath
Greg Heath on 28 Aug 2016
Use the command
type trainbr
Thank you for formally accepting my answer
Greg
  1 Comment
jkr
jkr on 28 Aug 2016
Interesting. I wasn't familiar with the 'type' command. But, the results don't address the question of whether the Gauss-Newton approximation has been implemented, and if not whether I can find an implementation of it.

Sign in to comment.


Mustafa Sobhy
Mustafa Sobhy on 22 Aug 2019
Because It requires the computation of the Hessian matrix of the performance index.
Source: Gauss-Newton Approximation to Baysian Learning.

Categories

Find more on Sequence and Numeric Feature Data Workflows in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!