Używam networkx (biblioteka wykresów w pythonie) i znalazłem dokumentację mówiącą, że algorytm PageRank uwzględnia wagę krawędzi podczas oceniania, ale zastanawiałem się, czy większe grubości krawędzi były lepsze czy niższe?Jak ważone krawędzie wpływają na PageRank w siecix?
16
A
Odpowiedz
23
Krótko mówiąc, duże wagi są lepsze dla węzłów przychodzących.
PageRank działa na ukierunkowanym wykresie ważonym. Jeżeli strona A ma link do strony B, to wynik dla B rośnie, tj. Im więcej danych wejściowych ma strona B (węzeł), tym wyższy jest jej wynik.
Wikipedia article on PageRank w celu uzyskania dalszych szczegółów.
Edytuj: zróbmy eksperyment. Utwórz ukierunkowany wykres z 3 węzłami i dwoma skierowanymi krawędziami o równej wadze.
import networkx as nx
D=nx.DiGraph()
D.add_weighted_edges_from([('A','B',0.5),('A','C',0.5)])
print nx.pagerank(D)
>> {'A': 0.259740259292235, 'C': 0.3701298703538825, 'B': 0.3701298703538825}
Teraz zwiększyć masę (A, C) krawędzi:
D['A']['C']['weight']=1
print nx.pagerank(D)
>> {'A': 0.259740259292235, 'C': 0.40692640737443164, 'B': 0.3333333333333333}
Jak widać, węzeł C dostał wyższą ocenę ze wzrostem wagi krawędzi przychodzącej.
Powiązane problemy
- 1. Jak usunąć węzeł w siecix?
- 2. Dodaj nowy atrybut do krawędzi w siecix
- 3. „ważone” regresji w R
- 4. Jak ograniczenia ADO.NET DataTable wpływają na wydajność?
- 5. skrypt znajdujący pagerank domeny
- 6. Wpływają na to protokoły Clojure'a?
- 7. Ważone dopasowanie dwudzielne
- 8. Ważone najmniejsze kwadraty - R
- 9. suwak javascript ważone wartości
- 10. Jak Blur Div Krawędzie
- 11. Etykiety węzłów za pomocą siecix
- 12. Pogniecione krawędzie na obrazach renderowanych w Androidzie
- 13. Określone długości krawędzi w siecix/igraph (Python)
- 14. Czy niektóre RewriteCond wpływają na wiele zasad
- 15. Najlepszy sposób na ważone wyszukiwanie w wielu polach w mysql?
- 16. Czy fałszywe pobudki wpływają na Thread.sleep?
- 17. Jak mogę utworzyć krawędzie na obrazie na Androida?
- 18. Jak wykryć nieregularne krawędzie w obrazie?
- 19. Krawędzie z podpisami w WPF
- 20. Jak narysować równoległe krawędzie w Networkx/Graphviz
- 21. Jak automatyczne @syntezowane ivars wpływają na * prawdziwy * sizeof (MyClass)?
- 22. W jaki sposób statyczne zmienne składowe wpływają na rozmiar obiektu?
- 23. W Mysql, dlaczego nieużywane indeksy wpływają na plan zapytania?
- 24. Pamięć wirtualna i wyrównanie - w jaki sposób wpływają na siebie?
- 25. W jaki sposób pagerank jest obliczany w sposób rozproszony?
- 26. Czy ograniczenia klucza obcego wpływają na przekształcanie zapytań w Oracle?
- 27. Jak ustawić ważone najmniejsze kwadraty w r dla danych heteroscedastycznych?
- 28. PageRank curl połączenia za pomocą php
- 29. Jak wydłużyć krawędzie na wykresie sieciowym igraph (layout = fruchterman.reingold)?
- 30. kontrolujący krawędzie widoczne na wykresie sieci w igraph w R
Niesamowite dzięki, Max! – Lostsoul
Nie jestem pewien, czy "PageRank działa na ukierunkowanym wykresie ważonym" jest poprawny. Rozumiem, że zwykle krawędzie stosowane w PageRank nie są ważone, istnieje albo krawędź między węzłami, albo nie ma. Ma to sens, ponieważ nie można mieć połowy łącza między dwiema stronami. Chociaż wygląda na to, że metoda pagerank w networkx pozwala na ważenie krawędzi, tak jak mogą używać [TextRank] (http://digital.library.unt.edu/ark:/67531/metadc30962/m2/1/high_res_d /Mihalcea-2004-TextRank-Bringing_Order_into_Texts.pdf) (sekcja 2.2), który opiera się na PageRank. – jksnw
Dlaczego przypisujesz link większej wadze? Czy od wdrożenia zależy, w jaki sposób niektóre linki są warte więcej? (Jak linki w ciele a linki w komentarzach?) – Xeoncross