Основные методы, используемые для прогнозирования ссылок на графике, задокументированном в пакете networkx «Алгоритм прогнозирования ссылок», включают в себя:
- jaccard_coefficient
- adamic_adar_index
Можно найти здесь https://networkx.github.io/documentation/networkx-1.10/reference/algorithms.link_prediction.html.
Проблема возникла, когда у меня два узла без каких-либо общих соседей, все эти алгоритмы выдают 0, что может привести к утечке данных при проверке моего машинного обучения. модель с данными тестирования.
Например, я превратил график в положительные и отрицательные выборки (проблема двоичного предсказания). Положительная ссылка (обозначена 1) пришла от краев существующего графа, где отрицательные ссылки генерируются случайным образом (обозначается 0). Отрицательная ссылка всегда выдает 0 в этих алгоритмах (jaccard_coefficient и adamic_adar_index), а положительная всегда> 0. Проблема сродни логистической регрессии.
Я также пробовал node2ve c, но не работал хорошо.
Данные тестирования, которые нам дали, включают в себя 4000 ссылок, причем 2000 соответствует действительности. И я обнаружил, что большинство из них (больше 3000) не имеют общих соседей.
Граф является неориентированным графом.