keras как заменить метод load_data () - PullRequest
0 голосов
/ 21 июня 2020
# example of loading the mnist dataset
from keras.datasets.mnist import load_data
# load the images into memory
(trainX, trainy), (testX, testy) = load_data()

Как я могу go заменить метод load_data моими собственными изображениями?

Я предполагаю, что данные X - это изображение, а данные y - это метка, хотя я не уверен, как упаковать это для моей собственной базы данных.

Он поступает в виде отдельного файла за раз или в виде огромной сетки изображений?

Ответы [ 2 ]

0 голосов
/ 21 июня 2020

Из документации файл сохраняется как *.npz файл, тип файла, в котором вы можете сохранить несколько массивов numpy. Вы можете прочитать об этом здесь . Например:

from tempfile import TemporaryFile
outfile = TemporaryFile()
x = np.arange(10)
y = np.sin(x)

np.savez(outfile, x, y)
_ = outfile.seek(0) # Only needed here to simulate closing & reopening file
npzfile = np.load(outfile)
npzfile['arr_0']
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

Чтобы ответить на ваш вопрос, загруженный вами набор данных mnist представляет собой один файл и называется mnist.npz.

0 голосов
/ 21 июня 2020

Да, вы были правы, x - для изображений, а y - для этикеток. Изображения имеют размер 28x28 пикселей в оттенках серого, а метки - от 0 до 9. На этой странице есть дополнительная информация.

Из того, что я могу сказать, все, что вам нужно сделать, это импортировать свои изображения (используя такой модуль, как PIL), либо убедитесь, что изображения имеют шкалу серого 28x28, либо сделайте это. обработка в python. Преобразуйте изображения в массивы numpy, а затем формируйте массив в форме num_of_imagesx28x28. этот массив может быть передан дальше. Для лейблов сделайте то же самое.

Вот что я думаю ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...