资源简介
关于神经网络的案例源代码,希望能对大家有所帮助
代码片段和文件信息
web browser http://www.ilovematlab.cn/thread-60056-1-1.html
%% 清空环境变量
clc
clear
%% 训练数据预测数据提取及归一化
%下载四类语音信号
load data1 c1
load data2 c2
load data3 c3
load data4 c4
%四个特征信号矩阵合成一个矩阵
data(1:500:)=c1(1:500:);
data(501:1000:)=c2(1:500:);
data(1001:1500:)=c3(1:500:);
data(1501:2000:)=c4(1:500:);
%从1到2000间随机排序
k=rand(12000);
[mn]=sort(k);
%输入输出数据
input=data(:2:25);
output1 =data(:1);
%把输出从1维变成4维
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];
end
end
%随机提取1500个样本为训练样本,500个样本为预测样本
input_train=input(n(1:1500):)‘;
output_train=output(n(1:1500):)‘;
input_test=input(n(1501:2000):)‘;
output_test=output(n(1501:2000):)‘;
%输入数据归一化
[inputninputps]=mapminmax(input_train);
%% 网络结构初始化
innum=24;
midnum=25;
outnum=4;
%权值初始化
w1=rands(midnuminnum);
b1=rands(midnum1);
w2=rands(midnumoutnum);
b2=rands(outnum1);
w2_1=w2;w2_2=w2_1;
w1_1=w1;w1_2=w1_1;
b1_1=b1;b1_2=b1_1;
b2_1=b2;b2_2=b2_1;
%学习率
xite=0.1
alfa=0.01;
%% 网络训练
for ii=1:10
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(ii)=E(ii)+sum(abs(e));
%计算权值变化率
dw2=e*Iout;
db2=e‘;
for j=1:1:midnum
S=1/(1+exp(-I(j)));
FI(j)=S*(1-S);
end
for k=1:1:innum
for j=1:1:midnum
dw1(kj)=FI(j)*x(k)*(e(1)*w2(j1)+e(2)*w2(j2)+e(3)*w2(j3)+e(4)*w2(j4));
db1(j)=FI(j)*(e(1)*w2(j1)+e(2)*w2(j2)+e(3)*w2(j3)+e(4)*w2(j4));
end
end
w1=w1_1+xite*dw1‘;
b1=b1_1+xite*db1‘;
w2=w2_1+xite*dw2‘;
b2=b2_1+xite*db2‘;
w1_2=w1_1;w1_1=w1;
w2_2=w2_1;w2_1=w2;
b1_2=b1_1;b1_1=b1;
b2_2=b2_1;b2_1=b2;
end
end
%% 语音特征信号分类
inputn_test=mapminmax(‘apply‘input_testinputps);
for ii=1:1
for i=1:500%1500
%隐含层输出
for j=1:1:midnum
I(j)=inputn_test(:i)‘*w1(j:)‘+b1(j);
Iout(j)=1/(1+exp(-I(j)));
end
fore(:i)=w2‘*Iout‘+b2;
end
end
%% 结果分析
%根据网络输出找出数据属于哪类
for i=1:500
output_fore(i)=find(fore(:i)==max(fore(:i)));
end
%BP网络预测误差
error=output_fore-output1(n(1501:2000))‘;
%画出预测语音种类和实际语音种类的分类图
figure(1)
plot(output_fore‘r‘)
hold on
plot(output1(n(1501:2000))‘‘b‘)
legend(‘预测语音类别‘‘实际语音类别‘)
%画出误差图
figure(2)
plot(error)
title(‘BP网络分类误差‘‘fontsize‘12)
xlabel(‘语音信号‘‘fontsize‘12)
ylabel(‘分类误差‘‘fontsize‘12)
%print -dtiff -r600 1-4
k=zeros(14);
%找出判断错误的分类属于哪一类
for i=1:500
if error(i)~=0
[bc]=max(output_test(:i));
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-04-11 12:48 matlab30个案例程序源码\
目录 0 2014-04-11 12:48 matlab30个案例程序源码\案例1\
目录 0 2014-04-11 12:48 matlab30个案例程序源码\案例10\
文件 3369 2013-09-17 16:25 matlab30个案例程序源码\案例10\chapter10.m
文件 443 2013-09-17 16:25 matlab30个案例程序源码\案例10\class.mat
文件 465 2013-09-17 16:25 matlab30个案例程序源码\案例10\sim.mat
文件 2235 2013-09-17 16:25 matlab30个案例程序源码\案例10\stdlib.m
文件 2775 2013-09-17 16:25 matlab30个案例程序源码\案例10\test.m
目录 0 2014-04-11 12:48 matlab30个案例程序源码\案例11\
文件 232 2013-09-17 16:25 matlab30个案例程序源码\案例11\city_location.mat
文件 217 2013-09-17 16:26 matlab30个案例程序源码\案例11\diff_u.m
文件 247 2013-09-17 16:26 matlab30个案例程序源码\案例11\energy.m
文件 5152 2013-09-17 16:26 matlab30个案例程序源码\案例11\main.m
目录 0 2014-04-11 12:48 matlab30个案例程序源码\案例12\
文件 4134 2013-09-17 16:26 matlab30个案例程序源码\案例12\chapter12.m
文件 20168 2013-09-17 16:26 matlab30个案例程序源码\案例12\chapter12_wine.mat
目录 0 2014-04-11 12:48 matlab30个案例程序源码\案例12\html\
文件 15003 2013-09-17 16:26 matlab30个案例程序源码\案例12\html\chapter12.html
文件 3348 2013-09-17 16:26 matlab30个案例程序源码\案例12\html\chapter12.png
文件 6809 2013-09-17 16:26 matlab30个案例程序源码\案例12\html\chapter12_01.png
文件 10845 2013-09-17 16:26 matlab30个案例程序源码\案例12\html\chapter12_02.png
文件 9026 2013-09-17 16:26 matlab30个案例程序源码\案例12\html\chapter12_03.png
目录 0 2014-04-11 12:48 matlab30个案例程序源码\案例13\
文件 8171 2013-09-17 16:26 matlab30个案例程序源码\案例13\chapter13_GA.m
文件 7762 2013-09-17 16:26 matlab30个案例程序源码\案例13\chapter13_GridSearch.m
文件 10174 2013-09-17 16:26 matlab30个案例程序源码\案例13\chapter13_PSO.m
文件 20168 2013-09-17 16:26 matlab30个案例程序源码\案例13\chapter13_wine.mat
目录 0 2014-04-11 12:48 matlab30个案例程序源码\案例13\html\
文件 28493 2013-09-17 16:26 matlab30个案例程序源码\案例13\html\chapter13.html
文件 3348 2013-09-17 16:26 matlab30个案例程序源码\案例13\html\chapter13.png
文件 6809 2013-09-17 16:26 matlab30个案例程序源码\案例13\html\chapter13_01.png
............此处省略263个文件信息
相关资源
- MATLAB图像与视频处理实用案例详解—
- dace.rar+Kriging+surrogate model
- Model+Predictive Control System Design and Imp
- TIR透镜设计过程
- 数字图像处理课程设计matlab源码及课
- 大写 英文 字符识别
- Matlab2019a官方指导文件
- 滤波反投影matlab仿真程序
- 《信号与系统》计算机练习 利用MAT
- 数理统计与Matlab讲义
-
matlab/simuli
nk经典教材-姚俊《Simuli - 基于模板匹配的人脸检测实现-MATLAB
- matlab时频分析工具箱最新版
- 《基于matlab7.0的统计信息处理》.pdf
- surf算法-matlab版
- 红外运动目标识别系统的Matlab实现
- BNT_SLP v1.5
- 基于人工神经网络的汽车牌照识别M
- zw_PID控制Matlab仿真.zip
- MATLAB初学者教程 MATLAB编程-菜鸟入门清
- 基于MATLAB的车牌自动识别系统源码
- SVPWM原理及MATLAB仿真指导
- 亚像素棋盘格角点获取
- 官方matlab中文帮助文档.pdf
- Antenna Theory Analysis and Design(源码)
- 基于MATLAB的超声波声场仿真软件
- matlab statistics learning toolbox
- 胡广书的现代信号处理Word版以及Mat
- Matlab 2015b神经网络通用函数
- 系统辨识理论及Matlab仿真-刘金琨 [程
评论
共有 条评论