Олимпиадный тренинг

Задача . DBSCAN для обнаружения аномалий


Задача

Темы:

У вас есть данные о транзакциях (сумма, время). Большинство транзакций нормальные (малые суммы), но есть необычные (большие суммы или в необычное время).
 

1. Сгенерируйте 50 нормальных транзакций + 5 подозрительных

Пример данных

Транзакция: (сумма, час_дня)

(100, 14), (120, 15), (95, 13), ...  ← Нормальные

(500, 3)                           ← Подозрительная!
 

2. Используйте matplotlib и алгоритм DBSCAN

3. Покажите точки разными цветами (по кластерам)

4. Шум отметьте чёрным цветом

5. Нарисуйте окружности радиуса eps вокруг ядровых точек

При решении задачи ЗАПРЕЩЕНО использовать любые библиотеки, за ИСКЛЮЧЕНИЕМ библиотеки math

В качестве ответа прикрепите файл .py или .ipynb.

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя