gpt4 book ai didi

machine-learning - 如何在内存有限的巨大图像数据集上应用zca?

转载 作者:行者123 更新时间:2023-11-30 09:18:57 25 4
gpt4 key购买 nike

谷歌告诉我的是:

  1. 对于kerasImageDataGenerator函数似乎有一个可以开箱即用的zca_whitening。但如果设置了此选项,则需要在整个数据集 X 上调用 ImageDataGenerator.fit。所以这不是一个选项。

  2. 对于sklearnIncrementalPCA似乎可以处理巨大的数据集,但我不知道如何以生成器样式将PCA旋转为ZCA。

感谢您的帮助!

最佳答案

我定义了一个可能对 ZCA transformation 有帮助的函数。 :

def ZCAtransform(X,IPCA_model): 
# get the Eigenvectors and Eigenvalues
U = IPCA_model.components_.transpose()
S = np.sqrt(IPCA_model.explained_variance_)
Xdemeand = (X-np.mean(X,0)).transpose()

#get the transformed data
# Xproj' = U * diag(1/(S+I*epsilon)) * U' * X_data
return (U.dot(np.diag(1/(S+IPCA_model.noise_variance_))).dot(U.transpose()).dot(Xdemeand)).transpose()

Xproj = ZCAtransform(X, ipca)

按照给定的example在 Scikit-learn,我能够生成 Iris 数据集的 ZCA,如下所示:

ZCA Whitened PCA

关于machine-learning - 如何在内存有限的巨大图像数据集上应用zca?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47106943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com