org.graphstream.algorithm.measure
Class NormalizedMutualInformation

java.lang.Object
  extended by org.graphstream.stream.SinkAdapter
      extended by org.graphstream.algorithm.measure.CommunityMeasure
          extended by org.graphstream.algorithm.measure.CommunityRelativeMeasure
              extended by org.graphstream.algorithm.measure.NormalizedMutualInformation
All Implemented Interfaces:
Algorithm, DynamicAlgorithm, org.graphstream.stream.AttributeSink, org.graphstream.stream.ElementSink, org.graphstream.stream.Sink
Direct Known Subclasses:
VariationOfInformation

public class NormalizedMutualInformation
extends CommunityRelativeMeasure

Computes and updated the current Normalized Mutual Information (NMI) measure between a dynamically-performed community assignment on a graph as it evolves and a fixed assignment, known as reference.

Author:
Guillaume-Jean Herbiet
Scientific Reference :
L. Danon, A. Diaz-Guilera, J. Duch, and A. Arenas, “Comparing community structure identification,” Journal of Statistical Mechanics: Theory and Experiment, vol. 2005, no. 09, pp. P09008+, September 2005.

Constructor Summary
NormalizedMutualInformation(String marker)
          New NMI measure, using the given marker for the dynamically performed assignment, and the default marker for the reference assignment.
NormalizedMutualInformation(String marker, String referenceMarker)
          New NMI measure, using the given marker for the dynamically performed assignment, and the given refrenceMarker for the reference assignment.
 
Method Summary
 void compute()
          Compute the new NMI measure value.
 
Methods inherited from class org.graphstream.algorithm.measure.CommunityRelativeMeasure
nodeAdded, nodeAttributeChanged, nodeRemoved
 
Methods inherited from class org.graphstream.algorithm.measure.CommunityMeasure
edgeAdded, edgeRemoved, getLastComputedValue, getMeasure, graphCleared, init, nodeAttributeAdded, terminate
 
Methods inherited from class org.graphstream.stream.SinkAdapter
edgeAttributeAdded, edgeAttributeChanged, edgeAttributeRemoved, graphAttributeAdded, graphAttributeChanged, graphAttributeRemoved, nodeAttributeRemoved, stepBegins
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NormalizedMutualInformation

public NormalizedMutualInformation(String marker)
New NMI measure, using the given marker for the dynamically performed assignment, and the default marker for the reference assignment.

Parameters:
marker - name of the attribute marking the computed communities.

NormalizedMutualInformation

public NormalizedMutualInformation(String marker,
                                   String referenceMarker)
New NMI measure, using the given marker for the dynamically performed assignment, and the given refrenceMarker for the reference assignment.

Parameters:
marker - name of the attribute marking the computed communities.
referenceMarker - name of the attribute marking the reference communities.
Method Detail

compute

public void compute()
Compute the new NMI measure value.

Specified by:
compute in interface Algorithm
Specified by:
compute in class CommunityRelativeMeasure
See Also:
Algorithm.init(Graph)
Computational Complexity :
O(2*C^2 + 6*C), where C is the expected number of communities in the graph.


Copyright © 2011. All Rights Reserved.