Алгоритм анализа данных и определения выбросов

Есть некоторый набор данных по нескольким параметрам. Другими словами двумерный массив, где значения во вложенных массива - некоторые значения параметров. Изобразить можно так:

       / p1 / p2 / p3 /
-------------------------------
A    / 4   / 5   /  3   /
B    / 4   / 10 /  1  /
C    / 1   /  6  /  2  /

В данном случае у нас есть 3 вектора: А, В, С. У меня задача сложнее, параметров больше 20, различных векторов 1000+.

Задача: проанализировать эти данные, найти выбросы среди них.

Мне на ум приходит 2 идеи:

  1. Подсчитать косинусное расстояние между всеми векторами, однако что с этим делать дальше я не особо понимаю..
  2. Пройтись по каждому параметру, посмотреть среднеквадратическое отклонение, посмотреть выбросы по каждому параметру, но зачем...

Вопрос: как можно проанализировать датасет, что считать за выбросы и как их найти?


Ответы (1 шт):

Автор решения: passant

Ну, можно ждать, какие еще идеи придут на ум. А можно посмотреть, как люди решают вашу задачу, причем - в основном не по наитию, а после того, как изучат соответствующую теорию. Ключевое слово "Outliers detection" или "Anomalies detection" Можете начать отсюда:

Далее - по ссылкам.

Будут вопросы - обращайтесь.

→ Ссылка