Я пытаюсь реализовать простой алгоритм, который будет вычислять PageRank в целевой сети, сгенерированной и обработанной с помощью NetworkX. Однако я хотел бы добавить простое изменение: вместо того, чтобы начальный PageRank для каждого узла был равен 1 / n, где n - количество узлов в графе, я хочу, чтобы каждый узел имел ранг 1.
До сих пор я пытался проверить официальную документацию на PageRank, но я не нашел ничего, что могло бы помочь. Видимо, параметр 'personalization' также бесполезен. Я пытался использовать nstart, но безрезультатно. Код в настоящее время выглядит так:
import networkx as nx
D=nx.DiGraph()
D.add_weighted_edges_from([('1','2',0.5),('1','3',0.5)])
nst = {n: 1 for n in D.nodes}
print(nx.pagerank(D, alpha = 0.95, nstart=nst))
В настоящее время ранги, присвоенные каждому узлу в конце расчета, по-прежнему составляют до 1, в то время как они должны составлять до 3.
Возможно ли с самого начала такое сделать? Должен ли я искать в другом месте для реализации такого алгоритма? Могут ли быть проблемы с конвергенцией, если такое изменение применяется? Заранее спасибо.