t-SNE高维数据可视化

Anu*_*pta 4 python nlp machine-learning data-analysis scikit-learn

我有一个twitter语料库,我用它来构建情绪分析应用程序.语料库有5k个推文,手写标记为 - 否定,中立或正面

为了表示文本 - 我正在使用gensim word2vec预训练向量.每个单词都映射到300个维度.对于推文,我添加所有单词向量以获得单个300暗淡向量.因此,每条推文都映射到300维的单个向量.

我使用t-SNE(tsne python包)可视化我的数据.参见附图1 - 红点=负推文,蓝点=中性推文和绿点=正推文

使用word2vec表示的推文

问题: 在图中,数据点之间没有明确的分离(边界).我可以假设300尺寸中的原始点也是如此吗?

即如果点在t-SNE图中重叠,那么它们在原始空间中也会重叠,反之亦然?

Far*_*eer 5

问题:在图中,数据点之间没有明确的分离(边界).我可以假设300尺寸中的原始点也是如此吗?

在大多数情况下,NO.通过减少尺寸,您可能会丢失一些信息.您可以在不丢失信息的情况下减小维度的情况是某些维度中的数据或数据为零(例如三维空间中的行)或某些维度线性依赖于其他维度.

有一些技巧可以测试一些维数减少技术的效果.例如:

您可以使用PCA将维度形式300减少到例如10.您可以计算300个特征值(原始空间)的总和和10个最大特征值的总和(这10个特征值表示将用于降维的特征向量)并计算丢失百分比信息sum(top-10-eigenvalues)/sum(300-eigenvalues).这个值并不完全是"信息"丢失,但它接近于此.

  • 我完全同意你的看法.但我总是在大多数关于单词向量的博客/文章的末尾看到t-SNE可视化,以"显示"这些向量的优点.那是什么促使我询问查询 (3认同)