A single hidden layered NN but the weight matrix is a diagonal matrix (with a bias) -- how to design that?
3 次查看(过去 30 天)
显示 更早的评论
I am wondering if I can create a single hidden layered NN but the weight matrix is a diagonal matrix (with a bias). How to design that?
---------------------------------------------------------
Background
Let's say that a single layered hidden model (with m neurons) is given as
, where
- is input vector,
- is a first weight matrix connecting input with the hidden layer with m nodes,
- is a bias
- is an activation function which operates component wise, say $\tanh$
- is second weight matrix connecting the hidden layer with the output,
- is a bias, and
- is an output vector.
My model wants the weight matrices and as only diagonal matrices. How to do that?
0 个评论
采纳的回答
Srivardhan Gadila
2020-5-3
You can access the layer weights as follows:
net.LW{i,j}
You can set any values to the above weights and set the net.layerWeights{i,j}.learn to 0 so that the weights won't be altered during the training & adaption. In this case setting a specific weight for a connection is not possible since the property net.layerWeights{i,j}.learn is defined for the entire connections between layers i and j.
net.layerWeights{i,j}.learn = 0
net.LW{i,j} = ones(size(net.LW{i,j})) % any weights of size(net.LW{i,j})
If your network architecture is defined and trained already:
Then you can set weight of a connection between nodes k & l of layers i & j as follows:
net.LW{i,j}(k,l) = 1
and then use the network.
The above things can be done to Input wieghts too.
4 个评论
Srivardhan Gadila
2020-5-29
编辑:Srivardhan Gadila
2020-5-29
- I listed the possible things you can do w.r.t the weights of layers of shallow nerual networks in the Answer.
- The property net.layerWeights{i,j}.learn is defined for the entire connections between layers i and j hence you cannot set the diagonal weights to learn only & non-diagonal weights to not learn.
- You can instead define custom Deep Learning layer to achieve your functionality. Refer to Define Custom Deep Learning Layers & Define Custom Deep Learning Layer with Learnable Parameters
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!