Python中的数据匿名化

数据挖掘 机器学习 Python 数据 数据清理 匿名化
2021-09-15 12:28:39

我正在从事一个由真实数据组成的工业项目。现在,这些数据包含无法公开披露的有关公司运营的敏感信息。因此,在实现机器学习算法之前,我需要先对原始数据进行匿名化处理。`数据匿名化包括:

  • changing the names of persons,

  • places,

  • geographical locations, etc.

我想知道匿名数据集的最佳做法是什么?理想情况下,我应该能够在对匿名数据集进行分析后取回原始数据。

我浏览了文献并查看了一些已回答的问题。它们都是基于cybersecurity aspectslike encryption and decryption algorithms我不熟悉网络安全算法。有没有办法在不深入研究网络安全算法的情况下稍微改变数据?

2个回答

据我所知,文本匿名化主要被认为是手动预处理步骤,我不知道有任何可靠的全自动方法。由于法律和道德原因,该过程的可靠性通常至关重要,这就是为什么必须进行一些手工工作的原因。

话虽如此,该过程可以半自动进行,尤其是在要混淆的信息范围不太大的情况下。在您的情况下,可能会应用NE 标记器来捕获大部分实体。

一旦在原始数据中注释了所有实体,就可以直接用占位符自动替换它们。这可以在保持原始版本和匿名版本对齐的同时完成(通常为每个实体使用唯一的 id)。

一般来说,我会说 HIPPA 标准是一个好的开始。这将包括将非个人识别信息 (pii) 与不必保密的信息分开。[1]

老实说,匿名地理位置并没有很好的标准,这样既可以保护隐私,又可以进行数据分析,这是NIST感兴趣的一个领域。事实上,它是2018 年 The Unlinkable Data Challenge的主题之一。

可以在此处找到一组详细的方法。

除此之外,我会向您推荐所谓的Cryptographic Right Answers立即散列,不要使用 MD5、MD6 或 SHA-1 等。