Я пытаюсь провести анализ данных о правах доступа компании. Я пытаюсь объединить разные группы в группы в соответствии с доступом, который у них есть, а затем определить, является ли чей-то доступ подозрительным, потому что ни один из его групповых пиров не имеет такого доступа. Я просто ищу алгоритм, который может помочь мне в этом. Это в значительной степени система обратных рекомендаций (т. Е. Netflix, Amazon). Вот простой пример:
Person 1 has access to files A, B, E
Person 2 has access to files A, B
Person 3 has access to files A, B
Person 4 has access to files C, D, E
Person 5 has access to files C, D
Person 6 has access to files C, D, E
Я хочу иметь возможность распознать, не классифицируя это (неконтролируемое обучение), что Лица 1-3 и Лица 4-6 функционируют одинаково и, вероятно, находятся в одной группе из-за их одинакового доступа к файлам (кластеризация). После того, как мы идентифицируем кластеры, мы отмечаем аномальный доступ, который является человеком 1 с файлом E.
Я попытался заглянуть в рубиновую библиотеку AI4R, но зашел в тупик. Есть так много алгоритмов на выбор. Мне просто нужно указать правильный путь. Спасибо.