(我不知道该用什么标记,因为我不是统计学家,我也不知道它属于哪个领域。请随意添加更合适的标记。)
我在一家生产数据分析软件的公司工作,我们需要一套不错的数据来测试和演示我们的最新产品。我们不能只用随机数生成器的输出填充数据库,因为程序的输出将变得毫无意义。获取此类数据的最简单方法之一是从客户端获取数据。我们从运行的试验中获得了大量数据。现在,显然我们无法发布客户的实际数据,因此我们需要对其进行一些更改,但仍然需要使其表现得像真实数据一样。
这里的目的是获取他们的数据集,并对其应用“模糊”,以使其无法被识别为特定于他们的。我对统计理论的记忆本身有点模糊,所以我想由你们来做:
本质上,我们(来自客户端)的数据本身就是(在该国家或整个世界中)存在的所有数据的样本。我想知道的是,可以使用哪种类型的操作来使样本不再强有力地代表客户的样本人口,同时仍然使样本大致代表世界人口。
作为参考,据我们所知,我们一般遵循粗糙的正态(高斯)分布。
原始数据集尚不广泛,但是从理论上可以从某些特定于区域的特征中识别出来(我们不知道这些特征是什么,并且是否有人达到足够的水平还值得怀疑,但是我们知道不同地方存在差异放置)。无论如何,我对这种理论比对实践更感兴趣-我想知道某个操作是否使得不可能(或至少很难)通过参数X识别源数据集,无论有人是否有能力工作首先是参数X。
我想出的方法是将读数分为不同的类型(在不付出太多的情况下,假设一组可能是“长度”或“花费X的时间”。)对于每个读数,计算标准偏差。然后,对每个值在(n * stddev)的正负之间添加一个随机值,其中n是我可以用来调整结果直到数据充分“模糊化”的分数。我不想简单地应用静态范围(例如,在原始值的90%到110%之间随机变化),因为某些值的差异要大得多或小得多-在某些度量中,平均值的10%几乎不明显,但在其他情况下则会使您成为严重的异常值。
这足以掩盖原始数据的来源吗?如果不能,那么仍可以通过哪些统计手段来识别数据,我又应该如何掩盖这些数据,同时又仍然使所得的数据模糊不清呢?