2016-11-22 39 views
2

我有一個很大的p(〜20K)和小的n(〜500)問題。我在想的第一件事就是減少尺寸。在嘗試PCA,強大的PCA,ICA,去除高度相關的特徵之後,我正在考慮使用隨機投影。但是,沒有簡單的隨機投影R實現。使用隨機投影降維的任何R實現?

我已經找到了一些隨機投影的R程序包,像

  1. MCLUST:https://cran.r-project.org/web/packages/mclust/index.html
  2. RPEnsemble:https://cran.r-project.org/web/packages/RPEnsemble/index.html

但是,似乎他們不直接支持隨機投影的降維。我有限的瞭解隨機投影知識,但是我發現在sklearn支持這兩項功能:

高斯隨機投影稀疏隨機投影: http://scikit-learn.org/stable/modules/random_projection.html

而且它有非常簡單的功能界面。

是否可以在R中輕鬆實現隨機投影?或者,利用現有工具在R中使用Random Projection進行降維?

回答

0

我同意RPEnsemble軟件包似乎沒有公開低級別的方法,只允許您以任何方便的形式使用該功能。

但是我遇到了這個R源代碼,看起來相當直接和合理的記錄:R source code for random projections。這是clusterv package的一部分,你可以在那裏下載它。

+1

R包可用於執行隨機投影可用。請參閱鏈接https://cran.r-project.org/web/packages/RandPro/index.html – Siddhu