猫狗分类,猫狗大战

项目全部代码在文章末尾

1、任务描述

Cats vs. Dogs(猫狗大战)数据集下载地址为https://www.kaggle.com/c/dogs-vs-cats/data。这个数据集是Kaggle大数据竞赛某一年的一道赛题,利用给定的数据集,用算法实现猫和狗的识别。 其中包含了训练集和测试集,训练集中猫和狗的图片数量都是12500张且按顺序排序,测试集中猫和狗混合乱序图片一共12500张。

卷积神经网络(CNN)是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一。卷积神经网络具有表征学习能力,能够按其阶层结构对输入信息进行平移不变分类,因此也被称为“平移不变人工神经网络”不使用深度学习框架,用numpy基础代码来构建自己的深度学习网络。

2、数据预处理

为了加速训练算法的收敛速度,一般都会采用一些数据预处理技术卷积神经网络的输入特征需要进行标准化处理。在将学习数据输入卷积神经网络前,需在通道或时间/频率维对输入数据进行归一化,若输入数据为像素,也可将分布于0-1的原始像素值归一化至0-255区间。输入特征的标准化有利于提升卷积神经网络的学习效率和表现

首先将图片转化成为了RGB格式,RGB就是我们对颜色的一种标准化白色在电脑上的组成就是255.255.255,相对的黑色就是0.0.0这是在电脑上颜色数值代码然后将图片调整为28*28大小,resize是opencv库中的一个函数,主要起到对图片进行缩放的作用。以下代码就将原图片转化为宽和长分别为2828的图片

image= image_list[i]

image = cv2.imread(image)

image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

image = cv2.resize(image, (28, 28))

这里是将一组图像矩阵image重建为新的矩阵reshape()是数组array中的方法,作用是将数据重新组织我们不知道image的shape到底是什么,第一个参数未知,但是后面的形状参数知道,即[28,28]故把第一个参数设为-1,然后第一个可以根据真实的形状自适应得出当前情况下第一个参数的值。

image=image.reshape(-1,28,28)

 3、网络结构

网络结构如下所示

    conv - relu - conv- relu - pool -

    conv - relu - conv- relu - pool -

    conv - relu - conv- relu - pool -

affine - relu - dropout - affine - dropout - softmax

conv层是卷积层,是网络结构的关键。卷积层的功能是对输入数据进行特征提取,其内部包含多个卷积核,组成卷积核的每个元素都对应一个权重系数和一个偏差量,类似于一个前馈神经网络的神经元。卷积层演示过程

relu是隐藏层的激活函数,功能是把卷积层输出结果做非线性映射。CNN采用的激励函数一般为ReLU(The Rectified Linear Unit/修正线性单元),它的特点是收敛快,求梯度简单,但较脆弱,图像如下

 

pool是池化层,在卷积层进行特征提取后,输出的特征图会被传递至池化层进行特征选择和信息过滤。池化层包含预设定的池化函数,其功能是将特征图中单个点的结果替换为其相邻区域的特征图统计量。池化层选取池化区域与卷积核扫描特征图步骤相同,由池化大小、步长和填充控制

affine是全连接层,卷积神经网络中的全连接层等价于传统前馈神经网络中的隐含层。全连接层位于卷积神经网络隐含层的最后部分,并只向其它全连接层传递信号。特征图在全连接层中会失去空间拓扑结构,被展开为向量并通过激励函数

dropout层用于减少过拟合。dropout是指深度学习训练过程中,对于神经网络训练单元,按照一定的概率将其从网络中移除,注意是暂时,对于随机梯度下降来说,由于是随机丢弃,故而每一个mini-batch都在训练不同的网络。过拟合是深度神经网(DNN)中的一个常见问题:模型只学会在训练集上分类,这些年提出的许多过拟合问题的解决方案,其中dropout具有简单性而且效果也非常良好。

softmax函数,又称归一化指数函数。它是二分类函数sigmoid在多分类上的推广,目的是将多分类的结果以概率的形式展现出来。

 4、实验结果和分析

参数的训练花费了2个小时,处理了两万张图片。测试集精度在第十次迭代达到高峰,随后略微下降,考虑到应该是过拟合问题,所以把迭代次数改为了12次。

超参数的取值

filter_size:3

pad:1

stride:1

第一次训练精度

开始:50%

结束:92%

迭代次数:20

第一次测试精度

开始:50%

结束:78%

迭代次数:20

第二次训练精度

开始:50%

结束:80%

迭代次数:12

第二次测试精度

开始:50%

结束:78%

迭代次数:12

 代码:

 链接:https://pan.baidu.com/s/1Kz4adoDhJ0DYuqgybmq_RQ
提取码:cdmg

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

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

相关文章

Cats vs. Dogs(猫狗大战)数据集处理

猫狗大战数据集 Cats vs. Dogs(猫狗大战)数据集下载地址为https://www.kaggle.com/c/dogs-vs-cats/data。这个数据集是Kaggle大数据竞赛某一年的一道赛题,利用给定的数据集,用算法实现猫和狗的识别。 其中包含了训练集和测试集&a…

宠物管理|养犬登记|宠物识别|智慧城市监控|城市犬类管理系统

关键词:宠物识别、宠物面部识别、宠物管理、宠物社交、宠物培训、宠物保险、鼻纹识别、宠物登记、宠物比赛、宠物走失、宠物用品、智慧宠物; “犬类管理”正日益成为城市治理的重要话题之一。 据最新数据,2020年全国犬数量为5222万只&#…

一文读懂物联网大数据产业链

原文地址 大数据开启了一个大规模生产、分享和应用数据的时代,它给技术和商业带来了巨大的变化。麦肯锡研究表明,在医疗、零售和制造业领域,大数据每年可以提高劳动生产率0.5-1个百分点。物联网时代,大数据在核心领域的渗透速度有…

专访智齿科技徐懿丨企服公司四要素:智能、融合、产品复杂度、客单价

关注52AI,做AI的行业领先者。QQ人工智能行业交流群:626784247. 01 徐懿认为:客服企业的两大核心要素是“融合”以及“智能”,围绕这两点,该领域所有公司将被划分为四个象限,而客服行业未来的趋势一定是向着…

大数据的产业链分析,大数据完整的产业链构成

大数据的产业链分析大数据完整的产业链构成,可分为标准与规范、数据安全、数据采集、数据存储与管理、数据分析与挖掘、数据运维以及数据应用几个环节,覆盖了数据从产生到应用的整个生命周期。 大数据的产业链分析 1数据标准与规范 大数据标准体系是开展…

Tableau 聚合计算 - 分组求和(sum、fixed、include的使用)

一、聚合计算例子 有以下数据: // 计算1 SUM(IF [shuxue]123 then [yingyu] END)// 计算2 IF [shuxue]123 then {fixed [shuxue]: SUM([yingyu])} END// 计算3 IF [shuxue]123 then {SUM([yingyu])} END// 计算4 {fixed [shuxue]: SUM([yingyu])}// 计算5 {include…

我的一些关于商业计划书的经验

一年了,我一直在写一个关于传媒的商业计划书,着急要写个商业计划书,才发现这个事情还真是经验活,加上时间紧,最后搞的也不太好。回头自己系统的学习了一下理论知识包括各式。我曾问我 之前的一个导师说这个东西怎么写&…

商业计划书简单了解

《商业计划书制作与演示》章节测试答案 笔记课程来源:学习通:北京科技大学《商业计划书制作与演示》 第一章、商业计划书基础知识 大学生创业能力结构模型 商业计划书定义 商业计划书,是创业公司、企业或项目单位为了达到招商融资和其它发展…

[创业之路-57] :商业计划书BP如何书写?总体框架!

引言: BP (Buiness Plan) ,即商业计划书,本质上还是一份计划,是一份商业计划,即一种关于如何赚钱的计划,是一份通过组建公司,运营项目,进而赚钱的项目计划。 什么是商业?…

如何写一篇给天使投资人看的《商业计划书》?

转自:https://www.sohu.com/a/164233213_259030 笔者遇到过形形色色的创业者。总体来说,创业者要么把写商业计划书想的太简单,要么就是想得太难,很少有创业者去实实在在地了解商业计划书的写法和内在逻辑。 1.商业计划书本质是什…

Github api 请求速率说明和请求限制说明,使用认证token增加请求次数

有能力的可以看官方文档:Resources in the REST API - GitHub Docs GitHub 对每小时可以发送的请求数量有限制。通常,GitHub API的标准限制为: 未经身份验证 - 每个原始 IP 地址每小时60个请求;已验证 – 每个用户每小时可发送 5…

浏览器同域名请求的最大并发数限制

当我们在浏览网页的时候,对浏览速度有一个重要的影响因素,就是浏览器的并发数量。并发数量简单通俗的讲就是,当浏览器网页的时候同时工作的线程数量。 如果同时只有2个并发连接数数量,那网页打开的时候只能依赖于这2条线程&#…

postman点击一次连续发送多个请求

使用场景:postman有两个请求,每次调其他业务接口时都需要先执行这两个,我嫌太麻烦了得一个个点,怎么整? 这是准备操作的两个请求: 点击这个按钮,打开界面如下两个图 点击左下角的RUN即可看到你…

CHROME浏览器发送HTTP最大请求并发数限制

一、先上结论: ①同一域名下,同一GET请求的并发数是1,也就是说上一个请求结束,才会执行下一个请求,否则置入队列等待发送; ②同一域名下,不同GET/POST请求的并发数量是6。当发送的请求数量达到…

.net Core中如何限制接口请求次数

.net core中如何限制接口请求次数 像AspNetCoreRateLimit这种轮子我前面有给大家介绍过,今天就不说了,我们来聊聊背后的原理,欢迎各位大佬指正! 像我们经常看的一些APi请求接口网站: 拿请求国外主要城市的七日接口举例…

后台限制请求访问次数的实现

目录 背景 ExpiringMap 限制请求次数应用示例 pom依赖 注解类定义 切面定义 Controler示例 示例展现情况 背景 最近搞接口服务器,对兄弟团队提供数据接口,由于对接生产数据,担心小伙伴把我的数据库玩死,于是想着搞个请求限…

chatgpt赋能python:Python怎么AI绘画

Python怎么AI绘画 随着人工智能和机器学习技术的不断发展,Python成为了其中最常用的语言之一。人工智能已经满足了许多人的兴趣,并已经成为一个行业。其中,AI绘画是大家热衷的领域之一。 介绍 AI绘画是一种利用人工智能和机器学习方法创造…

GPT-4开源平替miniGPT-4来了,仅需23G显存单机可run,附论文、项目代码地址

来源 | 新智元 微信号:AI-era 先是ChatGPT的发布给世界带来了一点小小的NLP震撼,随后发布的GPT-4更是破圈计算机视觉,展现了非凡的多模态能力。 不光能读懂人类的梗,给个手绘草图甚至可以直接写出网站的代码,彻底颠覆…

3天近一万Star!MiniGPT-4来了!看图聊天,不在话下!

点击下方卡片,关注“CVer”公众号 AI/CV重磅干货,第一时间送达 点击进入—>【计算机视觉】微信技术交流群 转载自:机器之心 GPT-4 已经发布一个多月了,但识图功能还是体验不了。来自阿卜杜拉国王科技大学的研究者推出了类似产品…

【全网首发】万字长文全面了解 GPT-4

北京时间今天凌晨1点,openai发布了全网期待已久的GPT-4。 GPT-4的看点都有哪些呢? 逻辑推理,强到可以代替你考律师啦角色扮演,cosplay认定角色不轻易被忽悠多模态,可以看到图片啦 (图片功能暂时不对外&…