Caso de regresión de función de red neuronal RBF (MATLAB)

También soy un novato en redes neuronales. Recientemente he estado aprendiendo algoritmos de redes neuronales y he realizado muchos casos, por lo que comenzaré con la red neuronal RBF más simple. Esta vez mostraré cómo uso la red neuronal RBF para realizar análisis de regresión en funciones .

// learning data
// generate the learning data
clc;
clear;
close all;
Id=400;
x=rand(2,Id);
x=(x-0.5)*2*1.5;
x1=x(1,:);
x2=x(2,:);
F=20+x1.^2-10*cos(2*pi*x1)+x2.^2-10*cos(2*pi*x2);

2. Entrenamiento de redes neuronales RBF

// RBF神经网络训练
// RBF神经网络训练
net=newrb(x,F);//直接调用现成函数

3. Generar datos de prueba

// 产生测试数据
// 产生测试数据
interval=0.1;
[i,j]=meshgrid(-1.5:interval:1.5);
row=size(i);
tx1=i(:);
tx1=tx1';
tx2=j(:);
tx2=tx2';
tx=[tx1;tx2];;

4. Sustitución en el modelo predictivo
Aquí hay algunos 内联代码片.

// 代入预测模型
//代入预测模型
ty=sim(net,tx);
v=reshape(ty,row);
figure
subplot(1,3,2)
mesh(i,j,v)
zlim([0,60]);

5. Dibuje el modelo de función original y calcule el error.

//画出原始函数模型
// 画出原始函数模型
interval=0.1;
[x1, x2]=meshgrid(-1.5:interval:1.5);
F = 20+x1.^2-10*cos(2*pi*x1)+x2.^2-10*cos(2*pi*x2);
subplot(1,3,1)
mesh(x1,x2,F);
zlim([0,60])
%%plot the error
subplot(1,3,3)
mesh(x1,x2,F-v);
zlim([0,60]);

6. Análisis de resultados
resultado del pronóstico
En resumen, se puede ver que el resultado global obtenido a partir de los datos de entrenamiento 400 sigue siendo muy bueno, excepto por el error en las esquinas, los errores son pequeños.

Supongo que te gusta

Origin blog.csdn.net/qq_42955211/article/details/106346390
Recomendado
Clasificación