Я понял принцип хеширования и использую его при нормализации моих данных (содержание слов). Результаты, которые я получаю из моего процесса хэширования, находятся в диапазоне [0;N]
. Поскольку мы знаем, что обучение модели более эффективно для данных в диапазоне [0;1]
, я тогда попытаюсь нормализовать хеш-данные. Вот когда я не уверен в своей логике.
Разве я не должен восстанавливать хеш-данные непосредственно из диапазона [0;1]
? В этом случае я не знаю, как это сделать ... или я должен использовать функцию нормализации, как я знаю? В этом случае, какой из них будет рекомендован?
Вот мой хэш-процесс: я использую Java-функцию hashCode()
, которая дает мне результаты в диапазоне [0;N]
.
int hashedString = word.toString().hashCode() % N + N;
А по поводу процесса нормализации: в настоящее время я использую Normalize.Standardize
DeepLearning4j, который дает мне диапазон [-2;2]
приблизительно.