Нормализация данных Keras — как использовать с различными данными?

#keras #normalization

Вопрос:

У меня есть некоторые вопросы о нормализации данных и наилучших методах нормализации, когда входные данные содержат разные данные с разными значениями min-max.

Так, например, у меня есть набор данных, содержащий 3 вектора:

 [
    [0 ... 1],
    [-100, 100],
    [0, 3333]
]
 

Векторы содержат минимальные и максимальные значения, встречающиеся в наборе данных поезда.

В этом случае я бы использовал какой-нибудь простой MinMaxScaler для стандартизации воздействия каждого ввода.

но:

Что делать, если я знаю, что в тестовом наборе данных некоторые из вышеперечисленных значений могут быть больше/меньше? Так, например, в наборе данных поезда у нас есть вышеуказанный набор данных, а в наборе данных тестирования/проверки у нас будет набор данных, как показано ниже:

 [
    [0 ... 1],
    [-100, 100],
    [0, 6666]
]
 

В этом случае использование MinMaxScaler будет работать очень плохо и станет причиной сбоя в работе сети.

Что в этом случае? Предлагает ли Keras какое-либо решение для этой цели? Или, может быть, использовать какой-то адаптивный метод?

Или, может быть, простое решение:

Установите некоторое максимальное значение для третьего вектора, например 10 000? ((при подгонке масштабирования) предположим, что значение никогда не превысит предел) Но да, в этом случае сеть никогда не увидит «максимальное» значение ввода во время обучения…

Хорошего дня!