O - Object type.@Title(value="ISOS: Intrinsic Stochastic Outlier Selection") @Reference(authors="Erich Schubert, Michael Gertz", title="Intrinsic t-Stochastic Neighbor Embedding for Visualization and Outlier Detection: A Remedy Against the Curse of Dimensionality?", booktitle="Proc. Int. Conf. Similarity Search and Applications, SISAP\'2017", url="https://doi.org/10.1007/978-3-319-68474-1_13", bibkey="DBLP:conf/sisap/SchubertG17") public class ISOS<O> extends AbstractDistanceBasedAlgorithm<O,OutlierResult> implements OutlierAlgorithm
Reference:
Erich Schubert, Michael Gertz
Intrinsic t-Stochastic Neighbor Embedding for Visualization and Outlier
Detection: A Remedy Against the Curse of Dimensionality?
Proc. Int. Conf. Similarity Search and Applications, SISAP'2017
| Modifier and Type | Class and Description |
|---|---|
static class |
ISOS.Parameterizer<O>
Parameterization class.
|
| Modifier and Type | Field and Description |
|---|---|
(package private) IntrinsicDimensionalityEstimator |
estimator
Estimator of intrinsic dimensionality.
|
protected int |
k
Number of neighbors (not including query point).
|
private static Logging |
LOG
Class logger.
|
protected double |
phi
Expected outlier rate.
|
ALGORITHM_IDDISTANCE_FUNCTION_ID| Constructor and Description |
|---|
ISOS(DistanceFunction<? super O> distance,
int k,
IntrinsicDimensionalityEstimator estimator)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
protected static void |
adjustDistances(DBIDRef ignore,
DoubleDBIDListIter ki,
double max,
double id,
ModifiableDoubleDBIDList dists) |
protected double |
estimateID(DBIDRef ignore,
DoubleDBIDListIter it,
double[] p)
Estimate the local intrinsic dimensionality.
|
TypeInformation[] |
getInputTypeRestriction()
Get the input type restriction used for negotiating the data query.
|
protected Logging |
getLogger()
Get the (STATIC) logger for this class.
|
static void |
nominateNeighbors(DBIDIter ignore,
DBIDArrayIter di,
double[] p,
double norm,
WritableDoubleDataStore scores)
Vote for neighbors not being outliers.
|
OutlierResult |
run(Relation<O> relation)
Run the algorithm.
|
static DoubleMinMax |
transformScores(WritableDoubleDataStore scores,
DBIDs ids,
double logPerp,
double phi)
Transform scores
|
getDistanceFunctionrunclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitrunprivate static final Logging LOG
protected int k
IntrinsicDimensionalityEstimator estimator
protected double phi
public ISOS(DistanceFunction<? super O> distance, int k, IntrinsicDimensionalityEstimator estimator)
distance - Distance functionk - Number of neighbors to considerestimator - Estimator of intrinsic dimensionality.public TypeInformation[] getInputTypeRestriction()
AbstractAlgorithmgetInputTypeRestriction in interface AlgorithmgetInputTypeRestriction in class AbstractAlgorithm<OutlierResult>public OutlierResult run(Relation<O> relation)
relation - data relation.protected static void adjustDistances(DBIDRef ignore, DoubleDBIDListIter ki, double max, double id, ModifiableDoubleDBIDList dists)
protected double estimateID(DBIDRef ignore, DoubleDBIDListIter it, double[] p)
ignore - Object to ignoreit - Iteratorp - Scratch arraypublic static void nominateNeighbors(DBIDIter ignore, DBIDArrayIter di, double[] p, double norm, WritableDoubleDataStore scores)
ignore - Object to ignoredi - Neighbor object IDs.p - Probabilitiesnorm - Normalization factor (1/sum)scores - Output score storagepublic static DoubleMinMax transformScores(WritableDoubleDataStore scores, DBIDs ids, double logPerp, double phi)
scores - Scores to transformids - DBIDs to processlogPerp - log perplexityphi - Expected outlier rateprotected Logging getLogger()
AbstractAlgorithmgetLogger in class AbstractAlgorithm<OutlierResult>Copyright © 2019 ELKI Development Team. License information.