У меня есть пользователи, и у них есть связанные навыки, которые оцениваются от 0 до 10 (0 - ужасно, 10 - потрясающе), например:
Есть пользователь UA (вверху слева), и у него есть два соответствующих навыка SA (вверху справа) и SC (внизу справа). Аналогично, в UB есть SB, а в UC - SC.
Каждый навык для пользователя имеет рейтинг (например, UA SA равен 9/10, UA SC 8/10 и UC SC 7/10).
Я хочу реализовать поиск на этом графике - например, , учитывая, что я ищу людей с навыком SC, я хочу найти, кто из существующих пользователей лучше всего подходит.
Я изучал PageRank раньше, но я не уверен, что делать с этим типом проблемы. Я обнаружил здесь , что можно применить PageRank к системе рекомендаций, но я не могу понять, как использовать его в этой конкретной ситуации. Текущий рабочий процесс, как я понимаю:
- Исходя из навыка, к которому относится запрос, оставьте только тех пользователей, у которых есть связанные навыки (в нашем примере мы ищем SC , поэтому мы оставляем только UA и UC и удалите UB и его ребер к навыкам из графика)
- Каким-то образом ранжировать пользователей с помощью PageRank.
Я также нашел эту библиотеку python под названием networkX. Кто-нибудь знает, возможно ли решить эту проблему с помощью этой библиотеки?