W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
sklearn.random_projection
模塊實(shí)現(xiàn)了一種簡單且計(jì)算高效的減少數(shù)據(jù)維數(shù)的方式,通過以可控制的精度(以附加方差)為代價(jià)來縮短處理時(shí)間并縮小模型尺寸。該模塊實(shí)現(xiàn)兩種非結(jié)構(gòu)化隨機(jī)矩陣: 高斯隨機(jī)矩陣和 稀疏隨機(jī)矩陣。
控制隨機(jī)投影矩陣的尺寸和分布以維持?jǐn)?shù)據(jù)集的任何兩個(gè)樣本之間的成對距離。因此,隨機(jī)投影是基于距離方法的合適的近似技術(shù)。
參考文獻(xiàn):
Sanjoy Dasgupta.2000. 隨機(jī)投影實(shí)驗(yàn)。 第16屆人工智能不確定性會(huì)議(UAI'00)的會(huì)議記錄,克雷格·鮑迪埃(Craig Boutilier)和MoisésGoldszmidt(編輯)。美國加利福尼亞州舊金山的摩根考夫曼出版社(Morgan Kaufmann Publishers Inc.),編號(hào)143-151。 Ella Bingham和Heikki Mannila.2001. 降維中的隨機(jī)投影:圖像和文本數(shù)據(jù)的應(yīng)用。 第七屆ACM SIGKDD有關(guān)知識(shí)發(fā)現(xiàn)和數(shù)據(jù)挖掘的國際會(huì)議論文集(KDD '01)。美國紐約州紐約市,ACM,245-250。
隨機(jī)投影效率背后的主要理論結(jié)果是 Johnson-Lindenstrauss引理(引用Wikipedia):
在數(shù)學(xué)中,Johnson-Lindenstrauss引理是關(guān)于點(diǎn)從高維到低維歐幾里德空間的低失真嵌入的結(jié)果。引理指出,高維空間中的一小部分點(diǎn)可以以點(diǎn)之間的距離幾乎被保留的方式嵌入到低維空間中。用于嵌入的地圖至少為Lipschitz,甚至可以視為正交投影。
僅知道樣本數(shù)的情況下, sklearn.random_projection.johnson_lindenstrauss_min_dim
保守估計(jì)隨機(jī)子空間的最小尺寸,以保證隨機(jī)投影導(dǎo)致的失真在一定范圍內(nèi):
>>> 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])
示例:
有關(guān) Johnson-Lindenstrauss引理的理論解釋和使用稀疏隨機(jī)矩陣的經(jīng)驗(yàn)驗(yàn)證,請參見Johnson-Lindenstrauss綁定嵌入隨機(jī)投影 。
參考文獻(xiàn):
Sanjoy Dasgupta和Anupam Gupta,1999年。 Johnson-Lindenstrauss Lemma的基本證明。
sklearn.random_projection.GaussianRandomProjection
通過將原始輸入控件投影到隨機(jī)生成的矩陣上來降低維數(shù),該矩陣從以下分布 中提取元素。
以下片段說明了如何使用高斯隨機(jī)投影轉(zhuǎn)換器:
>>> 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
通過使用稀疏隨機(jī)矩陣投影原始輸入空間來降低維數(shù)。
稀疏隨機(jī)矩陣是稠密高斯隨機(jī)投影矩陣的替代并保證相似的嵌入質(zhì)量,同時(shí)具有更高的存儲(chǔ)效率而且可以更快地計(jì)算投影數(shù)據(jù)。
如果我們定義s = 1 / density
,則隨機(jī)矩陣的元素來自:
其中
以下小片段說明了如何使用稀疏隨機(jī)投影轉(zhuǎn)換器:
>>> 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)
參考文獻(xiàn)
D. Achlioptas. 2003. Database-friendly random projections: Johnson-Lindenstrauss with binary coins. Journal of Computer and System Sciences 66 (2003) 671–687 Ping Li, Trevor J. Hastie, and Kenneth W. Church. 2006. Very sparse random projections. In Proceedings of the 12th ACM SIGKDD international conference on Knowledge discovery and data mining (KDD ‘06). ACM, New York, NY, USA, 287-296.
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: