• 大小: 50KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-18
  • 语言: Matlab
  • 标签: 神经网络  

资源简介

该代码为matlab编码,利用思维进化算法优化BP神经网络的权值和阈值。

资源截图

代码片段和文件信息

function initpop = initpop_generate(popsizeS1S2S3PT)

% 编码长度(权值/阈值总个数)
S = S1*S2 + S2*S3 + S2 + S3;

% 预分配初始种群数组
initpop = zeros(popsizeS+1);

for i = 1:popsize
    % 随机产生一个个体[-11]
    x = rand(1S)*2 - 1;
    
    % 前S1*S2个编码为W1(输入层与隐含层间权值)
    temp = x(1:S1*S2);
    W1 = reshape(tempS2S1);
    
    % 接着的S2*S3个编码为W2(隐含层与输出层间权值)
    temp = x(S1*S2+1:S1*S2+S2*S3);
    W2 = reshape(tempS3S2);

    % 接着的S2个编码为B1(隐含层神经元阈值)
    temp = x(S1*S2+S2*S3+1:S1*S2+S2*S3+S2);
    B1 = reshape(tempS21);

    %接着的S3个编码B2(输出层神经元阈值)
    temp = x(S1*S2+S2*S3+S2+1:end);
    B2 = reshape(tempS31);
    
    % 计算隐含层神经元的输出
    A1 = tansig(W1*PB1);
    % 计算输出层神经元的输出
    A2 = purelin(W2*A1B2);
    % 计算均方误差
    SE = mse(T-A2);
    % 思维进化算法的得分
    val = 1 / SE;
    % 个体与得分合并
    initpop(i:) = [x val];
end

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      46375  2009-12-14 15:38  思维进化算法应用于优化BP神经网络的初始权值和阈值\data.mat

     文件        987  2013-01-30 19:13  思维进化算法应用于优化BP神经网络的初始权值和阈值\initpop_generate.m

     文件        125  2013-01-30 13:22  思维进化算法应用于优化BP神经网络的初始权值和阈值\ismature.m

     文件       8032  2013-09-02 16:28  思维进化算法应用于优化BP神经网络的初始权值和阈值\main.m

     文件        344  2013-09-02 16:32  思维进化算法应用于优化BP神经网络的初始权值和阈值\Readme.txt

     文件        982  2013-01-30 19:15  思维进化算法应用于优化BP神经网络的初始权值和阈值\subpop_generate.m

     目录          0  2019-03-17 13:07  思维进化算法应用于优化BP神经网络的初始权值和阈值

----------- ---------  ---------- -----  ----

                56845                    7


评论

共有 条评论