基于卷积神经网络的分类算法

news2024/12/23 23:44:42

基于卷积神经网络的分类算法

  • 基于卷积神经网络的分类算法
    • 运行环境
    • Python环境
    • PyTorch环境
    • Django环境
    • 数据预处理

基于卷积神经网络的分类算法

应用机器学习模型采用卷积神经网络,部署在Web环境中,通过Fashion-MNIST数据集进行模型训练和改进,实现网页端服装类别精准识别。

运行环境

在Windows系统中下载Anaconda,下载地址为:https://www.anaconda.com/。本项目采用Python 3.6版本,完成Anaconda的安装并配置好环境变量,也可以下载虚拟机在Linux环境下运行代码。

Python环境

在Windows系统中下载Anaconda,下载地址为:https://www.anaconda.com/。本项目采用Python 3.6版本,完成Anaconda的安装并配置好环境变量,也可以下载虚拟机在Linux环境下运行代码。

PyTorch环境

打开Anaconda Prompt,添加清华仓库镜像,输入命令:
conda config–add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config–add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config-set show_channel_urls yes
创建新的Python环境,名称为PyTorch,Python版本号要对应,输入命令:
conda create-n pytorch python=3.6
有需要确认的地方,都输入y。
在Anaconda Prompt中激活PyTorch环境,输入命令:
activate pytorch
在PyTorch官网查看可供选择PyTorch版本、系统版本、安装方式以及编程语言,获得下载命令,还可选择CUDA加速,下载地址为:https://pytorch.org/get-started/locally/。
选用Stable 1.4版本、Windows系统、conda安装包、Python语言以及CUDA 10.1版本的PyTorch,在Anaconda Prompt中安装,输入命令:
conda install pytorch torchvision cudatoolkit=10.1
有需要确认的地方,都输入y,安装完成。

Django环境

打开Anaconda Prompt,激活PyTorch环境,输入命令:
activate pytorch
下载Django,输入命令:

  conda install Django

有需要确认的地方,都输入y,安装完成后检查是否成功安装了Django,输入命令:
conda list
若有显示结果,则Django成功安装。

数据预处理

Fashion-MNIST是德国研究机构Zalando Research推出的一个全新的数据集,其中训练集包含60000个样例,测试集包含10000个样例,每个样本都为28×28的单通道灰度图像。该数据集的样本来自日常穿着的时尚单品,共10个类别,分别为[0]T-shirt/top、[1]Trouser、[2]Pullover、[3]Dress、[4]Coat、[5]Sandal、[6]Shirt、[7]Sneaker、[8]Bag、[9]Ankle boot。
Fashion-MNIST在PyTorch中是内置的数据集,对datasets类使用API下载即可,对于datasets类的对象,可以使用DataLoader()方法加载数据集。

Alt

由于在线下载速度较慢,可以选择离线导入数据集,在GitHub上下载Fashion-MNIST,下载地址为:https://github.com/zalandoresearch/fashion-mnist。在当前工作目录下创建\FashionMNIST文件夹,并在其中创建\raw和\processed文件夹,将下载好的数据集放入\raw下,再使用上述代码导入即可,如图2-5所示。
为丰富图像训练集,更好地提取图像特征,提高模型泛化能力,防止模型过拟合,提升模型的健壮性,需要对训练集数据进行增强。常用的方式有旋转图像、剪切图像、改变图像色差、扭曲图像特征、改变图像尺寸大小、增强图像噪音等。在PyTorch中,tansforms类提供了20余种图像处理的方法,可用于数据增强。

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

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

相关文章

Scrum敏捷研发和项目管理

Scrum是全球运用最广泛的敏捷管理框架,Leangoo基于Scrum框架提供了一系列的流程和模板,可以帮助敏捷团队快速启动Scrum敏捷开发。 Leangoo完美支持Scrum敏捷框架,它提供了灵活的敏捷模板和极致的协作体验,可以让团队快速上手&am…

勒索病毒-特洛伊木马变种

​一、病毒简介 文件名称: 457d9e4773f45954449ee5913d068fdbb3d8e5689019688e7bce901467e5473a 文件类型(Magic): PE32 executable (GUI) Intel 80386, for MS Windows, UPX compressed 文件大小: 410.00KB SHA256: 457d9e4773f…

从界面设计谈系统的贯穿性

系统的贯穿性? 在日常的开发中。单个模块之间的编码和设计起来相对比较简单。但是作为“软件工程”中的一个环节,系统的贯穿性往往被忽视。 现在系统关于贯穿性存在的问题 开发过程往往按照模块划分,分为不同的人开发。针对开发的者来说&…

【UE】将存档的值显示在控件蓝图上

上一篇博客(【UE】保存游戏的demo)已经实现了存档功能,本篇博客介绍的是如何将存档的值显示在控件蓝图上。 效果 可以看到我们存档的值显示在文本控件上 步骤 1. 新建一个蓝图类,父类为“HUD” 命名为“NewHudClassBP” 2. 在世…

Linux设备驱动开发 - 虚拟时钟Clock驱动示例

By: fulinux E-mail: fulinuxsina.com Blog: https://blog.csdn.net/fulinus 喜欢的盆友欢迎点赞和订阅! 你的喜欢就是我写作的动力! 目录 1. 概述2. virtual clock设计3. 虚拟时钟驱动3.1. provider驱动3.1.1. provider platform device部分3.1.2. prov…

645. 错误的集合|||697. 数组的度|||448. 找到所有数组中消失的数字

645. 错误的集合 题目 集合 s 包含从 1 到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合 丢失了一个数字 并且 有一个数字重复 。 给定一个数组 nums 代表了集合 S 发生错误后的…

JVM系列(七) JVM 垃圾收集器

我们知道JVM会回收垃圾,但是每种垃圾收集器的收集机制和收集的方法都不一样,今天我们讨论下几种垃圾回收机制 1.按照垃圾区域划分垃圾收集器 我们可以按照垃圾存在的区域来划分垃圾收集器,垃圾在堆内的区域分为 新生代垃圾老年代垃圾新生代老年代混合垃圾 按照这三种区域类…

一个Linux驱动工程师必知的内核模块知识

最简单的驱动 #include <linux/init.h> #include <linux/kernel.h> #include <linux/module.h>static int __init my_init(void) {printk("my_init\n");return 0; }static void __exit my_exit(void) {printk("my_exit\n"); }module_in…

数据结构总结——Java

1 链表(Linked List) 1.1 单项链表(Singly Linked List) 1.1.1 图例 1.1.2 Java实现 public class ListNode {// 保存值int val;// 保存指针ListNode next;// 构造函数们public ListNode() {}public ListNode(int val) {this.val val;}public ListNode(int val, ListNode n…

Linux基础命令-scp远程复制文件

Linux基础命令-seq打印数字序列 前言 有时候不可避免的需要将文件复制到另外一台服务器上&#xff0c;那么这时就可以使用scp命令远程拷贝文件&#xff0c;scp命令是基于SSH协议&#xff0c;在复制的过程中数据都是加密过的&#xff0c;会比明文传输更为安全。 一.命令介绍 …

Vue ElementUI Axios 前后端案例(day02) 之 ElementUI

ElementUI Element&#xff0c;一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库 组件 1.Layout 布局 通过基础的 24 分栏&#xff0c;迅速简便地创建布局。 就是这样分了24个格子 基础布局 使用单一分栏创建基础的栅格布局。 通过 row 和 col 组件&…

keepalived+nginx安装

欢迎使用ShowDoc&#xff01; 1、安装基础包&#xff1a; yum -y install libnl libnl-devel 2、上传包&#xff1a; tar -zxvf keepalived-2.0.20.tar.gz -C /data/imas/base_soft mkdir -p /data/imas/base_soft/keepalived cd /data/imas/base_soft/keepalived-2.0.20 .…

基于Netty开发IM即时通讯之群聊功能

本篇涉及的群聊核心功能&#xff0c;大致如下所示&#xff1a; 1&#xff09;登录&#xff1a;每个客户端连接服务端的时候&#xff0c;都需要输入自己的账号信息&#xff0c;以便和连接通道进行绑定&#xff1b;2&#xff09;创建群组&#xff1a;输入群组 ID 和群组名称进行…

【云原生进阶之容器】第六章容器网络6.5.2--Calico网络架构详述

《云原生进阶之容器》专题索引: 第一章Docker核心技术1.1节——Docker综述第一章Docker核心技术1.2节——Linux容器LXC第一章Docker核心技术1.3节——命名空间Namespace第一章Docker核心技术1.4节——chroot技术第一章Docker核心技术1.5.1节——cgroup综述

从 Dev 和 Ops 视角出发,聊聊 DevSecOps 的 What / Why / How

近日&#xff0c;极小狐和 TA 的朋友们相聚上海&#xff0c;开展了一场技术 Meetup&#xff0c;从 DevSecOps 的 What、Why、How 出发&#xff0c;通过分享真实应用案例&#xff0c;与参会者交流 DevSecOps 的实践过程和落地经验。 本文整理自极狐(GitLab) 资深云原生架构师郭旭…

爬虫日常-selenium登录12306,绕过验证

文章目录 前言代码设计 前言 hello兄弟们&#xff0c;这里是无聊的网友。愉快的周末过去了&#xff0c;欢迎回到学习频道。书接上文&#xff0c;我们说到了再用selenium登录12306时遇到了滑块验证的问题。当前的网站几乎每家都会在登录模块添加一个认证&#xff0c;来规避各种…

js 同步与异步

一、js 执行机制 JavaScript语言的一大特点就是单线程&#xff0c;即&#xff08;同一时间只能做一件事情&#xff09;。因为JavaScript是为了处理页面中用户的交互&#xff0c;以及操作DOM而诞生的。比如对某个DOM元素进行添加和删除操作。不能同时进行&#xff0c;应该先进行…

一文带你通俗理解23种软件设计模式(推荐收藏,适合小白学习,附带C++例程完整源码)

作者&#xff1a;翟天保Steven 版权声明&#xff1a;著作权归作者所有&#xff0c;商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处 一、设计模式是什么&#xff1f; 设计模式是为了解决在软件开发过程中遇到的某些问题而形成的思想。同一场景有多种设计模式可以应…

第18章_JDK8-17新特性(上)

第18章_JDK8-17新特性&#xff08;上&#xff09; 讲师&#xff1a;尚硅谷-宋红康&#xff08;江湖人称&#xff1a;康师傅&#xff09; 官网&#xff1a;http://www.atguigu.com 本章专题与脉络 1. Java版本迭代概述 1.1 发布特点&#xff08;小步快跑&#xff0c;快速迭代…

安装TortoiseGit后桌面文件夹和用户文件夹中显示红色叹号

✨ TortoiseGit作为一个很好用的git图形化工具&#xff0c;能够很方便的进行版本控制。但在安装这个软件之后就遇到了一个问题。 &#x1f440;问题描述&#xff1a;我们知道&#xff0c;安装TortoiseGit之后,当自己版本库中文件发生更改&#xff0c;但还没有提交到受控库时&am…