微信:HuangL1121
QQ号:1224848052
团队:MATLAB代做|MATLAB专业代做|硕士博士代写
地址:北京市-朝阳区-双柳北街18号院
当前位置:首页 > 神经网络 > 基于BP神经网络的高性能股票价格预测系统
项目案例
基于BP神经网络的高性能股票价格预测系统
基于BP神经网络的高性能股票价格预测系统
产品说明:

基于BP神经网络的高性能股票价格预测系统

      BP神经网络的代表者是D.Rumelhart和J.McCelland,“反向传播(backpropagation)”一词的使用出现在1985年后,它的广泛使用是在1986年D.Rumelhart和J.McCelland所著的Parallel Distributed Processing这本书出版以后。BP神经网络是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用梯度下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input)、隐层(hidden layer)和输出层(output layer)。

clc;  
clear;  
%%
fprintf('-BP网络用于模式分类-\n')

% 产生训练样本,每一列为一个样本
fprintf('随机产生训练样本(15组):\n');
P1 = [rand(3,5)+1,rand(3,5)+1,rand(3,5)+2]       %生成随机数作为训练样本
fprintf('期望输出:\n');
T1 = [repmat([1;0;0],1,5),repmat([0;1;0],1,5),repmat([0;0;1],1,5)]


% 产生测试样本,每一列为一个样本
fprintf('随机产生测试样本(15组):\n');
P2 = [rand(3,5),rand(3,5)+1,rand(3,5)+2]       %生成随机数作为测试样本
fprintf('测试样本期望输出:\n');
T2 = [repmat([1;0;0],1,5),repmat([0;1;0],1,5),repmat([0;0;1],1,5)]

%%

xn_train = P1;          % 训练样本
dn_train = T1;          % 训练目标
xn_test = P2;           % 测试样本
dn_test = T2;           % 测试目标


NodeNum = 10;           % 隐层节点数 
TypeNum = 3;            % 输出维数
p1 = xn_train;          % 训练输入
t1 = dn_train;          % 训练输出
Epochs = 1000;          % 训练次数
P = xn_test;            % 测试输入 
T = dn_test;            % 测试输出(真实值)


% 判别函数
TF1 = 'logsig';TF2 = 'purelin';
net = newff(minmax(p1),[NodeNum TypeNum],{TF1 TF2},'trainlm');

net.trainParam.show = 1;            % 训练显示间隔
net.trainParam.lr = 0.3;            % 学习步长 - traingd,traingdm
net.trainParam.mc = 0.95;           % 动量项系数 - traingdm,traingdx
net.trainParam.mem_reduc = 10;      % 分块计算Hessian矩阵(仅对Levenberg-Marquardt算法有效)
net.trainParam.epochs = 1000;       % 最大训练次数
net.trainParam.goal = 1e-8;         % 最小均方误差
net.trainParam.min_grad = 1e-20;    % 最小梯度
net.trainParam.time = inf;          % 最大训练时间

%%
% 训练与测试
fprintf('开始训练......\n');
net = train(net,p1,t1);             % 训练
fprintf('开始测试......\n');
X = sim(net,P);                     % 测试 - 输出为预测值
fprintf('网络的实际输出结果显示:\n');
X = full(compet(X))                 % 竞争输出

%---------------------------------------------------
% 结果统计

fprintf('测试样本正确分类的显示为1,错误为0:\n');
Result = ~sum(abs(X-T2))                % 正确分类显示为1
Percent = sum(Result)/length(Result);   % 正确分类率
fprintf('正确分类率:%f\n',Percent);

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

联系:Hslogic
QQ :1224848052
微信:HuangL1121
邮箱:1224848052@qq.com
网站:http://www.mat7lab.com/

--------------------------------------------------------------------------------------------------------------
matlab coursework代做,matlab assignment代做,matlab留学生代做,fpga毕业设计,


上一篇:matlab代做|fpga代做|完整的LTE通信链路的仿真工程

版权所有: MATLAB代做|MATLAB专业代做|硕士博士代写 Copyright © 2018 All rights reserved.
微信:HuangL1121 QQ:1224848052
地址:北京市-朝阳区-双柳北街18号院

扫一扫,关注我们