该sklearn.random_projection
模块通过以更快的处理时间和更小的模型尺寸交易控制的精确度(作为附加方差)来实现简单且计算有效的方法来降低数据的维度。该模块实现两种非结构化随机矩阵: 高斯随机矩阵和 稀疏随机矩阵。
控制随机投影矩阵的维数和分布,以便保留数据集的任意两个样本之间的成对距离。因此,随机投影是基于距离的方法的合适的近似技术。
参考文献:
- Sanjoy Dasgupta。2000. 随机投影实验。 在第十六次人造智能不确定会议(UAI'00),Craig Boutilier和MoisésGoldszmidt(Eds。)的会议记录中。Morgan Kaufmann Publishers Inc.,San Francisco,CA,USA,143-151。
- Ella Bingham和Heikki Mannila。2001. 随机投影维数降低:应用于图像和文本数据。 在第七届ACM SIGKDD国际知识发现和数据挖掘会议(KDD'01)的会议记录中。ACM,纽约,纽约州,美国,245-250。
约翰逊- Lindenstrauss引理
随机投影效率背后的主要理论结果是 Johnson-Lindenstrauss lemma(引用维基百科):
在数学方面,Johnson-Lindenstrauss引理是从高维度到低维度欧几里德空间的低失真嵌入点的结果。引理指出,高维度空间中的一小部分点可以嵌入到较低维度的空间中,使得点之间的距离几乎保持不变。用于嵌入的地图至少为Lipschitz,甚至可以被视为正交投影。
只知道样本数量, sklearn.random_projection.johnson_lindenstrauss_min_dim
估计保守地随机子空间的最小尺寸以保证由随机投影引入的有界失真:
>>> from sklearn.random_projection import johnson_lindenstrauss_min_dim >>> johnson_lindenstrauss_min_dim(n_samples=1e6, eps=0.5) 663 >>> johnson_lindenstrauss_min_dim(n_samples=1e6, eps=[0.5, 0.1, 0.01]) array([ 663, 11841, 1112658]) >>> johnson_lindenstrauss_min_dim(n_samples=[1e4, 1e5, 1e6], eps=0.1) array([ 7894, 9868, 11841])
示例:
- 参见约翰逊 - 林登·斯特劳斯(Johnson-Lindenstrauss),将 约翰逊·林登·斯特拉斯(Johnson-Lindenstrauss)引理论的随机预测嵌入到理论解释中,并用稀疏随机矩阵进行实证验证。
高斯随机投影
该sklearn.random_projection.GaussianRandomProjection
投影在其中组分从下列分布中抽取一个随机生成的矩阵中的原始输入空间减小了维数 。
这里是一个小节选,说明如何使用高斯随机投影变压器:
>>> import numpy as np >>> from sklearn import random_projection >>> X = np.random.rand(100, 10000) >>> transformer = random_projection.GaussianRandomProjection() >>> X_new = transformer.fit_transform(X) >>> X_new.shape (100, 3947)
稀疏随机投影
在sklearn.random_projection.SparseRandomProjection
通过投影使用稀疏随机矩阵原始输入空间减小的维数。
稀疏随机矩阵是密集高斯随机投影矩阵的替代方案,保证了类似的嵌入质量,同时具有更高的存储器效率并允许更快地计算投影数据。
如果我们定义,随机矩阵的元素是从s = 1 / density
预计子空间的大小在哪里?默认情况下,非零元素的密度设置为Ping Li等人推荐的最小密度 。
这里是一个小节选,它说明了如何使用稀疏随机投影变压器:
>>> import numpy as np >>> from sklearn import random_projection >>> X = np.random.rand(100,10000) >>> transformer = random_projection.SparseRandomProjection() >>> X_new = transformer.fit_transform(X) >>> X_new.shape (100, 3947)
参考文献:
- 2003 数据库友好随机预测:约翰逊Lindenstrauss二进制硬币。计算机与系统科学学报66(2003)671-687
- Ping Li,Trevor J. Hastie和Kenneth W. Church。2006. 非常稀疏的随机投影。 在第12届ACM SIGKDD知识发现和数据挖掘国际会议论文集(KDD'06)中。ACM,纽约,纽约州,美国,287-296。