Class

com.github.jelmerk.spark.knn.hnsw

HnswSimilarity

Related Doc: package hnsw

Permalink

class HnswSimilarity extends KnnAlgorithm[HnswSimilarityModel] with HnswParams

Nearest neighbor search using the approximative hnsw algorithm.

Linear Supertypes
HnswParams, HnswModelParams, KnnAlgorithm[HnswSimilarityModel], KnnAlgorithmParams, KnnModelParams, HasPredictionCol, HasFeaturesCol, Estimator[HnswSimilarityModel], PipelineStage, Logging, Params, Serializable, Serializable, Identifiable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. HnswSimilarity
  2. HnswParams
  3. HnswModelParams
  4. KnnAlgorithm
  5. KnnAlgorithmParams
  6. KnnModelParams
  7. HasPredictionCol
  8. HasFeaturesCol
  9. Estimator
  10. PipelineStage
  11. Logging
  12. Params
  13. Serializable
  14. Serializable
  15. Identifiable
  16. AnyRef
  17. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new HnswSimilarity()

    Permalink
  2. new HnswSimilarity(uid: String)

    Permalink

    uid

    identifier

Type Members

  1. type TIndex[TId, TVector, TItem <: Item[TId, TVector], TDistance] = HnswIndex[TId, TVector, TItem, TDistance]

    Permalink

    Type of index.

    Type of index.

    Attributes
    protected
    Definition Classes
    HnswSimilarity → KnnAlgorithm

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def $[T](param: Param[T]): T

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  4. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. final def clear(param: Param[_]): HnswSimilarity.this.type

    Permalink
    Definition Classes
    Params
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def copy(extra: ParamMap): Estimator[HnswSimilarityModel]

    Permalink
    Definition Classes
    KnnAlgorithm → Estimator → PipelineStage → Params
  9. def copyValues[T <: Params](to: T, extra: ParamMap): T

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  10. def createIndex[TId, TVector, TItem <: Item[TId, TVector] with Product, TDistance](dimensions: Int, maxItemCount: Int, distanceFunction: DistanceFunction[TVector, TDistance])(implicit distanceOrdering: Ordering[TDistance], idSerializer: ObjectSerializer[TId], itemSerializer: ObjectSerializer[TItem]): HnswIndex[TId, TVector, TItem, TDistance]

    Permalink

    Create the index used to do the nearest neighbor search.

    Create the index used to do the nearest neighbor search.

    TId

    type of the index item identifier

    TVector

    type of the index item vector

    TItem

    type of the index item

    TDistance

    type of distance between items

    dimensions

    dimensionality of the items stored in the index

    maxItemCount

    maximum number of items the index can hold

    distanceFunction

    the distance function

    distanceOrdering

    the distance ordering

    idSerializer

    invoked for serializing ids when saving the index

    itemSerializer

    invoked for serializing items when saving items

    returns

    create an index

    Attributes
    protected
    Definition Classes
    HnswSimilarity → KnnAlgorithm
  11. def createModel[TId, TVector, TItem <: Item[TId, TVector] with Product, TDistance](uid: String, outputDir: String, numPartitions: Int)(implicit arg0: scala.reflect.api.JavaUniverse.TypeTag[TId], arg1: scala.reflect.api.JavaUniverse.TypeTag[TVector], arg2: scala.reflect.api.JavaUniverse.TypeTag[TItem], arg3: scala.reflect.api.JavaUniverse.TypeTag[TDistance], evId: ClassTag[TId], evVector: ClassTag[TVector], distanceNumeric: Numeric[TDistance]): HnswSimilarityModel

    Permalink

    Creates the model to be returned from fitting the data.

    Creates the model to be returned from fitting the data.

    TId

    type of the index item identifier

    TVector

    type of the index item vector

    TItem

    type of the index item

    TDistance

    type of distance between items

    uid

    identifier

    outputDir

    directory containing the persisted indices

    numPartitions

    number of index partitions

    returns

    model

    Attributes
    protected
    Definition Classes
    HnswSimilarity → KnnAlgorithm
  12. final def defaultCopy[T <: Params](extra: ParamMap): T

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  13. final val distanceFunction: Param[String]

    Permalink

    Param for the distance function to use.

    Param for the distance function to use. One of "bray-curtis", "canberra", "cosine", "correlation", "euclidean", "inner-product", "manhattan" or the fully qualified classname of a distance function Default: "cosine"

    Definition Classes
    KnnAlgorithmParams
  14. final val ef: IntParam

    Permalink

    Size of the dynamic list for the nearest neighbors (used during the search).

    Size of the dynamic list for the nearest neighbors (used during the search). Default: 10

    Definition Classes
    HnswModelParams
  15. final val efConstruction: IntParam

    Permalink

    Has the same meaning as ef, but controls the index time / index precision.

    Has the same meaning as ef, but controls the index time / index precision. Default: 200

    Definition Classes
    HnswParams
  16. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  18. final val excludeSelf: BooleanParam

    Permalink

    Param that indicates whether to not return the a candidate when it's identifier equals the query identifier Default: false

    Param that indicates whether to not return the a candidate when it's identifier equals the query identifier Default: false

    Definition Classes
    KnnModelParams
  19. def explainParam(param: Param[_]): String

    Permalink
    Definition Classes
    Params
  20. def explainParams(): String

    Permalink
    Definition Classes
    Params
  21. final def extractParamMap(): ParamMap

    Permalink
    Definition Classes
    Params
  22. final def extractParamMap(extra: ParamMap): ParamMap

    Permalink
    Definition Classes
    Params
  23. final val featuresCol: Param[String]

    Permalink
    Definition Classes
    HasFeaturesCol
  24. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  25. def fit(dataset: Dataset[_]): HnswSimilarityModel

    Permalink
    Definition Classes
    KnnAlgorithm → Estimator
  26. def fit(dataset: Dataset[_], paramMaps: Array[ParamMap]): Seq[HnswSimilarityModel]

    Permalink
    Definition Classes
    Estimator
    Annotations
    @Since( "2.0.0" )
  27. def fit(dataset: Dataset[_], paramMap: ParamMap): HnswSimilarityModel

    Permalink
    Definition Classes
    Estimator
    Annotations
    @Since( "2.0.0" )
  28. def fit(dataset: Dataset[_], firstParamPair: ParamPair[_], otherParamPairs: ParamPair[_]*): HnswSimilarityModel

    Permalink
    Definition Classes
    Estimator
    Annotations
    @Since( "2.0.0" ) @varargs()
  29. final def get[T](param: Param[T]): Option[T]

    Permalink
    Definition Classes
    Params
  30. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  31. final def getDefault[T](param: Param[T]): Option[T]

    Permalink
    Definition Classes
    Params
  32. final def getDistanceFunction: String

    Permalink

    Definition Classes
    KnnAlgorithmParams
  33. final def getEf: Int

    Permalink

    Definition Classes
    HnswModelParams
  34. final def getEfConstruction: Int

    Permalink

    Definition Classes
    HnswParams
  35. final def getExcludeSelf: Boolean

    Permalink

    Definition Classes
    KnnModelParams
  36. final def getFeaturesCol: String

    Permalink
    Definition Classes
    HasFeaturesCol
  37. final def getIdentifierCol: String

    Permalink

    Definition Classes
    KnnAlgorithmParams
  38. final def getInitialModelPath: String

    Permalink

    Definition Classes
    KnnAlgorithmParams
  39. final def getK: Int

    Permalink

    Definition Classes
    KnnModelParams
  40. final def getM: Int

    Permalink

    Definition Classes
    HnswParams
  41. final def getNumPartitions: Int

    Permalink

    Definition Classes
    KnnAlgorithmParams
  42. final def getNumReplicas: Int

    Permalink

    Definition Classes
    KnnModelParams
  43. final def getOrDefault[T](param: Param[T]): T

    Permalink
    Definition Classes
    Params
  44. final def getOutputFormat: String

    Permalink

    Definition Classes
    KnnModelParams
  45. final def getParallelism: Int

    Permalink

    Definition Classes
    KnnModelParams
  46. def getParam(paramName: String): Param[Any]

    Permalink
    Definition Classes
    Params
  47. final def getPartitionCol: String

    Permalink

    Definition Classes
    KnnAlgorithmParams
  48. final def getPredictionCol: String

    Permalink
    Definition Classes
    HasPredictionCol
  49. final def getQueryIdentifierCol: String

    Permalink

    Definition Classes
    KnnModelParams
  50. final def getQueryPartitionsCol: String

    Permalink

    Definition Classes
    KnnModelParams
  51. final def getSimilarityThreshold: Double

    Permalink

    Definition Classes
    KnnModelParams
  52. final def hasDefault[T](param: Param[T]): Boolean

    Permalink
    Definition Classes
    Params
  53. def hasParam(paramName: String): Boolean

    Permalink
    Definition Classes
    Params
  54. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  55. final val identifierCol: Param[String]

    Permalink

    Param for the column name for the row identifier.

    Param for the column name for the row identifier. Default: "id"

    Definition Classes
    KnnAlgorithmParams
  56. final val initialModelPath: Param[String]

    Permalink

    Param to the initial model.

    Param to the initial model. All the vectors from the initial model will included in the final output model.

    Definition Classes
    KnnAlgorithmParams
  57. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  58. def initializeLogIfNecessary(isInterpreter: Boolean): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  59. final def isDefined(param: Param[_]): Boolean

    Permalink
    Definition Classes
    Params
  60. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  61. final def isSet(param: Param[_]): Boolean

    Permalink
    Definition Classes
    Params
  62. def isTraceEnabled(): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  63. final val k: IntParam

    Permalink

    Param for number of neighbors to find (> 0).

    Param for number of neighbors to find (> 0). Default: 5

    Definition Classes
    KnnModelParams
  64. def loadIndex[TId, TVector, TItem <: Item[TId, TVector] with Product, TDistance](inputStream: InputStream, minCapacity: Int): HnswIndex[TId, TVector, TItem, TDistance]

    Permalink

    Load an index

    Load an index

    TId

    type of the index item identifier

    TVector

    type of the index item vector

    TItem

    type of the index item

    TDistance

    type of distance between items

    inputStream

    InputStream to restore the index from

    minCapacity

    loaded index needs to have space for at least this man additional items

    returns

    create an index

    Attributes
    protected
    Definition Classes
    HnswSimilarity → KnnAlgorithm
  65. def log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  66. def logDebug(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  67. def logDebug(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  68. def logError(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  69. def logError(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  70. def logInfo(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  71. def logInfo(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  72. def logName: String

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  73. def logTrace(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  74. def logTrace(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  75. def logWarning(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  76. def logWarning(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  77. final val m: IntParam

    Permalink

    The number of bi-directional links created for every new element during construction.

    The number of bi-directional links created for every new element during construction.

    Default: 16

    Definition Classes
    HnswParams
  78. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  79. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  80. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  81. final val numPartitions: IntParam

    Permalink

    Number of partitions (default: 1)

    Number of partitions (default: 1)

    Definition Classes
    KnnAlgorithmParams
  82. final val numReplicas: IntParam

    Permalink

    Param that specifies the number of index replicas to create when querying the index.

    Param that specifies the number of index replicas to create when querying the index. More replicas means you can execute more queries in parallel at the expense of increased resource usage. Default: 0

    Definition Classes
    KnnModelParams
  83. final val outputFormat: Param[String]

    Permalink

    Param for the output format to produce.

    Param for the output format to produce. One of "full", "minimal" Setting this to minimal is more efficient when all you need is the identifier with its neighbors

    Default: "full"

    Definition Classes
    KnnModelParams
  84. final val parallelism: IntParam

    Permalink

    Param that specifies the number of threads to use.

    Param that specifies the number of threads to use. Default: number of processors available to the Java virtual machine

    Definition Classes
    KnnModelParams
  85. lazy val params: Array[Param[_]]

    Permalink
    Definition Classes
    Params
  86. final val partitionCol: Param[String]

    Permalink

    Param for the partition identifier

    Param for the partition identifier

    Definition Classes
    KnnAlgorithmParams
  87. final val predictionCol: Param[String]

    Permalink
    Definition Classes
    HasPredictionCol
  88. final val queryIdentifierCol: Param[String]

    Permalink

    Param for the column name for the query identifier.

    Param for the column name for the query identifier.

    Definition Classes
    KnnModelParams
  89. final val queryPartitionsCol: Param[String]

    Permalink

    Param for the column name for the query partitions.

    Param for the column name for the query partitions.

    Definition Classes
    KnnModelParams
  90. final def set(paramPair: ParamPair[_]): HnswSimilarity.this.type

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  91. final def set(param: String, value: Any): HnswSimilarity.this.type

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  92. final def set[T](param: Param[T], value: T): HnswSimilarity.this.type

    Permalink
    Definition Classes
    Params
  93. final def setDefault(paramPairs: ParamPair[_]*): HnswSimilarity.this.type

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  94. final def setDefault[T](param: Param[T], value: T): HnswSimilarity.this.type

    Permalink
    Attributes
    protected
    Definition Classes
    Params
  95. def setDistanceFunction(value: String): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  96. def setEf(value: Int): HnswSimilarity.this.type

    Permalink

  97. def setEfConstruction(value: Int): HnswSimilarity.this.type

    Permalink

  98. def setExcludeSelf(value: Boolean): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  99. def setFeaturesCol(value: String): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  100. def setIdentifierCol(value: String): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  101. def setInitialModelPath(value: String): HnswSimilarity.this.type

    Permalink
    Definition Classes
    KnnAlgorithm
  102. def setK(value: Int): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  103. def setM(value: Int): HnswSimilarity.this.type

    Permalink

  104. def setNumPartitions(value: Int): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  105. def setNumReplicas(value: Int): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  106. def setOutputFormat(value: String): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  107. def setParallelism(value: Int): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  108. def setPartitionCol(value: String): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  109. def setPredictionCol(value: String): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  110. def setQueryIdentifierCol(value: String): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  111. def setQueryPartitionsCol(value: String): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  112. def setSimilarityThreshold(value: Double): HnswSimilarity.this.type

    Permalink

    Definition Classes
    KnnAlgorithm
  113. final val similarityThreshold: DoubleParam

    Permalink

    Param for the threshold value for inclusion.

    Param for the threshold value for inclusion. -1 indicates no threshold Default: -1

    Definition Classes
    KnnModelParams
  114. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  115. def toString(): String

    Permalink
    Definition Classes
    Identifiable → AnyRef → Any
  116. def transformSchema(schema: StructType): StructType

    Permalink
    Definition Classes
    KnnAlgorithm → PipelineStage
  117. def transformSchema(schema: StructType, logging: Boolean): StructType

    Permalink
    Attributes
    protected
    Definition Classes
    PipelineStage
    Annotations
    @DeveloperApi()
  118. val uid: String

    Permalink

    identifier

    identifier

    Definition Classes
    HnswSimilarity → KnnAlgorithm → Identifiable
  119. def validateAndTransformSchema(schema: StructType, identifierDataType: DataType): StructType

    Permalink
    Attributes
    protected
    Definition Classes
    KnnModelParams
  120. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  121. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  122. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from HnswParams

Inherited from HnswModelParams

Inherited from KnnAlgorithm[HnswSimilarityModel]

Inherited from KnnAlgorithmParams

Inherited from KnnModelParams

Inherited from HasPredictionCol

Inherited from HasFeaturesCol

Inherited from Estimator[HnswSimilarityModel]

Inherited from PipelineStage

Inherited from Logging

Inherited from Params

Inherited from Serializable

Inherited from Serializable

Inherited from Identifiable

Inherited from AnyRef

Inherited from Any

getParam

param

setParam

Ungrouped