可扩展的尺寸缩减


9

考虑到特征数量恒定,Barnes-Hut t-SNE的复杂度为,随机投影和PCA的复杂度为使它们对于非常大的数据集“负担得起”。O n O(nlogn)O(n)

另一方面,依赖多维缩放的方法具有复杂度。O(n2)

是否存在其他复杂度低于降维技术(除了琐碎的降维技术,例如,看前列?O n log n kO(nlogn)

Answers:


5

一个有趣的选择是探索基于神经的降维。可以以为代价来训练最常用的降维网络类型,即自动编码器,其中表示训练迭代(是与训练数据无关的超参数) 。因此,训练复杂度简化为。ÔÑ O(in)iO(n)

您可以首先看一下Hinton和Salakhutdinov [1]在2006年的研讨会上所做的工作。从那时起,事情发展了很多。现在,大多数关注是通过变分自动编码器实现的[2],但基本思想(在其输出层之间通过瓶颈层重构输入的网络)仍然相同。请注意,与PCA和RP相比,自动编码器执行非线性降维。而且,与t-SNE相比,自动编码器可以转换看不见的样本,而无需重新训练整个模型。

在实用方面,我建议您看一下这篇文章,其中提供了有关如何使用奇妙的Keras库实现不同类型的自动编码器的详细信息。

[1] Hinton,GE和Salakhutdinov,RR(2006)。使用神经网络降低数据的维数。科学313(5786),504-507。

[2] Kingma,DP,和Welling,M.(2013)。自动编码可变贝叶斯。arXiv预印本arXiv:1312.6114。


1
技术上你具备使用这种特殊的方式为训练用t-SNE新样本模型:lvdmaaten.github.io/publications/papers/AISTATS_2009.pdf
bibliolytic

当然。作者还建议培训多变量回归器,以从输入数据样本中预测地图位置,作为一种潜在的方法。在本文中,您提到作者训练了一个神经网络以直接最小化t-SNE损失。但是,在这两种情况下,您都必须定义一个显式模型或函数以将数据点映射到生成的空间,因此它必须足够强大(足够的层/神经元)来学习嵌入,但又不能过多以避免过度拟合...这牺牲了一些标准t-SNE的可用性。
丹尼尔·洛佩兹

那里没有分歧,我只是认为对比自动编码器和t-SNE有点不准确,就像您在回答中所做的那样,因为t-SNE可以用作

尽管现在我再次阅读了一个问题:我们是否可以说神经网络是,因为不能保证它们实际上会收敛?Big-O表示法是最坏的情况,对吗?O(n)
bibliolytic

我不想将其包括在答案中,因为在训练网络时计算t-SNE损耗需要时间,其中是最小批量大小。mO(m2)m
DanielLópez17年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.