精华内容
下载资源
问答
  • MATLAB神经网络工具箱(参数注释)

    万次阅读 2018-07-28 19:00:05
    前几天简单操作了第一章的音频数据分类神经网络代码,然后发现MATLAB有自带的神经网络的GUI 7.28 分析神经网络GUI参数,根据之前的数据设定参数构建神经网络 之前运用的数据库是做音频分类,在这里就选择预测...

    前几天简单操作了第一章的音频数据分类的神经网络代码,然后发现MATLAB有自带的神经网络的GUI

    7.28
    分析神经网络GUI参数,根据之前的数据设定参数构建神经网络
    之前运用的数据库是做音频分类,在这里就选择预测神经网络GUI
    这里写图片描述
    这里我用的是解决数据拟合问题的神经网络,用了和代码不同的算法来估计性能。

    NEXT,选择数据库,因为Input数据库的数据是2000x2矩阵,output为1x2000矩阵,需要对Input矩阵作转置,这里直接选用代码运行留下的_train矩阵
    这里写图片描述
    next,因此只有1900组数据可以使用,拿1500组数据做训练,这估计也是GUI界面的BUG,不能随意设置比例,只能5%浮动,第一个是训练数据的比例,我设置成75%,1425组,第二个是神经网络泛化能力测试的数据,在泛化能力停止改进时,就停止神经网络的训练,第三个是测试数据组,用来检测神经网络的性能
    这里写图片描述
    NEXT,设置神经网络隐藏神经元个数,默认是10个,好像只能设置一层的隐藏神经元。
    这里写图片描述
    NEXT,左上角选择训练算法,有三种,第一种占用内存大,第二种运行时间长,第三种占用内存小,数据泛化后停止训练。左上角MSE(Mean Square Error)平均平方误差,越小,说明预测值和设定值越接近,P(回归值)表示预测值和设定值的关系度,越大,关系越密切

    这里写图片描述

    train
    这里写图片描述

    展开全文
  • 因为最近项目要使用BP神经网络来做一些飞行预测,所以今天从图书馆借来了《Matlab神经网络30个案例分析》,这本书很不错推荐给大家,然后研究了下代码,使用语音分类这个例子做了源码实现与工具箱实现,源码实现过程...

        因为最近项目要使用BP神经网络来做一些飞行预测,所以今天从图书馆借来了《Matlab神经网络30个案例分析》,这本书很不错推荐给大家,然后研究了下代码,使用语音分类这个例子做了源码实现与工具箱实现,源码实现过程中进行了小小的改变,工具箱用起来非常方便,但是手写一下BP神经网络的前向后向对于理解BP神经网络还是有极大帮助的,这里把这两种实现方式贴出来并带有结果截图。显然BP神经网络对于这种非线性拟合场合效果是非常好的。

         (1) 源码实现 

    %% 清空环境变量
    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 = rands(1,2000);
    [m,n] = sort(k);
    
    %%提取输入、输出数据
    input= data(:,2:25);
    output1= data(:,1);
    
    %将输出数据由一维变为四维
    for i = 1: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),:)';
    
    %归一化
    [inputn,inputps] = mapminmax(input_train);
    
    %变量、权值初始化
    innum = 24;
    midnum = 25;
    outnum = 4;
    
    w1 = rands(midnum,innum);
    b1 = rands(midnum,1);
    w2 = rands(outnum,midnum);
    b2 = rands(outnum,1);
    
    w1_1 = w1;
    b1_1 = b1;
    w2_1 = w2;
    b2_1 = b2;
    
    xite = 0.1
    
    %%网络训练
    for ii=1:10
    	E(ii)=0;
    	for i = 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:innum
    			for j = 1:midnum
    				dw1(j,k) = FI(j)*x(k)*(w2(:,j)'*e);
    				db1(j) = FI(j)*(w2(:,j)'*e);
    			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;
    		b1_1 = b1;
    		w2_1 = w2;
    		b2_1 = b2;
    	end
    end
    
    %%语音信号分类
    inputn_test = mapminmax('apply',input_test,inputps);
    
    for i=1:1:500
    	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
    
    %%计算误差
    for i =1:1:500
    	output_fore(i) = find(fore(:,i) == max(fore(:,i)));
    end
    	
    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(1,4);  
    %找出判断错误的分类属于哪一类
    for i=1:1:500
    	if error(i)~=0
    		[b,c]=max(output_test(:,i));
    		switch c
    			case 1 
                    k(1) = k(1) +1;
    			case 2 
                    k(2) = k(2) +1;
    			case 3
                    k(3) = k(3) +1;
    			case 4
                    k(4) = k(4) +1;
    		end
    	end
    end
    				
    %找出每类的个体和
    kk=zeros(1,4);
    for i=1:500
        [b,c]=max(output_test(:,i));
        switch c
            case 1
                kk(1)=kk(1)+1;
            case 2
                kk(2)=kk(2)+1;
            case 3
                kk(3)=kk(3)+1;
            case 4
                kk(4)=kk(4)+1;
        end
    end
    radio = (kk-k)./kk
    			


      (2) 工具箱实现

      

    %清空环境变量
    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,:);
    
    input = data(:,2:25);
    output1 = data(:,1);
    
    k = rands(1,2000);
    [m,n] = sort(k);
    
    input_train = input(n(1:1500),:)';
    output_train = output1(n(1:1500),:)';
    input_test = input(n(1501:2000),:)';
    output_test = output1(n(1501:2000),:)';
    
    [inputn,inputps] = mapminmax(input_train);
    [outputn,outputps] = mapminmax(output_train);
    
    %BP神经网络构建
    net = newff(inputn,outputn,25);
    
    %网络参数配置
    net.trainParam.epochs = 100;
    net.trainParam.lr = 0.1;
    net.trainParam.goal = 0.00004;
    
    %BP神经网络训练
    net = train(net,inputn,outputn);
    
    %预测数据归一化
    inputn_test = mapminmax('apply',input_test,inputps);
    
    %BP神经网络预测输出
    an = sim(net,inputn_test);
    
    %输出结果反归一化
    BPoutput = mapminmax('reverse',an,outputps);
    
    %网络预测结果图形
    figure(1)
    plot(BPoutput,':og');
    hold on
    plot(output_test,'-*');
    legend('预测输出','期望输出')
    title('BP网络预测输出','fontsize',12)
    ylabel('函数输出','fontsize',12)
    xlabel('样本','fontsize',12)
    %预测误差
    error = BPoutput - output_test;
    figure(2)
    plot(error,'-*')
    title('BP网络预测误差','fontsize',12)
    ylabel('误差','fontsize',12)
    xlabel('样本','fontsize',12)
    figure(3)
    plot((output_test-BPoutput)./BPoutput,'-*');
    title('神经网络预测误差百分比')
    errorsum = sum(abs(error))
    
    

    展开全文
  • 机器学习笔记-02(神经网络工具箱的使用) 在Matlab中自带有**人工神经网络工具包(NEURAL NETWORK TOOLBOX)**主要为以下四种: 聚类:利用自组织映射解决聚类问题(SOM); 输入输出和曲线拟合:双层前馈网络解决...

    机器学习笔记-02(神经网络工具箱的使用)

    在Matlab中自带有**人工神经网络工具包(NEURAL NETWORK TOOLBOX)**主要为以下四种:
    在这里插入图片描述

    • 聚类:利用自组织映射解决聚类问题(SOM);
    • 输入输出和曲线拟合:用双层前馈网络解决拟合问题(nfttool);
    • 模式识别与分类:利用双层前馈网络解决模式识别问题(nprtool);
    • 动态时间序列:利用动态时间网络求解非线性时间序列问题(ntstool);

    首先在命令行窗口输入nnstart(或在菜单栏中点击APP→机器学习和深度学习→任意点击Neural Net开头的工具包)将会出现如下图所示的界面:
    在这里插入图片描述
    这里我选择了点击Fitting app(拟合工具),然后进入下图所示的界面,点击箭头指的…位置可以选择自己下载的数据集,但是我并没有下载所以选择了自带的“simple fitting problem”,这个数据集可以用来演示如何训练神经网络来估计两组数据之间的关系。
    点击下方“Load Example Data Set”就可将系统自带的数据集导入到要训练的神经网络中。
    在这里插入图片描述
    “函数拟合是在一组输入上训练神经网络以产生一组相关的目标输出的过程。一旦神经网络对数据进行了拟合,它就形成了输入输出关系的泛化,可以用来为没有训练过的输入生成输出。”
    在这里插入图片描述
    单击“NEXT”进入下一部分,这里可以看到一般来说默认训练、验证和测试的样本比例,为70:15:15。
    在这里插入图片描述
    单击“NEXT”开始建立神经网络结构图。本神经网络共3层,分别为输入层、输出层和隐含层,其中隐含层的神经元数目可以在途中修改。

    在这里插入图片描述
    确定好神经网络结构后,单击“Train”开始训练神经网络:
    在这里插入图片描述
    一段时间后出现以下界面说明神经网络已经训练完成,在‘Plots’选项内可以选择需要看到的图形信息,其中:

    • “Performance”表示的是性能;
    • “Training State”表示的是训练状态;
    • “Error Histogram”表示误差分布
    • “Regression”表示回归;
    • “Fit”表示拟合;
      在这里插入图片描述
      其中这几个图怎么看还需要研究一下。

    写完刚好看到这个写的好好,向他看齐!!(开启套娃模式,码住慢慢研究)
    MATLAB快速搭建一个神经网络以及神经网络工具箱的使用

    展开全文
  • 整个文章分为三个部分,第一部分简单介绍MATLAB深度学习网络的相关函数,第二部分生成测试的数据,第三部分对神经网络进行训练和测试。1. MATLAB中深度学习相关函数在此案例中,我们会运用如下函数1) ...

    本篇文章利用深度学习网络区分椭圆和圆形图案。我们利用MATLAB中的深度学习工具箱生产卷积网络。整个文章分为三个部分,第一部分简单介绍MATLAB深度学习网络的相关函数,第二部分生成测试用的数据,第三部分对神经网络进行训练和测试。

    1. MATLAB中深度学习相关函数

    在此案例中,我们会运用如下函数

    1) imageInputLayer

    此层主要是对输入的图片尺寸进行定义,例如:

    Layer = imageInputLayer([28 28 3]);

    说明这个图像是RGB的28*28像素的。

    2) convolution2dLayer

    此层定义了卷积核的操作。如下图所示:

    b07ae15d28d3f9faae02307fecb152db.png

    layer = convolution2dLayer(11,96,'Stride',4,'Padding',1) 定义了一个96个大小为[11 11]的卷积核,运行的步伐为[4, 4],大小为1的Padding。

    3) batchNormalizationLayer

    对小批量(mini-batch)的训练集进行归一化处理。一般在卷积层和激活函数之间加入该层去降低网络对初始化的敏感性。

    4) reluLayer

    该层定义了激活函数ReLU函数,其定义如下:

    0598b2bed6a42c71451807c9a096e975.png

    5) maxPooling2dLayer

    该层定了池化层,利用求取最大值的方式。其中poolSize是池化层矩阵的大小。

    maxPooling2dLayer(2,'Stride',3) 生成了一个大小为[2 2]池化层,其运行步伐为[3 3]。

    6) fullyConnectedLayer

    该层定了全连接的神经网络。其中outputSize是该全连接网络的输出层,无需定义输入层。

    7) softmaxLayer

    该层定义了Softmax函数,详细见《在MATLAB中利用神经网络进行分类》。

    8) classificationLayer

    该层计算了Cross Entropy的成本函数的值。其定义为:

    064a5775ef1cce40adbdbfaa3d8226da.png

    其中y为Softmax的输出值。

    9) 神经网络的架构为

    362474c4bf854846c9c292111659b432.png

    2. 生成训练和测试数据

    利用MATLAB函数生成多个椭圆和圆形,然后标定这些图形进行训练,其MATLAB函数为:

    c65e3bd8d548754416d0f3a9035b2e97.png
    68686c2e6652fc295fa0b56a2243ca28.png
    ffc6ed5b1da7c6c55030bfb25f84c399.png
    c9922cd93d917c8bccb499b3a53f764d.png

    3. 神经网络的训练和校核

    由MATLAB生成了1000个椭圆和圆的图形,下面就用神经网络来训练识别这些图形。

    70028b223705d60ed81c64fdfd47d380.png
    1e97906cbdb67e78c38d944757481e41.png
    5e6d4505ad553e2600df19ae3838f4c6.png
    展开全文
  • matlab神经网络30个案例分析

    千次下载 热门讨论 2011-06-01 20:06:07
    为了便于使用MATLAB编程的新用户,快速地利用神经网络解决实际问题,MATLAB提供了一个基于神经网络工具箱的图形用户界面。考虑到图形用户界面带来的方便和神经网络在数据拟合、模式识别、聚类各个领域的应用,MATLAB...
  • 采用Matlab神经网络工具箱能够方便地实现BP网络模型的创建、训练及仿真,可以大大减少建模和预测的时间,具有其他方法无可比拟的优势。 基于BP神经网络的电动小巴需求预测.pdf 三、...
  • 第 3 章 MATLAB 函数与神经网络工具箱( 教学视频:62 分钟)/45 3.1 MATLAB 常用命令/45 3.2 矩阵生成和基本运算/52 3.2.1 zeros 生成全零矩阵/52 3.2.2 ones 生成全 1 矩阵/53 3.2.3 magic 生成魔方矩阵/53 3.2.4 ...
  • 第24章神经网络工具箱函数分析与应用 24.1权值和阈值初始化函数 24.2训练和自适应调整函数 第25章自组织竞争网络算法分析与应用 25.1自组织竞争网络结构 25.2自组织竞争网络学习规则 25.2.1Kohonen权值学习...
  • 采用Matlab神经网络工具箱能够方便地实现BP网络模型的创建、训练及仿真,可以大大减少建模和预测的时间,具有其他方法无可比拟的优势。 基于BP神经网络的电动小巴需求预测.pdf 三、...
  • GUI设计神经网络

    2018-11-16 12:36:35
    对于他们来说,很难迅速地达到一个MATLAB程序开发者的水平,因此仅仅利用神经网络工具箱的函数接口,很难让大部分用户都能方便快捷地在学习、工作中有效利用神经网络。 MATLAB提供了图像化接口: 神经网络工具...
  • 采用Matlab神经网络工具箱能够方便地实现BP网络模型的创建、训练及仿真,可以大大减少建模和预测的时间,具有其他方法无可比拟的优势。 基于BP神经网络的电动小巴需求预测.pdf 三、...
  • 摘要:利用MATLAB工具箱,以平均气温、日照时数、平均风速为输入变量,建立了新疆石河子地区棉花耗水量的RBF人工神经网络预测系统,通过2008年实测数据的检验表明,此预测系统网络模型的绝对误差最大为0.0967mm/d、...
  • 摘要:利用MATLAB工具箱,以平均气温、日照时数、平均风速为输入变量,建立了新疆石河子地区棉花耗水量的RBF人工神经网络预测系统,通过2008年实测数据的检验表明,此预测系统网络模型的绝对误差最大为0.0967mm/d、...
  • 随机森林工具箱

    2018-12-19 16:47:07
    这个是randomforest的MATLAB工具箱。然后《《MATLAB 神经网络43个案例分析》测试随机森林分类有效。 工具箱的使用是的科研进展的速度加快。自己只需要在此基础上修改,得到你想要的实验的结果
  • 用MATLAB模式识别工具箱(函数)来对某些指标(如空气质量、水质量、个人业绩等)进行分类、评估、预测,分为三步: 数据准备训练和评估预测 下面我来一步一步讲解,先谈数据的准备: 确保输入数据(包括训练...
  • 用MATLAB模式识别工具箱(函数)来对某些指标(如空气质量、水质量、个人业绩等)进行分类、评估、预测,分为三步: 数据准备训练和评估预测 下面我来一步一步讲解,先谈数据的准备: 确保输入数据(包括训练...
  • 用MATLAB模式识别工具箱(函数)来对某些指标(如空气质量、水质量、个人业绩等)进行分类、评估、预测,分为三步: 数据准备训练和评估预测 下面我来一步一步讲解,先谈数据的准备: 确保输入数据(包括训练...
  • 用MATLAB模式识别工具箱(函数)来对某些指标(如空气质量、水质量、个人业绩等)进行分类、评估、预测,分为三步: 数据准备训练和评估预测 下面我来一步一步讲解,先谈数据的准备: 确保输入数据(包括训练...
  • MATLAB神经网络工具箱 MATLAB粒子群PSO工具箱 matlab编写的遗传算法,采用二进制编码,有说明文档 MATLAB计算粒子速度分布 源程序代码 matlab遗传算法实现车间设备布局界面系统 MATLAB遗传算法程序 MA的辅助工具,...
  • 神经网络小结

    2019-09-28 19:45:06
    用MATLAB模式识别工具箱(函数)来对某些指标(如空气质量、水质量、个人业绩等)进行分类、评估、预测,分为三步: 1. 数据准备 (1)确保输入数据(包括训练以及将来要预测的数据)在比较接近的范围里(归一...
  • 在此基础上,运用MATLAB中的工具箱建立BP神经网络模型,把已知沉积相的测井曲线特征作为样本进行训练学习,并将提取的测井曲线特征进行分类识别,从而确定地层的沉积相。应用表明,BP神经网络能够快速完成沉积相识别,可靠...
  • Matlab2017b中增加了神经网络工具箱Neural Network Toolbox,许多深度学习网络一两个命令就可以实现,大大简化了程序实现工作。 1. 使用trainNetwork训练CNN并分类 %exam1.m load digitTrainSet; %创建CNN网络 ...
  • 4 设菲尔德大学的MATLAB遗传算法工具箱(王辉) Matlab 遗传算法(Genetic Algorithm)优化工具箱是基于基本操作及终止条件、二进制和十进制相互转换等操作的综合函数库。其实现步骤包括:通过输入及输出函数求出遗传...
  • Milk是Python的一个机器学习工具箱,其重点是提供监督分类法与几种有效的分类分析:SVMs(基于libsvm),K-NN,随机森林经济和决策树。它还可以进行特征选择。这些分类可以在许多方面相结合,形成不同的分类系统。 ...
  •  ③BP神经网络原理及应用、最优化理论与方法、人工神经网络matlab工具箱. ①赛题及赛题解析  ②优秀论文7篇  ③线性规划、分支定界法、树形网络结构优化设计、用MATLAB解线性规划、整数规划模型 ①赛题及赛题解析...
  • LSHBOX:局部敏感算法(LSH)的C++工具箱,提供了好几种普遍的LSH算法,也可以支持Python和MATLAB。 PGM-index:能够快速查找、前导、范围搜索和更新数以亿计项数组的数据结构,其跟传统索引相比,使用梯度的顺序而...

空空如也

空空如也

1 2
收藏数 27
精华内容 10
关键字:

matlab用神经网络工具箱分类

matlab 订阅