畅游人工智能之海--Keras教程之数据集(二)

畅游人工智能之海--Keras教程之数据集(二)

今天我们来继续说明Keras剩下的三个内置数据集。

路透社新闻分类数据集

数据集来源于路透社的 11,228 条新闻文本,总共分为 46 个主题。

load_data功能
1
2
3
4
5
6
7
8
9
10
11
12
tf.keras.datasets.reuters.load_data(
path="reuters.npz", #将数据缓存到的位置(相对于~/.keras/dataset)
num_words=None, #整数或无。根据单词出现的频率(在训练集中)对单词进行排名,并且仅num_words保留最频繁出现的单词。频率较低的单词将oov_char在序列数据中显示为值。如果为None,将保留所有单词。默认为无,因此保留所有单词。
skip_top=0, #跳过前N个最频繁出现的单词(可能没有信息)。这些单词将oov_char在数据集中显示为 值。默认值为0,因此不会跳过任何单词。
maxlen=None, #int或无。最大序列长度。更长的序列将被截断。默认为无,表示没有截断。
test_split=0.2, #在0到1之间浮动。要用作测试数据的数据集的分数。默认值为0.2,表示将数据集的20%用作测试数据。
seed=113, #int。种子,用于可重复的数据改组。
start_char=1, #整数。序列的开始将以该字符标记。默认为1,因为0通常是填充字符。
oov_char=2, #整数。言外之意。由于num_words或 skip_top限制而被删掉的单词将被替换为该字符。
index_from=3, #int。使用此索引和更高的索引来索引实际单词。
**kwargs
)

该功能用于加载路透社新闻分类数据集,这最初是通过解析和预处理经典的Reuters-21578数据集生成的,但是预处理代码不再与Keras打包在一起。

与 IMDB 数据集一样,每条新闻都被编码为一个词索引的序列(相同的约定)。为了方便起见,单词以数据集中的整体频率索引,因此,例如整数“ 3”编码数据中第3个最频繁出现的单词。这样就可以进行快速过滤操作,例如:“仅考虑前10,000个最常用的词,而排除前20个最常用的词”。

按照惯例,“ 0”不代表特定单词,而是用于编码任何未知单词。

返回值:

Numpy数组的元组:(x_train, y_train), (x_test, y_test)

x_train,x_test:序列列表,它是索引(整数)列表。如果num_words参数是特定的,则最大可能的索引值为num_words - 1。如果maxlen指定了参数,则最大可能的序列长度为maxlen

y_train,y_test:整数标签(1或0)的列表。

get_word_index功能
1
2
3
tf.keras.datasets.reuters.get_word_index(
path="reuters_word_index.json" #将数据缓存到的位置(相对于~/.keras/dataset)
)

检索将单词映射到路透数据集中索引的字典。

返回值:

单词索引字典。键是单词字符串,值是它们的索引。

Fashion-MNIST时尚物品数据集

这是一个包含10个时尚类别的60,000张28x28灰度图像的数据集,以及10,000张图像的测试集。该数据集可以用作MNIST的替代品。类标签是:

标签 描述
0 T恤/上衣
1 裤子
2 拉过来
3 连衣裙
4 涂层
5 凉鞋
6 衬衫
7 运动鞋
8
9 脚踝靴
load_data功能
1
tf.keras.datasets.fashion_mnist.load_data()

加载Fashion-MNIST数据集。

返回值:

Numpy数组的元组:(x_train, y_train), (x_test, y_test)

x_train,x_test:uint8个形状为(num_samples,28,28)的灰度图像数据数组。

y_train,y_test:uint8个形状为(num_samples,)的标签数组(范围为0-9的整数)。

Boston房价回归数据集

数据集来自卡内基梅隆大学维护的 StatLib 库。

样本包含 1970 年代的在波士顿郊区不同位置的房屋信息,总共有 13 种房屋属性。 目标值是一个位置的房屋的中值(单位:k$)。

load_data功能
1
2
3
4
5
tf.keras.datasets.boston_housing.load_data(
path="boston_housing.npz", #本地缓存数据集的路径(相对于~/.keras/datasets)
test_split=0.2, #保留为测试集的数据部分
seed=113 #用于在计算测试拆分之前对数据进行混洗的随机种子
)

加载波士顿房屋数据集。

返回值:

Numpy数组的元组:(x_train, y_train), (x_test, y_test)

x_train,x_test:具有(num_samples, 13) 包含训练样本(对于x_train)或测试样本(对于y_train)的形状的numpy数组。

y_train,y_test(num_samples,)包含目标标量的numpy形状数组。目标是通常在10到50之间的浮动标量,以k $表示房价。

谢谢大家的观看!