@SergeySerge11

Как нормализовать растянутые данные не линейной нормализацией?

Вот пример есть вот такая последовательность (1, 1, 3, 5, 90) Как ее привести в масштаб (0,1) НО НЕ ЛИНЕЙНО. Прочитал тонну уже способов. но там нету главного, какие-то z-признаки, дисперсии. Но там Нету финального ответа. (0,1)
Если линейно нормализировать, то все 4 точки будут ~0, а 90->1. А мне нужно как-то экспоненциально нормализовать, так что бы 3, 5 были близки 0.4 0.5.
Хоть один пример есть как из (1, 1, 3, 5, 90) получить что-то вроде (0, 0, 0.2, 0.4, 1)?
Вот например, такой способ, находиться Z для этого набора это будет (- 0.54, 0.54, -0.48,-0.42, 2 ) что это за числа, что поменялось? Что с ними делать
d6f6eaeb59b5f50d2da21d30ba1a7fb1.png
  • Вопрос задан
  • 83 просмотра
Пригласить эксперта
Ответы на вопрос 2
Alexandroppolus
@Alexandroppolus
кодир
Если тебе надо "увеличивать маленькие значения", то можно использовать какую-нибудь выпуклую функцию для каждого значения, например кубический корень. Ну и потом, в конце, всё равно понадобится четвертая формула, дабы впихнуть всё в отрезок [0, 1]

Или даже так: сначала линейно нормализовать по четвертой формуле, а потом применить некоторую функцию F, возрастающую и выпуклую на отрезке [0, 1], такую что F(0)=0, F(1)=1. Например кубический корень.
Ответ написан
Комментировать
mayton2019
@mayton2019
Bigdata Engineer
В науке и технике используются логарифм и экспонента. Только надо подобрать коэффициенты.
Результат сохраняет монотонность. Но малые значения усиливаются а большие ослабляются.

Если посмотреть в отрицательную ось - то подходит любая функция с насыщением (гиперболический
тангенс или сигмоид) которые используются в нейро-сетсях для мягкого срезания больших величин.

Тоже сохраняет мототонность.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы