mirror of
https://github.com/IBM/ai-privacy-toolkit.git
synced 2026-04-24 20:36:21 +02:00
* Remove tensorflow dependency if not using keras model * Remove xgboost dependency if not using xgboost model * Documentation updates Signed-off-by: abigailt <abigailt@il.ibm.com>
40 lines
1,000 B
Python
40 lines
1,000 B
Python
from dataclasses import dataclass
|
|
from typing import Optional
|
|
|
|
import numpy as np
|
|
|
|
DEFAULT_DATASET_NAME = "dataset"
|
|
|
|
|
|
@dataclass
|
|
class DatasetAttackResult:
|
|
"""
|
|
Basic class for storing privacy risk assessment results.
|
|
"""
|
|
pass
|
|
|
|
|
|
@dataclass
|
|
class DatasetAttackScore:
|
|
"""
|
|
Basic class for storing privacy risk assessment scores.
|
|
|
|
:param dataset_name: The name of the dataset that was assessed.
|
|
:param risk_score: The privacy risk score.
|
|
:param result: An optional list of more detailed results.
|
|
"""
|
|
dataset_name: str
|
|
risk_score: float
|
|
result: Optional[DatasetAttackResult]
|
|
|
|
|
|
@dataclass
|
|
class DatasetAttackResultMembership(DatasetAttackResult):
|
|
"""
|
|
Class for storing membership attack results.
|
|
|
|
:param member_probabilities: The attack probabilities for member samples.
|
|
:param non_member_probabilities: The attack probabilities for non-member samples.
|
|
"""
|
|
member_probabilities: np.ndarray
|
|
non_member_probabilities: np.ndarray
|