首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
01 | 课程介绍:AI进阶需要落地实战
02 | 内容综述:如何快速⾼效学习AI与TensorFlow 2
03 | TensorFlow 2新特性
04 | TensorFlow 2核心模块
05 | TensorFlow 2 vs TensorFlow 1.x
06 | TensorFlow 2落地应⽤
07 | TensorFlow 2开发环境搭建
08 | TensorFlow 2数据导入与使⽤
09 | 使用tf.keras.datasets加载数据
10 | 使用tf.keras管理Sequential模型
11 | 使用tf.keras管理functional API
12 | Fashion MNIST数据集介绍
13 | 使用TensorFlow2训练分类网络
14 | 行业背景:AI新零售是什么?
15 | 用户需求:线下门店业绩如何提升?
16 | 长期⽬标:货架数字化与业务智能化
17 | 短期目标:自动化陈列审核和促销管理
18 | 方案设计:基于深度学习的检测/分类的AI流水线
19 | 方案交付:支持在线识别和API调用的AI SaaS
20 | 基础:目标检测问题定义与说明
21 | 基础:深度学习在目标检测中的应用
22 | 理论:R-CNN系列二阶段模型综述
23 | 理论:YOLO系列一阶段模型概述
24 | 应用:RetinaNet 与 Facol Loss 带来了什么
25 | 应用:检测数据标注方法与流程
26 | 应用:划分检测训练集与测试集
27 | 应用:生成 CSV 格式数据集与标注
28 | 应用:使用TensorFlow 2训练RetinaNet
29 | 应用:使用RetinaNet检测货架商品
30 | 扩展:目标检测常用数据集综述
31 | 扩展:目标检测更多应用场景介绍
32 | 基础:图像分类问题定义与说明
33 | 基础:越来越深的图像分类网络
34 | 应⽤:检测SKU抠图与分类标注流程
35 | 应⽤:分类训练集与验证集划分
36 | 应⽤:使⽤TensorFlow 2训练ResNet
37 | 应用:使用ResNet识别货架商品
38 | 扩展:图像分类常用数据集综述
39 | 扩展:图像分类更多应⽤场景介绍
40 | 串联AI流程理论:商品检测与商品识别
41 | 串联AI流程实战:商品检测与商品识别
42 | 展现AI效果理论:使用OpenCV可视化识别结果
43 | 展现AI效果实战:使用OpenCV可视化识别结果
44 | 搭建AI SaaS理论:Web框架选型
45 | 搭建AI SaaS理论:数据库ORM选型
46 | 搭建AI SaaS理论:10分钟快速开发AI SaaS
47 | 搭建AI SaaS实战:10 分钟快速开发AI SaaS
48 | 交付AI SaaS:10分钟快速掌握容器部署
49 | 交付AI SaaS:部署和测试AI SaaS
50 | 使⽤TensorFlow 2实现图像数据增强
51 | 使⽤TensorFlow 2实现分布式训练
52 | 使⽤TensorFlow Hub迁移学习
53 | 使⽤@tf.function提升性能
54 | 使⽤TensorFlow Serving部署云端服务
55 | 使⽤TensorFlow Lite实现边缘智能
当前位置:
首页>>
技术小册>>
TensorFlow项目进阶实战
小册名称:TensorFlow项目进阶实战
### 12 | Fashion MNIST数据集介绍 在深度学习与计算机视觉领域,数据集扮演着至关重要的角色,它们是模型训练与评估的基石。在众多经典数据集中,Fashion MNIST以其简洁性、实用性和挑战性脱颖而出,成为初学者进阶至实际项目开发的理想起点。本章将深入介绍Fashion MNIST数据集,包括其背景、特点、结构、应用价值以及如何使用Python和TensorFlow框架来加载和处理这一数据集,为后续的模型训练与实验奠定坚实基础。 #### 12.1 引言 Fashion MNIST是Zalando(一家欧洲的在线时尚零售商)研究部门贡献的一个开源数据集,旨在替代传统的MNIST手写数字数据集,用于测试和比较各种机器学习算法在更复杂图像分类任务上的性能。与MNIST相似,Fashion MNIST也包含了70,000个灰度图像,但图像内容不再是简单的0-9数字,而是10类不同的衣物及配饰,如T恤、裤子、外套、鞋子等。这一转变使得Fashion MNIST成为检验模型在识别日常物品方面能力的有效工具,同时也增加了问题的复杂性和挑战性。 #### 12.2 数据集特点 - **类别多样性**:Fashion MNIST包含10个类别,分别是T恤/上衣、裤子、套头衫、连衣裙、外套、凉鞋、衬衫、运动鞋、包和靴子。这些类别不仅涵盖了常见的服饰类型,还考验了模型对细微差异(如不同款式的鞋子)的识别能力。 - **图像一致性**:所有图像均为28x28像素的灰度图,与MNIST保持一致,便于直接比较算法在不同数据集上的表现。 - **数据量适中**:包含60,000个训练样本和10,000个测试样本,既足够进行复杂的模型训练,又不会因为数据量过大而增加计算负担。 - **开源与易用性**:数据集开源且易于通过TensorFlow、PyTorch等主流深度学习框架直接加载,方便研究者与开发者使用。 #### 12.3 数据集结构 Fashion MNIST数据集通常分为两部分:训练集和测试集。训练集包含60,000个图像,用于模型的训练过程;测试集包含10,000个图像,用于评估模型在未见过的数据上的表现。每个图像都标记有对应的类别标签,从0到9,分别对应上述的10个类别。 数据集的存储格式通常是二进制文件(.idx3-ubyte),但现代深度学习库如TensorFlow提供了便捷的函数来直接加载这些文件为易于处理的NumPy数组或TensorFlow张量。 #### 12.4 数据集的应用价值 - **模型评估基准**:Fashion MNIST成为评估图像分类算法,特别是卷积神经网络(CNN)性能的一个重要基准。通过与现有方法的比较,可以快速评估新模型的优劣。 - **教学与研究**:由于其适中的数据量和清晰的类别定义,Fashion MNIST非常适合用于教学演示和初级研究,帮助学生和研究者理解图像分类的基本原理和深度学习的应用。 - **算法比较**:在相同的数据集上比较不同算法的性能,有助于揭示不同算法在处理特定类型问题时的优缺点,从而推动算法的发展和改进。 #### 12.5 使用TensorFlow加载Fashion MNIST 在TensorFlow中,可以通过`tensorflow.keras.datasets`模块中的`fashion_mnist`函数轻松加载Fashion MNIST数据集。以下是一个基本的加载和预处理步骤示例: ```python import tensorflow as tf from tensorflow.keras.utils import to_categorical # 加载数据集 fashion_mnist = tf.keras.datasets.fashion_mnist (train_images, train_labels), (test_images, test_labels) = fashion_mnist.load_data() # 归一化数据(将像素值从[0, 255]缩放到[0, 1]) train_images = train_images / 255.0 test_images = test_images / 255.0 # 转换标签为独热编码(one-hot encoding) train_labels = to_categorical(train_labels, num_classes=10) test_labels = to_categorical(test_labels, num_classes=10) # 此时,train_images和test_images是NumPy数组,shape为(样本数, 28, 28) # train_labels和test_labels是NumPy数组,shape为(样本数, 10),采用独热编码 ``` #### 12.6 数据集的可视化 为了更好地理解数据,对数据进行可视化是一个很好的习惯。以下是使用matplotlib库可视化Fashion MNIST数据集中部分图像的示例代码: ```python import matplotlib.pyplot as plt # 绘制前25个训练图像及其标签 plt.figure(figsize=(10, 5)) for i in range(25): plt.subplot(5, 5, i + 1) plt.xticks([]) plt.yticks([]) plt.grid(False) plt.imshow(train_images[i], cmap=plt.cm.binary) plt.xlabel(f'Class {train_labels[i].argmax()}') plt.show() ``` 这段代码将展示训练集中的前25个图像,并在每个图像下方显示其对应的类别标签(通过独热编码中的最大值索引确定)。 #### 12.7 结论 Fashion MNIST数据集以其独特的类别设置、适中的数据量和广泛的应用价值,成为深度学习初学者和研究者手中的宝贵资源。通过本章的介绍,我们了解了Fashion MNIST的背景、特点、结构以及如何在TensorFlow中加载和预处理这一数据集。接下来,读者可以利用这一数据集进行各种图像分类模型的训练与实验,进一步探索深度学习的奥秘。
上一篇:
11 | 使用tf.keras管理functional API
下一篇:
13 | 使用TensorFlow2训练分类网络
该分类下的相关小册推荐:
大模型应用解决方案-基于ChatGPT(上)
深入浅出人工智能(下)
ChatGLM3大模型本地化部署、应用开发与微调(中)
ChatGPT与提示工程(下)
AI时代架构师:ChatGPT与架构师(中)
ChatGPT与AIGC工具入门实战指南
玩转ChatGPT:秒变AI提问和追问高手(下)
巧用ChatGPT轻松学演讲(下)
区块链权威指南(上)
深度学习与大模型基础(下)
AIGC原理与实践:零基础学大语言模型(四)
AI-Agent智能应用实战(上)