V
- Vector type to use for distances@Title(value="GLS-Backward Search") @Reference(authors="F. Chen, C.-T. Lu, A. P. Boedihardjo", title="GLS-SOD: A Generalized Local Statistical Approach for Spatial Outlier Detection", booktitle="Proc. 16th ACM SIGKDD Int. Conf. Knowledge Discovery and Data Mining", url="https://doi.org/10.1145/1835804.1835939", bibkey="DBLP:conf/kdd/ChenLB10") public class CTLuGLSBackwardSearchAlgorithm<V extends NumberVector> extends AbstractDistanceBasedAlgorithm<V,OutlierResult> implements OutlierAlgorithm
Implementation note: this is just the most basic version of this algorithm. The spatial relation must be two dimensional, the set of spatial basis functions is hard-coded (but trivial to enhance) to \(\{1,x,y,x^2,y^2,xy\}\), and we assume the neighborhood is large enough for the simpler formulas to work that make the optimization problem convex.
Reference:
F. Chen, C.-T. Lu, A. P. Boedihardjo
GLS-SOD: A Generalized Local Statistical Approach for Spatial Outlier
Detection
Proc. 16th ACM SIGKDD Int. Conf. Knowledge Discovery and Data Mining
Modifier and Type | Class and Description |
---|---|
static class |
CTLuGLSBackwardSearchAlgorithm.Parameterizer<V extends NumberVector>
Parameterization class
|
Modifier and Type | Field and Description |
---|---|
private double |
alpha
Parameter Alpha - significance niveau
|
private int |
k
Parameter k - neighborhood size
|
private static Logging |
LOG
The logger for this class.
|
ALGORITHM_ID
DISTANCE_FUNCTION_ID
Constructor and Description |
---|
CTLuGLSBackwardSearchAlgorithm(DistanceFunction<? super V> distanceFunction,
int k,
double alpha)
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(Database database,
Relation<V> relationx,
Relation<? extends NumberVector> relationy)
Run the algorithm
|
private Pair<DBIDVar,java.lang.Double> |
singleIteration(Relation<V> relationx,
Relation<? extends NumberVector> relationy)
Run a single iteration of the GLS-SOD modeling step
|
getDistanceFunction
run
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
run
private static final Logging LOG
private double alpha
private int k
public CTLuGLSBackwardSearchAlgorithm(DistanceFunction<? super V> distanceFunction, int k, double alpha)
distanceFunction
- Distance functionk
- number of nearest neighbors to usealpha
- Significance niveaupublic OutlierResult run(Database database, Relation<V> relationx, Relation<? extends NumberVector> relationy)
database
- Database to processrelationx
- Spatial relationrelationy
- Attribute relationprivate Pair<DBIDVar,java.lang.Double> singleIteration(Relation<V> relationx, Relation<? extends NumberVector> relationy)
relationx
- Geo relationrelationy
- Attribute relationpublic TypeInformation[] getInputTypeRestriction()
AbstractAlgorithm
getInputTypeRestriction
in interface Algorithm
getInputTypeRestriction
in class AbstractAlgorithm<OutlierResult>
protected Logging getLogger()
AbstractAlgorithm
getLogger
in class AbstractAlgorithm<OutlierResult>
Copyright © 2019 ELKI Development Team. License information.