BP神经网络的数据分类实验

上传人:沈*** 文档编号:134237720 上传时间:2022-08-12 格式:DOC 页数:9 大小:677KB
返回 下载 相关 举报
BP神经网络的数据分类实验_第1页
第1页 / 共9页
BP神经网络的数据分类实验_第2页
第2页 / 共9页
BP神经网络的数据分类实验_第3页
第3页 / 共9页
点击查看更多>>
资源描述
文档供参考,可复制、编制,期待您的好评与关注! 智能信息处理实验报告二系别: 电子工程 班级: 智能13001班 学号: 13160700131 姓名: 郭桂伶 日期: 2016/4.1 指导教师: 赵秀洁 一、实验内容: 1BP神经网络的数据分类二实验目的:1通过BP神经网络的使用,熟悉BP神经网络的基本概念和工作原理。2编程建立BP神经网络模型,实现对BP模型的训练,做到日后熟练使用。三实验分析:1 语音特征信号识别 语音识别研究领域中的一个重要方面,一般采用模式匹配的原理解决。语音识别的运算过程为:首先,待识别语音转化为电信号后输入识别系统,经过预处理后用数学方法提取语音特征信号,提取出的语音特征信号可以看成该段语音的模式。然后将该段语音模型同已知参考模式相比较,获得最佳匹配的参考模式为该段语音的识别结果。语音识别流程如图1-2所示。 实验选取了民歌、古筝、摇滚和流行四类不同音乐,用BP神经网络实现对这四类音乐的有效分类。每段音乐都用倒谱系数法提取500组24维语音特征信号,提取出的语音特征信号如下图2、模型建立 基于BP神经网络的语音特征信号分类算法建模包括BP神经网络构建、BP神经网络训练和BP神经网络分类三步,算法流程如图1-4所示。 BP神经网络构建根据系统输入输出数据特点确定BP神经网络的结构,由于语音特征输入信号有24维,待分类的语音信号共有4类,所以BP神经网络的结构为24254,即输入层有24个节点,隐含层有25个节点,输出层有4个节点。 BP神经网络训练用训练数据训练BP神经网络。共有2000组语音特征信号,从中随机选择1500组数据作为训练数据训练网络,500组数据作为测试数据测试网络分类能力。 BP神经网络分类用训练好的神经网络对测试数据所属语音类别进行分类。3、BP神经网络训练过程 1)网络初始化。确定输入层、隐含层和输出层的节点数n、l、m,初始化权值、和隐含层阈值a和输出层阈值b,给定学习速率和神经元的激励函数 。 2)隐含层输出计算 3)输出层输出计算 4)误差计算 5)权值更新 6)阈值更新。根据网络预测误差e 更新网络节点阈值a,b。 7)判断算法迭代是否结束,若没有结束,返回步骤 2。 四、Matlab相关函数1. 归一化方法及Matlab函数 数据归一化方法是神经网络预测前对数据常做的一种处理方法。数据归一化处理把所有数据都转化为0,1之间的数,其目的是取消各维数据间数量级差别,避免因为输入输出数据数量级差别较大而造成网络预测误差较大。数据归一化的方法主要有以下两种。 1)最大最小法。函数形式如下: 2)平均数方差法,函数形式如下: 实验采用第一种数据归一化方法,归一化函数采用MATLAB自带函数mapminmax,该函数有多种形式,常用的方法如下。 input_train,output_train是训练输入、输出原始数据,inputn,outputn是归一化后的数据,inputps,outputps为数据归一化后得到的结构体,里面包含了数据最大值、最小值和平均值等信息,可用于测试数据归一化和反归一化。测试数据归一化和反归一化程序如下。 input_test是预测输入数据,inputn_test是归一化后的预测数据,apply表示根据inputps的值对input_test进行归一化。an是网络预测结果,outputps是训练输出数据归一化得到的结构体,BPoutput是反归一化之后的网络预测输出,reverse表示对数据进行反归一化。2. 数据选择和归一化 首先根据倒谱系数法提取四类音乐语音特征信号,不同的语音信号分别用1,2,3,4标识,提取出的信号分别存储于data1.mat,data2.mat,data3.mat,data4.mat数据库文件中,每组数据为25维,第1维为类别标识,后24维为语音特征信号。把四类语音特征信号合为一组,从中随机选取1500组数据作为训练数据,500组数据作为测试数据,并对训练数据进行归一化处理。 根据语音类别标识设定每组语音信号的期望输出值: 标识类为1时,期望输出向量为1 0 0 0; 标识类为2时,期望输出向量为0 1 0 0; 标识类为3时,期望输出向量为0 0 1 0; 标识类为4时,期望输出向量为0 0 0 1。五、Matlab部分代码如下: 1.input=data(:,2:25);output1 =data(:,1); for i=1:2000 switch output1(i) case 1 output(i,:)=1 0 0 0; case 2 output(i,:)=0 1 0 0; case 3 output(i,:)=0 0 1 0; case 4 output(i,:)=0 0 0 1; endend 2. for ii=1:20 E(ii)=0; %训练误差 for i=1:1:1500 x=inputn(:,i); %选择本次训练数据 for j=1:1:midnum %隐含层输出 I(j)=inputn(:,i)*w1(j,:)+b1(j); Iout(j)=1/(1+exp(-I(j); end yn=w2 *Iout +b2; %输出层输出 e=output_train(:,i)-yn; e=output_train(:,i)-yn; %填入对应的语句完成误差的预测 E(ii)= E(ii)+sum(abs(e); dw2=e*Iout; %计算w2,b2调整量 db2=e ; for j=1:1:midnum %计算w1,b1调整量 S=1/(1+exp(-I(j); FI(j)=S*(1-S); end for k=1:1:innum for j=1:1:midnum dw1(k,j)=FI(j)*x(k)*(e(1)*w2(j,1)+e(2)*w2(j,2)+e(3)*w2(j,3)+e(4)*w2(j,4); db1(j)=FI(j)*(e(1)*w2(j,1)+e(2)*w2(j,2)+e(3)*w2(j,3)+e(4)*w2(j,4); end end w1=w1_1+xite*dw1 ; %权值阈值更新 b1=b1_1+xite*db1 ; w2=w2_1+xite*dw2 ; b2=b2_1+xite*db2 ; w1_1=w1; %结果保存 w2_1=w2; b1_1=b1; b2_1=b2; endend六、结果如下 对程序稍作修改,分别令ii=1:15和ii=1:20,和ii=1:10做对比。1.BP预测语音类别与实际类别ii=1:10此处粘贴运行结果的图片ii=1:15此处粘贴运行结果的图片ii=1:20此处粘贴运行结果的图片2. BP网络分类误差ii=1:10此处粘贴运行结果的图片ii=1:15此处粘贴运行结果的图片ii=1:20此处粘贴运行结果的图片3. BP网络分类的正确率ii=1:10此处粘贴运行结果ii=1:15此处粘贴运行结果ii=1:20此处粘贴运行结果七、实验感想9 / 9
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!