public class MetricSDNMPublisherPayout extends AbstractMetricSingleDimensional
Metric.AggregateFunction| Modifier | Constructor and Description |
|---|---|
protected |
MetricSDNMPublisherPayout(boolean journalistAttackerModel,
double gsFactor)
Creates a new instance
|
| Modifier and Type | Method and Description |
|---|---|
ILSingleDimensional |
createMaxInformationLoss()
Returns an instance of the maximal value.
|
ILSingleDimensional |
createMinInformationLoss()
Returns an instance of the minimal value.
|
MetricConfiguration |
getConfiguration()
Returns the configuration of this metric.
|
ARXCostBenefitConfiguration |
getCostBenefitConfiguration()
Returns the cost/benefit configuration
|
protected ILSingleDimensionalWithBound |
getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation,
org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
Evaluates the metric for the given node.
|
protected InformationLossWithBound<ILSingleDimensional> |
getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation,
org.deidentifier.arx.framework.check.groupify.HashGroupifyEntry entry)
Returns the information loss that would be induced by suppressing the given entry.
|
protected ILSingleDimensional |
getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation)
Returns a lower bound for the information loss for the given node.
|
protected ILSingleDimensional |
getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation,
org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
Returns a lower bound for the information loss for the given node.
|
java.lang.String |
getName()
Returns the name of metric.
|
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)
Implement this to initialize the metric.
|
boolean |
isAbleToHandleMicroaggregation()
Returns whether this metric handles microaggregation
|
boolean |
isGSFactorSupported()
Returns whether a generalization/suppression factor is supported
|
boolean |
isJournalistAttackerModel()
Returns whether the journalist attacker model is being assumed.
|
boolean |
isProsecutorAttackerModel()
Returns whether the prosecutor attacker model is being assumed.
|
ElementData |
render(ARXConfiguration config)
Renders the privacy model
|
java.lang.String |
toString()
Returns the name of metric.
|
createInformationLoss, createInformationLoss, getAggregationFunctionsGeneralized, getAggregationFunctionsNonGeneralized, getAggregationIndicesGeneralized, getAggregationIndicesNonGeneralized, getAggregationInformation, getNumTuples, setNumTuplescreateAECSMetric, 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, getAggregateFunction, getDescription, getDescription, getGeneralizationFactor, getGeneralizationSuppressionFactor, getInformationLoss, getInformationLoss, getLowerBound, getLowerBound, getNumRecords, getScore, getSubset, getSuppressionFactor, initialize, isAbleToHandleClusteredMicroaggregation, isIndependent, isMonotonic, isMonotonicWithGeneralization, isMonotonicWithSuppression, isMultiDimensional, isPrecomputed, isScoreFunctionSupported, isWeighted, list, roundprotected MetricSDNMPublisherPayout(boolean journalistAttackerModel,
double gsFactor)
journalistAttackerModel - If set to true, the journalist attacker model will be assumed,
the prosecutor model will be assumed, otherwisegsFactor - 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.public ILSingleDimensional createMaxInformationLoss()
MetriccreateMaxInformationLoss in class AbstractMetricSingleDimensionalpublic ILSingleDimensional createMinInformationLoss()
MetriccreateMinInformationLoss in class AbstractMetricSingleDimensionalpublic MetricConfiguration getConfiguration()
getConfiguration in class Metric<ILSingleDimensional>public ARXCostBenefitConfiguration getCostBenefitConfiguration()
public java.lang.String getName()
MetricgetName in class Metric<ILSingleDimensional>public boolean isAbleToHandleMicroaggregation()
MetricisAbleToHandleMicroaggregation in class Metric<ILSingleDimensional>public boolean isGSFactorSupported()
MetricisGSFactorSupported in class Metric<ILSingleDimensional>public boolean isJournalistAttackerModel()
public boolean isProsecutorAttackerModel()
public ElementData render(ARXConfiguration config)
Metricrender in class Metric<ILSingleDimensional>public java.lang.String toString()
MetrictoString in class Metric<ILSingleDimensional>protected ILSingleDimensionalWithBound getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation, org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
MetricgetInformationLossInternal in class Metric<ILSingleDimensional>transformation - The node for which to compute the information lossgroupify - The groupify operator of the previous checkprotected InformationLossWithBound<ILSingleDimensional> getInformationLossInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation, 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<ILSingleDimensional>protected ILSingleDimensional getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation)
Metricnull.getLowerBoundInternal in class Metric<ILSingleDimensional>protected ILSingleDimensional getLowerBoundInternal(org.deidentifier.arx.framework.lattice.Transformation<?> transformation, org.deidentifier.arx.framework.check.groupify.HashGroupify groupify)
Metricnull. getLowerBoundInternal in class Metric<ILSingleDimensional>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)
MetricinitializeInternal in class AbstractMetricSingleDimensional