Шаг 112.
Глубокое обучение на Python. Начало работы с нейронными сетями: классификация и регрессия. Предсказание цен на дома: пример регрессии. Подготовка данных

    На этом шаге мы рассмотрим особенности подготовки данных, в частности, ее нормализацию.

    Было бы проблематично передать в нейронную сеть значения, имеющие разные диапазоны. Она, конечно, сможет автоматически адаптироваться к разнородным данным, однако это усложнит обучение. На практике к таким данным принято применять нормализацию: для каждого признака во входных данных (столбца в матрице входных данных) из каждого значения вычитается среднее по этому признаку, а разность делится на стандартное отклонение. В результате признак центрируется по нулевому значению и имеет стандартное отклонение, равное единице. Такую нормализацию легко выполнить с помощью NumPy.


Пример 4.24. Нормализация данных
mean = train_data.mean(axis=0)
train_data -= mean
std = train_data.std(axis=0)
train_data /= std
test_data -= mean
test_data /= std

    Обратите внимание, что величины, используемые для нормализации контрольных данных, вычисляются с использованием обучающих данных. Никогда не следует использовать в работе какие-либо значения, вычисленные по контрольным данным, даже для таких простых шагов, как нормализация.

    На следующем шаге мы рассмотрим конструирование модели.




Предыдущий шаг Содержание Следующий шаг