第2章 2.1 数据加载与预处理.pptx

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

数据加载与预处理;深度学习通常包含数据加载与预处理、构建网络、训练网络和性能评估几个主要的步骤。

PyTorch为每个步骤提供了一些相应的函数,使得可以方便快速地进行深度学习。

本章以猫狗分类的例子介绍PyTorch深度学习的通用流程。

深度学习的通用流程如图所示,分为以下6个步骤。

;深度学习的通用流程分为以下6个步骤。

数据加载,加载用于训练深度神经网络的数据,使得深度神经网络能够学习到数据中潜在的特征,可以指定从某些特定路径加载数据。

数据预处理,对加载的数据进行预处理,使之符合网络的输入要求,如标签格式转换、样本变换等。数据形式的不统一将对模型效果造成较大的影响。

构建网络,根据特定的任务使用不同的网络层搭建网络,若网络太简单则无法学习到足够丰富的特征,若网络太复杂则容易过拟合。

;编译网络,设置网络训练过程中使用的优化器和损失函数,优化器和损失函数的选择会影响到网络的训练时长、性能等。

训练网络,通过不断的迭代和批训练的方法,调整模型中各网络层的参数,减小模型的损失,使得模型的预测值逼近真实值。

性能评估,计算网络训练过程中损失和分类精度等与模型对应的评价指标,根据评价指标的变化调整模型从而取得更好的效果。

;;数据的形式多种多样,因此读取数据的方法也是多种多样。

在一个图像分类的任务中,图像所在的文件夹即为图像的类别标签,则需要把图片和类别标签都读入计算机中,同时还需对图像数据进行张量变换和归一化等预处理。

PyTorch框架中提供了一些常用的数据读取和预处理的方法。;在PyTorch框架中,torchtext.utils包中的类可以用于数据加载。

常见加载的数据的方式包括从指定的网址(url)下载数据、加载本地的表格数据和直接读取压缩文件中的数据。;download_from_url类可以从对应网址下载文件并返回所下载文件的存储路径。

download_from_url类的语法格式如下。

torchtext.utils.download_from_url(url,path=None,root=.data,overwrite=False,hash_value=None,hash_type=sha256)

download_from_url类的常用参数及其说明如表所示。

;unicode_csv_reader类用于读取csv数据文件,unicode_csv_reader类的语法格式如下。

其中的参数“unicode_csv_data”指的是csv数据文件。

torchtext.utils.unicode_csv_reader(unicode_csv_data,**kwargs)

;extract_archive类用于读取压缩文件中的数据。

extract_archive类的语法格式如下。

torchtext.utils.extract_archive(from_path,to_path=None,overwrite=False)

extract_archive类的常用参数及其说明如表所示。

;;在深度学习的时候,可以事先单独将图片进行清晰度、画质和切割等处理然后存起来以扩充样本,但是这样做效率比较低下,而且不是实时的。

接下来介绍如何用PyTorch对数据进行处理。

数据预处理分为图像数据预处理和文本数据预处理。;在PyTorch框架中,处理图像与视频的torchvision库中常用的包及其说明如表所示。

;1.组合图像的多种变换处理

Compose类可以将多种图像的变换处理组合到一起,Compose类语法格式如下。

其中参数“transforms”接收的是由多种变换处理组合成的列表。

torchvision.transforms.Compose(transforms)

;常见的PIL图像包括以下几种模式。

L(灰色图像)

P(8位彩色图像)

I(32位整型灰色图像)

F(32位浮点灰色图像)

RGB(8位彩色图像)

YCbCr(24位彩色图像)

RGBA(32位彩色模式)

CMYK(32位彩色图像)

1(二值图像)

;在PyTorch框架下能实现对PIL图像和torch张量做变换处理的类较多,此处仅介绍常用的6个类。

CenterCrop类

CenterCrop类可以裁剪给定的图像并返回图像的中心部分。

如果图像是torch张量,形状将会是[…,H,W],其中省略号“…”是一个任意尺寸。

如果输入图像的大小小于期望输出图像的大小,则在输入图像的四周填充0,然后居中裁剪。

CenterCrop类的语法格式如下,其中参数“size”指的是图像的期望输出大小。

torchvision.transforms.CenterCrop(size);ColorJitter类

ColorJitter类可以随机改变

文档评论(0)

学海无涯而人有崖 + 关注
实名认证
内容提供者

教师资格证、人力资源管理师持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年06月11日上传了教师资格证、人力资源管理师

1亿VIP精品文档

相关文档