当前位置: 首页 > news >正文

个人可以做网站维护吗廊坊视频剪辑培训机构

个人可以做网站维护吗,廊坊视频剪辑培训机构,外贸自主建站平台,阿里云wordpress升级BP(back propagation)神经网络是1986年由Rumelhart和McClelland为首的科学家提出的概念,是一种按照误差逆向传播算法训练的多层前馈神经网络,是应用最广泛的神经网络模型之一 具体数学推导以及原理在本文不做详细介绍,本文将使用MATLAB进行B…

BP(back propagation)神经网络是1986年由Rumelhart和McClelland为首的科学家提出的概念,是一种按照误差逆向传播算法训练的多层前馈神经网络,是应用最广泛的神经网络模型之一

具体数学推导以及原理在本文不做详细介绍,本文将使用MATLAB进行BP神经网络的应用与实践

1 BP神经网络结构

在这里插入图片描述
BP神经网络是一种多层前馈神经网络,其主要特点是:信号是前向传播,误差是后向传播。经典的BP神经网络具有三层网络结构,分别为输入层,隐含层,输出层。输入变量X1,X2,经过BP神经网络训练,可得到需要的预测输出Y。

2 代码结构

第一部分 初始化
使用 clear clc等命令对matlab进行初始化
第二部分 导入数据
加载数据集data.mat,此部分需要替换为自己的数据,该数据集需包含输入的X,需要预测输出的Y,然后通过dividerand函数将训练集和测试集分为7:3,也可调整为8:2。
第三部分 数据归一化
归一化是将样本的特征值转换到同一量纲下把数据映射到[-1, 1]区间内,归一化的作用以及函数的使用可以自行百度
第四部分 构造网络结构
输入层节点数是由输入数据组数决定,隐含层节点数由经验公式可得(2倍输入节点数+1),输出节点输出数据组数决定,然后使用newff进行网络训练,( { ‘logsig’ ‘purelin’ } , ‘trainlm’)此处为输入层激活函数,输出层激活函数,训练方法。
第五部分 测试集预测
使用训练好的神经网络对测试集进行测试,并显示输出相关数据。

3 Tips

1 BP神经网络每次训练结果都不一样,此为神经网络特性,选择效果好的一次网络即可,可使用save net 命令保存网络与load net加载网络命令进行复现
2 使用BP神经网络需要大量的数据训练效果才比较好
3 结果不理想时,可通过调整第四部分代码(调整训练目标,训练次数等参数)来得到较好的结果
4 有不理解的函数部分可通过查询MATLAB官方手册查询,本文不再提供代码解答

4 源代码

%% BP神经网络预测
clear  
clc
close all
warning off;
tic
%% 导入数据
load data.mat
[trainInd,valInd,testInd] = dividerand(size(X,2),0.7,0,0.3);P_train=X(:,trainInd);
T_train=Y(:,trainInd);
P_test=X(:,testInd);
T_test=Y(:,testInd);%% 归一化
% 训练集
[Pn_train,inputps] = mapminmax(P_train,-1,1);
Pn_test = mapminmax('apply',P_test,inputps);
% 测试集
[Tn_train,outputps] = mapminmax(T_train,-1,1);
Tn_test = mapminmax('apply',T_test,outputps);%% 构造网络结构
%创建神经网络
inputnum = 2;     %inputnum  输入层节点数 4维特征
hiddennum = 5;     %hiddennum  隐含层节点数
outputnum = 1;     %outputnum  隐含层节点数
net = newff( minmax(Pn_train) , [hiddennum outputnum] , { 'logsig' 'purelin' } , 'trainlm' ) ;
%设置训练参数
net.trainparam.show = 50 ;
net.trainparam.epochs = 200 ;
net.trainparam.goal = 0.001 ;
net.trainParam.lr = 0.01 ;
net = train( net, Pn_train , Tn_train ) ;%% 测试集预测
TestResults = sim(net,Pn_test);
TestResults = mapminmax('reverse',TestResults,outputps); %反归一化
TestError = TestResults - T_test;
TestMSE = mse(TestError);figure
plot(T_test,'b-');
hold on
plot(TestResults,'r-');
legend('真实值','预测值');
title('测试集预测结果');
grid onfigure
plot(TestError,'r-');
title('测试集误差')
grid on[~,len]=size(T_test);
MAE1=sum(abs(TestError./T_test))/len;
MSE1=TestError*TestError'/len;
RMSE1=MSE1^(1/2);
R = corrcoef(T_test,TestResults);
r = R(1,2);
disp(['........BP神经网络测试集误差计算................'])
disp(['平均绝对误差MAE为:',num2str(MAE1)])
disp(['均方误差为MSE:',num2str(MSE1)])
disp(['均方根误差RMSE为:',num2str(RMSE1)])
disp(['决定系数 R^2为:',num2str(r)])toc
http://www.yayakq.cn/news/979939/

相关文章:

  • 邢台做移动网站费用电脑商城网站模板
  • 网站建设优化服务熊掌号模版网站建设企业
  • 有没有做生鲜配送的网站响应式网站有什么区别
  • 柳江网站建设广告营销是做什么的
  • 网站可信认证在哪里做厦门网络营销推广
  • 做棋牌推广网站违反不免费的网站如何建设
  • 网站建设的必要wordpress干嘛用的
  • 系统开发与网站开发网站全屏轮播怎么做
  • 阿里云网站模板送域名企业站手机网站
  • 滕州做网站哪家好购物网站建设 属于信息系统管理与设计么
  • 酒店做网站的目的室内设计培训机构排名前十
  • 免费的网站推广网上有哪些正规赚钱的平台
  • 网站在线设计广州培训网站建设
  • 中山做网站联系电话河南外贸网站制作
  • 上街郑州网站建设wordpress任意文件删除漏洞
  • 网站后台管理系统怎么登陆策划公司起名
  • 如东网站建设番禺做网站开发
  • 59网站一起做网店女鞋北京软装设计公司有哪些
  • 邯郸市住房和建设官方网站淘宝客怎样做自己的网站推广
  • 网站建设 费用预算wordpress主题lenews
  • 建设公司的网站宁波网站设计公司
  • 网站建设 网络推广做pc端网站用什么框架
  • 期末成绩管理网站开发背景安装wordpress500
  • 长春有什么好的网站制作公司上海百度推广排名
  • 个人网站做电影资源链接犯法吗域名转出过程网站能打开吗
  • 外国网站开放的浏览器合肥教育平台网站建设
  • 教育 高校 网站模板服务器维修
  • 北京网站快速排名优化网站怎么做聚合页面
  • 站点创建成功企业徽章设计
  • 新手如何给自己的网站做优化wordpress安装谷歌分析代码