1 / 35

Jeff Naruchitparames University of Nevada, Reno - CSE CS 790: Complex Networks, Fall 2010

A Graph-Based Approach to Link Prediction in Social Networks Using a Pareto-Optimal Genetic Algorithm. Jeff Naruchitparames University of Nevada, Reno - CSE CS 790: Complex Networks, Fall 2010. biological. social. 2. 3. 4. Social networks = Dynamic, judgmental environment

Download Presentation

Jeff Naruchitparames University of Nevada, Reno - CSE CS 790: Complex Networks, Fall 2010

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Graph-Based Approach to Link Prediction in Social Networks Using a Pareto-Optimal Genetic Algorithm Jeff Naruchitparames University of Nevada, Reno - CSE CS 790: Complex Networks, Fall 2010

  2. biological social 2

  3. 3

  4. 4

  5. Social networks = • Dynamic, judgmental environment • Affect friendships over time heterogeneous very dynamic 5

  6. 6

  7. 1-2 hop distance only • Friend-of-friend 7

  8. Multiple hops; >1 • Structural; purely graph-based • No explicit correlation between potential friends... 8

  9. Silva, et. al., • A Graph-based Recommendation System Using Genetic Algorithms, 2010 9

  10. 10

  11. 11

  12. Friends-of-Friends 2 hops Filter Order 12

  13. Filtering “It’s more probable that you know a friend of your friend than any other random person” Mitchell M., Complex Systems: Network Thinking, 2006. 13

  14. 14

  15. 15

  16. Indexes 16

  17. What’s missing? • Heterogeneity • Human behavior and preferences • Multiple hops 17

  18. My approach • Pretty much a filtering problem... 18

  19. My approach • Components (for filtering) • Betweenness centrality • Community detection • Clique Percolation Method (CPM) • Friends of friends • 10-dimensional Pareto-optimal genetic algorithm 19

  20. Betweenness Centrality 20

  21. Community Detection 21

  22. Remove duplicates • Remove our test cases • (More on this later...) 22

  23. The Genetic Algorithm Part 23

  24. Pareto Fronts 24

  25. The Features • # of shared friends • location • age range • general interest • music • attended same events • groups • movies • education • religion/politics 25

  26. Pareto Optimality • Localized to implementation of selection • Feature subset selection • We want to find the best combination of these subsets that can give us the best solutions for how we determine friendships 26

  27. Pareto Optimality and Feature Subset Selection 27

  28. A Point System 28

  29. Pareto Optimality • Compare with the test cases we removed earlier... • For all chromosomes in population, do: • If ALL test cases ≥ optimal Pareto front • Calculate fitness • Good to go • Else • Calculate fitness • Continue onto next chromosome 29

  30. Fitness Function • ∑ ∑ piln( fj)pi-1 n 10 i=1 j=1 30

  31. Continuing on with the Evolutionary Process • Apply fitness proportional selection • Randomly select 2 parents to mate • Apply 1-point crossover (82% chance) • Bit mutation (0.05% chance) • Do this until ALL test cases better than Pareto front OR fitness does not improve for 5 consecutive generations 31

  32. 1-Point Crossover 32

  33. Conclusion • Complex network theory + Genetic algorithm + social theory • Betweenness centrality • Community detection • Clique Percolation Method • Binary 10-dimensional Pareto-optimal genetic algorithm • Dominant, fitness proportional selection • Several levels of filtering and selection (aka filtering ☺) 33

  34. Future Work • Better fitness function (need to ask Sociologists) • Weighted chromosome for Pareto optimization (as opposed to binary) • Prove all this stuff actually works (sociology standpoint??) • Parallelize or GPU-ize the code (it’s in Python) 34

  35. 35

More Related