O
- Object type.@Title(value="KNNSOS: k-Nearest-Neighbor 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") @Reference(authors="J. Janssens, F. Husz\u00e1r, E. Postma, J. van den Herik",title="Stochastic Outlier Selection",booktitle="TiCC TR 2012\u2013001",url="https://www.tilburguniversity.edu/upload/b7bac5b2-9b00-402a-9261-7849aa019fbb_sostr.pdf",bibkey="tr/tilburg/JanssensHPv12") public class KNNSOS<O> extends AbstractDistanceBasedAlgorithm<O,OutlierResult> implements OutlierAlgorithm
This is a trivial variation of Stochastic Outlier Selection to benefit from KNN indexes, but not discussed in the original publication. Instead of setting perplexity, we choose the number of neighbors k, and set perplexity simply to k/3. Objects outside of the kNN are not considered anymore.
Reference of the kNN variant:
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
Original reference:
J. Janssens, F. Huszár, E. Postma, J. van den Herik
Stochastic Outlier Selection
TiCC TR 2012–001
Modifier and Type | Class and Description |
---|---|
static class |
KNNSOS.Parameterizer<O>
Parameterization class.
|
Modifier and Type | Field and Description |
---|---|
protected int |
k
Number of neighbors (not including query point).
|
private static Logging |
LOG
Class logger.
|
protected double |
phi
Expected outlier rate.
|
ALGORITHM_ID
DISTANCE_FUNCTION_ID
Constructor and Description |
---|
KNNSOS(DistanceFunction<? super O> distance,
int k)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
TypeInformation[] |
getInputTypeRestriction()
Get the input type restriction used for negotiating the data query.
|
protected Logging |
getLogger()
Get the (STATIC) logger for this class.
|
OutlierResult |
run(Relation<O> relation)
Run the algorithm.
|
getDistanceFunction
run
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
run
private static final Logging LOG
protected int k
protected double phi
public KNNSOS(DistanceFunction<? super O> distance, int k)
distance
- Distance functionk
- Number of neighbors to considerpublic TypeInformation[] getInputTypeRestriction()
AbstractAlgorithm
getInputTypeRestriction
in interface Algorithm
getInputTypeRestriction
in class AbstractAlgorithm<OutlierResult>
public OutlierResult run(Relation<O> relation)
relation
- data relationprotected Logging getLogger()
AbstractAlgorithm
getLogger
in class AbstractAlgorithm<OutlierResult>
Copyright © 2019 ELKI Development Team. License information.