趋近智
创建人工数据的一种直接方法是,从被称为统计分布的、成熟的数学模式中抽取数字。可以把分布看作是描述不同结果出现可能性的规则。如果我们可以用这些规则之一来描述真实数据中的一个特征,或者我们 希望 人工数据遵循特定的模式,我们就可以使用该分布来生成新的数据点。
让我们来看看你经常会遇到的两种基础分布。
想象一下掷一个标准的六面骰子。假设这是一个公平的骰子,那么在任何一次投掷中,从1到6的每个数字都有相同的机会(1/6)出现。这就是均匀分布的要旨:在一个确定的范围内,每个可能的值都具有相同的可能性。
当我们从连续均匀分布生成数据时,我们通常会指定一个最小值(a)和一个最大值(b)。然后,这个过程会在a和b之间随机选择数字,该范围内的任何数字被选中的概率都相同。
例如,如果我们 T 生成代表任务完成百分比的人工数据,并且我们没有理由认为任何一个百分比比另一个更可能,我们可以使用0%到100%之间的均匀分布。或者,如果我们想模拟1到5分的用户满意度评分,假设任何分数都同样可能(一个简化的假设!),我们可以从整数1、2、3、4、5中均匀采样。
这是一个可视化示例。我们使用0到10之间的均匀分布生成了1000个随机数。注意直方图中的条形高度大致相同,这表示每个小区间内的数字出现次数大致相等。
一个直方图,显示了从0到10的均匀分布中采样值的频率。每个值范围的频率计数相似。
许多自然现象都倾向于围绕一个平均值聚集。比如成年人的身高:大多数人接近平均身高,而极高或极矮的人则很少。这种模式通常由正态分布来描述,也被称为高斯分布或“钟形曲线”。
正态分布由两个参数定义:
当我们从正态分布生成数据时,我们会指定所需的均值(μ)和标准差(σ)。生成过程会产生最可能接近 μ 的数字。随着数值与均值的距离增加,其出现可能性会逐渐降低,呈现出特有的钟形。
例如,如果我们知道标准化考试的平均分是100,标准差是15,并且我们认为分数服从正态分布,我们可以使用这些参数生成人工考试分数。大多数生成的分数会接近100,而85或115左右的分数会较少,更远的分数则更少。
这是1000个从均值(μ)为5、标准差(σ)为1.5的正态分布生成数字的可视化。你可以清楚地看到钟形,其中接近5的值出现频率最高。
一个直方图,显示了从均值μ=5、标准差σ=1.5的正态分布中采样值的频率。频率在均值附近最高,并随着距离的增加而降低,形成钟形。
从统计分布中采样是人工数据生成中的一种基本技术,因为:
"尽管对于简单情况很有用,仅基于单个分布生成数据存在局限性。数据集通常在不同特征(列)之间存在复杂的关系。例如,年龄和收入可能相关;如果独立地使用不同的分布生成它们,可能会忽视这种关联。在下一章讨论生成表格数据时,我们将探讨处理此类依赖关系的方法。"
目前,主要的结论是,统计分布提供了一种基本方法,可以根据数学规则生成具有特定、可控属性的人工数据点。Python的NumPy库等常用工具提供了numpy.random.uniform()和numpy.random.normal()等函数,可以轻松地从这些分布中采样,你将在实践操作部分有机会尝试这些。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造