如何使用scikit学习PCA功能

时间:2017-04-10 08:12:59

标签: machine-learning scikit-learn

我正在编辑关于edx的ML的ARCHIVED课程,因此我没有得到我的查询答案 - 因此我在这里发帖。

我正在进行的练习是减少尺寸。我们需要在ARMADILLO数据上创建一个函数do_PCA。该功能还给出了:

def do_PCA:
  pca = PCA(n_components=2, svd_solver='full')
  pca.fit(armadillo)
  PCA(copy=True, n_components=2, whiten=False)
  T = pca.transform(armadillo)
  armadillo.shape
  T.shape
  ##print(T) ## i added this extra line
  return None

我的问题是:T代表简化数据集还是“犰狳”?并且我们不必改变'返回无'回到T'或者'返回犰狳'为了以后绘制简化数据集?

希望我的问题有道理!!!

一旦我知道答案,我也有一个随后的问题!!

好的......以上部分由@vivekkumar回答....现在是第二部分

在同一个实验室作业中,教师让我们运行以下代码:

t1 = datetime.datetime.now()
for i in range(5000): pca = do_PCA(armadillo)
time_delta = datetime.datetime.now() - t1

然后在散点图中使用变量time_delta。

我的问题如下:

他为什么要运行do_PCA 5000x ??

教师的注释如下:" PCA运行5000x,以帮助减少恶意程序改变执行速度的可能性。"

再次感谢

0 个答案:

没有答案