change patternnet transfer function

1 次查看(过去 30 天)
how can i change the transfer function for patternnet? initially i used net.transferFcn = 'tansig'. but it hits error 'reference to non existence field transferFcn'
i have used the nn out of the box tool to generate the nn command. and i have noticed there are some functions i'm not understand n no luck to get answer after asking from google. TrainMask{1}, valMask{2} and testMask{1}.. thanks

采纳的回答

Greg Heath
Greg Heath 2013-6-14
'tansig' is the correct default transfer function for both hidden and output layers in patternnet because the default normalization for input and output are mapminmax. It is still correct if you override with mapstd.
However, if you remove the output normalization and the target matrix contains unit vector columns with a single 1, then logsig and softmax are appropriate for estimating input-conditional class posterior probabilities. Both yield consistent estimates. However, the softmax probabilities estimates always sum to 1. If you are using logsig and the unit sum property is desirable, you can always divide the logsig estimates by their sum.
If you are still having problems, post your code.
Trainmask is a vector with ones at the training set indices and zeros otherwise. Multiplication using .* singles out training set inputs and outputs. Similarly for the other masks.
Search ANSWERS and NEWSGROUP for sample code.
Hope this helps.
Thank you for formally accepting my answer.
Greg

更多回答(1 个)

Ahmed
Ahmed 2013-6-3
try following to change the transfer function in the first hidden layer:
net.layers{1}.transferFcn = 'tansig';

类别

Help CenterFile Exchange 中查找有关 Sequence and Numeric Feature Data Workflows 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by