Keras 2 API 文档 / 内置小型数据集 / 路透社新闻电讯分类数据集

路透社新闻电讯分类数据集

[source]

load_data 函数

tf_keras.datasets.reuters.load_data(
    path="reuters.npz",
    num_words=None,
    skip_top=0,
    maxlen=None,
    test_split=0.2,
    seed=113,
    start_char=1,
    oov_char=2,
    index_from=3,
    cache_dir=None,
    **kwargs
)

加载路透社新闻电讯分类数据集。

这是包含 11,228 条来自路透社的新闻电讯数据集,标记了 46 个主题。

该数据集最初是通过解析和预处理经典的 Reuters-21578 数据集生成的,但预处理代码不再随 TF-Keras 一起打包。更多信息请参阅此 GitHub 讨论

每条新闻电讯都编码为一个词索引列表(整数)。为方便起见,词语按其在数据集中的总频率进行索引,例如,整数“3”表示数据中第 3 个最常用的词。这使得可以快速执行过滤操作,例如:“只考虑前 10,000 个最常用的词,但排除前 20 个最常用的词”。

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

参数

  • path: 数据缓存位置(相对于 ~/.keras/dataset)。
  • num_words: 整数或 None。词语按其出现频率(在训练集中)进行排序,只保留前 num_words 个最常用的词。任何频率较低的词将以序列数据中的 oov_char 值表示。如果为 None,则保留所有词。默认值为 None
  • skip_top: 跳过前 N 个出现频率最高的词(这些词可能信息量不大)。这些词将以数据集中的 oov_char 值表示。0 表示不跳过任何词。默认值为 0
  • maxlen: 整数或 None。最大序列长度。任何更长的序列都将被截断。None 表示不进行截断。默认值为 None
  • test_split: 介于 0.1. 之间的浮点数。用作测试数据的数据集比例。0.2 表示将数据集的 20% 用作测试数据。默认值为 0.2
  • seed: 整数。用于可重现的数据混洗的种子。
  • start_char: 整数。序列的开头将用此字符标记。0 通常是填充字符。默认值为 1
  • oov_char: 整数。词汇表外字符。因 num_wordsskip_top 限制而被剔除的词将替换为此字符。
  • index_from: 整数。实际词语的索引将从该索引开始向上偏移。
  • cache_dir: 数据集本地缓存目录。如果为 None,则默认为 ~/.keras/datasets
  • **kwargs: 用于向后兼容。

返回值

  • 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)。

注意:“词汇表外”字符仅用于在训练集中出现过但由于未达到 num_words 阈值而未包含在内的词。从未在训练集中出现但在测试集中的词语将被简单地跳过。


[source]

get_word_index 函数

tf_keras.datasets.reuters.get_word_index(path="reuters_word_index.json")

检索一个字典,该字典将词语映射到其在路透社数据集中的索引。

实际词索引从 3 开始,其中 3 个索引保留用于:0(填充)、1(开始)、2(词汇表外)。

例如,'the' 的词索引是 1,但在实际训练数据中,'the' 的索引将是 1 + 3 = 4。反之,要使用此映射将训练数据中的词索引转换回词语,索引需要减去 3。

参数

  • path: 数据缓存位置(相对于 ~/.keras/dataset)。

返回值

词索引字典。键是词字符串,值是其索引。