Class ByteBinaryDenseVector

java.lang.Object
org.elasticsearch.script.field.vectors.ByteBinaryDenseVector
All Implemented Interfaces:
DenseVector

public class ByteBinaryDenseVector extends Object implements DenseVector
  • Field Details

    • MAGNITUDE_BYTES

      public static final int MAGNITUDE_BYTES
      See Also:
    • docVector

      protected final org.apache.lucene.util.BytesRef docVector
    • dims

      protected final int dims
    • floatDocVector

      protected float[] floatDocVector
    • magnitudeDecoded

      protected boolean magnitudeDecoded
    • magnitude

      protected float magnitude
  • Constructor Details

    • ByteBinaryDenseVector

      public ByteBinaryDenseVector(org.apache.lucene.util.BytesRef docVector, int dims)
  • Method Details

    • getVector

      public float[] getVector()
      Specified by:
      getVector in interface DenseVector
    • getMagnitude

      public float getMagnitude()
      Specified by:
      getMagnitude in interface DenseVector
    • dotProduct

      public int dotProduct(byte[] queryVector)
      Specified by:
      dotProduct in interface DenseVector
    • dotProduct

      public double dotProduct(float[] queryVector)
      Specified by:
      dotProduct in interface DenseVector
    • dotProduct

      public double dotProduct(List<Number> queryVector)
      Specified by:
      dotProduct in interface DenseVector
    • l1Norm

      public int l1Norm(byte[] queryVector)
      Specified by:
      l1Norm in interface DenseVector
    • l1Norm

      public double l1Norm(float[] queryVector)
      Specified by:
      l1Norm in interface DenseVector
    • l1Norm

      public double l1Norm(List<Number> queryVector)
      Specified by:
      l1Norm in interface DenseVector
    • l2Norm

      public double l2Norm(byte[] queryVector)
      Specified by:
      l2Norm in interface DenseVector
    • l2Norm

      public double l2Norm(float[] queryVector)
      Specified by:
      l2Norm in interface DenseVector
    • l2Norm

      public double l2Norm(List<Number> queryVector)
      Specified by:
      l2Norm in interface DenseVector
    • cosineSimilarity

      public double cosineSimilarity(byte[] queryVector, float qvMagnitude)
      Description copied from interface: DenseVector
      Get the cosine similarity with the query vector
      Specified by:
      cosineSimilarity in interface DenseVector
      qvMagnitude - - pre-calculated magnitude of the query vector
    • cosineSimilarity

      public double cosineSimilarity(float[] queryVector, boolean normalizeQueryVector)
      Description copied from interface: DenseVector
      Get the cosine similarity with the query vector
      Specified by:
      cosineSimilarity in interface DenseVector
      normalizeQueryVector - - normalize the query vector, does not change the contents of passed in query vector
    • cosineSimilarity

      public double cosineSimilarity(List<Number> queryVector)
      Description copied from interface: DenseVector
      Get the cosine similarity with the un-normalized query vector
      Specified by:
      cosineSimilarity in interface DenseVector
    • size

      public int size()
      Specified by:
      size in interface DenseVector
    • isEmpty

      public boolean isEmpty()
      Specified by:
      isEmpty in interface DenseVector
    • getDims

      public int getDims()
      Specified by:
      getDims in interface DenseVector