diff options
Diffstat (limited to 'src/de/lmu/ifi/dbs/elki/distance/similarityfunction/kernel/LinearKernelFunction.java')
-rw-r--r-- | src/de/lmu/ifi/dbs/elki/distance/similarityfunction/kernel/LinearKernelFunction.java | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/de/lmu/ifi/dbs/elki/distance/similarityfunction/kernel/LinearKernelFunction.java b/src/de/lmu/ifi/dbs/elki/distance/similarityfunction/kernel/LinearKernelFunction.java index a86ad55d..6a5b0a79 100644 --- a/src/de/lmu/ifi/dbs/elki/distance/similarityfunction/kernel/LinearKernelFunction.java +++ b/src/de/lmu/ifi/dbs/elki/distance/similarityfunction/kernel/LinearKernelFunction.java @@ -4,7 +4,7 @@ package de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel; This file is part of ELKI: Environment for Developing KDD-Applications Supported by Index-Structures - Copyright (C) 2013 + Copyright (C) 2014 Ludwig-Maximilians-Universität München Lehr- und Forschungseinheit für Datenbanksysteme ELKI Development Team @@ -24,12 +24,12 @@ package de.lmu.ifi.dbs.elki.distance.similarityfunction.kernel; */ import de.lmu.ifi.dbs.elki.data.NumberVector; -import de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractVectorDoubleDistanceFunction; +import de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractNumberVectorDistanceFunction; import de.lmu.ifi.dbs.elki.utilities.optionhandling.AbstractParameterizer; /** - * Provides a linear Kernel function that computes a similarity between the two - * feature vectors V1 and V2 defined by V1^T*V2. + * Linear Kernel function that computes a similarity between the two feature + * vectors V1 and V2 defined by V1^T*V2. * * Note: this is effectively equivalent to using * {@link de.lmu.ifi.dbs.elki.distance.distancefunction.minkowski.EuclideanDistanceFunction} @@ -51,18 +51,18 @@ public class LinearKernelFunction extends PolynomialKernelFunction { } @Override - public double doubleSimilarity(final NumberVector<?> o1, final NumberVector<?> o2) { - final int dim = AbstractVectorDoubleDistanceFunction.dimensionality(o1, o2); + public double similarity(final NumberVector o1, final NumberVector o2) { + final int dim = AbstractNumberVectorDistanceFunction.dimensionality(o1, o2); double sim = 0.; - for (int i = 0; i < dim; i++) { + for(int i = 0; i < dim; i++) { sim += o1.doubleValue(i) * o2.doubleValue(i); } return sim; } @Override - public double doubleDistance(final NumberVector<?> fv1, final NumberVector<?> fv2) { - return Math.sqrt(doubleSimilarity(fv1, fv1) + doubleSimilarity(fv2, fv2) - 2 * doubleSimilarity(fv1, fv2)); + public double distance(final NumberVector fv1, final NumberVector fv2) { + return Math.sqrt(similarity(fv1, fv1) + similarity(fv2, fv2) - 2 * similarity(fv1, fv2)); } /** |