keras.datasets.imdb.py 源码分析
概述
IMDB 数据集:包含来自互联网电影数据库(IMDB)的 50 000 条严重两极分化的评论。数据集被分为用于训练的 25 000 条评论与用于测试的 25 000 条评论,训练集和测试集都包含 50% 的正面评论和 50% 的负面评论。
imdb.py 实现了IMDB 数据集文件下载加载,及数据预处理功能。
包含两个方法:load_data(数据加载)和get_word_index(字典加载)
load_data方法源码:
def load_data(path='imdb.npz', num_words=None, skip_top=0,
maxlen=None, seed=113,
start_char=1, oov_char=2, index_from=3, **kwargs):
- 处理原先版本的遗留问题,确保输入参数正确
#Legacy support
if 'nb_words' in kwargs:
warnings.warn('The `nb_words` argument in `load_data` '
'has been renamed `num_words`.')
num_words = kwargs.pop('nb_words')
if kwargs:
raise TypeError('Unrecognized keyword arguments: ' + str(kwargs))
- 获取imdb.npz
path = get_file(path,
origin='https://s3.amazonaws.com/text-datasets/imdb.npz',
file_hash='599dadb1135973df5b59232a0e9a887c')
这里的get_file方法是Keras自带的keras.utils.data_utils.get_file方法
- 读取文件,获取数据
with np.load(path) as f:
x_train, labels_train = f