绪论:数据工程师是从传统软件工程师向东说念主工智能场合转型的最好切入点之一。数据工程师的职责经常是为东说念主工智能名目采集和准备高质地的考验数据集,包括从互联网上获得公开数据、或自行采集、清洗、整理数据集。尽管看似粗略,但数据工程师的职责至关环节,因为数据质地径直影响模子的性能,数据准备不当可能导致模子成就失败。本文接下来的几个末节将主要西宾在谷歌的TensorFlow平台上何如使用自带数据集、第三方公开数据集以及自界说的数据集来救援模子考验。
在本文的前几节中,咱们推行上仍是使用了多种数据集来考验模子,从Keras自带的Fashion MNIST数据集,到需要下载并预处置的图像数据集如“Horses or Humans”和“Dogs vs. Cats”。咱们可能仍是意志到,获得考验模子的数据有许多不同的当作。
相干词,许多专学派据集条目咱们在设想模子架构之前,先掌抓各式特定规模的手段。TensorFlow Datasets (TFDS)的狡计便是简化数据的获得形状,使数据更易于使用,因为悉数获得数据的预处置门径和将数据转化为TensorFlow友好体式的操作皆已为咱们准备好。
在第1和第2篇中,咱们仍是看到了Keras处置Fashion MNIST数据集的这种理念。回归一下,其时咱们只需这么作念就不错获得数据:
data = tf.keras.datasets.fashion_mnist
(training_images, training_labels), (test_images, test_labels) = data.load_data()
TFDS基于这种理念,极地面膨大了可用数据集的数目和各样性。可用数据集的列表正在不休增长,涵盖以下类别:
• 音频:包括语音和音乐数据
• 图像:从“Horses or Humans”这么的基础学习数据集到如糖尿病视网膜病变检测等高档磋议数据集
• 狡计检测:包括COCO、Open Images等
• 结构化数据:包括“泰坦尼克号幸存者”、亚马逊褒贬等
• 选录生成:包括CNN和Daily Mail新闻、科学论文、wikiHow等
• 文本:包括IMDb褒贬、当然言语问题等
• 翻译:包括各式翻译考验数据集
• 视频:包括“Moving MNIST”、“星际争霸”等
请看重,TensorFlow Datasets是寂寥于TensorFlow的装置包,因此在运行任何示例之前务必先装置它!若是咱们使用的是Google Colab,它仍是预装了。
本章将先容TFDS过火何如大大简化考验进程。咱们将探索其底层的TFRecord结构,这一结构不错在不同类型的基础数据间提供一致性。咱们还将了解何如使用TFDS的索要-雷同-加载(ETL)模式,以高效地处置大皆数据来考验模子。
启动使用TFDS
让咱们通过一些粗略的例子来望望何如使用TFDS,以展示它何如为咱们提供数据的尺度接口,不论数据类型何如。
若是你需要装置它,不错通过以下pip敕令完成:
pip install tensorflow-datasets
装置完成后,你不错通过tfds.load走访一个数据集,只需传入所需数据集的称号。举例,若是你思使用Fashion MNIST数据集,不错使用以下代码:
import tensorflow as tf
import tensorflow_datasets as tfds
mnist_data = tfds.load("fashion_mnist")
for item in mnist_data:
print(item)
务必检查从tfds.load敕令复返的数据类型——打印item的输出将是数据援救自己可用的不同分割。在这个例子中,它是一个包含两个字符串“test”和“train”的字典。这些是可用的分割。
若是你思将这些分割加载到包含推行数据的数据援救,只需在tfds.load敕令中指定所需的分割,举例:
mnist_train = tfds.load(name="fashion_mnist", split="train")
assert isinstance(mnist_train, tf.data.Dataset)
print(type(mnist_train))
在这种情况下,你会看到输出是一个DatasetAdapter,你不错遍历它来检查数据。这个适配器的一个公正是不错径直调用take(1)来获得第一笔纪录。让咱们来检查一下数据的表情:
for item in mnist_train.take(1):
print(type(item))
print(item.keys())
第一个print的输出会清晰每笔纪录中的item类型是一个字典。当咱们打印其键时,不错看到在此图像数据援救,类型是“image”和“label”。是以,若是咱们思检查数据援救的某个值,不错这么作念:
for item in mnist_train.take(1):
print(type(item))
print(item.keys())
print(item['image'])
print(item['label'])
你会看到“image”的输出是一个28 × 28的数组(在一个tf.Tensor中),取值范畴是0–255,示意像素强度。“label”会输出为tf.Tensor(2, shape=(), dchk=1&type=int64),伙同该图像在数据援救属于类别2。
在加载数据集时,还不错使用with_info参数来获得数据集的有关信息,举例:
mnist_test, info = tfds.load(name="fashion_mnist", with_info=True)
print(info)
打印info会提供数据集内容的审视信息。举例,关于Fashion MNIST,你会看到如下输出:
tfds.core.DatasetInfo(
name='fashion_mnist',
version=3.0.0,
description='Fashion-MNIST是一个包含Zalando商品图像的数据集,包含6万个考验样本和1万个测试样本。每个样本是一个28x28的灰度图像,与10个类别中的某个标签有相干。',
homepage='https://github.com/zalandoresearch/fashion-mnist',
features=FeaturesDict({
'image': Image(shape=(28, 28, 1), dchk=1&type=tf.uint8),
'label': ClassLabel(shape=(), dchk=1&type=tf.int64, num_classes=10),
}),
total_num_examples=70000,
splits={
'test': 10000,
'train': 60000,
},
supervised_keys=('image', 'label'),
citation="""@article{DBLP:journals/corr/abs-1708-07747,
author = {Han Xiao and
Kashif Rasul and
Roland Vollgraf},
title = {Fashion-MNIST: a Novel Image Dataset for Benchmarking Machine Learning Algorithms},
journal = {CoRR},
volume = {abs/1708.07747},
year = {2017},
url = {http://arxiv.org/abs/1708.07747},
archivePrefix = {arXiv},
eprint = {1708.07747},
timestamp = {Mon, 13 Aug 2018 16:47:27 +0200},
biburl = {https://dblp.org/rec/bib/journals/corr/abs-1708-07747},
bibsource = {dblp computer science bibliography, https://dblp.org}
""",
redistribution_info=,
)
在这里,你不错看到数据集的审视信息,比如前边演示过的分割和数据援救的特征,还有非凡的信息如援用、描写和数据集版块。
本节主要为TFDS的使用作念了一个初学先容,接下来的两章将审视评释如安在推行场景中使用它。TFDS是TensorFlow Datasets的简称。TensorFlow Datasets是一个异常为东说念主工智能和机器学习模子成就提供救援的库,内含多种预处置好的数据集,浅易用户径直在TensorFlow中使用,免去了编写复杂的数据导入和预处置代码的门径。
上一篇:油气田勘察设备必备画图软件
下一篇:缩膜机有什么功能
- 12月24日基金净值:汇添富双利债券A最新净值2.0457,涨0.25%2024-12-25
- 12月24日基金净值:易方达MSCI中国A50互联互通ETF最新净值0.8391,涨1.45%2024-12-25
- 12月24日基金净值:东方红睿泽三年抓有羼杂A最新净值0.8869,涨1.17%2024-12-25
- 12月24日基金净值:中原MSCI中国A50互联互通ETF最新净值0.8388,涨1.46%2024-12-25
- 《听说3》手游官网:战略 PVP 新田地,多元激战畅享听说32024-12-25
- 四圣封神赏金勇者福利平台传世元神御兽天晶攻略2024-12-25