public abstract class AbstractMetricMultiDimensionalPotentiallyPrecomputed extends AbstractMetricMultiDimensional
Metric.AggregateFunctionk| 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.
|
double |
getGeneralizationFactor()
Returns the factor used weight generalized values.
|
double |
getGeneralizationSuppressionFactor()
Returns the factor weighting generalization and suppression.
|
protected InformationLossWithBound<AbstractILMultiDimensional> |
getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node,
org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
Evaluates the metric for the given node.
|
protected InformationLossWithBound<AbstractILMultiDimensional> |
getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node,
org.deidentifier.arx.framework.check.groupify.HashGroupifyEntry entry)
Returns the information loss that would be induced by suppressing the given entry.
|
protected AbstractILMultiDimensional |
getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node)
Returns a lower bound for the information loss for the given node.
|
protected AbstractILMultiDimensional |
getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node,
org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
Returns a lower bound for the information loss for the given node.
|
protected AbstractMetricMultiDimensional |
getPrecomputedMetric()
Returns the precomputed variant.
|
ILScore |
getScore(org.deidentifier.arx.framework.lattice.Transformation<?> node,
org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
Calculates the score.
|
double |
getSuppressionFactor()
Returns the factor used to weight suppressed values.
|
protected double |
getThreshold()
Returns the threshold.
|
protected void |
initializeInternal(org.deidentifier.arx.framework.data.DataManager manager,
DataDefinition definition,
org.deidentifier.arx.framework.data.Data input,
org.deidentifier.arx.framework.data.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.
|
boolean |
isPrecomputed()
Returns whether the metric is precomputed
|
boolean |
isScoreFunctionSupported()
Returns whether the metric provides a score function
|
createInformationLoss, getAggregationFunctionsGeneralized, getAggregationFunctionsNonGeneralized, getAggregationIndicesGeneralized, getAggregationIndicesNonGeneralized, getAggregationInformation, getDimensions, getDimensionsAggregated, getDimensionsGeneralized, initialize, setMax, setMincreateAECSMetric, createAECSMetric, createAmbiguityMetric, createClassificationMetric, createClassificationMetric, createDiscernabilityMetric, createDiscernabilityMetric, createEntropyBasedInformationLossMetric, createEntropyBasedInformationLossMetric, createEntropyMetric, createEntropyMetric, createEntropyMetric, createEntropyMetric, createEntropyMetric, createEntropyMetric, createHeightMetric, createHeightMetric, createInstanceOfHighestScore, createInstanceOfLowestScore, createKLDivergenceMetric, createLossMetric, createLossMetric, createLossMetric, createLossMetric, createMetric, createNormalizedEntropyMetric, createNormalizedEntropyMetric, createPrecisionMetric, createPrecisionMetric, createPrecisionMetric, createPrecisionMetric, createPrecisionMetric, createPrecisionMetric, createPrecisionMetric, createPrecisionMetric, createPrecomputedEntropyMetric, createPrecomputedEntropyMetric, createPrecomputedEntropyMetric, createPrecomputedEntropyMetric, createPrecomputedEntropyMetric, createPrecomputedEntropyMetric, createPrecomputedLossMetric, createPrecomputedLossMetric, createPrecomputedLossMetric, createPrecomputedLossMetric, createPrecomputedNormalizedEntropyMetric, createPrecomputedNormalizedEntropyMetric, createPublisherPayoutMetric, createPublisherPayoutMetric, createStaticMetric, createStaticMetric, getConfiguration, getDescription, getDescription, getInformationLoss, getInformationLoss, getLowerBound, getLowerBound, getName, getNumRecords, getSubset, initialize, isAbleToHandleClusteredMicroaggregation, isAbleToHandleMicroaggregation, isGSFactorSupported, isMonotonic, isMonotonicWithGeneralization, isMonotonicWithSuppression, isMultiDimensional, isWeighted, list, render, round, toStringpublic InformationLoss<?> createMaxInformationLoss()
MetriccreateMaxInformationLoss in class AbstractMetricMultiDimensionalpublic InformationLoss<?> createMinInformationLoss()
MetriccreateMinInformationLoss in class AbstractMetricMultiDimensionalpublic Metric.AggregateFunction getAggregateFunction()
MetricgetAggregateFunction in class AbstractMetricMultiDimensionalpublic double getGeneralizationFactor()
MetricgetGeneralizationFactor in class Metric<AbstractILMultiDimensional>public double getGeneralizationSuppressionFactor()
MetricgetGeneralizationSuppressionFactor in class Metric<AbstractILMultiDimensional>public ILScore getScore(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
MetricgetScore in class Metric<AbstractILMultiDimensional>public double getSuppressionFactor()
MetricgetSuppressionFactor in class Metric<AbstractILMultiDimensional>public boolean isIndependent()
MetricisIndependent in class Metric<AbstractILMultiDimensional>public boolean isPrecomputed()
MetricisPrecomputed in class Metric<AbstractILMultiDimensional>public boolean isScoreFunctionSupported()
MetricisScoreFunctionSupported in class Metric<AbstractILMultiDimensional>protected AbstractMetricMultiDimensional getDefaultMetric()
protected InformationLossWithBound<AbstractILMultiDimensional> getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
MetricgetInformationLossInternal in class Metric<AbstractILMultiDimensional>node - The node for which to compute the information lossgroupify - The groupify operator of the previous checkprotected InformationLossWithBound<AbstractILMultiDimensional> getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupifyEntry entry)
MetricgetInformationLoss(node, groupify) but is guaranteed to be comparable for
different entries from the same groupify operator.getInformationLossInternal in class Metric<AbstractILMultiDimensional>protected AbstractILMultiDimensional getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node)
Metricnull.getLowerBoundInternal in class Metric<AbstractILMultiDimensional>protected AbstractILMultiDimensional getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
Metricnull. getLowerBoundInternal in class Metric<AbstractILMultiDimensional>protected AbstractMetricMultiDimensional getPrecomputedMetric()
protected double getThreshold()
protected void initializeInternal(org.deidentifier.arx.framework.data.DataManager manager,
DataDefinition definition,
org.deidentifier.arx.framework.data.Data input,
org.deidentifier.arx.framework.data.GeneralizationHierarchy[] ahierarchies,
ARXConfiguration config)
MetricinitializeInternal in class AbstractMetricMultiDimensional