约翰逊-林登斯特劳斯引理是一个在高维空间中的数据集可以被随机投影到低维欧几里得空间中,同时控制数据对之间距离的失真度的数学定理。该引理在机器学习和数据科学领域中非常有用,特别是在处理大规模数据集时,可以通过降低数据维度来提高计算效率。
在本文中,将探讨如何使用随机投影技术来实现这一引理,并展示在不同失真度下,数据集的最小维度需求。还将通过实验验证这些理论界限,并讨论在实际应用中的一些注意事项。
随机投影引入的失真度可以通过以下不等式来界定:
(1 - eps) \|u - v\|^2 < \|p(u) - p(v)\|^2 < (1 + eps) \|u - v\|^2
其中,u和v是从数据集中取出的任意两行,p是通过随机高斯矩阵N(0, 1)进行的投影,其形状为(n_components, n_features)。为了保证eps-嵌入,所需的最小组件数由以下公式给出:
n_components >= 4 log(n_samples) / (eps^2 / 2 - eps^3 / 3)
这意味着,随着样本数量n_samples的增加,为了保证eps-嵌入,所需的最小维度n_components会以对数方式增加。
为了验证上述理论界限,使用了两个数据集:20新闻组文本文档数据集和手写数字数据集。对于20新闻组数据集,选择了300个文档,这些文档总共有100k个特征,并使用稀疏随机矩阵将它们投影到不同目标维度的较小欧几里得空间中。对于手写数字数据集,选择了300个8x8灰度像素的手写数字图片,并随机将它们投影到不同较大维度的空间中。
对于每个n_components的值,绘制了以下图表:
通过这些图表,可以观察到,当n_components的值较低时,分布范围较广,许多对的失真度较大,且分布偏斜(由于距离总是正数,左侧的零比率限制)。而当n_components的值较大时,失真度得到控制,距离通过随机投影得到了很好的保留。
根据约翰逊-林登斯特劳斯引理,即使在只有64个特征的输入空间中的手写数字数据集上,使用随机投影也无法实现降维,因为它不允许在这种情况下进行降维。另一方面,20新闻组的数据集的维度可以从56,436降低到10,000,同时合理地保持成对距离。