Comments (1)
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:
- 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.
- 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.
- 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.
- 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
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from matlab-convolutional-autoencoder.