gpt4 book ai didi

python - 如何在Sklearn中保存PCA和T-SNE的学习权重/参数

转载 作者:行者123 更新时间:2023-11-30 09:28:49 24 4
gpt4 key购买 nike

我有两组数据,假设 A 和 B。我想将 PCA 和 T-sne 应用于 A 并微调算法。有一次,我对自己的调整感到满意,我想将学到的东西保存到一些 pickle 文件中。现在我想将相同的学习 PCA 和 t-sne 应用于集合 B。我希望 t-sne 每次在 B 上产生相同的结果。我希望如此,因为我假设,我们也可以保存学习的 t-sne 参数的状态。如果参数相同,并且每次加载相同的文件时,每次在集合 B 上应用 t-sne 的结果应该是相同的。我怎样才能在 Sklearn 和 python 中做到这一点?抱歉,我是 ML 和 python 的新手,这可能是一个非常基本的问题。

最佳答案

微调 T-SNE 等于为您的数据调整一些启发式算法(毕竟它是病态的;高维 -> 低维映射是有损的)。

将这种调整和学习的映射应用到其他数据是由 sklearn 的 transform 完成的。

但是:您会看到 T-SNE 没有 transform 方法,原因如下 here (包括进一步讨论):

It is a transductive learner, like many clustering algorithms: the model is not really applicable beyond the data points it is fed as training.

因此,无论您为数据集 A 调整什么,都并不真正适用于数据集 B(包括参数)!

对于 PCA 来说这是微不足道的。使用 docs: model_persistence 中描述的方法并使用 PCA 的 transform -方法(假设兼容的数据集;维度!)。

关于python - 如何在Sklearn中保存PCA和T-SNE的学习权重/参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49541671/

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