public class SphereCluster extends Cluster
Cluster
interface representing
spherical clusters. The inclusion probability is one inside the sphere and zero
everywhere else.Constructor and Description |
---|
SphereCluster() |
SphereCluster(double[] center,
double radius) |
SphereCluster(double[] center,
double radius,
double weightedSize) |
SphereCluster(int dimensions,
double radius,
Random random) |
SphereCluster(List<? extends weka.core.Instance> instances,
int dimension) |
Modifier and Type | Method and Description |
---|---|
void |
combine(SphereCluster cluster) |
double[] |
getCenter() |
double |
getCenterDistance(weka.core.Instance instance) |
double |
getCenterDistance(SphereCluster other) |
protected void |
getClusterSpecificInfo(ArrayList<String> infoTitle,
ArrayList<String> infoValue) |
double[] |
getDistanceVector(weka.core.Instance instance) |
double[] |
getDistanceVector(SphereCluster other) |
double |
getHullDistance(SphereCluster other) |
double |
getInclusionProbability(weka.core.Instance instance)
Returns the probability of the given point belonging to
this cluster.
|
double |
getRadius() |
double |
getWeight()
Returns the weight of this cluster, not neccessarily normalized.
|
void |
merge(SphereCluster cluster) |
double |
overlapRadiusDegree(SphereCluster other)
Checks whether two
SphereCluster overlap based on radius
NOTE: overlapRadiusDegree only calculates the overlap based
on the centers and the radi, so not the real overlap
TODO: should we do this by MC to get the real overlap??? |
boolean |
overlapSave(SphereCluster other)
When a clusters looses points the new minimal bounding sphere can be
partly outside of the originating cluster.
|
weka.core.Instance |
sample(Random random)
Samples this cluster by returning a point from inside it.
|
void |
setCenter(double[] center) |
void |
setRadius(double radius) |
void |
setWeight(double weight) |
getDescription, getGroundTruth, getId, getInfo, getMeasureValue, isGroundTruth, setGroundTruth, setId, setMeasureValue, setMeasureValue
copy, copy, measureByteSize, measureByteSize, toString
public SphereCluster(double[] center, double radius)
public SphereCluster()
public SphereCluster(double[] center, double radius, double weightedSize)
public SphereCluster(int dimensions, double radius, Random random)
public SphereCluster(List<? extends weka.core.Instance> instances, int dimension)
public double overlapRadiusDegree(SphereCluster other)
SphereCluster
overlap based on radius
NOTE: overlapRadiusDegree only calculates the overlap based
on the centers and the radi, so not the real overlap
TODO: should we do this by MC to get the real overlap???other
- public void combine(SphereCluster cluster)
public void merge(SphereCluster cluster)
public double[] getCenter()
public void setCenter(double[] center)
public double getRadius()
public void setRadius(double radius)
public double getWeight()
Cluster
public void setWeight(double weight)
public double getInclusionProbability(weka.core.Instance instance)
Cluster
getInclusionProbability
in class Cluster
public double getCenterDistance(weka.core.Instance instance)
public double getCenterDistance(SphereCluster other)
public double getHullDistance(SphereCluster other)
public boolean overlapSave(SphereCluster other)
other
- the potentially overlapping clusterpublic double[] getDistanceVector(weka.core.Instance instance)
public double[] getDistanceVector(SphereCluster other)
public weka.core.Instance sample(Random random)
Copyright © 2014 University of Waikato, Hamilton, NZ. All Rights Reserved.