python - sklearn中KMeans的变换是否可以逆转?

标签 python machine-learning scikit-learn k-means dimensionality-reduction

对数据集进行聚类,然后使用 sklearn.cluster.KMeans 将数据转换为距质心的距离后,是否可以在给定质心的情况下反转转换,恢复原始特征?

最佳答案

不,这是不可能的。一般来说,任何降维技术都是有损操作。如果您丢弃某些维度,则无法恢复此信息。 一般,即对于一些可能的数据集。可能存在一些数据集,其中某些信息是冗余的 - 如果特定的降维技术能够完美地利用这一点,那么完美的逆变换将是可能的。

下图中我画了一个简单的例子。您可以将 3D 空间中许多不同的点配置投影到 2D 空间中的相同点配置。因此,仅给出 2D 空间,无法猜测这些点来自哪个 3D 配置。您不知道它们的 z 坐标值,并且存在无限多种可能性。

enter image description here

关于python - sklearn中KMeans的变换是否可以逆转?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24248393/

相关文章:

python - 更新/插入后,Elasticsearch排序失败

python - 需要帮助将 C 函数移植到 Python

python - 已安装“opencv-python”但仍显示 'ModuleNotFoundError: No module named cv2 '

python - 如何在交叉验证中获得 Keras scikit-learn 包装器的训练和验证损失?

python - 将 xlsx 上传到 Google 云端硬盘共享文件夹

python - 帮助将一个大类一分为二的工具

tensorflow - 训练模型以实现 DLib 的面部标志,例如手部特征点及其标志

r - 我在训练神经网络时收到错误 "Error in nnet.default(x, y, w, ...) : too many (77031) weights"

python - 如何获取 pandas 数据框,其中列是另一个列数据框的后续 n 元素?

python - 使用自定义指标 : pairwise_distances throwing error 的 sklearn 聚类