## org.apache.mahout.common.distance
Class MinkowskiDistanceMeasure

    java.lang.Object
      org.apache.mahout.common.distance.MinkowskiDistanceMeasure

All Implemented Interfaces:
  DistanceMeasure, Parametered

    public class MinkowskiDistanceMeasure

extends Object
implements DistanceMeasure

Implement Minkowski distance, a real-valued generalization of the integral L(n) distances: Manhattan = L1, Euclidean = L2. For high numbers of dimensions, very high exponents give more useful distances. Note: Math.pow is clever about integer-valued doubles.

Nested Class Summary

Nested classes/interfaces inherited from interface org.apache.mahout.common.parameters.Parametered
`Parametered.ParameteredGeneralizations`

Field Summary

Fields inherited from interface org.apache.mahout.common.parameters.Parametered
`log`

Constructor Summary
`MinkowskiDistanceMeasure()`
`MinkowskiDistanceMeasure(double exponent)`

Method Summary
`void` `configure(org.apache.hadoop.conf.Configuration jobConf)`
`void` `createParameters(String prefix, org.apache.hadoop.conf.Configuration conf)` EXPERT: consumers should never have to call this method.
`double` `distance(double centroidLengthSquare, Vector centroid, Vector v)` Optimized version of distance metric for sparse vectors.
`double` `distance(Vector v1, Vector v2)` Math.pow is clever about integer-valued doubles
`double` `getExponent()`
`Collection<Parameter<?>>` `getParameters()`
`void` `setExponent(double exponent)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### MinkowskiDistanceMeasure

    public MinkowskiDistanceMeasure()

### MinkowskiDistanceMeasure

    public MinkowskiDistanceMeasure(double exponent)

Method Detail

### createParameters

    public void createParameters(String prefix,
                                 org.apache.hadoop.conf.Configuration conf)

  Description copied from interface: `Parametered`
  EXPERT: consumers should never have to call this method. It would be friendly visible to `Parametered.ParameteredGeneralizations` if java supported it. Calling this method should create a new list of parameters and is called

  Specified by:
    `createParameters` in interface `Parametered`
  Parameters:
    `prefix` - ends with a dot if not empty.
    `conf` - configuration used for retrieving values
  See Also:
    `invoking method`, `invoking method`

### getParameters

    public Collection<Parameter<?>> getParameters()

  Specified by:
    `getParameters` in interface `Parametered`

### configure

    public void configure(org.apache.hadoop.conf.Configuration jobConf)

  Specified by:
    `configure` in interface `Parametered`

### getExponent

    public double getExponent()

### setExponent

    public void setExponent(double exponent)

### distance

    public double distance(Vector v1,
                           Vector v2)

  Math.pow is clever about integer-valued doubles

  Specified by:
    `distance` in interface `DistanceMeasure`
  Parameters:
    `v1` - a Vector defining a multidimensional point in some feature space
    `v2` - a Vector defining a multidimensional point in some feature space
  Returns:
    a scalar doubles of the distance

### distance

    public double distance(double centroidLengthSquare,
                           Vector centroid,
                           Vector v)

  Description copied from interface: `DistanceMeasure`
  Optimized version of distance metric for sparse vectors. This distance computation requires operations proportional to the number of non-zero elements in the vector instead of the cardinality of the vector.

  Specified by:
    `distance` in interface `DistanceMeasure`
  Parameters:
    `centroidLengthSquare` - Square of the length of centroid
    `centroid` - Centroid vector

Copyright © 2008–2014 The Apache Software Foundation. All rights reserved.