Я новичок в глубоком обучении и работаю над набором данных mnist в кератах.
Я использовал нормализацию как
tf.keras.utils.normalize(x_train, axis = 1)
Я не понимаю, о чем говорит аргумент осисредства.Вы можете помочь мне с этим?
keras.utils.normalize() функция вызывает numpy.linalg.norm(), чтобы вычислить норму и затем нормализовать входные данные.Поэтому данный аргумент axis передается в функцию norm() для вычисления нормы вдоль заданной оси.
keras.utils.normalize()
numpy.linalg.norm()
axis
norm()
Функция нормализации просто выполняет обычную нормализацию для повышения производительности:
Нормализация - это изменение масштаба данных из исходного диапазона, так что все значения находятся в диапазоне от 0 до 1.
В другом посте есть хорошее объяснение аргумента оси:
Что означает ось = -1 в keras.argmax?
Например:
Ваши данные имеют некоторую форму (19,19,5,80).Это означает: Ось = 0 - 19 элементов Ось = 1 - 19 элементов Ось = 2 - 5 элементов Ось =3 - 80 элементов
Ваши данные имеют некоторую форму (19,19,5,80).Это означает:
Кроме того, для тех, кто хочет углубиться, есть объяснение от Франсуа Шоле - автора Keras- на GitHub:
Для плотного слоя, всех слоев RNN и большинства других типов слоев по умолчанию используется ось = -1, Для слоев Convolution2D с dim_ordering = «th» (по умолчанию),используйте axis = 1, Для слоев Convolution2D с dim_ordering = «tf», используйте axis = -1 (то есть по умолчанию). https://github.com/fchollet/keras/issues/1921
https://github.com/fchollet/keras/issues/1921