人工神经网络及其应用实例—-毕业论文设计

内容发布更新时间 : 2025/6/23 19:27:14星期一 下面是文章的全部内容请认真阅读。

则有:

????????????? p?? yi , ?bi????????a ji

? pqi?? x j

据此编写 MATLAB 程序如下(标准 BP 算法加动量法优化):

clear x0 x1 x2; beta = 0.1; miu = 0;

[n m] = size(x); for i = 1 : 1 : n

x0(1, i) = 1; x1(1, i) = x(i, 1); x2(1, i) = x(i, 2); y0(1, i) = 1; t(1, i) = x(i, 3); end

a01 = rand(); a11 = rand(); a21 = rand(); a02 = rand(); a12 = rand(); a22 = rand(); b0 = rand(); b1 = rand(); b2 = rand(); delta_a01 = 0; delta_a11 = 0; delta_a21 = 0; delta_a02 = 0; delta_a12 = 0; delta_a22 = 0; delta_b0 = 0; delta_b1 = 0; delta_b2 = 0; l = 1; while 1

u1 = a01 * x0 + a11 * x1 + a21 * x2; u2 = a02 * x0 + a12 * x1 + a22 * x2; y1 = 2 ./ (1 + exp(-u1)) - 1; y2 = 2 ./ (1 + exp(-u2)) - 1; v = b0 * y0 + b1 * y1 + b2 * y2; z = 2 ./ (1 + exp(-v)) - 1;

Page 17 of 25

error = 0;

for i = 1 : 1 : n

if (z(1, i) > 0 && t(1, i) == 1) || (z(1, i) < 0 && t(1, i) == -1) % else

error = error + 1; end end error

temp0 = -(t - z) .* exp(-v) ./ (1 + exp(-v)) .^ 2; temp1 = b1 .* exp(-u1) ./ (1 + exp(-u1)) .^ 2; temp2 = b2 .* exp(-u2) ./ (1 + exp(-u2)) .^ 2;

delta_b0 = miu * delta_b0 + (1 - miu) * beta * sum(-temp0 .* y0); delta_b1 = miu * delta_b1 + (1 - miu) * beta * sum(-temp0 .* y1); delta_b2 = miu * delta_b2 + (1 - miu) * beta * sum(-temp0 .* y2); delta_a01 = miu * delta_a01 + (1 - miu) * beta * sum(-temp0 .* temp1 .* x0);

delta_a11 = miu * delta_a11 + (1 - miu) * beta * sum(-temp0 .* temp1 .* x1);

delta_a21 = miu * delta_a21 + (1 - miu) * beta * sum(-temp0 .* temp1 .* x2);

delta_a02 = miu * delta_a02 + (1 - miu) * beta * sum(-temp0 .* temp2 .* x0);

delta_a12 = m

>>展开全文<<
12@gma联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4 ceshi