导航:首页 > 编程大全 > matlab神经网络预测模型

matlab神经网络预测模型

发布时间:2024-04-12 03:27:31

Ⅰ matlab 神经网络模型 用一组数据预测另一组

matlab 神经网中纤络模型是可以 用一组数据预测另一组的。其预测过程是笑棚,先训练,后预测。
由于没卖升仿有具体的数据,无法对其操作说明。

Ⅱ 如何使用MATLAB建立GM(1,n)模型,用于波动数据预测

从图形结果来看铅穗,伏激汪用GM(1,1)灰色模型进行波动数据预测,误差偏大,其预测性是不可靠。建议采用BP神经网络来预测,即通过已知5个数据训练,缺仔来预测10个数据 。其方法过程:

1、导入数据

2、产生训练集和测试集

3、数据归一化处理

4、创建/训练BP神经网络及仿真测试

5、性能评价(相对误差,决定系数,极差)

6、绘图

按照上述方法进行编程,可以得到如下结果。

Ⅲ 求预测一组数据的bp神经网络模型的matlab代码

用matlab求预测一组数据的bp神经网络模型,可以分
1、给定已经数据,作为一个原始序列;
2、设定自回归阶数,一般2~3,太高不一定好;
3、设定预测某一时间段
4、设定预测步数
5、用BP自定义函数进行预测
6、根据预测值,用plot函数绘制预测数据走势图
其主要实现代码如下:
clc
% x为原始序列(行向量)
x=[208.72 205.69 231.5 242.78 235.64 218.41];
%x=[101.4 101.4 101.9 102.4 101.9 102.9];
%x=[140 137 112 125 213 437.43];

t=1:length(x);
% 自回归阶数
lag=3;
%预测某一时间段
t1=t(end)+1:t(end)+5;
%预测步数为fn
fn=length(t1);
[f_out,iinput]=BP(x,lag,fn);
P=vpa(f_out,5);
A=[t1' P'];
disp('预测值')
disp(A)
% 画出预测图
figure(1),plot(t,iinput,'bo-'),hold on
plot(t(end):t1(end),[iinput(end),f_out],'rp-'),grid on
title('BP神经网络预测某地铁线路客流量')
xlabel('月号'),ylabel('客流量(百万)');
运行结果:

Ⅳ 如何利用matlab进行神经网络预测

matlab 带有神经网络工具箱,可直接调用,建议找本书看看,或者MATLAB论坛找例子。回
核心调用语句如下:答
%数据输入

%选连样本输入输出数据归一化
[inputn,inputps]=mapminmax(input_train);
[outputn,outputps]=mapminmax(output_train);
%% BP网络训练
% %初始化网络结构
net=newff(inputn,outputn,[8 8]);
net.trainParam.epochs=100;
net.trainParam.lr=0.01;
net.trainParam.goal=0.01;
%网络训练
net=train(net,inputn,outputn);
%% BP网络预测
%预测数据归一化
inputn_test=mapminmax('apply',input_test,inputps);
%网络预测输出
an=sim(net,inputn_test);
%网络输出反归一化
BPoutput=mapminmax('reverse',an,outputps);
%% 结果分析

Ⅳ 用Matlab编程BP神经网络进行预测

原理复就是:建立网络-数据归一化-训练制-预测-数据反归一化。附件是电力负荷预测的例子,可以参考。


BP(Back Propagation)神经网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input)、隐层(hidden layer)和输出层(output layer)。

Ⅵ matlab中用RBF神经网络做预测的代码怎么写

clc;

clearall;

closeall;

%%----

c_1=[00];

c_2=[11];

c_3=[01];

c_4=[10];

n_L1=20;%numberoflabel1

n_L2=20;%numberoflabel2

A=zeros(n_L1*2,3);

A(:,3)=1;

B=zeros(n_L2*2,3);

B(:,3)=0;

%createrandompoints

fori=1:n_L1

A(i,1:2)=c_1+rand(1,2)/2;

A(i+n_L1,1:2)=c_2+rand(1,2)/2;

end

fori=1:n_L2

B(i,1:2)=c_3+rand(1,2)/2;

B(i+n_L2,1:2)=c_4+rand(1,2)/2;

end

%showpoints

scatter(A(:,1),A(:,2),[],'r');

holdon

scatter(B(:,1),B(:,2),[],'g');

X=[A;B];

data=X(:,1:2);

label=X(:,3);

%%Usingkmeanstofindcintervector

n_center_vec=10;

rng(1);

[idx,C]=kmeans(data,n_center_vec);

holdon

scatter(C(:,1),C(:,2),'b','LineWidth',2);

%%Calulatesigma

n_data=size(X,1);

%calculateK

K=zeros(n_center_vec,1);

fori=1:n_center_vec

K(i)=numel(find(idx==i));

end

%

%thencalucatesigma

sigma=zeros(n_center_vec,1);

fori=1:n_center_vec

[n,d]=knnsearch(data,C(i,:),'k',K(i));

L2=(bsxfun(@minus,data(n,:),C(i,:)).^2);

L2=sum(L2(:));

sigma(i)=sqrt(1/K(i)*L2);

end

%%Calutateweights

%kernelmatrix

k_mat=zeros(n_data,n_center_vec);

fori=1:n_center_vec

r=bsxfun(@minus,data,C(i,:)).^2;

r=sum(r,2);

k_mat(:,i)=exp((-r.^2)/(2*sigma(i)^2));

end

W=pinv(k_mat'*k_mat)*k_mat'*label;

y=k_mat*W;

%y(y>=0.5)=1;

%y(y<0.5)=0;

%%

[W1,sigma1,C1]=RBF_training(data,label,10);

y1=RBF_predict(data,W,sigma,C1);

[W2,sigma2,C2]=lazyRBF_training(data,label,2);

y2=RBF_predict(data,W2,sigma2,C2);

(6)matlab神经网络预测模型扩展阅读

matlab的特点

1、具有完备的图形处理功能,实现计算结果和编程的可视化;

2、友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;

3、功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。

Ⅶ matlab怎么利用神经网络做预测

利用matlab做神经网络预测,可按下列步骤进行:

1、提供原始数据

2、训练数据预测数据提取及归一化

3、BP网络训练

4、BP网络预测

5、结果分析

Ⅷ (急)如何用MATLAB建立ANN(人工神经网络模型)

问题描述:
有两个自变量,一个因变量,10个样本(这里就取少一点好了)。用实际问题来表述,假设一个股票,开盘价 x1,收盘价 x2,第二天的股价 y。 那用神经网络来预测的目的是,根据10天的开盘价和收盘价,来预测未来股价。显然,这里的y与x1和x2相关,我们要训练一个网络(net)来让他尽可能的预测一个y

MATLAB程序

clc
clear
load data input output
%input就是包含了x1和x2 10天数据的矩阵,说白了就是20个数的矩阵。output是y的一个向量,%10个数
%需要自己找一些数据赋值给input和ouput

P=input;
T=output;
%这里P和T必须是 x1 x2和y的行向量组合。对于P,x1是行向量,x2是行向量。P=[x1;x2]; T=y. y是行向量

Epochs=5000;
NodeNum=12; TypeNum=1;
TF1='logsig'; TF2='purelin';
%设置一些初始参数,Epochs是迭代上限次数,NodeNum是第一个隐藏层的神经元个数,%TypeNum是几层。TF1和TF2分别定义了几个传递函数。

net=newff(minmax(P),[NodeNum TypeNum],{TF1 TF2},'trainlm');
%建立一个神经网络,训练输入和输出数据都有了,设置隐藏层的个数。

net.trainParam.epochs=Epochs;
net.trainParam.goal=1e-4;
net.trainParam.min_grad=1e-4;
net.trainParam.show=200;
net.trainParam.time=inf;
%设置一些训练时的参数,第一个是每次训练的最大迭代次数;

net=train(net,P,T);
%开始网络训练

P_test=P;
B_test=T;
%就用原始的数据进行测试

X=sim(net,P_test);
%测试

Erro=abs(B_test-X);
sigma=std(Erro);
%计算出预测值和实际值的误差,求出方差。将来方差可以用来随机调整

Ⅸ 求一个bp神经网络预测模型的MATLAB程序

BP神经网络预测的步骤:

1、输入和输出数据。

2、创建网络。fitnet()

3、划分训练,测试和验证数据的比例。net.divideParam.trainRatio;net.divideParam.valRatio;net.divideParam.testRatio

4、训练网络。train()

5、根据图表判断拟合好坏。ploterrcorr();parcorr();plotresponse()

6、预测往后数据。net()

7、画出预测图。plot()

执行下列命令

BP_prediction

得到结果:

[ 2016, 14749.003045557066798210144042969]

[ 2017, 15092.847215188667178153991699219]

[ 2018, 15382.150005970150232315063476562]

[ 2019, 15398.85769711434841156005859375]

[ 2020, 15491.935150090605020523071289062]

阅读全文

与matlab神经网络预测模型相关的资料

热点内容
win10默认头像下载 浏览:216
dnf2017代码大全 浏览:219
编程项目经理证书怎么考 浏览:570
律师咨询什么app 浏览:863
ps导入ai什么格式文件 浏览:255
手机升级系统的利弊 浏览:411
如何判断两列是否相同的数据 浏览:25
安卓系统微信文件夹 浏览:19
xp打开word找不到文件 浏览:488
文件名占容量 浏览:882
环型槽如何编程 浏览:290
excel怎么分列每一列的第二行数据 浏览:240
美味餐厅13安卓版完整 浏览:708
请先卸载本地app什么意思 浏览:639
广东有什么土建材料网站 浏览:613
安卓手机究竟应该给app什么权限 浏览:137
怎样给特定文件夹加密码 浏览:168
win10卡在85 浏览:421
excel文件怎么无法打开 浏览:970
java文件路径截取 浏览:271

友情链接