当前位置: 首页 > article >正文

基于卷积神经网络模型的图像分类

一.回归任务与分类任务输出的区别从图像上看回归是将各个预测点回归拟合一条合适的loss最小的直线或者曲线分类是将各个不同种类的数据通过一定的分类划分方法划分为一类或者几类从向量上看回归的向量里面的值是一个值表明对应元素成为分类结果的概率大小分类的向量是在回归的基础上做归一化softmax的处理将概率较大的那个类的值设为1其余设为0. 这样做的主要目的由于分类任务是独热编码向量中哪个值是1就代表对应的哪一类所以当向量归一化后就可以直接判断是哪一个种类了二.训练的流程本质与回归类似一本质还是让图片进入模型然后模型回归拟合出合适的向量最后对该向量进行归一化。二主要方式将图片的所有参数224*224*3拉直成150528的参数的向量然后让它进入模型训练。三最后经过全连接网络得到最后的预测值。三.卷积神经网络在上述的基本流程中最大的问题在于参数量过大从而会导致模型负载过高所以引入卷积神经网路这一手段。卷积的概念在大图中找到小图矩阵点乘的形式数值越大说明大图中越可能出现与小图相似的部分。而将其实际应用到分类任务中我们可以把卷积核看作一个特征只需要在原图中找到该特征就可以说明此图大概率就是该特征的类别。比如分辨一种鸟的种类可以将其鸟嘴翅膀脚等等作为特征这要原图中有出现此图片就可以说明它是这一种鸟卷积最大的功能在第一张例图中我们可以明显的看到当用3*3的卷积核去与6*6的特征图卷积后得到的结果是4*4的矩阵明显参数减少了所以运用在卷积神经网络中可以把多个图片的参数量实现大幅的减少。当然最后如果需要将output的特征图输出大小要与原图一样的大小时可以通过zero padding的方式在在特征图的边缘补充像素通常补 0抵消卷积核滑动带来的尺寸收缩。卷积核的不同分类四.进一步理解如何让特征图变小1.扩大步长:原来的卷积是每卷一次就只会让卷积核向后走一格而扩大步长就是每卷一次后卷积核走多步这样最后卷出来的特征图就会小很多。2.池化pooling池化的本质在于用一个参数来代表一个范围内的参数这样也一定程度上减少了参数量的计算。常见的池化有两种最大池化Max Pooling取局部区域的最大值能更好保留边缘、纹理等强特征是图像任务的首选平均池化Average Pooling取局部区域的平均值能保留更平滑的全局特征多用于分类层前的特征整合。在本项目中也是使用最大池化作为池化方式这样主要是可以减少模型的运算负担。五.卷积神经网络的参数CNN的主要结构是卷积层全连接层池化层和BN层归一化等而90%的参数都在卷积层和全连接层上面。卷积层nn.Conv2d卷积层主要参数为权重参数和偏置参数权重的参数主要来自图片的形状输入的通道数输出的通道数卷积核高卷积核宽eg nn.Conv2d(输入通道数输出通道数卷积核大小参数量输入通道数*输出通道数*卷积核大小的平方。偏置的参数主要数如的通道数量。eg64个通道数偏置的参数就有64个。全连接层nn.Linear)全连接层层的主要参数也是权重和偏置参数权重的主要参数nn.Linear(输入维度输出维度总的参数量是输入维度*输出维度偏置的主要参数是输出维度有多大的输出维度就有多少和偏置参数。六.通过卷积卷出一个类别卷积的基本流程卷积提取特征-fallten拉直-类别输出-loss计算-参数更新将特征图通过卷积核卷出来的心特征图通过flatten函数将参数拉直然后就可以通过全连接来预测loss并梯度回传到model中更新参数。分类任务的loss与回归任务的loss有所不同回归任务直接Linear后的张量值就可以当作参数来计算Loss但是分类任务主要是对错的问题所以要先通过softmax来将张量值转化为归一化后的独热编码类型的张量。七.计算Loss多分类任务主要使用交叉熵损失对比均方误差MSE交叉熵损失有两个核心优势梯度更合理分类任务中MSE 的梯度会随预测概率接近 0/1 而趋近于 0梯度消失交叉熵损失的梯度与预测概率直接相关训练更高效贴合分类目标分类关注的是 “类别概率的相对大小”而非 “绝对数值”交叉熵损失直接衡量概率分布的差异更贴合任务本质。交叉熵损失的计算例子最后在计算出对应的Loss后会经过Loss回传。因为Loss的计算本质是为了让模型更好的更新参数权重和偏置计算梯度再用优化器更新参数的模型。优化器的种类1.SDG: 在每一轮的训练中在各轮损失函数中通过在某一高位上施加一个动量让Loss到达Loss最低的点同时保存该模型的参数。2.Adam把L2正则融入梯度里这样通过在损失函数假L2惩罚项实现对应效果这个损失函数不仅考虑了当下的参数对模型的影响同时还考虑了以往参数对模型的影响并针对二者加以一定的权重。3.AdamW把L2从梯度中抽离独立施加不修改损失函数先计算纯任务梯度的Adam更新量再单独减权重衰减项。losslossw*w w*w是为了让梯度衰减更加平滑。八.经典的神经网络模型1.AlexnetAlexNet 是深度学习与计算机视觉的里程碑式卷积神经网络2012 年由 Alex Krizhevsky、Ilya Sutskever、Geoffrey Hinton 提出在 ImageNet 竞赛中以15.3% Top-5 错误率碾压传统方法亚军 26.2%正式开启深度 CNN 时代。主要的创新点1.激活函数将原先的sigmod函数换成relu可以防止梯度消失的现象。因为梯度的累成的如果大部分的梯度过小就会导致梯度消失的现象出现。而sigmod的梯度最大是0.25是比较容易出现梯度消失的状况的。而relu的梯度最大的1不容易出现梯度消失的状况。2.归一化它可以让模型关注数据的分布而不受数据量纲的影响。 归一化可以 保持学习有效性 缓解梯度消失和梯度爆炸提高模型的泛化能力。3.池化采用 3×3 窗口、步长 2 的重叠池化非传统无重叠减少过拟合Top-1/Top-5 误差分别降低 0.4%/0.3%增强特征鲁棒性。4.dropout主要功能是让模型在训练的时候少添加部分数据而在验证的时候多添加上这部分数据。这样可以有效的防止过拟合的现象还提高了模型的泛化能力。2.VGG模型主要的功能是在感受野相同的情况下堆叠 3×3 小卷积核替代大卷积核更深更大。从而参数量大幅减少大幅降低模型复杂度缓解过拟合。3.resnet181.ResNet 解决的致命问题梯度消失 网络退化以前大家以为网络越深效果越好。实际发现层数太深 → 准确率不升反降不是过拟合是退化。根本原因梯度在反向传播时一层层衰减梯度消失底层参数根本学不动。2. ResNet 核心创新残差块Residual Block公式yF(x)xx输入F(x)卷积层学到的特征直接把输入 x 加到输出上捷径 /skip connection直观理解不是让网络去学 “完整输出”而是让它学残差差值F(x)y−x就算卷积啥也没学到至少还能恒等映射过去不会越学越烂。3. 为什么残差连接能解决梯度消失反向传播时梯度∂x∂y​∂x∂F​1梯度 卷积层梯度 1永远不会变成 0梯度可以直接沿着捷径传回底层这就是 ResNet 能堆到101 层、152 层、甚至 1000 层的原因。4. 两种经典残差块① 基本残差块ResNet18/34conv → BN → ReLU → conv → BN → x → ReLU② 瓶颈结构ResNet50/101/1521×1 降维 → 3×3 卷积 → 1×1 升维减少计算量能堆更深本质上残差连接的公式告诉我们output的数据不仅要把模型预测的输出还要把过去的数据也一并输出。1*1卷积1.降维 / 升维通道数调整把通道数变少减少计算量把通道数变多增强特征这是 ResNet 瓶颈结构bottleneck的灵魂。2.跨通道信息融合特征交互每个像素会对所有通道做加权求和。相当于让不同通道的特征互相交流。3.引入非线性增加模型表达能力1×1 卷积后面加 ReLU不改变尺寸却能加深网络、增强表达。1*1卷积让模型得到更深更大的扩展本质是因为减少了参数量。实战训练模型的总体流程主要是三个模块:处理数据集定义模型定义超参数。分类任务的训练和验证的不同流程区别训练的时候模型会通过y估计与真实值的差距loss来做梯度回传让模型的权重和偏置参数做一定的优化。测试的时候模型就不用求loss了因为没有真实值预测值就是y估计。导入所需要的库函数对数据进行数据增广数据增广就是对训练图像做合理的随机变换翻转、裁剪、颜色抖动等扩充数据多样性减少过拟合提高模型泛化能力。训练用测试不用因为数据增广的目的的让模型有更多的数据得到训练而不是让模型在测试时增加负担。测试时就不需要数据增广直接做合适的全连接让图片顺利进入模型即可。区分模式分为测试下、训练下和半监督下不同模式所要针对的运行方式不同。要注意梯度计算时的三个重要步骤分别是梯度回传更新优化器梯度清零设置半监督下数据的处理方式半监督模式下先将有标签的数据拿去训练模型让模型的准确率达到0.9以上后再让无标签数据进入模型训练只有那些经过模型后置信度达到0.9以上的数据才会让模型所做的预测值作为有标签数据的标签这样就可以让无标签数据转化为有标签数据增加模型的可训练数据量。迁移学习迁移学习是将源任务训练好的模型权重或特征知识迁移应用到目标任务中利用通用特征提升小样本下的训练效率与泛化能力是深度学习中解决数据不足、训练成本高的核心技术。微调是基于原始模型下对模型进行针对性的数据训练就是将符合项目的数据投喂给模型提高模型针对此项目的泛化与适应能力提取特征其器设置分类头将模型输出后的数据通过一个全连接数据成符合类别的张量。设置模型超参数的设置

相关文章:

基于卷积神经网络模型的图像分类

一.回归任务与分类任务输出的区别从图像上看,回归是将各个预测点回归拟合一条合适的,loss最小的直线或者曲线;分类是将各个不同种类的数据通过一定的分类划分方法,划分为一类或者几类;从向量上看,回归的向量…...

AI时代,最珍贵的能力从不是会用AI,而是这一种

罗振宇与尹烨在一次对话节目中,曾抛出一个直击人心的问题:AI浪潮席卷而来,人人都在焦虑被替代,到底什么能力,才是人生最坚实的底气? 有人说,是驾驭AI的能力,毕竟工具迭代太快&#…...

MYSQL order by , group by练习

一:MYSQL执行顺序 SQL 语句的逻辑处理顺序如下所示。每个步骤都会生成一个虚拟表,作为下一步的输入,直到最终返回结果给客户端-1-5。 执行顺序子句作用描述1FROM / JOIN确定数据源,对指定的表执行笛卡尔积,生成初始的…...

个人博客地址自测试

1...

超实用机器视觉框架:VS2019 一键编译,开启视觉检测新旅程

机器视觉框架源码vs2019可以直接编译 应用于视觉检测 AOI视觉检测 机械手定位 点胶 插件 激光切割 视觉螺丝 视觉贴合 激光焊接机 视觉裁板仅供学习使用,不提供技术,想所有功能都…...

SEO Machine:解锁高效的SEO内容创作之旅!

SEO Machine:提升内容创造与优化的利器 在当今网络环境中,优质的SEO内容不仅是吸引流量的关键,也是品牌形象和市场竞争力的重要一环。为满足商业需求,SEO Machine应运而生。这是一个专为长格式、SEO优化博客内容创造而设计的工作空间,旨在帮助用户更好地研究、撰写、分析…...

【第三十六周】论文阅读02

文章目录摘要Abstract一、《Nougat: Neural Optical Understanding for Academic Documents》1. 摘要2. 介绍3. 相关工作4. 模型4.1 设置4.2 数据增强5. 数据集5.1 页面拆分5.2 真实标注伪影6. 核心贡献总结二、《A Survey of Token Compression for Efficient Multimodal Larg…...

从零开始写一个微信小程序:完整代码实战指南(入门篇)

引言 在移动互联网时代,微信小程序以其“即用即走”、开发成本低、流量获取易等优势,成为开发者必须掌握的技能之一。本文将带你从零开始,不讲废话,只写代码,完成你的第一个微信小程序。我们将从环境搭建开始&#xf…...

从命令行到认知时代:GitHub 指令使用与自动化工作流深度实践

前言在软件开发的历史中,很少有工具像Git这样深刻地改变了我们协作的方式,也很少有平台像GitHub这样,将代码托管变成了一个集成的社交化开发中心。对于许多开发者而言,与GitHub的交互长期处于一种“分裂”的状态:使用G…...

13.jmeter性能测试高并发及高频率弱压力及持续高并发

高并发同一时间有大量请求或用户访问系统,比如春运抢火车票,抢演唱会门票高并发测试是为了发现系统瓶颈,保证上线稳定,了解系统的最大承载量。同步定时器实现高并发同步定时器实现高并发可测试瞬间高负载,比如秒杀/抢购…...

双馈风电机组并网仿真建模:四机九节点系统中的虚拟惯量与下垂控制技术,超速减载与桨距角控制调频策...

双馈风电机组并网matlab/simulink仿真建模,四机两区域/三机九节点系统,虚拟惯量下垂控制/超速减载/桨距角控制调频,风储联合调频,低电压穿越故障等双馈风电机组并网后的动态特性直接影响电网稳定性。咱们直接上Simulink撸个三机九…...

永磁同步电机死区效应补偿策略研究仿真,该仿真利用已知的死区时间,直接将补偿时间补到三相占空比中...

永磁同步电机死区效应补偿策略研究仿真,该仿真利用已知的死区时间,直接将补偿时间补到三相占空比中,无需知道额外的参数。 采用参考电流判断电流的方向,避免传统根据实际电流判断方向在零电流箝位的误差影响。 该模型所有电机和控…...

光刻机十大核心卡脖子领域:用第一性原理,拆解中国芯片的破局之路

光刻机十大核心卡脖子领域:用第一性原理,拆解中国芯片的破局之路 作者:华夏之光永存 本篇不是民科,不是胡言乱语,光刻机并不难,难的是思维被锁死。等我有空,我会写一百篇落地文章,详…...

核心揭秘:epoll_wait 的数据到底从哪来?

一、 核心揭秘:epoll_wait 的数据到底从哪来? 很多初学者(甚至部分老手)都存在一个致命的认知误区:认为当网络事件发生时,Linux 内核会立刻去分析这个连接,临时拼凑出一个 epoll_event 结构体,然后塞给 epoll_wait。 错!大错特错! 根据笔记提炼,真实的底层流转机…...

导师推荐 8个一键生成论文工具:全领域适配,开题报告+学术论文+毕业论文高效写作测评

在学术研究日益数字化的今天,论文写作已成为高校师生和科研人员日常工作中不可回避的重要环节。然而,面对繁重的写作任务、复杂的文献检索流程以及不断升级的AIGC内容检测机制,许多学者仍深陷效率低下的困境。为了帮助用户更高效地选择适合自…...

windows操作系统上的Java版更新

如何安装 JDK 17 1. 下载 JDK 17 访问 Oracle JDK 17 下载页面 或使用开源的 Adoptium (Eclipse Temurin)。 选择与您操作系统匹配的安装包(Windows x64 MSI 或压缩包)。 2. 安装并配置环境变量 以 Windows 为例: 运行安装程序&#xff…...

用时光本重构工作时间管理:从个人规划到团队协同的全流程方案

矩阵日历 智能分析 团队协同,让时间管理更简单 管理大师杜拉克曾说:“不能管理时间,便什么也不能管理”,这句话道尽了时间管理对于工作的核心意义 —— 时间是世界上最短缺的资源,除非严加管理,否则就会…...

架构不是套娃:为什么简单的代码胜过无脑的层次

在软件开发中,我们常常被教导要“优化架构”、“抽象层次”、“面向未来”。于是,很多人养成了一个习惯:无论功能多简单,先搭几层抽象再说——接口、实现类、工厂、策略、服务层……文件夹层层嵌套,类名整整齐齐&#…...

基于EKF和UKF的电力系统动态状态估计方法验证与实现【有参考文献】(39节点系统为例)

【有参考文献】基于扩展(EKF)和无迹卡尔曼滤波(UKF)的电力系统动态状态估计 该程序对应文章《Power System Dynamic State Estimation Using Extended and Unscented Kalman Filters》,电力系统状态的准确估计对于提高电力系统的可靠性、弹性、安全性和稳定性具有重…...

编程入门指南:从概念到实践

1. 编程入门介绍在现代社会,编程已成为一项重要的技能。这是一门通过代码在机器上创造出动态世界的技术,对于许多人来说,它如同《黑客帝国》中的数字雨般神秘。然而,编程更像是一种特殊的写作艺术。就像作家通过文字创造故事一样&…...

VAE变分自编码器VAE Loss基础数学知识

一、基础数学知识1.1凸函数的定义下面我们要讲到生成模型。首先我们复习一些要用到的数学知识。第一个是凸函数的定义,因为不同教材对于凸函数的定义不同,为了避免混淆,这里我们讨论的是下凸函数,也就是函数曲线向下突出。下凸函数…...

各子群独立进化

【有参考文献】基于并行分布式差分算法的含需求响应家庭微网能量管理 该程序是《Demand Response of Residential Houses Equipped with PV-Battery Systems: An Application Study Using Evolutionary Algorithms》完全复现主要做的是一个家庭微网能量管理系统,考虑…...

LangChain/LangGraph/OpenAI核心概念+实战指南

LangChain/LangGraph/OpenAI核心概念深度拆解(含库关联+完整用法) 一、核心认知重构:从「封装层级」看透所有概念 先建立四层封装模型(这是理解所有概念的核心框架),同时明确各层级与langchain、langgraph、openai、langchain-openai的核心关联: 封装层级 核心目标 代…...

腾讯对OpenClaw技能数据的抓取行为,究竟是符合开源精神的本地镜像还是侵害开发者权益的恶意抄袭?

关于腾讯抓取OpenClaw技能数据这件事,最近在开发者圈子里讨论得挺多。乍一看,这似乎又是一个大厂与小开发者之间的经典矛盾,但仔细琢磨,会发现里面有些细节值得掰开谈谈。 先说说开源精神这件事。开源社区的核心,其实是…...

关于Lambda表达式

以Arrays.sort(intervals, (a, b) -> Integer.compare(a[0], b[0]));为例子 Arrays.sort方法要求第二个参数是Comparator<int[]>&#xff0c;编译器通过(a, b)得知参数类型Comparator<int[]>&#xff0c;会去找这个接口&#xff0c;然后下面只有一个抽象方法com…...

重置root密码重置

root密码也叫做root密码破解重启虚拟机/启动虚拟机&#xff0c;看到如下界面&#xff0c;快速将鼠标点进虚拟机通过上下箭头&#xff0c;选择第二个选项&#xff0c;然后安装屏幕下方的提示按“e”键进入下一个页面&#xff0c;将光标通过向上向下箭头移动到quiet单词后面&…...

三十七选择

主频&#xff08;CPU时钟频率&#xff09;指CPU中门电路的工作频率&#xff0c;它决定着CPU芯片内部数据传输与操作速度快慢。一般而言&#xff0c;主频越高&#xff0c;执行一条指令需要的时间越短MP3是有损压缩的数字音频分组交换也称为包交换。数据包包括头部和有效载荷。一…...

VLANeXt: VLA终极配方,12个维度从零构建高性能VLA-- 2026.2.20 -- 开源

0. 前言 看过非常多的VLA&#xff0c;但是对于其包含的结构和模块并不清晰&#xff0c;其中到底哪个对VLA性能影响最大也有待研究&#xff0c;所以来看看这篇。 论文页 项目页 article{wu2026vlanext,title{VLANeXt: Recipes for Building Strong VLA Models}, author{Xiao-…...

AI智能获客工具哪家强?这3款让你业绩飙升!

在当今数字化时代&#xff0c;AI智能获客工具对于企业的发展至关重要。它能帮助企业高效地找到潜在客户&#xff0c;提升业绩。下面为大家介绍三款颇具实力的AI智能获客工具。多客智能——AI自运转百倍获客体系上海超客多多智能科技有限公司推出的AI自运转百倍获客体系&#xf…...

基于形状的模板匹配,多模板匹配,最大变形匹配,max_deformation,动态链接库,C+...

基于形状的模板匹配&#xff0c;多模板匹配&#xff0c;最大变形匹配&#xff0c;max_deformation&#xff0c;动态链接库&#xff0c;C/C#&#xff0c;32/64位"啪&#xff01;" 螺丝刀重重摔在操作台上&#xff0c;车间主任老张盯着屏幕里歪斜的零件图像直挠头。流水…...