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_IDDISTANCE_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
|
getDistanceFunctionrunclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitrunprivate 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()
AbstractAlgorithmgetInputTypeRestriction in interface AlgorithmgetInputTypeRestriction in class AbstractAlgorithm<OutlierResult>protected Logging getLogger()
AbstractAlgorithmgetLogger in class AbstractAlgorithm<OutlierResult>Copyright © 2019 ELKI Development Team. License information.