Giter Site home page Giter Site logo

Comments (1)

jkaardal avatar jkaardal commented on June 2, 2024

Hi @chaiein, there is an example of how to use the code here. I would recommend only using this code for educational reasons (e.g. if you are interested in the construction of the gradient/backpropagation algorithm from scratch). If you are looking for software to use in a professional capacity, you may be better served by the usual deep learning frameworks like tensorflow/torch if any of these are likely to cause issues for your particular application:

  1. The gradient calculation is quite suboptimal in terms of compute time. I have some similar code (though suited to a slightly different purpose) where I went to great lengths to vectorize the gradient calculation and it ended up being about 10x faster than this code so there are plenty of gains to be made through vectorizing this.
  2. The graph structure of this neural network is inflexible. Only the first layer is a convolution layer while the (optional) additional hidden layers are all fully connected.
  3. With the exception of the output layer, which is linear, all of the hidden layers are logistic functions. This was originally written at a time when logistic units were still common in neural networks but the field has moved away from sigmoidal units (except in cases where "squashing" is necessary) in favor of rectified linear units due to the issue sigmoids have with vanishing gradients.
  4. The cost function is fixed to least squares.

If none of these issues are a problem for your application, then certainly use this code. The code is correct, it just is not flexible and a bit slow.

from matlab-convolutional-autoencoder.

Related Issues (2)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.