public class SparseVector extends Object implements Vector
Modifier and Type | Field and Description |
---|---|
static float |
threshold |
Constructor and Description |
---|
SparseVector() |
Modifier and Type | Method and Description |
---|---|
void |
add(float coeff,
float vectorCoeff,
Vector vector)
Add a
vector multiplied by vectorCoeff to this
vector multiplied by |
void |
add(float coeff,
Vector vector)
Add a
vector multiplied by coeff to this vector |
void |
add(Vector vector)
Add a
vector to this vector |
SparseVector |
copyVector()
Returns a copy of this vector.
|
float |
euclideanDistance(Vector vector)
Returns the euclidean distance between this vector and
vector |
Map<Object,Number> |
getActiveFeatures()
Returns a map containing all the non-zero features
|
float |
getFeatureValue(Object featureIdentifier)
Returns the value of the feature identified with
featureIdentifier |
float |
getFeatureValue(String featureName)
Returns the value associated to a feature
|
float |
getSquaredNorm()
Returns the squared norm of this vector
|
String |
getTextFromData()
Returns a textual representation of the data stored in this
representation
|
gnu.trove.map.TIntFloatMap |
getVector() |
SparseVector |
getZeroVector()
Returns a vector whose values are all 0.
|
void |
incrementFeature(String featureName,
float valueIncrement)
Increments the value associated to a feature
|
float |
innerProduct(Vector vector)
Returns the dot product between this vector and
vector |
boolean |
isCompatible(Representation rep)
Evaluates whether a representation is compatible with this one, e.g.., they have
same type and pass additional checks that are type-dependent
|
void |
merge(Vector vector,
float coefficient,
String newDimensionPrefix)
Merge this vector with
vector (it is like a vector
concatenation) If V1 is the space where this vector lies and V2 is the
space where vector lies, then the resulting vector lies in
V1xV2 |
void |
normalize()
Scales the representation in order to have a unit norm in the explicit feature
space
|
void |
pointWiseProduct(Vector vector)
Compute the point-wise product of this vector with the one in
vector . |
void |
scale(float coeff)
Multiplies each element of this representation by
coeff |
void |
setDataFromText(String representationDescription)
Initializes a Representation using its textual description provided in
representationDescription |
void |
setFeatureValue(Object featureIdentifier,
float value)
Assigns
value to the feature identified by |
void |
setFeatureValue(String featureName,
float value)
Sets the value of a feature
|
void |
setVector(gnu.trove.map.TIntFloatMap vector) |
String |
toString() |
public static final float threshold
public void normalize()
Normalizable
normalize
in interface Normalizable
public void setDataFromText(String representationDescription) throws IOException
Representation
representationDescription
setDataFromText
in interface Representation
representationDescription
- the textual description of the representation to be
initializedIOException
public gnu.trove.map.TIntFloatMap getVector()
public void setVector(gnu.trove.map.TIntFloatMap vector)
vector
- the vector to setpublic float innerProduct(Vector vector)
Vector
vector
innerProduct
in interface Vector
public void scale(float coeff)
Normalizable
coeff
scale
in interface Normalizable
coeff
- the scaling factorpublic void add(Vector vector)
Vector
vector
to this vectorpublic void add(float coeff, Vector vector)
Vector
vector
multiplied by coeff
to this vectorpublic void add(float coeff, float vectorCoeff, Vector vector)
Vector
vector
multiplied by vectorCoeff
to this
vector multiplied bypublic SparseVector getZeroVector()
Vector
getZeroVector
in interface Vector
public String getTextFromData()
Representation
getTextFromData
in interface Representation
public float getSquaredNorm()
Normalizable
getSquaredNorm
in interface Normalizable
public Map<Object,Number> getActiveFeatures()
Vector
getActiveFeatures
in interface Vector
public void merge(Vector vector, float coefficient, String newDimensionPrefix)
vector
(it is like a vector
concatenation) If V1 is the space where this vector lies and V2 is the
space where vector
lies, then the resulting vector lies in
V1xV2
NOTE: this is not a sum because even if some feature names are shared
between the two vectors, those will be considered different dimensions (a
prefix is added to all feature names of vector
)
vector
- the input vector to be merged with thiscoefficient
- a scaling factor for vector
newDimensionPrefix
- the prefix to be added to all the feature names of
vector
during the merging process
(vector
is not modified)public void pointWiseProduct(Vector vector)
Vector
vector
.pointWiseProduct
in interface Vector
vector
- the vector used for the point-wise productpublic SparseVector copyVector()
Vector
copyVector
in interface Vector
public void setFeatureValue(String featureName, float value)
featureName
- the name of the featurevalue
- the value of the featurepublic float getFeatureValue(String featureName)
featureName
- the identifier of the featurepublic void incrementFeature(String featureName, float valueIncrement)
featureName
- the identifier of the featurevalueIncrement
- the incrementpublic void setFeatureValue(Object featureIdentifier, float value)
Vector
value to the feature identified by featureIdentifier
NOTE: this method could be not the most efficient to set a feature value. Actual implementations
of the Vector class may provide faster methods using their specific type to identify features (instead of
a generic Object)
setFeatureValue
in interface Vector
featureIdentifier
- the identifier of the featurevalue
- the value of the featurepublic float getFeatureValue(Object featureIdentifier)
Vector
featureIdentifier
NOTE: this method could be not the most efficient to get a feature value. Actual implementations of the Vector class may provide faster methods using their specific type to identify features (instead of a generic Object)
getFeatureValue
in interface Vector
public float euclideanDistance(Vector vector) throws VectorOperationException
Vector
vector
euclideanDistance
in interface Vector
VectorOperationException
public boolean isCompatible(Representation rep)
Representation
isCompatible
in interface Representation
rep
- the representation to be compared with this oneCopyright © 2018 Semantic Analytics Group @ Uniroma2. All rights reserved.