基于InceptionV2/InceptionV3/Xception不同参数量级模型开发构建中草药图像识别分析系统,实验量化对比不同模型性能

最近正好项目中在做一些识别相关的内容,我也陆陆续续写了一些实验性质的博文用于对自己使用过的模型进行真实数据的评测对比分析,感兴趣的话可以自行移步阅读即可:

《移动端轻量级模型开发谁更胜一筹,efficientnet、mobilenetv2、mobilenetv3、ghostnet、mnasnet、shufflenetv2驾驶危险行为识别模型对比开发测试》

《图像识别模型哪家强?19款经典CNN模型实践出真知【以眼疾识别数据为基准,对比MobileNet系列/EfficientNet系列/VGG系列/ResNet系列/i、xception系列】》

《基于轻量级卷积神经网络模型实践Fruits360果蔬识别——自主构建CNN模型、轻量化改造设计lenet、alexnet、vgg16、vgg19和mobilenet共六种CNN模型实验对比分析》

《基于轻量级模型GHoshNet开发构建眼球眼疾识别分析系统,构建全方位多层次参数对比分析实验》

本文紧接前面三篇测评分析博文:

《基于EfficientNet(B0-B7)全系列不同参数量级模型开发构建中草药图像识别分析系统,实验量化对比不同模型性能》

《基于MobileNet(v1-v3)全系列不同参数量级模型开发构建中草药图像识别分析系统,实验量化对比不同模型性能》 

《基于VGG(vgg13/vgg16)/ResNet(resnet34/resnet50)不同参数量级模型开发构建中草药图像识别分析系统,实验量化对比不同模型性能》

前面两篇测评分析的博文主要是使用EfficientNet全系列网络模型和MobileNet全系列模型来开发构建的对比实验,相较之下都偏向于轻量级的网络模型,第三篇博文则选择的是在“重量级”领域里面比较经典的VGG和ResNet模型,本文选择的Inception和Xception系列的模型则是介于轻量级网络模型和重量级网络模型之间的体量,实验同样是以基准数据集【中草药图像数据集】为例,开发构建不同参数量级的模型,之后在同样的测试数据集上进行评测对比分析。

数据集中共包含23种类别数据,清单如下:

aiye
baibiandou
baibu
baidoukou
baihe
cangzhu
cansha
dangshen
ezhu
foshou
gancao
gouqi
honghua
hongteng
huaihua
jiangcan
jingjie
jinyinhua
mudanpi
niubangzi
zhuling
zhuru
zhuye
zicao

简单看下部分数据实例:

Inception模型是一种深度卷积神经网络,其核心思想是通过增加网络深度与宽度并减少参数的方法解决问题,并提高模型精度。以下是Inception模型的构建原理:

Inception v1:Inception v1模型的核心结构是将多个并行卷积层(包括1x1、3x3和5x5)和池化层堆叠在一起。这种设计可以增加网络的宽度和深度,同时减少参数的数量。此外,Inception v1在3x3、5x5的卷积核与最大池化层后分别添加了1x1的卷积核,降低维度,这有助于减少特征图的厚度,并增加非线性变化。
Inception v2:Inception v2模型在保持Inception v1的基本结构的同时,通过使用两个连续的3x3卷积层代替5x5的卷积层,减少了计算量。此外,Inception v2还引入了Batch Normalization层,这有助于提高模型的泛化能力。
Inception v3:Inception v3模型进一步改进了Inception v2的设计。在网络的内部,Inception v3使用了Inception模块,该模块可以在不同尺度上进行卷积操作,从而增强了网络对不同尺度特征的感知能力。此外,Inception v3还将卷积核进行分解,将NxN分解为1xN与Nx1,进一步降低参数数量与计算量。
Inception模型通过引入并行卷积层、使用较小的卷积核、引入Batch Normalization层以及分解卷积核等方法,提高了模型的精度和效率。不同的Inception变体(如Inception v1、Inception v2和Inception v3)具有不同的改进和特点,适用于不同的应用场景。

由于时间原因本文仅选取了Inception v2和Inception v3两款更新的模型进行对比分析实验,感兴趣的话可以自行对Inception v1进行评测分析。

Xception模型是基于Inception模型的改进,通过引入深度分离卷积(depthwise separable convolution)操作来提高计算效率和准确性。以下是Xception模型的构建原理:

输入层:接收输入数据。
初始卷积层:使用标准的卷积操作来提取初始特征。
Xception模块:Xception模型的核心部分,由若干个Xception模块组成。每个Xception模块包含多个深度分离卷积操作。每个深度分离卷积操作由两个部分组成:深度卷积和逐点卷积。深度卷积只关注输入数据的通道维度,而逐点卷积则负责将通道维度的特征映射转换为空间维度的特征映射。这种分解操作能够减少计算量和参数数量,同时提高模型的准确性。
全局平均池化层:对特征图进行平均池化,将其转换为固定大小的特征向量。
全连接层:将特征向量映射到类别概率。
输出层:输出最终的预测结果。
Xception模型通过引入深度分离卷积操作,减少了计算量和参数数量,提高了模型的准确性和效率。这种设计使得Xception模型在许多计算机视觉任务中表现出优异的性能,特别是在大规模数据集上。

训练集占比75%,测试集占比25%,所有模型按照相同的数据集配比进行实验对比分析,计算准确率、精确率、召回率和F1值四种指标。结果详情如下所示:

{"InceptionV2": {"accuracy": 0.9440745672436751,"precision": 0.9435216621921879,"recall": 0.9468699233421537,"f1": 0.9439142835792981},"InceptionV3": {"accuracy": 0.8841544607190413,"precision": 0.8825698119466523,"recall": 0.8870460205081474,"f1": 0.8823524188634222},"Xception": {"accuracy": 0.9214380825565912,"precision": 0.9187727980921828,"recall": 0.9226904977653273,"f1": 0.919376200605818}
}

简单介绍下上述使用的四种指标:

准确率(Accuracy):即分类器正确分类的样本数占总样本数的比例,通常用于评估分类模型的整体预测能力。计算公式为:准确率 = (TP + TN) / (TP + TN + FP + FN),其中 TP 表示真正例(分类器将正例正确分类的样本数)、TN 表示真负例(分类器将负例正确分类的样本数)、FP 表示假正例(分类器将负例错误分类为正例的样本数)、FN 表示假负例(分类器将正例错误分类为负例的样本数)。

精确率(Precision):即分类器预测为正例中实际为正例的样本数占预测为正例的样本数的比例。精确率评估分类器在预测为正例时的准确程度,可以避免过多地预测假正例。计算公式为:精确率 = TP / (TP + FP)。

召回率(Recall):即分类器正确预测为正例的样本数占实际为正例的样本数的比例。召回率评估分类器在实际为正例时的识别能力,可以避免漏掉过多的真正例。计算公式为:召回率 = TP / (TP + FN)。

F1 值(F1-score):综合考虑精确率和召回率,是精确率和召回率的调和平均数。F1 值在评估分类器综合表现时很有用,因为它同时关注了分类器的预测准确性和识别能力。计算公式为:F1 值 = 2 * (精确率 * 召回率) / (精确率 + 召回率)。 F1 值的取值范围在 0 到 1 之间,值越大表示分类器的综合表现越好。

为了能够直观清晰地对比不同模型的评测结果,这里对其进行可视化分析,如下所示:

从实验对比分析结果来看:Inceptionv2取得了最优的效果,Xception模型的效果次之,而Inceptionv3的效果最差,不过相较于前面其他系列的模型,这三款模型的效果都是表现很不错的了。

这个分析评测结果仅供参考,大家在实际项目开发中可以参考这组实验,不过也可以基于自己的数据集开发全系列的模型来综合对比选取最优的模型作为生产环境的模型。

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

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

相关文章

ubuntu 22 安装 node,npm,vue

1:安装 nodejs sudo apt update curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - sudo apt update && sudo apt install -y nodejs node -v 2:安装npm sudo npm install n -g npm -v 3:安装vite npm install vite -g 4:运行vue 把项目拷贝到…

OpenAI正式推出GPT商店 ChatGPT团队订阅服务一并推出

2024年1月11日消息,据外媒报道,如上周在给开发者的邮件中所宣布的一样,因ChatGPT而名声大噪的人工智能公司OpenAI,在本周正式推出了GPT商店,供用户分享和发现个性化的ChatGPT,同时他们也推出了面向各种不同…

用C语言实现贪吃蛇游戏!!!

前言 大家好呀,我是Humble,不知不觉在CSND分享自己学过的C语言知识已经有三个多月了,从开始的C语言常见语法概念说到C语言的数据结构今天用C语言实现贪吃蛇已经有30余篇博客的内容,也希望这些内容可以帮助到各位正在阅读的小伙伴…

雨云VPS搭建PalWorld服务器,幻兽帕鲁开服联机教程(Windows),0基础保姆级教程

雨云VPS用Windows系统搭建幻兽帕鲁私服,PalWorld开服联机教程,零基础保姆级教程,本教程使用一键脚本来搭建幻兽帕鲁服务端,并讲了如何配置游戏参数,如何更新服务端等。 最近这游戏挺火,很多人想跟朋友联机…

实体关系抽取与属性补全的技术浅析

目录 前言1. 实体关系抽取2 实体关系抽取的方法2.1 基于模板的方法2.2 基于监督学习的关系抽取2.3 基于深度学习的关系抽取2.4 基于预训练语言模型的关系抽取 3 属性补全3.1 属性补全任务简介3.1 抽取式属性补全3.2 生成式属性补全 4 未来发展趋势结语 前言 在信息爆炸时代&am…

用甘特图有效管理多个项目进度

当公司或组织同时承担多个项目时,合理规划各项目的时间节点与资源分配对确保高效完成至关重要。采用甘特图可以直观地展示多个项目的时间进程、关键里程碑以及资源分配情况,便于从宏观层面全面把控各项目的动态。 在线甘特图软件 zz-plan.com 提供了非常强大的时间轴规划功能,支…

漏洞复现-万户OA text2Html 任意文件读取(附漏洞检测脚本)

免责声明 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的…

Cesium介绍及3DTiles数据加载时添加光照效果对比

一、Cesium简介 Cesium原意是化学元素铯,铯是制造原子钟的关键元素,通过命名强调了Cesium产品专注于基于时空数据的实时可视化应用。熟悉GIS开发领域的读者都知道,Cesium是一个用于创建3D地理空间应用程序的开源JavaScript库,它允…

《SPSS统计学基础与实证研究应用精解》视频讲解:数据缺失值处理

《SPSS统计学基础与实证研究应用精解》4.12 视频讲解 视频为《SPSS统计学基础与实证研究应用精解》张甜 杨维忠著 清华大学出版社 一书的随书赠送视频讲解4.12节内容。本书已正式出版上市,当当、京东、淘宝等平台热销中,搜索书名即可。本书旨在手把手教会…

GraphicsMagick 的 OpenCL 开发记录(二十五)

文章目录 如何修复R6025 pure virtual function call问题 <2022-04-19 周二> 如何修复R6025 pure virtual function call问题 运气好&#xff0c;修复了这个问题。即&#xff0c;在ExitInstance()函数中调用一下MagickLib::DestroyMagick();即可。 过程中也经历了尝试…

用友U8接口-部署和简要说明(1)

概括 本专栏文章目的说明对目前用友U8ERP接口介绍对底层接口二次封装的介绍 说明 过去发布过介绍U8接口文章简介&#xff0c;参考以下链接。 U8接口开发方式 本专栏文章与下面的HTTP接口相辅相成&#xff0c;主要是写给正在使用&#xff0c;或未来使用本套接口的开发人员&am…

JDK8新特性(二)

接着上一章&#xff0c;我们继续学习jdk8新特性 目录 一、Optional 1.使用 1.1创建对象 1.2安全消费值 1.3获取值 1.4安全获取值 1.5过滤 1.6判断 1.7数据转换 二、函数式接口 1.常见函数式接口 2.常用的默认方法 三、方法引用 1. 推荐用法 2.基本格式 3.语法详解…

ESP32 操作AT24C32或AT24C64

AT24C32或AT24C64两款芯片容量不一样&#xff0c;其他都一样。程序无法动态识别容量AT24C32容量32K&#xff0c;地址范围0x~0x7FFF.AT24C64容量64K,地址范围0x~0xFFFF 电气参数 电压2.7V-5.5V IIC通信 有引脚控制数据保护 有引脚可以配置IIC的地址。 每个page 32字节 1百…

二叉树计算 - 华为OD统一考试

OD统一考试&#xff08;C卷&#xff09; 分值&#xff1a; 200分 题解&#xff1a; Java / Python / C 题目描述 给出一个二叉树如下图所示&#xff1a; 6 / \ 7 9 \ / -2 6 请由该二叉树生成一个新的二叉树&#xff0c;它满足其树中的每个节点将包含原始树中的左子树和右子树…

30岁以就业为目标学前端,快歇着吧;反之50岁都不晚。

Hi&#xff0c;我是贝格前端工场&#xff0c;首先声明声明我们不搞前端培训&#xff0c;有很多老铁在留言中问我关于前端学习的问题&#xff0c;最普遍的一个问题就是30岁以后学前端晚了吗&#xff1f;今天借着此篇文章回答一下。 一、30岁学前端的三种人 首先抛开年龄不说&am…

【EI会议征稿通知】第三届能源、电力与电气国际学术会议(ICEPET 2024)

第三届能源、电力与电气国际学术会议&#xff08;ICEPET 2024&#xff09; 2024 3rd International Conference on Energy, Power and Electrical Technology 第三届能源、电力与电气国际学术会议&#xff08;ICEPET 2024&#xff09;由西华大学主办&#xff0c;西华大学能源…

C语言系列-浮点数在内存中的存储

&#x1f308;个人主页: 会编程的果子君 ​&#x1f4ab;个人格言:“成为自己未来的主人~” 目录 浮点数在内存中的存储 浮点数的存储 浮点数存的过程 浮点数取的过程 题目解析 浮点数在内存中的存储 常见的浮点数&#xff1a;3.14159.1E10等&#xff0c;浮点数家族包括&…

Linux文本三剑客---grep

grep&#xff08;从文本或字符串种过滤特定内容。&#xff09; 格式&#xff1a;Usage: grep [OPTION]... PATTERNS [FILE]... 常用选项&#xff1a; -E 等价于 egrep 扩展正则 -i 忽略大小写 -w 匹配单词 -o 仅显示匹配内容 -r 递归匹配 -c 统计匹配的行数 -v 取反 -n 行号 -A…

仰暮计划|“老师说我其实很聪明,就是家里太穷了没条件,不然我现在也是……”

吴桂荣老人回忆录 在我外婆家的时候&#xff0c;我跟几位老奶奶坐在门口一起聊天&#xff0c;我询问她们是否能帮助我完成一份作业&#xff0c;她们笑着答应了&#xff0c;最后我选择了其中的一位老奶奶作为了解对象&#xff0c;她邀请我去家中交谈。通过了解&#xff0c;我得知…

HCIA学习第四天:静态路由与动态路由

静态路由&#xff1a; 选路原则&#xff1a;尽量选择路径最短的路由条目 扩展配置&#xff1a; 1、负载均衡&#xff1a;当路由器访问同一个目标且目标且目标具有多条开销相似的路径时&#xff0c;可以让设备将流量拆分后延多条路径同时进行传输&#xff0c;以达到叠加带宽的…