从python中的sklearn.decomposition导入randomizedPCA的减少时间

时间:2016-12-20 08:30:11

标签: python

从java调用python源代码。虽然工作正常,但时间非常重要,结束python源的时间不到一秒,但加载/导入RandomizedPCA的时间大约是3秒。这一行:

from sklearn.decomposition import randomizedPCA

所以我需要一种加载/导入速度更快的方法(不到一秒钟)。我认为一种方法是永远将这个lib加载到内存中,这有助于解决这个问题,但是找不到它。

1 个答案:

答案 0 :(得分:1)

我建议升级到sklearn的最新版本。来自release notes

  

Class decomposition.RandomizedPCA现已纳入考虑范围   decomp.PCA和可用参数调用   svd_solver='randomized''randomized'的默认n_iter数   已经改为4. PCA的旧行为已经恢复   svd_solver='full'。另一个解算器调用arpack并执行   截断的(非随机的)SVD。默认情况下,最好的解算器是   根据输入的大小和数量选择   请求的组件。

import timeit
timeit.timeit('import sklearn.decomposition')
  

Python 2.7:~0.5秒

     

Python 3.4:~1.2秒

计算机:i7-3770运行Ubuntu 16.04 LTS