长曲线形状的 t-SNE 是什么意思?
时间序列数据粘在一起是有道理的——因此形成了你所看到的这些线。在假设变量是随机的(例如,以布朗运动为模型)的正常时间序列分析中,明天的最佳预测与今天相同。t-SNE 找到与您的特征空间最近的点并将它们嵌入到 2D 空间中。令人印象深刻的是,它挑选出来并以你的情节结束!
虽然你经常得到圆形的图,但你总是得到圆形/球体是不正确的。t-SNE 最大化集群之间的距离,同时最小化单个集群中点之间的距离......为了效率,圆圈经常出现。您可以在自然界中观察到这一点:行星的形状、水中的气泡……圆圈是有效的!
t-SNE 不允许您直接将集群之间的距离解释回输入单元(例如,一条线是另一条线的两倍高并不意味着值是两倍大)。在相同特征的输入时间序列数据旁边绘制单独的时间序列线本身(在单个集群内)可能会很有趣,然后寻找任何对应关系。
为了获得更多理解,我建议阅读这篇关于 t-SNE 的精彩演练/可视化文章。有几个例子显示了非循环结果:
Wattenberg 等人,“如何有效地使用 t-SNE”
因此,这些线是时间序列。t-sne 是一种对局部非常敏感的算法,因此每个数据点很可能显示为最接近(在 2-D 中)其最近 (ND) 邻居。
在 MNIST 中没有序列,因此它不会在二维中显示为一条线。每个数字都以一组相似的方式写入,这些方式聚集在一起。在您的时间序列数据中,如果每个时间点与其下一个时间点最相似,我们期望它们按某种顺序排列 - 因为您希望点 t=n 最接近点 t=n- 1 和 t=n+1(如果它们实际上是最相似的)。
这也可能是由于您使用的是来自 softmax(或其他概率)层的特征。确保您使用的是激活层而不是概率。例如,在 Keras 中,如果您从最后一层提取特征,它会提取 softmax 概率向量。概率向量彼此非常相似,尤其是当它们属于同一类时,因为这是 softmax 试图做的。我在提取概率时使用时间序列数据看到类似的形状,然后在提取前一层激活时使用数据云(而不是曲线)。