[ 
https://issues.apache.org/jira/browse/FLINK-2310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14662689#comment-14662689
 ] 

ASF GitHub Bot commented on FLINK-2310:
---------------------------------------

Github user shghatge commented on the pull request:

    https://github.com/apache/flink/pull/892#issuecomment-128866366
  
    I made some of the changes mentioned. But there was a problem in replacing 
the getTriplets() and flatMap. When I use this method
    private static final class ReduceN implements 
NeighborsFunctionWithVertexValue<Long,Tuple2<Double, HashSet<Long>> ,Double,
                                                                        
Tuple3<Long, Long, Double>> {
    
                @Override
                public void iterateNeighbors(
                                Vertex<Long, Tuple2<Double, HashSet<Long>>> 
vertex,
                                Iterable<Tuple2<Edge<Long, Double>, 
Vertex<Long, Tuple2<Double, HashSet<Long>>>>> neighbors,
                                Collector<Tuple3<Long, Long, Double>> out) 
throws Exception {
                        for(Tuple2<Edge<Long, Double>, Vertex<Long, 
Tuple2<Double, HashSet<Long>>>> neighbor : neighbors) {
                                HashSet<Long> intersection = 
vertex.getValue().f1;
                                
intersection.retainAll(neighbor.f1.getValue().f1);
                                for(long l : intersection) {
                                        
System.out.println(neighbor.f1.getId()+" "+l);
                                                out.collect(new Tuple3<Long, 
Long, Double>(neighbor.f1.getId(), l, vertex.getValue().f0));
                                        }
                        }
                
                }
                
        }
    
    For some reason the 


> Add an Adamic-Adar Similarity example
> -------------------------------------
>
>                 Key: FLINK-2310
>                 URL: https://issues.apache.org/jira/browse/FLINK-2310
>             Project: Flink
>          Issue Type: Task
>          Components: Gelly
>            Reporter: Andra Lungu
>            Assignee: Shivani Ghatge
>            Priority: Minor
>
> Just as Jaccard, the Adamic-Adar algorithm measures the similarity between a 
> set of nodes. However, instead of counting the common neighbors and dividing 
> them by the total number of neighbors, the similarity is weighted according 
> to the vertex degrees. In particular, it's equal to log(1/numberOfEdges).
> The Adamic-Adar algorithm can be broken into three steps: 
> 1). For each vertex, compute the log of its inverse degrees (with the formula 
> above) and set it as the vertex value. 
> 2). Each vertex will then send this new computed value along with a list of 
> neighbors to the targets of its out-edges
> 3). Weigh the edges with the Adamic-Adar index: Sum over n from CN of 
> log(1/k_n)(CN is the set of all common neighbors of two vertices x, y. k_n is 
> the degree of node n). See [2]
> Prerequisites: 
> - Full understanding of the Jaccard Similarity Measure algorithm
> - Reading the associated literature: 
> [1] http://social.cs.uiuc.edu/class/cs591kgk/friendsadamic.pdf
> [2] 
> http://stackoverflow.com/questions/22565620/fast-algorithm-to-compute-adamic-adar



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to