MATLAB BP神经网络工具箱

news/2024/7/27 9:06:41/文章来源:https://blog.csdn.net/stay23/article/details/136511199

1. 原理

BP神经网络结构:

Matlab神经网络工具箱:

BP神经网络定义:

net=newff(PR,[S1 S2...SNl],{TF1 TF2...TFNl},BTF,BLF,PF)

其中:

PR --输入元素的最小值和最大值的Rx2矩阵R

SI -- 第 i 层的大小,对于Nl层,N个隐藏层需要定义n个层神经元的个数

TFI--第 i 层的传递函数,默认 = ' tansig'

BTF-- 反向传播网络训练函数,默认 = ' traingdx'

BLF-- 反向传播权重/偏差学习函数,默认 = ' learngdm'

PF -- 性能函数,默认 = ' mse'

训练函数:train(net,traindata), net为神经网络,traindata为训练集数据

仿真函数:sim(net,test),传入测试的值通过仿真返回预测值

2. 过程

2.1 训练集数据可视化

导入两类训练集数据(格式为txt文本,内容为身高 体重),并绘制其数据分布,如下:

图1 训练集数据分布

2.2 数据处理

将两类训练集样本合并到一起并且给定它们已知的类别标签,1为男性,2为女性

2.3 通过神经网络工具箱设置相应的参数进行训练和仿真

设置相关神经网络参数后首先对训练集进行仿真

训练如下:

图2 神经网络训练

图3 性能指标

图4 训练状态

图5 回归分析

训练完成后通过sim函数对训练集数据进行预测,将输出结果中大于1.5的归为2类,小于等于1.5的归为1类

图6 训练集精度

得到训练集精度为90%

2.4 用测试样本数据对模型进行测试

图7 测试集分布

仿真并预测:

图8 测试集精度

得到测试集精度达到97%,说明分类器模型较好。

3. 结果与分析

本文实验通过神经网络工具箱成功构造了简单的神经网络,并且通过测试集测试的准确率达到了97%大于训练集的90%精确度,通过对数据以及样本分布进行分析,可以看出训练集的样本个数不够多且有很多数据点分布不均匀而测试集分布较为均匀。但从最后的结果上依然可以看出该神经网络分类模型在该问题上可以很好的通过身高体重特征对性别进行分类。

使用matlab神经网络工具箱可以简单的构造一个完整的BP神经网络并使用它进行分类预测,并且通过观察训练过程中的性能以及一些状态,能够更加清晰地了解到相关参数对神经网络训练地影响。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_996084.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

YOLOV8介绍

原文链接: 1、 详解YOLOv8网络结构/环境搭建/数据集获取/训练/推理/验证/导出 2、Yolov8的详解与实战 3、YOLOV8模型训练部署(实战)()有具体部署和训练实现代码YOLOV8模型训练部署(实战)&…

FPGA——三速自适应以太网设计(1)基本模块

FPGA——以太网设计(1)基本模块 1. 协议解析(1)MAC层(2)IP层 和 ARP层(3)UDP层 和 ICMP层 2.1 MAC接收模块2.2 MAC发送模块3.1 IP接收模块3.2 IP发送模块4.1 UDP接收模块4.2 UDP发送…

以创新筑牢安全盾牌,广师大隐盾科技照亮软件知识产权保护之路

“很感谢隐盾科技团队的各位成员对我司计算机软件代码保护的鼎力相助……”广州市硬科技百强企业在给予隐盾科技团队的感谢信中写道。据了解,该公司在使用了隐盾科技团队研发的隐盾代码虚拟化系统后,企业开发盗版率从45%降至0%、保护该企业年侵权成本超过…

计算机设计大赛 深度学习的智能中文对话问答机器人

文章目录 0 简介1 项目架构2 项目的主要过程2.1 数据清洗、预处理2.2 分桶2.3 训练 3 项目的整体结构4 重要的API4.1 LSTM cells部分:4.2 损失函数:4.3 搭建seq2seq框架:4.4 测试部分:4.5 评价NLP测试效果:4.6 梯度截断…

Linux conntrack和iptables技术解析

Linux虚拟文件系统管理技术 1. netfilter解析1.1 netfilter的基础原理1.2 netfilter的相关hook 2. conntrack解析2.1 conntrack的基础原理2.2 conntrack的表记录解析 3. iptables解析3.1 iptables基础原理3.2 融合conntrack表的iptables规则 4. 疑问和思考4.1 conntrack和iptab…

Tensorflow2.0笔记 - 常见激活函数sigmoid,tanh和relu

本笔记主要记录常见的三个激活函数sigmoid,tanh和relu,关于激活函数详细的描述,可以参考这里: 详解激活函数(Sigmoid/Tanh/ReLU/Leaky ReLu等) - 知乎 import tensorflow as tf import numpy as nptf.__ve…

20240306-1-大数据的几个面试题目

面试题目 1. 相同URL 题目: 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url? 方案1:估计每个文件的大小为50G64320G,远远大于内存限制的4G。所以…

【golang】26、retry-go 使用示例和源码解析

文章目录 一、使用方法1.1 http 示例1.1.1 retry.Do1.1.2 retry.DoWithData1.1.3 OnRetry1.1.4 根据 error 的类型,决定 delay 的时长1.1.5 自定义 retry function 二、API2.1 Do 执行2.1.1 Do2.1.2 DoWithData 2.2 Delay 策略2.3 错误处理2.3.1 Unwrap2.3.2 Unwrap…

口碑营销:品牌如何维护良好口碑?

企业的品牌传播最有效的方式莫过用户的口碑,互联网的发展为企业的品牌传播引入了驱动力,愈来愈多的企业花费更多的资源开展网络口碑的建设和维护,那么企业如何维护好网络口碑? 1、持续传递优质的品牌内容 内容是营销推广的支撑点&…

学习Java的第一天

一、Java简介 Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 面向对象程序设计语言和 Java 平台的总称。由 James Gosling和同事们共同研发,并在 1995 年正式推出。 后来 Sun 公司被 Oracle (甲骨文)公司收购,Jav…

如何做代币分析:以 LDO 币为例

作者:lesleyfootprint.network 编译:mingfootprint.network 数据源:LDO 代币仪表板 (仅包括以太坊数据) 在加密货币和数字资产领域,代币分析起着至关重要的作用。代币分析指的是深入研究与代币相关的数据…

【EI会议征稿通知】第四届人工智能,大数据与算法国际学术会议 (CAIBDA 2024)

第四届人工智能,大数据与算法国际学术会议 (CAIBDA 2024) 2024 4th International Conference on Artificial Intelligence, Big Data and Algorithms 由河南省科学院、河南大学主办,河南省科学院智慧创制研究所、河南大学学术发展部、河南大学人工智能…

Java 数据结构之链表

public ListNode getIntersectionNode(ListNode headA, ListNode headB) {if (headA null || headB null) return null;ListNode pA headA, pB headB;while (pA ! pB) {pA pA null ? headB : pA.next;pB pB null ? headA : pB.next;}return pA;} public ListNode rev…

【C++】String常用的函数总结

目录 一、string的构造函数方式: 二、常用的大小/容量相关操作: 三、string的常用修改操作: 四、string的遍历: 五、string的任意位置插入 / 删除: 六:补充: 一、string的构造函数方式&a…

HarmonyOS应用开发-环境搭建(windows环境)

官网地址:链接 DevEco Studio 3.1.1 Release:下载地址 1、安装DevEco Studio 直接安装即可 2、配置开发环境 1.运行已安装的DevEco Studio,首次使用,请选择Do not import settings,单击OK。 2.安装Node.js与ohpm。注…

umi4 项目使用 keepalive 缓存页面(umi-plugin-keep-alive、react-activation)

umi4使用keepalive 配置文件config\config.ts export default defineConfig({plugins: [umi-plugin-keep-alive], });安装add umi-plugin-keep-alive yarn add umi-plugin-keep-alive页面 A import { KeepAlive, history, useAliveController } from umijs/max; const Page…

数组常见算法

一、数组排序 冒泡排序 本篇我们介绍最基本的排序方法:冒泡排序。 实现步骤 1、比较两个相邻元素,如果第一个比第二个大,就交换位置 2、对每一对相邻元素进行同样的操作,除了最后一个元素 特点 每一轮循环后都会把最大的一个…

【设计模式】(二)设计模式六大设计原则

一、 设计原则概述 设计模式中主要有六大设计原则,简称为SOLID ,是由于各个原则的首字母简称合并的来(两个L算一个,solid 稳定的),六大设计原则分别如下: ​ 1、单一职责原则(Single Responsibitity Principle&#…

【李沐精读系列】BERT精读

论文:BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 参考:BERT论文逐段精读、李沐精读系列、李宏毅版BERT讲解 一、介绍 BERT(Bidirectional EncoderRepresentation Transformer,双向Transformer编码器…

智能便捷|AIRIOT智慧充电桩管理解决方案

现如今随着对可持续交通的需求不断增加,电动车市场正在迅速扩大,建设更多更智能的充电桩,并通过管理平台提高充电设施的可用性和效率成为一项重要任务。传统的充电桩管理平台在对充电设施进行管理过程中,存在如下痛点:…