羽隔已就之图像处理之BP神经网络入门

news2024/9/25 9:31:25

小y最近非常忙,这一年来,活很多,一直在加班、出差,也没好好休息过。最近在武汉出差一个多月了,项目逐渐完结,有点闲时间了,回首望,这一年设定的很多目标都没完成。
还记得,我想写一篇用matlab识别车牌的程序讲解,但是一直没做。今天想着,怎么得都要啃一下这个硬骨头。因为我要是一直不写,一直不敢面对这个问题,也就会一直不学习,那怎么才能进步呢?正如怪鸽说,我们遇到什么困难也不要怕,微笑的面对他,消除恐惧的最好办法就是面对恐惧。
图像识别我想用的技术含有:BP神经网络技术、图像提取特征值、图像分割技术但是这些技术还没到家,今天在酒店研究BP神经网络的用法。
我对BP神经网络的理解如下:
用一组已知的数据走向去推断另外一组数据的走向。
我的想法就是图像都有特征向量,比如数字1,会有数字1的特征向量,这个特征向量经过一系列数学运算一定可以成为一个标准的参照,车牌的数字1的特征向量一定会相符模板的。
接下来我讲讲我是如何学习神经网络的
怎么说呢,我看资料,很多神经网络上来都是一堆不知道干什么的数组,让一个很久没接触数学的人直接看的话会很难受,数据莫名其妙,结论也莫名奇妙。
我考虑了下,很多人给出的模型根本看不懂,毕竟隔行如隔山嘛。那么机智的小y想到了,如果我用一个简单的数学模型去分析的话,这样结论大家也能猜到,也会进行调优,优化。
怎么选模型难住了小y,突然想到平抛不就是个最简单的模型吗,把平抛简化后不就是抛物线模型吗,对称轴是y轴的二次函数。对就用他,摒弃资料的模型,直接创新!
首先使用二次函数获得所需要的数据
在这里插入图片描述
在matlab中
在这里插入图片描述
在矩阵运算中,x乘法需要加.

使用newff创建一个前馈反向传播网络
在这里插入图片描述
newff可以传三个值,如下所示 net = newff(P,T,S)
P的通俗理解可以认为是输入向量,T的通俗理解为,通过某种映射法则获得的输出向量。S是隐藏层的大小。如图标红所示
在这里插入图片描述
后期大家自己玩可以调节试试。
哈,现在开始训练自己创建的神经网络,使用train函数
在这里插入图片描述
训练时会弹出类似于这样的一个对话框
在这里插入图片描述
太数学了,后期慢慢研究。
然后我们看看实验结果,使用sim函数:
在这里插入图片描述
net1是我们训练后的神经网络,那么A呢,A就是我们的输入向量,这里A取值
在这里插入图片描述
这个时候我们希望A的输出应该是100 ~ 0 ~ 100的一个值,使用plot函数画出他的形状

在这里插入图片描述
这里面预测的值的结果用o去表示,然后运行程序。
在这里插入图片描述

-5 ~ 0 ~ 5 的值是已知的,落在线上符合我的理解,o是预测值,当x轴为-10时预测值约在98,符合预测,当x轴为10时,对应的预测值约在99左右,已经不符合预期了。看来需要调优。
观察几个性能参数
性能如下:
在这里插入图片描述
训练状态如下
在这里插入图片描述
回归如下
在这里插入图片描述
在这里插入图片描述
使用了3层隐藏层。
后记:经过资料查阅得知,隐藏层并不是越多越好,也需要按实际的情况去测试。而且每次运行的结果也会不同,需要多多测试然后将自己的网络保存。
如果newff函数不做任何参数时,他的激活函数长成这样
在这里插入图片描述
更换激活函数
在这里插入图片描述

加入了logsig参数后其变成了这样
在这里插入图片描述
调参后,网络图如下图所示:
在这里插入图片描述

train函数

这里写下补充:

  1. newff

newff(P、T、S、TF、BTF、BLF、PF、IPF、OPF、DDF)采用可选输入,
TFi——第i层的传递函数。默认为“tansig”
隐藏层,输出层为“purelin”。
BTF-Backrop网络训练功能,默认为“trainlm”。
BLF-Backrop权重/偏差学习函数,默认值=“learngdm”。
PF-性能函数,默认值=“mse”。
IPF—输入处理函数的行单元阵列。
默认值为{“fixunknowns”、“mconsntrows”、“apminmax”}。
输出处理函数的行单元阵列。
默认值为{‘emconsntrows’,‘apminmax’}。
DDF—数据划分功能,默认为“divideerand”;
并返回一个N层前馈反向网络。

  1. train
    训练浅层神经网络, 此函数训练一个浅层神经网络。对于使用卷积或 LSTM 神经网络的深度学习。
    [trainedNet,tr] = train(net,X,T,Xi,Ai,EW,Name,Value)
    输入参数
    net - 输入网络
    network 对象
    X - 网络输入
    矩阵 | 元胞数组 | 合成数据 | gpuArray
    T - 网络目标
    零 (默认值) | 矩阵 | 元胞数组 | 合成数据 | gpuArray
    Xi - 初始输入延迟条件
    零 (默认值) | 元胞数组 | 矩阵
    Ai - 初始层延迟条件
    零 (默认值) | 元胞数组 | 矩阵
    EW - 误差权重,元胞数组
    名称-值参数
    useParallel - 用于指定并行计算的选项
    ‘no’ (默认值) | ‘yes’
    useGPU - 用于指定 GPU 计算的选项
    ‘no’ (默认值) | ‘yes’ | ‘only’
    showResources - 用于显示资源的选项
    ‘no’ (默认值) | ‘yes’
    reduction - 减少内存使用量
    1 (默认值) | 正整数
    CheckpointFile - 检查点文件
    ‘’ (默认值) | 字符向量
    CheckpointDelay - 检查点延迟
    60 (默认值) | 非负整数
    输出参数
    trainedNet - 经过训练的网络
    network 对象
    tr - 训练记录,结构体

    源代码下载路径如下
https://download.csdn.net/download/qq_43161960/88577292?spm=1001.2014.3001.5503

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智慧博物馆视频监控系统设计,可视化AI智能分析技术助力博物馆多维度监管

一、背景与需求 博物馆视频智能监控系统是智慧博物馆建设的重要组成部分,传统的博物馆视频监控系统以模拟系统架构为主,存在监管效率低、各个系统独立运作形成数据孤岛、以“事后补救”为主要监管手段等管理弊病,无法满足互联网高速发展背景…

如何获取高质量的静态住宅IP代理?常见误区与注意事项

静态住宅IP代理在今天的网络营销领域扮演着至关重要的角色,静态住宅IP代理以其稳定性和高匿名性,为互联网业务提供了一个安全的执行环境。通过模拟真实用户的网络行为,这些IP代理降低了企业在网络营销活动中被识别和封禁的风险。它保护了企业…

Postgresql数据库运维统计信息

如果需要使用以下运维信息,需要如下几步 修改postgresql.conf文件 #shared_preload_libraries # (change requires restart)shared_preload_libraries pg_stat_statements重启数据库创建扩展 CREATE EXTENSION IF NOT EXISTS pg_stat_statements;1. 统计信息…

java: Internal error in the mapping processor: java.lang.NullPointerException

启动java项目出错,其他人工程没有问题,别着急。 java: Internal error in the mapping processor: java.lang.NullPointerException at org.mapstruct.ap.internal.processor.DefaultVersionInformation.createManifestUrl(DefaultVersionInformation.j…

微信如何养号?

目前导致微信封号的几点原因如下: 1.使用虚拟定位软件,进行附近人任务,频繁的切换ip,极易被判定微信被盗,对其封号 2.频发的群发骚扰消息,朋友圈发送过于频繁,给别人造成骚扰及其投诉 3.和微信好友聊天涉…

Python接口自动化测试 ---Allure报告使用详解

这一节主要是记录allure的内容以及用法,怎么让他生成一个完整的想要的报告。 allure生成的报告和其他五花八门的报告对比了一下,它的可读性是最好、最直观的。这不仅仅是我想要的效果,也是很多小伙伴想要的结果,毕竟这是给领导看…

JSON详细教程

😊JSON详细教程 🚩JSON简介☃️JSON语法规则🔊JSON和JavaScript对象的区别 ☃️JSON数据类型字符串🔊数字🔊布尔值🔊数组🔊对象🔊Null ☃️JSON对象🔊访问JSON对象的值&a…

Linux脚本sed命令

目录 一. sed命令定义 二. sed命令选项 三. sed语法选项 四. 案例解释 1. 打印奇数或偶数行 2. 打印固定行数 3. 打印包含字符的行 4. 打印特定字符首尾行 5. 删除固定行数 6. 删除特定字符行 7. 插入在固定行中 8. 替换规定行数 9. 使用变量 10. 多点编辑 11. 分…

研究前沿|NAR:一个综合性的植物代谢组数据库

引言 2023年10月,华中农业大学小麦改良创新团队陈伟教授课题组在Nucleic Acids Research发表题为“PMhub 1.0: a comprehensive plant metabolome database”的文章,系统介绍了他们开发的植物代谢分析网站(PMhub)的功能与价值。P…

【AICFD案例教程】水冷板散热分析

AICFD是由天洑软件自主研发的通用智能热流体仿真软件,用于高效解决能源动力、船舶海洋、电子设备和车辆运载等领域复杂的流动和传热问题。软件涵盖了从建模、仿真到结果处理完整仿真分析流程,帮助工业企业建立设计、仿真和优化相结合的一体化流程&#x…

基于SpringBoot的手机官方商城系统

基于SpringBoot的手机官方商城系统 摘要:随着电子商务的发展,网上购物已成为人们普遍的购物方式。与此同时,网上支付也得到了迅速的发展,大有赶超传统支付的趋势。在今天这个信息化程度高、生活节奏快的现代社会,传统…

强化学习Q-Learning算法和简单迷宫代码

使用到的符号: agent 代理 reward 奖励 state(s) 状态 action(a) 行为 R reward 矩阵 Q 矩阵:表示从经验中学到的知识 episode:表示 初始→目标 一整个流程 贝尔曼方程(迭代公式): Q ( s , a ) ← Q ( s …

网络割接,用VRRP替换HSRP,你得这么割才行!

组网需求 如图3-11所示,C6500作为核心层设备上行连接出口路由器NE40E-X3,下行连接接入层设备CE6800。C6500上配置HSRP实现冗余备份网关,同时在二层网络部署MSTP破除环路。 总体思路 HSRP为CISCO私有协议,CE系列交换机&#xff08…

RabbitMQ之延迟消息

文章目录 前言一、死信交换机二、延迟消息死信交换机实现延迟消息图解流程 DelayExchange插件实现延迟消息安装插件声明延迟交换机发送延迟消息 总结 前言 死信交换机、延迟消息 一、死信交换机 当一个队列中的消息满足下列情况之一时,可以成为死信(dea…

微信小程序推送服务号消息(一)【Go+微信小程序+微信服务号+微信开放平台】

一、需求场景 业务需要给微信小程序用户在某些场景推送微信服务号消息,例如:订单即将超时,电子合同签约超时等; 二、开发准备 1、开通微信服务号 入口:微信公众平台 1.1 在服务号中获取推送消息所需的配置信息&#…

头插法巧解任意链表区间反转

题目链接:https://leetcode.cn/problems/reverse-linked-list-ii/description/?envTypestudy-plan-v2&envIdtop-interview-150 头节点插入法,设置一个虚拟节点,不断循环到要反转的前面一个位置,哪怕是1也能包含进去。接着反…

Python UUID 完全指南

更多资料获取 📚 个人网站:ipengtao.com UUID(Universally Unique Identifier,通用唯一标识符)是一种全局唯一标识符生成方式,用于创建独一无二的标识符。Python的 uuid 模块提供了多种方法用于生成各种类…

四丶openlayer之瓦片地图

瓦片地图源于一种大地图解决方案,针对一整块非常大的地图进行切片,分成很多相同大小的小块地图,在用户访问的时候,再一块一块小地图加载,拼接在一起,从而还原成一整块大的地图。这样做的优点在于&#xff0…

【算法】FFT-1(递归实现)(不包括IFFT)

FFT 多项式多项式乘法复数及运算导数泰勒公式及展开式欧拉公式单位根 FFTCode IFFT 多项式 我们从课本中可以知道,一个 n − 1 n-1 n−1 次的多项式可以写成 a 0 a 1 x a 2 x 2 a 3 x 3 ⋯ a n − 1 x n − 1 a_{0}a_{1}xa_{2}x^2a_{3}x^3\dotsa_{n-1}x^{n-…

从 0 搭建 Vite 3 + Vue 3 Js版 前端工程化项目

之前分享过一篇vue3+ts+vite构建工程化项目的文章,针对小的开发团队追求开发速度,不想使用ts想继续使用js,所以就记录一下从0搭建一个vite+vue3+js的前端项目,做记录分享。 技术栈 Vite 3 - 构建工具 Vue 3 Vue Router - 官方路由管理器 Pinia - Vue Store你也可以选择vue…