Углубленное изучение с помощью Keras MNIST Database Query Зачем конвертировать из int в float? - PullRequest
0 голосов
/ 06 апреля 2020

Я изучаю Deep Learning с помощью книги по Deep Learning с Python

Здесь следующий код конвертируется в float

train_images = train_images.reshape((60000, 28 * 28))
train_images = train_images.astype('float32') / 255
test_images = test_images.reshape((10000, 28 * 28))
test_images = test_images.astype('float32') / 255

Можете ли вы сказать мне, почему это требуется преобразовать в диапазон с плавающей точкой (0..1). в то время как исходные данные поезда были в виде массива (60000, 28, 28) типа uint8 со значениями в интервале [0, 255]?

Спасибо за вашу помощь

1 Ответ

0 голосов
/ 06 апреля 2020

Чаще всего используется 32-битная точность при обучении нейронной сети, поэтому в какой-то момент данные обучения должны быть преобразованы в 32-битные числа с плавающей запятой. Поскольку набор данных легко помещается в ОЗУ, мы могли бы также немедленно преобразовать его в плавающее.

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