机器学习实战:模型构建与应用
上QQ阅读APP看书,第一时间看更新

4.1 TFDS入门

让我们通过几个有关如何使用TFDS的简单例子来阐明它如何提供了一个标准的数据接口。

你可以使用一条pip命令来安装它:

安装完成之后,你可以使用tfds.load来访问数据集,将所需要的数据集的名字传递给它。例如,如果你想使用Fashion MNIST,可以使用以下代码:

确保检查你从tfds.load命令返回获取的数据类型—打印元素的输出将是数据中原本存在的不同分割。在这个例子中,它是一个字典,其中包含两个字符串:testtrain。这些是可用的分割。

如果你想将这些分割加载到一个包含真实数据的数据集中,可以在tfds.load中简单指定想要的分割:

在这个例子中,你会看到输出是DatasetAdapter,你可以通过它来迭代以检查数据。这个适配器的一个很好的功能是可以通过简单地调用take(1)来获得第一个记录。下面检查数据:

第一个print的输出会展示每一个记录中元素的类型是一个词典。当打印字典中的键值时,我们会看到在这个图像集合中类型是imagelabel。因此,如果你想检查数据集中的一个值,可以运行如下代码:

你会看到image的输出是一个其值的范围为0~255的28×28的数组(在tf.Tensor中),代表像素的强度。label会输出tf.Tensor(2, shape=(), dtype=int64),表示图像在数据集中的类型是2。

在加载数据集时,有关数据集的数据可以使用with_info参数得到,如下所示:

打印info会为你提供数据集内容的详细信息。例如,对Fashion MNIST,你会看到类似如下的输出:

从以上代码中你可以看到详细信息,例如分割(就像之前展示的)和数据集中的特征,以及一些额外的信息(例如引用、描述和数据集的版本)。