Packages

class PowerIterationClustering extends Serializable

Power Iteration Clustering (PIC), a scalable graph clustering algorithm developed by Lin and Cohen. From the abstract: PIC finds a very low-dimensional embedding of a dataset using truncated power iteration on a normalized pair-wise similarity matrix of the data.

Annotations
@Since( "1.3.0" )
Source
PowerIterationClustering.scala
See also

Spectral clustering (Wikipedia)

Linear Supertypes
Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. PowerIterationClustering
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new PowerIterationClustering()

    Constructs a PIC instance with default parameters: {k: 2, maxIterations: 100, initMode: "random"}.

    Constructs a PIC instance with default parameters: {k: 2, maxIterations: 100, initMode: "random"}.

    Annotations
    @Since( "1.3.0" )

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. def run(similarities: JavaRDD[(Long, Long, Double)]): PowerIterationClusteringModel

    A Java-friendly version of PowerIterationClustering.run.

    A Java-friendly version of PowerIterationClustering.run.

    Annotations
    @Since( "1.3.0" )
  16. def run(similarities: RDD[(Long, Long, Double)]): PowerIterationClusteringModel

    Run the PIC algorithm.

    Run the PIC algorithm.

    similarities

    an RDD of (i, j, sij) tuples representing the affinity matrix, which is the matrix A in the PIC paper. The similarity sij must be nonnegative. This is a symmetric matrix and hence sij = sji. For any (i, j) with nonzero similarity, there should be either (i, j, sij) or (j, i, sji) in the input. Tuples with i = j are ignored, because we assume sij = 0.0.

    returns

    a PowerIterationClusteringModel that contains the clustering result

    Annotations
    @Since( "1.3.0" )
  17. def run(graph: Graph[Double, Double]): PowerIterationClusteringModel

    Run the PIC algorithm on Graph.

    Run the PIC algorithm on Graph.

    graph

    an affinity matrix represented as graph, which is the matrix A in the PIC paper. The similarity sij represented as the edge between vertices (i, j) must be nonnegative. This is a symmetric matrix and hence sij = sji. For any (i, j) with nonzero similarity, there should be either (i, j, sij) or (j, i, sji) in the input. Tuples with i = j are ignored, because we assume sij = 0.0.

    returns

    a PowerIterationClusteringModel that contains the clustering result

    Annotations
    @Since( "1.5.0" )
  18. def setInitializationMode(mode: String): PowerIterationClustering.this.type

    Set the initialization mode.

    Set the initialization mode. This can be either "random" to use a random vector as vertex properties, or "degree" to use normalized sum similarities. Default: random.

    Annotations
    @Since( "1.3.0" )
  19. def setK(k: Int): PowerIterationClustering.this.type

    Set the number of clusters.

    Set the number of clusters.

    Annotations
    @Since( "1.3.0" )
  20. def setMaxIterations(maxIterations: Int): PowerIterationClustering.this.type

    Set maximum number of iterations of the power iteration loop

    Set maximum number of iterations of the power iteration loop

    Annotations
    @Since( "1.3.0" )
  21. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  22. def toString(): String
    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped