BP神经网络参数调节 bp神经网络 csdn_bp神经网络matlab实例


一、BP神经网络

1.1 人工神经网络

人工神经网络是受生物神经网络的启发而产生的一类基于统计学习的模型,用于估计或近似那些依赖于大量输入但却未知的规律。


BP神经网络参数调节 bp神经网络 csdn_bp神经网络matlab代码_02


在此人工神经元模型中,每个神经元都从其它神经元上接收输入的信号,并且信号间都通过加权连接进行传输,神经元将这些信号相加后获得神经元的总输入值,然后将总输入值与神经元的阈值进行比较,然后通过“激活函数”处理获得最后的输出,然后作为神经元的输入逐层传递。


BP神经网络参数调节 bp神经网络 csdn_BP神经网络参数调节_03


人工神经网络按照以下三种方式进行分类:


BP神经网络参数调节 bp神经网络 csdn_bp神经网络matlab代码_04

神经网络分类

1.2 BP神经网络

BP神经网络是一种多层前馈的神经网络,通过前馈来计算网络误差然后并通过反向传播更新网络权重,采用了监督学习的方法。传统的BP神经网络模型包含输入层、隐含层和输出层三个部分。


BP神经网络参数调节 bp神经网络 csdn_bp神经网络matlab实例_05

三层神经网络 三层

BP神经网络参数调节 bp神经网络 csdn_bp神经网络matlab代码_06


BP神经网络的学习算法基本包括两个主要方面。一种是传播,分为正向传播与反向传播,正向传播是指在初始参数与输入层进行了数学运算后,将运算后的结果依次传递到隐含层、输出层,每层的神经元之间都是毫无关联的;反向传播是指将正向传播的输出与实际结果进行计算比较,如果误差不满足要求,将其转移回到隐含层。第二种是权值修正,采用梯度下降算法更新每个神经元的网络连接的权值,然后继续开始新的网络训练,BP神经网络实现误差反向传递的核心方法就是梯度下降算法。


BP神经网络参数调节 bp神经网络 csdn_bp神经网络matlab代码_07


二、代码

说明:

  1. DATA矩阵为arma系数矩阵,1-6列为ARMA模型系数,第七列为所数类别(1-正常心电,2-左束支阻滞,3-右束支阻滞,4-室性早搏)
  2. 四个类别分别选取各1700个数据,共计6800个样本,取70%作为训练集。
%% I. 导入数据


三、结果分析

关于评估指标的含义在《基于机器学习的心律失常分类(五)——决策树分类》里已经说过了,这里就直接给出分类结果。

本文数据包括四类不同的心律波形,共计6800个样本心拍数据,随机提取其中的70%(4760个)为训练样本,30%(2040个)为测试样本。在学习训练样本,通过测试样本进行分类验证,分别得到分类模型的混淆矩阵,竖直方向表示预测样本的标签类别,水平方向表示真实样本的标签类别。


BP神经网络参数调节 bp神经网络 csdn_bp神经网络数字识别matlab_08

BP神经网络混淆矩阵

BP神经网络参数调节 bp神经网络 csdn_bp神经网络matlab代码_09

BP神经网络评估指标