public abstract class AbstractMetricMultiDimensionalPotentiallyPrecomputed extends AbstractMetricMultiDimensional
Metric.AggregateFunction
Modifier and Type | Method and Description |
---|---|
InformationLoss<?> |
createMaxInformationLoss()
Returns an instance of the maximal value.
|
InformationLoss<?> |
createMinInformationLoss()
Returns an instance of the minimal value.
|
Metric.AggregateFunction |
getAggregateFunction()
Returns the aggregate function of a multi-dimensional metric, null otherwise.
|
protected AbstractMetricMultiDimensional |
getDefaultMetric()
Returns the default variant.
|
protected InformationLossWithBound<AbstractILMultiDimensional> |
getInformationLossInternal(Transformation node,
HashGroupify groupify)
Evaluates the metric for the given node.
|
protected InformationLossWithBound<AbstractILMultiDimensional> |
getInformationLossInternal(Transformation node,
HashGroupifyEntry entry)
Returns the information loss that would be induced by suppressing the given entry.
|
protected AbstractILMultiDimensional |
getLowerBoundInternal(Transformation node)
Returns a lower bound for the information loss for the given node.
|
protected AbstractILMultiDimensional |
getLowerBoundInternal(Transformation node,
HashGroupify groupify)
Returns a lower bound for the information loss for the given node.
|
protected AbstractMetricMultiDimensional |
getPrecomputedMetric()
Returns the precomputed variant.
|
protected double |
getThreshold()
Returns the threshold.
|
protected void |
initializeInternal(DataManager manager,
DataDefinition definition,
Data input,
GeneralizationHierarchy[] ahierarchies,
ARXConfiguration config)
Implement this to initialize the metric.
|
boolean |
isIndependent()
Returns whether this metric requires the transformed data or groups to
determine information loss.
|
protected boolean |
isPrecomputed()
Returns whether the metric is precomputed.
|
createInformationLoss, createInformationLossWithBound, createInformationLossWithoutBound, getAggregateFunctions, getDimensions, getDimensionsAggregated, getDimensionsGeneralized, getMicroaggregationFunctions, getMicroaggregationStartIndex, initialize, isAbleToHandleMicroaggregation, setMax, setMin
createAECSMetric, createAmbiguityMetric, createDiscernabilityMetric, createDiscernabilityMetric, createEntropyMetric, createEntropyMetric, createEntropyMetric, createHeightMetric, createHeightMetric, createKLDivergenceMetric, createLossMetric, createLossMetric, createLossMetric, createLossMetric, createMetric, createNormalizedEntropyMetric, createNormalizedEntropyMetric, createPrecisionMetric, createPrecisionMetric, createPrecisionMetric, createPrecisionMetric, createPrecomputedEntropyMetric, createPrecomputedEntropyMetric, createPrecomputedEntropyMetric, createPrecomputedLossMetric, createPrecomputedLossMetric, createPrecomputedLossMetric, createPrecomputedLossMetric, createPrecomputedNormalizedEntropyMetric, createPrecomputedNormalizedEntropyMetric, createStaticMetric, createStaticMetric, getConfiguration, getDescription, getDescription, getInformationLoss, getInformationLoss, getLowerBound, getLowerBound, getName, initialize, isMonotonic, isMultiDimensional, isWeighted, list, round, toString
public InformationLoss<?> createMaxInformationLoss()
Metric
createMaxInformationLoss
in class AbstractMetricMultiDimensional
public InformationLoss<?> createMinInformationLoss()
Metric
createMinInformationLoss
in class AbstractMetricMultiDimensional
public Metric.AggregateFunction getAggregateFunction()
Metric
getAggregateFunction
in class AbstractMetricMultiDimensional
public boolean isIndependent()
Metric
isIndependent
in class Metric<AbstractILMultiDimensional>
protected AbstractMetricMultiDimensional getDefaultMetric()
protected InformationLossWithBound<AbstractILMultiDimensional> getInformationLossInternal(Transformation node, HashGroupifyEntry entry)
Metric
getInformationLoss(node, groupify)
but is guaranteed to be comparable for
different entries from the same groupify operator.getInformationLossInternal
in class Metric<AbstractILMultiDimensional>
protected InformationLossWithBound<AbstractILMultiDimensional> getInformationLossInternal(Transformation node, HashGroupify groupify)
Metric
getInformationLossInternal
in class Metric<AbstractILMultiDimensional>
node
- The node for which to compute the information lossgroupify
- The groupify operator of the previous checkprotected AbstractILMultiDimensional getLowerBoundInternal(Transformation node)
Metric
null
.getLowerBoundInternal
in class Metric<AbstractILMultiDimensional>
protected AbstractILMultiDimensional getLowerBoundInternal(Transformation node, HashGroupify groupify)
Metric
null
. getLowerBoundInternal
in class Metric<AbstractILMultiDimensional>
protected AbstractMetricMultiDimensional getPrecomputedMetric()
protected double getThreshold()
protected void initializeInternal(DataManager manager, DataDefinition definition, Data input, GeneralizationHierarchy[] ahierarchies, ARXConfiguration config)
Metric
initializeInternal
in class AbstractMetricMultiDimensional
protected boolean isPrecomputed()