Package org.deidentifier.arx.metric.v2
Klasse MetricMDNMLoss
java.lang.Object
org.deidentifier.arx.metric.Metric<AbstractILMultiDimensional>
org.deidentifier.arx.metric.v2.AbstractMetricMultiDimensional
org.deidentifier.arx.metric.v2.MetricMDNMLoss
- Alle implementierten Schnittstellen:
Serializable
- Bekannte direkte Unterklassen:
MetricMDNMLossPrecomputed
This class implements a variant of the Loss metric.
- Siehe auch:
-
Verschachtelte Klassen - Übersicht
Von Klasse geerbte verschachtelte Klassen/Schnittstellen org.deidentifier.arx.metric.Metric
Metric.AggregateFunction -
Feldübersicht
Von Klasse geerbte Felder org.deidentifier.arx.metric.v2.AbstractMetricMultiDimensional
k -
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungDefault constructor which treats all transformation methods equally.MetricMDNMLoss(double gsFactor, Metric.AggregateFunction function) A constructor that allows to define a factor weighting generalization and suppression.MetricMDNMLoss(Metric.AggregateFunction function) Default constructor which treats all transformation methods equally. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungReturns the configuration of this metric.doubleReturns the factor used weight generalized values.doubleReturns the factor weighting generalization and suppression.protected ILMultiDimensionalWithBoundgetInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupify g) Evaluates the metric for the given node.protected ILMultiDimensionalWithBoundgetInformationLossInternal(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 AbstractILMultiDimensionalgetLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node) Returns a lower bound for the information loss for the given node.protected AbstractILMultiDimensionalgetLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupify g) Returns a lower bound for the information loss for the given node.getName()Returns the name of metric.getScore(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupify groupify) Calculates the score.protected DomainShare[]For subclasses.doubleReturns the factor used to weight suppressed values.protected voidinitializeInternal(org.deidentifier.arx.framework.data.DataManager manager, DataDefinition definition, org.deidentifier.arx.framework.data.Data input, org.deidentifier.arx.framework.data.GeneralizationHierarchy[] hierarchies, ARXConfiguration config) Implement this to initialize the metric.booleanReturns whether this metric handles microaggregationbooleanReturns whether a generalization/suppression factor is supportedbooleanReturns whether the metric provides a score functionprotected doublenormalizeAggregated(double aggregate) Normalizes the aggregate.protected doublenormalizeGeneralized(double aggregate, int dimension) Normalizes the aggregate.render(ARXConfiguration config) Renders the privacy modeltoString()Returns the name of metric.Von Klasse geerbte Methoden org.deidentifier.arx.metric.v2.AbstractMetricMultiDimensional
createInformationLoss, createMaxInformationLoss, createMinInformationLoss, getAggregateFunction, getAggregationFunctionsGeneralized, getAggregationFunctionsNonGeneralized, getAggregationIndicesGeneralized, getAggregationIndicesNonGeneralized, getAggregationInformation, getDimensions, getDimensionsAggregated, getDimensionsGeneralized, initialize, setMax, setMinVon Klasse geerbte Methoden org.deidentifier.arx.metric.Metric
createAECSMetric, 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, getDescription, getDescription, getInformationLoss, getInformationLoss, getLowerBound, getLowerBound, getNumRecords, getSubset, initialize, isAbleToHandleClusteredMicroaggregation, isIndependent, isMonotonic, isMonotonicWithGeneralization, isMonotonicWithSuppression, isMultiDimensional, isPrecomputed, isWeighted, list, round
-
Konstruktordetails
-
MetricMDNMLoss
public MetricMDNMLoss()Default constructor which treats all transformation methods equally. -
MetricMDNMLoss
Default constructor which treats all transformation methods equally.- Parameter:
function-
-
MetricMDNMLoss
A constructor that allows to define a factor weighting generalization and suppression.- Parameter:
gsFactor- A factor [0,1] weighting generalization and suppression. The default value is 0.5, which means that generalization and suppression will be treated equally. A factor of 0 will favor suppression, and a factor of 1 will favor generalization. The values in between can be used for balancing both methods.function-
-
-
Methodendetails
-
getConfiguration
Returns the configuration of this metric.- Setzt außer Kraft:
getConfigurationin KlasseMetric<AbstractILMultiDimensional>- Gibt zurück:
-
getGeneralizationFactor
public double getGeneralizationFactor()Beschreibung aus Klasse kopiert:MetricReturns the factor used weight generalized values.- Setzt außer Kraft:
getGeneralizationFactorin KlasseMetric<AbstractILMultiDimensional>- Gibt zurück:
-
getGeneralizationSuppressionFactor
public double getGeneralizationSuppressionFactor()Beschreibung aus Klasse kopiert:MetricReturns the factor weighting generalization and suppression.- Setzt außer Kraft:
getGeneralizationSuppressionFactorin KlasseMetric<AbstractILMultiDimensional>- Gibt zurück:
- A factor [0,1] weighting generalization and suppression. The default value is 0.5, which means that generalization and suppression will be treated equally. A factor of 0 will favor suppression, and a factor of 1 will favor generalization. The values in between can be used for balancing both methods.
-
getName
Beschreibung aus Klasse kopiert:MetricReturns the name of metric.- Setzt außer Kraft:
getNamein KlasseMetric<AbstractILMultiDimensional>- Gibt zurück:
-
getScore
public ILScore getScore(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupify groupify) Beschreibung aus Klasse kopiert:MetricCalculates the score. Note: All score functions are expected to return a score value divided by the sensitivity of the score function.- Setzt außer Kraft:
getScorein KlasseMetric<AbstractILMultiDimensional>- Parameter:
node-groupify-- Gibt zurück:
-
getSuppressionFactor
public double getSuppressionFactor()Beschreibung aus Klasse kopiert:MetricReturns the factor used to weight suppressed values.- Setzt außer Kraft:
getSuppressionFactorin KlasseMetric<AbstractILMultiDimensional>- Gibt zurück:
-
isAbleToHandleMicroaggregation
public boolean isAbleToHandleMicroaggregation()Beschreibung aus Klasse kopiert:MetricReturns whether this metric handles microaggregation- Setzt außer Kraft:
isAbleToHandleMicroaggregationin KlasseMetric<AbstractILMultiDimensional>- Gibt zurück:
-
isGSFactorSupported
public boolean isGSFactorSupported()Beschreibung aus Klasse kopiert:MetricReturns whether a generalization/suppression factor is supported- Setzt außer Kraft:
isGSFactorSupportedin KlasseMetric<AbstractILMultiDimensional>- Gibt zurück:
-
isScoreFunctionSupported
public boolean isScoreFunctionSupported()Beschreibung aus Klasse kopiert:MetricReturns whether the metric provides a score function- Setzt außer Kraft:
isScoreFunctionSupportedin KlasseMetric<AbstractILMultiDimensional>- Gibt zurück:
-
render
Beschreibung aus Klasse kopiert:MetricRenders the privacy model- Angegeben von:
renderin KlasseMetric<AbstractILMultiDimensional>- Gibt zurück:
-
toString
Beschreibung aus Klasse kopiert:MetricReturns the name of metric.- Setzt außer Kraft:
toStringin KlasseMetric<AbstractILMultiDimensional>- Gibt zurück:
-
getInformationLossInternal
protected ILMultiDimensionalWithBound getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupify g) Beschreibung aus Klasse kopiert:MetricEvaluates the metric for the given node.- Angegeben von:
getInformationLossInternalin KlasseMetric<AbstractILMultiDimensional>- Parameter:
node- The node for which to compute the information lossg- The groupify operator of the previous check- Gibt zurück:
- the double
-
getInformationLossInternal
protected ILMultiDimensionalWithBound getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupifyEntry entry) Beschreibung aus Klasse kopiert:MetricReturns the information loss that would be induced by suppressing the given entry. The loss is not necessarily consistent with the loss that is computed bygetInformationLoss(node, groupify)but is guaranteed to be comparable for different entries from the same groupify operator.- Angegeben von:
getInformationLossInternalin KlasseMetric<AbstractILMultiDimensional>- Parameter:
entry-- Gibt zurück:
-
getLowerBoundInternal
protected AbstractILMultiDimensional getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node) Beschreibung aus Klasse kopiert:MetricReturns a lower bound for the information loss for the given node. This can be used to expose the results of monotonic shares of a metric, which can significantly speed-up the anonymization process. If no such metric exists, simply returnnull.- Angegeben von:
getLowerBoundInternalin KlasseMetric<AbstractILMultiDimensional>- Parameter:
node-- Gibt zurück:
-
getLowerBoundInternal
protected AbstractILMultiDimensional getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> node, org.deidentifier.arx.framework.check.groupify.HashGroupify g) Beschreibung aus Klasse kopiert:MetricReturns a lower bound for the information loss for the given node. This can be used to expose the results of monotonic shares of a metric, which can significantly speed-up the anonymization process. If no such metric exists, simply returnnull.
This variant of the method allows computing a monotonic share based on a groupified data representation. IMPORTANT NOTE: The groups may not have been classified correctly when the method is called, i.e., HashGroupifyEntry.isNotOutlier may not be set correctly!- Angegeben von:
getLowerBoundInternalin KlasseMetric<AbstractILMultiDimensional>- Parameter:
node-g-- Gibt zurück:
-
initializeInternal
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[] hierarchies, ARXConfiguration config) Beschreibung aus Klasse kopiert:MetricImplement this to initialize the metric.- Setzt außer Kraft:
initializeInternalin KlasseAbstractMetricMultiDimensional- Parameter:
manager-definition-input-hierarchies-config-
-
normalizeAggregated
protected double normalizeAggregated(double aggregate) Normalizes the aggregate.- Parameter:
aggregate-dimension-- Gibt zurück:
-
normalizeGeneralized
protected double normalizeGeneralized(double aggregate, int dimension) Normalizes the aggregate.- Parameter:
aggregate-dimension-- Gibt zurück:
-