机器学习 —— 神经网络(matlab)
目录
一、介绍
二、实验数学原理
三、实验算法和实验步骤
四、实例分析
一、介绍
神经网络是一种运算模型,由大量的节点(或称“神经元”,或“单元”)和之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重(weight),这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激励函数的不同而不同。而网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达。人工神经网络通常是通过一个基于数学统计学类型的学习方法(Learning Method)得以优化,所以人工神经网络也是数学统计学方法的一种实际应用,通过统计学的标准数学方法我们能够得到大量的可以用函数来表达的局部结构空间,另一方面在人工智能学的人工感知领域,我们通过数学统计学的应用可以来做人工感知方面的决定问题(也就是说通过统计学的方法,人工神经网络能够类似人一样具有简单的决定能力和简单的判断能力),这种方法比起正式的逻辑学推理演算更具有优势。
二、实验数学原理
三、实验算法和实验步骤
步骤:
1.准备训练网络的样本,并对数据进行标准化处理。
2.初始化网络的参数,包括最大训练次数,隐含层神经元数量,网络学习速率,训练的目标误差
3.对训练集样本进行训练,找到拟合模型
4.用该模型对训练集进行预测
5.对训练集的预测结果进行还原
6.对训练集的预测结果进行验证
7.用模型对对预测集进行预测
8.对预测集的结果进行还原并输出
四、实例分析
数据来源:
样本 | 跳高成绩(m) | 30行进跑(s) | 立定三级跳远(m) | 助跑摸高(m) | 助跑4—6步跳高(m) | 负重深蹲杠铃(kg) | 杠铃半蹲系数 | 100(s) | 抓举(kg) |
序号 | |||||||||
1 | 2.24 | 3.2 | 9.6 | 3.45 | 2.15 | 140 | 2.8 | 11 | 50 |
2 | 2.33 | 3.2 | 10.3 | 3.75 | 2.2 | 120 | 3.4 | 10.9 | 70 |
3 | 2.24 | 3 | 9 | 3.5 | 2.2 | 140 | 3.5 | 11.4 | 50 |
4 | 2.32 | 3.2 | 10.3 | 3.65 | 2.2 | 150 | 2.8 | 10.8 | 80 |
5 | 2.2 | 3.2 | 10.1 | 3.5 | 2 | 80 | 1.5 | 11.3 | 50 |
6 | 2.27 | 3.4 | 10 | 3.4 | 2.15 | 130 | 3.2 | 11.5 | 60 |
7 | 2.2 | 3.2 | 9.6 | 3.55 | 2.1 | 130 | 3.5 | 11.8 | 65 |
8 | 2.26 | 3 | 9 | 3.5 | 2.1 | 100 | 1.8 | 11.3 | 40 |
9 | 2.2 | 3.2 | 9.6 | 3.55 | 2.1 | 130 | 3.5 | 11.8 | 65 |
10 | 2.24 | 3.2 | 9.2 | 3.5 | 2.1 | 140 | 2.5 | 11 | 50 |
11 | 2.24 | 3.2 | 9.5 | 3.4 | 2.15 | 115 | 2.8 | 11.9 | 50 |
12 | 2.2 | 3.9 | 9 | 3.1 | 2 | 80 | 2.2 | 13 | 50 |
13 | 2.2 | 3.1 | 9.5 | 3.6 | 2.1 | 90 | 2.7 | 11.1 | 70 |
14 | 2.35 | 3.2 | 9.7 | 3.45 | 2.15 | 130 | 4.6 | 10.85 | 70 |
15 | ? | 3 | 9.3 | 3.3 | 2.05 | 100 | 2.8 | 11.2 |
50 |
代码实例:
%%
clear;clc;close all;
%% 读取数据集
data=xlsread('Data2.xlsx');
%% 训练集数据
x = data(1:14,3:10)';
y = data(1:14,2)'; %跳高成绩(m)
%% 数据标准化
[xn, inputStr] = mapminmax(x);
[yn, outputStr]=mapminmax(y);
%% 构造神经网络
net = newff(xn,yn,[4,1],{'tansig','logsig'},'traingd'); %隐层神经元个数为4
%设置训练次数
net.trainParam.epochs = 10000; %隐层神经元个数为4
%训练网络所要达到的目标误差
net.trainParam.goal = 0.65 * 10^(-3);
% 设置学习率
net.trainParam.lr=0.1;
%网络误差如果连续6次迭代都没变化,则matlab会默认终止训练。为了让程序继续运行,用以下命令取消这条设置
net.divideFcn = '';
%% 对训练集进行训练
net=train(net1,xn,yn); %隐层神经元个数为4
%% 预测训练集
predicy=sim(net,xn); %隐层神经元个数为4
%将得到的数据反归一化得到预测数据
predict_=mapminmax('reverse', predicy, outputStr); %隐层神经元个数为4
%% 对训练集预测及原始结果进行绘图
plot(y,'b')
hold on
plot(predict_,'r')
机器学习 —— 神经网络(matlab)相关推荐
- 机器学习之MATLAB代码--LSTM和BiLSTM预测对比(十五)
机器学习之MATLAB代码--LSTM和BiLSTM预测对比(十五) 代码 数据 结果 代码 1. clc; clear; close all; %% 导入数据 load DATA; % 导入60天的 ...
- 卷积神经网络代码 Matlab,卷积神经网络matlab程序
cnn卷积神经网络用什么语言来写pascial . 200+这个是hintonmatlab代码的C++改写版.convnetjs-Star,SAE,首选的肯定是LIBSVM这个库;RBM#47.Dee ...
- bp神经网络matlab实例蚊子,bp神经网络matlab实例
bp神经网络matlab实例 采用 Matlab 工具箱函数建立神经网络,对一些基本的神经网络参数进行了说明,深入了解参考 Matlab 帮助文档.实例一% 例 1 采用动量梯度下降算法训练 BP 网 ...
- matlab实现cnn代码,CNN 经典的卷积神经网络MATLAB实现源码,可直接运行。 276万源代码下载- www.pudn.com...
文件名称: CNN下载 收藏√ [ 5 4 3 2 1 ] 开发工具: matlab 文件大小: 47017 KB 上传时间: 2016-11-03 下载次数: 93 提 供 者: 郝永达 ...
- 开源机器学习之MATLAB代码--LSTM-SVRNN(五)
机器学习之MATLAB代码--LSTM-SVRNN(五) 代码 数据 结果 代码 1.cdmnn.m文件 %% 组合模型 %% %% 数据导入 clc;clear;warning off; data= ...
- 常用激活函数--小白角度 TensorFlow 机器学习 神经网络 选取
常用激活函数--小白角度TensorFlow 机器学习 神经网络 选取 先简单介绍一下激活函数 常用激活函数review 1.阶跃函数 2.Sigmoid函数(logistic函数) 3.Hyperb ...
- 10 竞争神经网络与SOM神经网络matlab参考程序
%% I. 清空环境变量 clear all clc %% II. 训练集/测试集产生 %% % 1. 导入数据 load water_data.mat %% % 2. 数据归一化 attribute ...
- 机器学习之MATLAB代码--SMA_LSSVM(十一)
机器学习之MATLAB代码--SMA_LSSVM(十一) 代码 数据 结果 代码 以下代码按照图中顺序依次: 1. clc; clear all; close all addpath addpath% ...
- 机器学习之MATLAB代码--CEEMDAN+EEMD+EMD+VMD+IMF重构络(十八)
机器学习之MATLAB代码--CEEMDAN+EEMD+EMD+VMD+IMF重构络(十八) 压缩分量的EEMD代码 压缩分量的EEMD数据 压缩分量的EEMD结果 CEEMDAN代码 CEEMDAN ...
- 人工神经网络matlab代码,matlab神经网络30例代码
如何在matlab中建立多层bp神经网络 当你用newff的时候,里面有一个参数可以控制层数,比如说:P = [0 1 2 3 4 5 6 7 8 9 10];T = [0 1 2 3 4 3 2 1 ...
最新文章
- 《Bigtable:a distributed storage system for struct data》笔记
- Tungsten Fabric SDN — 软件项目编译与打包
- 可持久化链表(链式前向星)
- go初学者安装echo框架
- 数学建模——智能优化之粒子群模型详解Python代码
- 同名字的数值求和插入行_中望CAD2021:支持表格和字段插入公式,提高数据处理效率...
- linux fstream open,fstream创建文件的问题
- ES6-18/19 异步的开端-promise
- spring 启动进度_在Web浏览器中显示Spring应用程序启动的进度
- 在@NamedQueries中枚举@NamedQuery
- Java类加载器( 死磕9)
- 数字图像处理与机器视觉_简单自动智能识别物体程序(机器视觉+数字图像处理)...
- 某项目的双代号网络图如下所示_系统集成项目管理工程师5天备考第3天第1-2学时...
- 药品管理系统java_基于Java的药品管理系统
- 幼儿园绘本图书借阅小程序
- 手机android flash,安卓手机flash插件最新版
- java date 年龄_Java 根据年月日精确计算年龄
- 百度AI文字识别需要注意的点
- 【六类网线的制作方法】
- 扁平化风格pike admin后台模板