【问题标题】:Non-linear regression using custom neural network in MatLab在 MatLab 中使用自定义神经网络进行非线性回归
【发布时间】:2015-06-15 04:04:17
【问题描述】:
我对 MatLab 很陌生。我的任务是在 MatLab 中使用神经网络对非线性回归进行建模。
我需要创建一个两层神经网络,其中:
第一层是 N 个具有 sigmoid 激活函数的神经元。
第二层是具有一个神经元和线性激活的层
功能。
这是我实现网络的方式:
net = network(N, 2);
net.layers{1}.transferFcn = 'logsig';
net.layers{1}.size = N
net.layers{2}.size = 1;
这个实现是否正确?我应该如何将线性激活函数分配给第二层?
【问题讨论】:
标签:
matlab
neural-network
non-linear-regression
【解决方案1】:
快速阅读有关nntransfer 函数的 Matlab 帮助,可以为您提供可以使用的所有可能的传递函数的列表。在您的情况下,我认为您应该尝试poslin(正线性)或purelin(纯线性)。
当您有此类问题时,最好的方法实际上是“询问”Matlab 您拥有的可能性。
在这种情况下,我只是在 Matlab 控制台窗口中输入了net.layers{2}。这将显示第 2 层的参数列表。然后,您只需单击链接TransferFcn,Matlab 帮助就会自动打开该参数值的可能选项。这适用于您的神经网络的任何参数;)
【解决方案2】:
您没有确定第二层的传递函数。
net.layers{2}.transferFcn='pureline'
其他都还好。