List of usage examples for org.apache.hadoop.io FloatWritable FloatWritable
public FloatWritable(float value)
From source file:hivemall.knn.distance.CosineDistanceUDF.java
License:Apache License
@Override public FloatWritable evaluate(DeferredObject[] arguments) throws HiveException { List<String> ftvec1 = HiveUtils.asStringList(arguments[0], arg0ListOI); List<String> ftvec2 = HiveUtils.asStringList(arguments[1], arg1ListOI); float d = 1.f - CosineSimilarityUDF.cosineSimilarity(ftvec1, ftvec2); return new FloatWritable(d); }
From source file:hivemall.knn.distance.CosineDistanceUDF.java
License:Apache License
@Deprecated public FloatWritable evaluate(List<String> ftvec1, List<String> ftvec2) { float d = 1.f - CosineSimilarityUDF.cosineSimilarity(ftvec1, ftvec2); return new FloatWritable(d); }
From source file:hivemall.knn.distance.EuclidDistanceUDF.java
License:Apache License
@Override public FloatWritable evaluate(DeferredObject[] arguments) throws HiveException { List<String> ftvec1 = HiveUtils.asStringList(arguments[0], arg0ListOI); List<String> ftvec2 = HiveUtils.asStringList(arguments[1], arg1ListOI); float d = (float) euclidDistance(ftvec1, ftvec2); return new FloatWritable(d); }
From source file:hivemall.knn.distance.JaccardDistanceUDF.java
License:Apache License
public FloatWritable evaluate(long a, long b, int k) { int countMatches = k - HammingDistanceUDF.hammingDistance(a, b); float jaccard = countMatches / (float) k; float pseudoJaccard = 2.f * (jaccard - 0.5f); // pseudo Jaccard return new FloatWritable(1.f - pseudoJaccard); }
From source file:hivemall.knn.distance.JaccardDistanceUDF.java
License:Apache License
public FloatWritable evaluate(String a, String b, int k) { BigInteger ai = new BigInteger(a); BigInteger bi = new BigInteger(b); int countMatches = k - HammingDistanceUDF.hammingDistance(ai, bi); float jaccard = countMatches / (float) k; float pseudoJaccard = 2.f * (jaccard - 0.5f); // pseudo Jaccard return new FloatWritable(1.f - pseudoJaccard); }
From source file:hivemall.knn.distance.JaccardDistanceUDF.java
License:Apache License
public FloatWritable evaluate(final List<String> a, final List<String> b) { if (a == null && b == null) { return new FloatWritable(0.f); } else if (a == null || b == null) { return new FloatWritable(1.f); }/*w ww . ja va2s . c o m*/ final int asize = a.size(); final int bsize = b.size(); if (asize == 0 && bsize == 0) { return new FloatWritable(0.f); } else if (asize == 0 || bsize == 0) { return new FloatWritable(1.f); } union.addAll(a); union.addAll(b); float unionSize = union.size(); union.clear(); intersect.addAll(a); intersect.retainAll(b); float intersectSize = intersect.size(); intersect.clear(); float j = intersectSize / unionSize; return new FloatWritable(1.f - j); }
From source file:hivemall.knn.distance.KLDivergenceUDF.java
License:Open Source License
public FloatWritable evaluate(float mu1, float sigma1, float mu2, float sigma2) { float f = (float) kld(mu1, sigma1, mu2, sigma2); return new FloatWritable(f); }
From source file:hivemall.knn.distance.ManhattanDistanceUDF.java
License:Apache License
@Override public FloatWritable evaluate(DeferredObject[] arguments) throws HiveException { List<String> ftvec1 = HiveUtils.asStringList(arguments[0], arg0ListOI); List<String> ftvec2 = HiveUtils.asStringList(arguments[1], arg1ListOI); float d = (float) manhattanDistance(ftvec1, ftvec2); return new FloatWritable(d); }
From source file:hivemall.knn.distance.MinkowskiDistanceUDF.java
License:Apache License
@Override public FloatWritable evaluate(DeferredObject[] arguments) throws HiveException { List<String> ftvec1 = HiveUtils.asStringList(arguments[0], arg0ListOI); List<String> ftvec2 = HiveUtils.asStringList(arguments[1], arg1ListOI); float d = (float) minkowskiDistance(ftvec1, ftvec2, order_p); return new FloatWritable(d); }
From source file:hivemall.knn.similarity.CosineSimilarityUDF.java
License:Apache License
@Override public FloatWritable evaluate(DeferredObject[] arguments) throws HiveException { List<String> ftvec1 = HiveUtils.asStringList(arguments[0], arg0ListOI); List<String> ftvec2 = HiveUtils.asStringList(arguments[1], arg1ListOI); float similarity = cosineSimilarity(ftvec1, ftvec2); return new FloatWritable(similarity); }