pyCANON,一个用于检查数据集匿名程度级别的Python库
项目描述
pyCANON是一个Python库和CLI,用于评估与最常见匿名技术相关的参数值。
作者: Judith Sáinz-Pardo Díaz 和 Álvaro López García (IFCA - CSIC)。
安装
我们建议使用Python3和virtualenv
virtualenv .venv -p python3 source .venv/bin/activate
然后运行以下命令来安装库及其所有依赖项
pip install pycanon
如果您还想安装允许生成报告PDF文件的功能,请按以下方式安装
pip install pycanon[PDF]
文档
pyCANON的文档托管在Read the Docs。
入门
使用adult数据集的示例
import pandas as pd
from pycanon import anonymity, report
FILE_NAME = "adult.csv"
QI = ["age", "education", "occupation", "relationship", "sex", "native-country"]
SA = ["salary-class"]
DATA = pd.read_csv(FILE_NAME)
# Calculate k for k-anonymity:
k = anonymity.k_anonymity(DATA, QI)
# Print the anonymity report:
report.print_report(DATA, QI, SA)
描述
pyCANON允许检查以下隐私保护技术是否得到验证以及与每个技术相关的参数值。
技术 |
pyCANON函数 |
参数 |
备注 |
---|---|---|---|
k-匿名性 |
k_anonymity |
k:int |
|
(α, k)-匿名性 |
alpha_k_anonymity |
α:float k:int |
|
ℓ-多样性 |
l_diversity |
ℓ:int |
|
熵ℓ-多样性 |
entropy_l_diversity |
ℓ:int |
|
递归(c,ℓ)-多样性 |
recursive_c_l_diversity |
c:int ℓ:int |
如果ℓ=1则不计算 |
基本β相似度 |
basic_beta_likeness |
β:float |
|
增强β相似度 |
enhanced_beta_likeness |
β:float |
|
t-接近度 |
t_closeness |
t:float |
对于数值属性,使用EMD(一维地球移动距离)的定义。对于分类属性,使用“等距离”度量。 |
δ-披露隐私 |
delta_disclosure |
δ:float |
更多信息请参阅这篇论文。
此外,可以获得一份报告,其中包含等价类信息和数据的有用性。特别是,对于后者,实现了以下三个经典度量(如文档中定义):平均等价类大小、分类度量和解晰度度量。
引用
如果您正在使用pyCANON,您可以如下引用它
@article{sainzpardo2022pycanon, title={A Python library to check the level of anonymity of a dataset}, author={S{\'a}inz-Pardo D{\'\i}az, Judith and L{\'o}pez Garc{\'\i}a, {\'A}lvaro}, journal={Scientific Data}, volume={9}, number={1}, pages={785}, year={2022}, publisher={Nature Publishing Group UK London}}
致谢
作者们感谢欧洲联盟-下一代欧盟(欧盟2020/2094号法规)的资金支持,通过西班牙国家研究委员会(CSIC)的全球健康平台(PTI+ Salud Global)以及“欧洲开放科学云的人工智能”(AI4EOSC)项目的支持,该项目已从欧盟的“地平线欧洲”研究和创新计划获得资金,合同编号为101058593。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码分发
构建分发
pycanon-1.0.1.post2.tar.gz的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 1fc2a50a156488d61a240e57312984cd1b6dfc5008d2671f1e72a4f30dca58f3 |
|
MD5 | 4d563be56ef301770deb4c4990db0f98 |
|
BLAKE2b-256 | 15870aa3acadb1b3ec3f607748b388e7fcb74c0fc58e9417198f6da4c2d595cf |
pycanon-1.0.1.post2-py3-none-any.whl 的哈希值
算法 | 散列摘要 | |
---|---|---|
SHA256 | b3ebd13c7f253ba78ec12074e1e6c546595af733c6cd0b0b39fb04102ddeb353 |
|
MD5 | 2b8885cfb17a32cc3785993767a7971c |
|
BLAKE2b-256 | 03a3de0975fd1be294b69f4b6ca6de5f576683c2670a846286d383e67184b407 |