workshops: friend recommendation with a target user in...

5
Friend Recommendation with a Target User in Social Networking Services Sundong Kim supervised by Jae-Gil Lee Expected graduation date: Feb, 2018 Korea Advanced Institute of Science and Technology, Daejeon, Korea {sundong.kim, jaegil}@kaist.ac.kr Abstract—Friend recommendation is one of the primary func- tions in social networking services. Suggesting friends has been done by calculating node-to-node similarity based on topological location in a network or contents on a user’s profile. However, this recommendation does not reflect the interest of the user. In this paper, we propose a friend recommendation problem in which the source user wants to get more attention from a special target. The goal of our friend recommendation is finding a set of nodes, which maximizes user’s influence on the target. To deliver this problem, we introduce information propagation model on online social networks and define two measures: influence and reluctance. Based on the model, we suggest an IKA(Incremental Katz Approximation) algorithm to effectively recommend relevant users. Our method is compared with topology-based friend recommendation method on synthetic graph datasets, and we show interesting friend recommendation behaviors depending on the topological location of users. I. I NTRODUCTION People use social networking services such as Facebook, Twitter, and Instagram extensively. Almost a billion users are active on such applications, on a daily basis. Several of these users send friend requests to others. One of the most important features of any social networking services is the ability to suggest friends [1], [2]. Each application uses its own algorithm to suggest probable friends to a user [3]. For example, an application might suggest people belonging to a group recently joined by the user, or people related to the user's current job or school. Although these recommendations help the user to form connections within their groups, or to suggest people that he/she probably knows, the results are not meant to help the connection between the user and his/her special target. In this paper, we propose a friend recommendation algorithm for scenarios in which the user wants to get more attention from a special target. Therefore, we intend to suggest friends who can facilitate information flow from the source to the target. For example, if a source node and a target node are not directly connected, suggesting intermediate nodes facilitate communication between them. Additionally, by suggesting the target’s neighboring nodes to the source node, we can increase the possibility of a direct connection. Figure 1(b) shows the probable changes to friend suggestions where a system catches a user’s willingness to get more attention from the target. Before tackling the recommendation problem, we model the process of information diffusion through social networks in which an article is shared with direct neighbors of an author, and propagates over the corresponding two-hop neighbors by sharing activities. Among the posts that the target node (a) Recommendation without consid- ering a target user (b) Recommendation considering a target user Fig. 1. Two concepts of friend recommendation receives, there might be some posts that originated from the source node, which we define as the source node’s influence over the target node. And we formulate a node suggestion problem in online social networks. The main objective is to maximize influence gain by establishing new connections and each recommendation should meet the reluctance threshold. To solve this problem, we propose an algorithm called Incremental Katz Approximation(IKA). In this algorithm, we first decrease the candidate set size, and then apply Monte- Carlo simulation to approximate the influence value. Using the approximation result, we update the random diffusion and calculate the influence by taking into account the effect of a new edge. Through experiments, we measure the performance of the proposed algorithm against non-incremental greedy algorithms and topology-based recommendation algorithms using synthetic networks. Additionally, we interpret the rec- ommendation result by changing the topological location of the source and target node. We summarize our contribution as follows: The problem: We suggest a friend recommendation problem in online social networks in which a user wants to maximize his/her influence over a specific target user. Design a new measure: We define an influence mea- sure and analyze the effect of having new connections Performance: We design the IKA algorithm, which incrementally approximates Katz centrality and proves its performance over topology-based recommendation algorithms. 978-1-4799-8442-8/15/$31.00 © 2015 IEEE ICDE Workshops 2015 235

Upload: others

Post on 24-Jun-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: WORKSHOPS: Friend Recommendation with a Target User in ...seondong.github.io/assets/papers/2015_ICDE_PhD... · Friend Recommendation with a Target User in Social Networking Services

Friend Recommendation with a Target Userin Social Networking Services

Sundong Kimsupervised by Jae-Gil Lee

Expected graduation date: Feb, 2018Korea Advanced Institute of Science and Technology, Daejeon, Korea

{sundong.kim, jaegil}@kaist.ac.kr

Abstract—Friend recommendation is one of the primary func-tions in social networking services. Suggesting friends has beendone by calculating node-to-node similarity based on topologicallocation in a network or contents on a user’s profile. However,this recommendation does not reflect the interest of the user.In this paper, we propose a friend recommendation problemin which the source user wants to get more attention froma special target. The goal of our friend recommendation isfinding a set of nodes, which maximizes user’s influence onthe target. To deliver this problem, we introduce informationpropagation model on online social networks and define twomeasures: influence and reluctance. Based on the model, wesuggest an IKA(Incremental Katz Approximation) algorithm toeffectively recommend relevant users. Our method is comparedwith topology-based friend recommendation method on syntheticgraph datasets, and we show interesting friend recommendationbehaviors depending on the topological location of users.

I. INTRODUCTION

People use social networking services such as Facebook,Twitter, and Instagram extensively. Almost a billion users areactive on such applications, on a daily basis. Several of theseusers send friend requests to others. One of the most importantfeatures of any social networking services is the ability tosuggest friends [1], [2]. Each application uses its own algorithmto suggest probable friends to a user [3]. For example, anapplication might suggest people belonging to a group recentlyjoined by the user, or people related to the user's current jobor school. Although these recommendations help the user toform connections within their groups, or to suggest peoplethat he/she probably knows, the results are not meant to helpthe connection between the user and his/her special target.In this paper, we propose a friend recommendation algorithmfor scenarios in which the user wants to get more attentionfrom a special target. Therefore, we intend to suggest friendswho can facilitate information flow from the source to thetarget. For example, if a source node and a target node arenot directly connected, suggesting intermediate nodes facilitatecommunication between them. Additionally, by suggesting thetarget’s neighboring nodes to the source node, we can increasethe possibility of a direct connection. Figure 1(b) shows theprobable changes to friend suggestions where a system catchesa user’s willingness to get more attention from the target.

Before tackling the recommendation problem, we modelthe process of information diffusion through social networksin which an article is shared with direct neighbors of an author,and propagates over the corresponding two-hop neighborsby sharing activities. Among the posts that the target node

(a) Recommendation without consid-ering a target user

(b) Recommendation considering atarget user

Fig. 1. Two concepts of friend recommendation

receives, there might be some posts that originated from thesource node, which we define as the source node’s influenceover the target node. And we formulate a node suggestionproblem in online social networks. The main objective is tomaximize influence gain by establishing new connections andeach recommendation should meet the reluctance threshold.

To solve this problem, we propose an algorithm calledIncremental Katz Approximation(IKA). In this algorithm, wefirst decrease the candidate set size, and then apply Monte-Carlo simulation to approximate the influence value. Usingthe approximation result, we update the random diffusion andcalculate the influence by taking into account the effect of anew edge. Through experiments, we measure the performanceof the proposed algorithm against non-incremental greedyalgorithms and topology-based recommendation algorithmsusing synthetic networks. Additionally, we interpret the rec-ommendation result by changing the topological location ofthe source and target node.

We summarize our contribution as follows:

• The problem: We suggest a friend recommendationproblem in online social networks in which a userwants to maximize his/her influence over a specifictarget user.

• Design a new measure: We define an influence mea-sure and analyze the effect of having new connections

• Performance: We design the IKA algorithm, whichincrementally approximates Katz centrality and provesits performance over topology-based recommendationalgorithms.

978-1-4799-8442-8/15/$31.00 © 2015 IEEE ICDE Workshops 2015235

Page 2: WORKSHOPS: Friend Recommendation with a Target User in ...seondong.github.io/assets/papers/2015_ICDE_PhD... · Friend Recommendation with a Target User in Social Networking Services

• Discovery: We experiment with diverse settings andinterpret the characteristics of recommended nodes.

II. RELATED WORK

A. Friend Recommendation

There are two main friend recommendation approaches,a topology-based approach and a content-based approach. Atopology-based approach exploits properties from the networkstructure and calculates node-to-node similarities. The rec-ommendation will be the node with the highest similarity.Jaccard [4] and SimRank [5] are well-known node-to-nodesimilarity measures. Zhao et al [6] proposed P-Rank, whichis the general version of structural similarity. And Leicht etal [7] proposed a similarity measure viewed as a weightedcount of the number of paths having possible length betweentwo vertices. A content-based approach tries to recommenditems similar to those a given user has liked before. Collabo-rative filtering is widely used in the content-based approach.Comprehensive knowledge of the content-based approach andcollaborative filtering is covered in [8], [9]. Different typesof recommendation algorithms are used in different contexts.Lo et al [10] developed a topology-based model to estimaterelationship strength by exploiting real message interaction andArmentano et al [11] developed an unsupervised model in aTwitter environment to identify users who can be considered asgood information sources. Yang et al [12] suggested an activefriending concept and developed an algorithm to maximizeacceptance probability.

B. Approximation and Incremental Algorithm for Centrality

Kas [13] dealt with incremental algorithms on closeness,betweenness, and k-centrality. In order to compute those in-crementally, the only information needed is the all-pair shortestpath. Okamoto et al [14] combined existing methods on calcu-lating exact value and approximate value of close centrality andefficiently find top-k vertices. However, methods in [13], [14]cannot be adapted to the Katz centrality since it is a variantof eigenvector centrality. As a result, the calculation requirescomputing all centrality values for all vertices, although weonly need top-k values. However, Bahmani et al [15] ana-lyzed the efficiency of Monte-Carlo methods for incrementalcomputation of PageRank [16], personalized PageRank [17] onevolving social networks.

III. PROBLEM DEFINITION

In this section, we introduce our social network modeland formulate a k-node suggestion problem to derive thebest recommendation result. First, we introduce our informa-tion propagation model in online social networks and defineinfluence and reluctance between two vertices. Second, weformulate the k-node suggestion problem. The main goal ofthis problem is to find the set of nodes, which maximizesinfluence on the target node.

A. Information Propagation Model

We focus on online social network environments whereineach individual has his/her own feed that displays recentarticles of its neighbors. We observed the following four

information propagation principles. First, an article uploadedby a source node appears on its neighboring node’s web feedwithout any action. Second, an article can be propagated tofriends of friends through sharing actions. Third, people canreceive an article several times due to the multiple sharingactions by different neighbors. Last, every node can act as asource node and an intermediate node at the same time. Withthese principles we define the influence measure.

Definition 1: (Influence) Let rst is the number of articlesthat nt received from the network with a single uploading nodens. By considering that every node has an uploading behavior,then the probability of ns’s articles covered in nt’s feed is:

Ist =rst∑s rst

(1)

Lemma 1: Assume that the only individual who upload itspost is the source node ns. Let S is the set of all walks fromns to target node nt, and lengthw is a length of each walkw. By having fixed sharing probability ps, then the expectednumber of articles that nt received is:

rst =∑

w∈S plengthw−1s (2)

Theorem 1: By considering ps as an attenuation factor ofthe Katz centrality, we can represent influence Ist by usingKatz centrality and personalized Katz centrality.

Ist =CPKatz(t)

CKatz(t)(3)

Then, we model the reluctance between two individuals.The concept of reluctance is awkwardness between two nodes.If two users have high reluctance each other, friend requestmight not be accepted. To sum up this idea, we define reluc-tance as negative exponential to Adamic-Adar similarity [18].

Definition 2: (Reluctance) Let ρij is the reluctance be-tween the two nodes ni and nj , and Γ(i) is a set of neighborsof node ni. Then ρij is defined as:

ρij = e−sim(i,j) (4)

where

sim(i, j) =∑

n∈Γ(i)∩Γ(j)1

log|Γ(n)| (5)

B. Node Suggestion Problem

In this paper, we consider the network with a specific targetin which the source node ns wants to maximize its influenceover a specific target nt. To solve this issue, we suggestrelevant friend recommendations to increase the informationflow from ns to nt. More specifically, we want our suggestionsto naturally control the portion of a source node’s articles thatthe target received. Increasing the influence by recommendingnodes is not a trivial problem. Intuitively, we can think that Istincreases by having another connections from ns to interme-diate node nt. However, information flows from other nodesto nt also increase by having those connections. And thereis another issue. If we only consider influence maximization,then the friend recommendation algorithm might suggests nt

directly or only suggests the nodes which are located nextto nt. However, those nodes are not close with ns. So, we

236

Page 3: WORKSHOPS: Friend Recommendation with a Target User in ...seondong.github.io/assets/papers/2015_ICDE_PhD... · Friend Recommendation with a Target User in Social Networking Services

have to consider that the suggestions are at least relevant tothe source node, which means that we need to consider thereluctance between ns and our suggested nodes. Our nodesuggestion problem aims to maximize the influence by havingk connections. And each recommendation would not exceedthe reluctance threshold. In this preliminary case, we set thereluctance value as 1, which means that two users must haveat least a single mutual friend. The basic formulation of thek-node suggestion problem can be represented as follows:

maximize Ist(G′)− Ist(G)

subject to ρsi < 1 i = 1, ..., k(6)

Symbols Description

G Undirected Network, G = (V,E)

G′ Network after adding edges, G′ = (V,E + ES)

S Ordered Set of k suggested nodes, S = {n1, n2, ..., nk}ES Ordered Set of new connections by S, ES = {e(ns, n1), e(ns, n2), ..., e(ns, nk)}Ist(G) Influence of ns over nt in graph G

ρsi Reluctance between ns and ni in graph G

TABLE I. SYMBOLS FOR THE PROBLEM

IV. PROPOSED ALGORITHM

In this section, we discuss the algorithm designed forsearching nodes, which maximize the source node’s influenceover the target node. Our algorithm Incremental Katz Ap-proximation(IKA) follows a greedy approach which selectsnodes sequentially. In this algorithm we apply the novelcandidate reduction technique and approximate the influencevalue incrementally.

A. Candidate Reduction

Our greedy approach suggests nodes sequentially, whichmaximize the influence of each step. The algorithm halts ifno suggestion exists, which would increase the influence. Inorder to find k suggestion sequentially, we need to computethe influence value k times for all unconnected candidatenodes at each round. As experiment network size becomeslarger, candidate size also grows proportional to the size of thenetwork. To reduce the problem size, we need to shrink thesize of candidates in order to lessen the total running time ofthe algorithm. First, we have set the candidate set as two-hopneighbors of the source node, since those nodes have at leastone mutual friend with the source node. This reduces the sizeof the searching set from O(n) to O(d2). Second, we appliedgradual candidate reduction after each recommendation byremoving candidate nodes that do not increase ΔIst. Sincewe only require the best node on each recommendation, thereis little possibility that those non-beneficial nodes are selectedat the next recommendation among all candidates.

B. Influence Approximation

Since the influence measure can be represented using aKatz centrality, we need matrix inversion to calculate Ist.So we approximate this value by Monte-Carlo simulation toavoid the complexity. We found the possibility of Monte-Carlosimulation on Katz centrality from the paper which analyzesthe efficiency of approximating personalized PageRank on anevolving graph[15]. Unlike PageRank, articles can spread or

disappear to multiple nodes in our settings. So we simulateinformation diffusion according to our propagation model. Forthe example of Katz centrality, we initialize R1 articles startingfrom each node of the network. And we count Xt which isthe total number of articles that pass through the target untilthe simulation ends. We can approximate the Katz centralityor information transfer rate from all nodes to target with:

∑srst = Xt/nR1 (7)

Then, we approximate the average number of source node’s ar-ticles that the target node received. This is done by initializingarticles solely from the source node. Unlike the previous case,a sufficiently large number of articles should be initialized fromthe source node to approximate the value. By doing this, weare able to get the personalized Katz centrality. For the targetnode nt, Yt is the total number of articles pass through. If R2

articles are initialized from the ns, we can approximate rstwith:

rst = Yt/R2 (8)

Our measure for recommendation, influence of source nodeover target, Ist can be approximated by using (7) and (8).

Ist =rst∑s rst

≈ nYtR1

XtR2(9)

C. Incremental Update

In order to recommend a node, we have to recalculate aninfluence value for all candidates considering that a new edgeis added to the network. As a result, substantial amount ofcalculation overlap occurs if we recalculate Katz centralityfrom the beginning. Here we refer to the previous randomdiffusion result, and only calculate the extra part that isaffected by a new edge. Having another edge means thatinformation from the source node can flow to new neighborsif the sharing condition is met. Therefore at each simulationstep, we check articles located at the end of the new edge.If the sharing condition is met, another diffusion begins fromthe two endpoints. The first part of the algorithm initializesthe new diffusion if there are existing articles available onthe two nodes affected by the new edge. The second part isgenerating additional transmission for articles, which arrivesat two nodes at each iteration. And the last part is continuingthe random diffusion initiated by the effect of the new edge.Using this incremental update, we can significantly reducethe computation burden. In the same way, we can update theinfluence value while there are existing beneficial users torecommend. Algorithm 1 describes an overview of our method.Since we adopt an approximation rather than the matrix inver-sion for computing Katz centrality, and incrementally updatethis value. We achieve our algorithm works on large networks.Here, VC , NG(ns), NG

2[ns] represents the candidate set, closeneighborhood of ns, and two-hop neighbor of ns respectively.

V. EXPERIMENTS

In our experiments we aim to answer the following ques-tions:Q1. How well can IKA solve our problem?Q2. How do we determine the adequate simulation size toachieve accuracy and speed at the same time?

237

Page 4: WORKSHOPS: Friend Recommendation with a Target User in ...seondong.github.io/assets/papers/2015_ICDE_PhD... · Friend Recommendation with a Target User in Social Networking Services

Q3. How do recommendation results vary by changing thetopological location of source and target user and initialconnectedness?

Algorithm 1 INCREMENTAL KATZ APPROXIMATION(IKA)

Input: Graph G = (V,E), ns, nt, ps, R1, R2, nIterOutput: Set of nodes S = {ni1 , ni2 , ..., nik}

1: Approximate CKatz(t), CPKatz(t)2: Calculate Ist using CKatz(t) and CPKatz(t)3: S = {}4: VR = {}5: VC = NG

2[ns]−NG[ns]6: while ΔIst > 0 do7: VR = {nc|ΔIst < 0}8: Find nm = argmax

nc∈VC

ΔIst by updating Ist for each new connection

9: if ΔIst > 0 then10: G = G+ e(ns, nc)11: S = S + nc

12: VC = VC − VR +NG2[ns]−NG[ns]

13: Update Ist and its diffusion process14: end if15: end while16: return S

A. Implementation Details

The code for IKA has been written in Python NetworkXmodule [19]. All experiment were performed on a PC withIntel Core i5-4670 3.4GHz processor, 8 GB of main memoryand a 128GB SSD drive. Networks we use in the experimentsalong with their descriptions are summarized in Table II.

Topology Node Edges Description

Scale-Free [20]

100 99

m=1 (m : number of edgesto attach from a new nodeto existing nodes)

1,000 999

10,000 9,999

100,000 99,999

1,000,000 999,999

200 398 m=2

100 297m=3

1,000 2,997

100 990m=10

1,000 9,990

Erdos-Renyi Random [21]100 100

degree = 11,000 1,000

TABLE II. NETWORK DESCRIPTION

B. Time Comparison

In order to compare the performance between exact influ-ence calculation and Monte-Carlo approximation, we measuredthe time for recommending ten consecutive nodes. We setupthe first five synthetic graphs in Table II, and set the sourcenode as a leaf node, and the target node as a hub node.We set R1 = 1, R2 = 10, 000) regardless of the networksize. Based on the results, we found our algorithm IKAto be fast and scalable compared to the greedy algorithmswith exact influence calculation. Figure 2(a) shows the timecomparison between IKA and two greedy algorithms. Red lineis a greedy algorithm without candidate reduction, influenceapproximation and incremental update. And green line is agreedy algorithm with candidate reduction. Then, we tried ouralgorithm on graphs that have different densities. The resultsare shown in Figure 2(b).

102 103 104 105 106

100

101

102

103

104

105

Number of Nodes

Tim

e(s)

GreedyGreedy(2−hop)IKA

Memory Error from n = 10,000

(a) Running time comparison be-tween IKA and exact algorithms ac-cording to the network size

|V| = 100 |V| = 1000

Random, |E| = |V|Scale−Free, |E| = |V|Scale−Free, |E| = 3|V|Scale−Free, |E| = 10|V|

Size of Node

Run

ning

Tim

e(s)

− IK

A

050

100

150

200

250

(b) Running time of IKA accordingto the density of networks

Fig. 2. Time comparison

C. Error Analysis

Second we found that our approximation of ΔIst is accu-rate by comparing it with the exact calculation of ΔIst. Herewe measure the influence gain for the first recommendationin a scale-free graph by changing the number of initializingarticles for the Monte-Carlo simulation. We used nR1 =R2 = {100, 1000, 10000, 100000}. And the relative error ismeasured as

|ΔIst − E[ΔIst]|ΔIst

Figure 3(a) describes the relative error by increasing R2(x-axis) and nR1(y-axis), and Figure 3(b) describes V ar(ΔIst)by increasing R1 and R2.

(a) Accurate result with enough largenumber of R2(x-axis)

(b) Stable result by increasing bothR1 and R2

Fig. 3. Error analysis

From error analysis, we found that our algorithm guaran-tees accurate friend recommendation with a sufficiently largeR2. We also found that the approximations work well evenfor the small size of R1. This experimentally shows thatfindings of [15], [22] are valid in the case of Katz centrality andinfluence. Selecting adequate size of R1 and R2 is importantsince running time also increases proportional to the number ofinitializing articles. To achieve fast running time with accuracyand stability, we select R1 = 1, R2 = 10, 000 for the followingexperiments.

D. Performance Comparison and Interpretation

We compared the performance of our algorithm withtopology-based friend recommendation with node-to-nodesimilarity measures. The performance measure of these ex-periments is cumulative influence gain by having new connec-tions. For the comparison, we implemented variation of nodesimilarity measures such as common neighbor, Jaccard [4],SimRank [5]. For example, for the Jaccard(Target) measure, we

238

Page 5: WORKSHOPS: Friend Recommendation with a Target User in ...seondong.github.io/assets/papers/2015_ICDE_PhD... · Friend Recommendation with a Target User in Social Networking Services

recommend nodes sequentially, which have the highest Jaccardsimilarity with nt from the candidate set. For this experiment,we used a scale-free graph with |V | = 200, |E| = 396 withvarious settings. Figure 4(a) and 4(b) show the performance ofIKA and topology-based recommendation results with node-to-node similarity measures. Figure 4(a) is the case in whichns(leaf node) and nt(hub node) are initially unconnected, andFigure 4(b) is the case in which ns(leaf node) and nt(leafnode) are initially connected.

0 5 10 15 20 25 30

0.000

0.005

0.010

0.015

0.020

0.025

0.030

0.035

0.040

ΔIst

Number of New Connections

BestCaseIKACommon Neighbor(Target)Jaccard(Target)SimRank(Target)Common NeighborJaccardSimRank

(a) Friend recommendation result(ns, nt = not connected, ns = leaf,nt = center

0 5 10 15 20 25 30

−0.07

−0.06

−0.05

−0.04

−0.03

−0.02

−0.01

0.00

0.01

ΔIst

Number of New Connections

BestCaseIKACommon Neighbor(Target)Jaccard(Target)SimRank(Target)Common NeighborJaccardSimRank

(b) Friend recommendation result(ns, nt = connected, ns = leaf, nt =leaf

Fig. 4. Performance of IKA over other algorithms

There are several aspects to check in these figures. Tobegin, how cumulative influence changes by the first fewrecommendations must be checked. More specifically, howmany steps are needed to achieve a the large leap on influencegain must be checked. In the case of Figure 4(a), IKA connectsto the most influential node in the first few steps. As we knowthat the leap occurs by connecting to the nt directly, we canunderstand that recommendation before the big leap is theprocess of indirectly exposing oneself to the target. And therecommendation result after the big leap shows the behaviorof connecting to the target node’s neighbors. Figure 4(b) is aspecial case in which the recommendation is refrained. Sincens and nt are both leaf nodes and they are already connected,generating more edges around the two nodes adversely affectstheir information transfer. In contrast to the other experiment,IKA stops after recommending a few nodes. Most otheralgorithms completely fail in terms of increasing the influenceof the source node.

VI. FUTURE WORK AND CONCLUSIONS

In this paper, we propose the friend recommendationproblem and an algorithm on the social network environmentin which the user has a specific target node to maximize itsinfluence. We define the influence as how much effect thesource node’s post has on a target node’s feed. Additionally,we formulate our problem by suggesting nodes one-by-one,which maximize the influence score. From our model, we findthe influence value matches with a concept of Katz centrality,and designed an algorithm to incrementally approximate it.We test our algorithm on various networks and show thatour algorithm is able to suggest relevant friends in termsof promoting information flow. We want to extend our ideato more realistic settings in which all users in the networkhave different posting behaviors and sharing probabilities, andenable our algorithm to work on the problem having multipletarget users.

REFERENCES

[1] M. Moricz, Y. Dosbayev, and M. Berlyant, “PYMK: friend recom-mendation at myspace,” in Proceedings of the 2010 ACM SIGMODInternational Conference on Management of data. ACM, 2010, pp.999–1002.

[2] M. Roth, A. Ben-David, D. Deutscher, G. Flysher, I. Horn, A. Leicht-berg, N. Leiser, Y. Matias, and R. Merom, “Suggesting friends usingthe implicit social graph,” in Proceedings of the 16th ACM SIGKDDinternational conference on Knowledge discovery and data mining.ACM, 2010, pp. 233–242.

[3] S. A. Golder and S. Yardi, “Structural predictors of tie formation intwitter: Transitivity and mutuality,” in Social Computing (SocialCom),2010 IEEE Second International Conference on. IEEE, 2010, pp. 88–95.

[4] G. Salton and M. J. McGill, “Introduction to modern informationretrieval,” 1983.

[5] G. Jeh and J. Widom, “SimRank: a measure of structural-contextsimilarity,” in Proceedings of the eighth ACM SIGKDD internationalconference on Knowledge discovery and data mining. ACM, 2002,pp. 538–543.

[6] P. Zhao, J. Han, and Y. Sun, “P-Rank: a comprehensive structuralsimilarity measure over information networks,” in Proceedings of the18th ACM conference on Information and knowledge management.ACM, 2009, pp. 553–562.

[7] E. Leicht, P. Holme, and M. E. Newman, “Vertex similarity in net-works,” SIAM Journal on Numerical Analysis, vol. 45, no. 2, pp. 890–904, 2006.

[8] P. Lops, M. De Gemmis, and G. Semeraro, “Content-based recom-mender systems: State of the art and trends,” in Recommender systemshandbook. Springer, 2011, pp. 73–105.

[9] X. Su and T. M. Khoshgoftaar, “A survey of collaborative filteringtechniques,” Advances in artificial intelligence, vol. 2009, p. 4, 2009.

[10] S. Lo and C. Lin, “WMR–a graph-based algorithm for friend recom-mendation,” in Proceedings of the 2006 IEEE/WIC/ACM InternationalConference on Web Intelligence. IEEE Computer Society, 2006, pp.121–128.

[11] M. G. Armentano, D. Godoy, and A. Amandi, “Topology-based rec-ommendation of users in micro-blogging communities,” Journal ofComputer Science and Technology, vol. 27, no. 3, pp. 624–634, 2012.

[12] D.-N. Yang, H.-J. Hung, W.-C. Lee, and W. Chen, “Maximizingacceptance probability for active friending in online social networks,”in Proceedings of the 19th ACM SIGKDD international conference onKnowledge discovery and data mining. ACM, 2013, pp. 713–721.

[13] M. Kas, “Incremental centrality algorithms for dynamic network anal-ysis,” Ph.D. dissertation, Citeseer, 2013.

[14] K. Okamoto, W. Chen, and X.-Y. Li, “Ranking of closeness centralityfor large-scale social networks,” in Frontiers in Algorithmics. Springer,2008, pp. 186–195.

[15] B. Bahmani, A. Chowdhury, and A. Goel, “Fast incremental andpersonalized pagerank,” Proceedings of the VLDB Endowment, vol. 4,no. 3, pp. 173–184, 2010.

[16] L. Page, S. Brin, R. Motwani, and T. Winograd, “The pagerank citationranking: Bringing order to the web.” 1999.

[17] G. Jeh and J. Widom, “Scaling personalized web search,” in Proceed-ings of the 12th international conference on World Wide Web. ACM,2003, pp. 271–279.

[18] L. A. Adamic and E. Adar, “Friends and neighbors on the web,” Socialnetworks, vol. 25, no. 3, pp. 211–230, 2003.

[19] A. Hagberg, P. Swart, and D. S Chult, “Exploring network structure,dynamics, and function using networkx,” Los Alamos National Labo-ratory (LANL), Tech. Rep., 2008.

[20] P. Holme and B. J. Kim, “Growing scale-free networks with tunableclustering,” Physical review E, vol. 65, no. 2, p. 026107, 2002.

[21] P. Erdos and A. Renyi, “On random graphs I.” Publ. Math. Debrecen,vol. 6, pp. 290–297, 1959.

[22] K. Avrachenkov, N. Litvak, D. Nemirovsky, and N. Osipova, “Montecarlo methods in PageRank computation: when one iteration is suffi-cient,” SIAM Journal of Numerical Analysis, vol. 45, no. 2, pp. 890–904,2007.

239