【问题标题】:Why use LSA before K-Means when doing text clustering为什么在进行文本聚类时在 K-Means 之前使用 LSA
【发布时间】:2017-07-12 16:48:42
【问题描述】:

我正在学习 Scikit 的本教程,学习使用 K-Means 进行文本聚类: http://scikit-learn.org/stable/auto_examples/text/document_clustering.html

在示例中,可选地使用 LSA(使用 SVD)来执行降维。

为什么这有用?已经可以在 TF-IDF 矢量化器中使用“max_features”参数控制维度(特征)的数量。

我了解 LSA(和 LDA)也是主题建模技术。与集群的区别在于文档属于多个主题,但只属于一个集群。我不明白为什么要在 K-Means 聚类的上下文中使用 LSA。

示例代码:

from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.cluster import KMeans

documents = ["some text", "some other text", "more text"]

tfidf_vectorizer = TfidfVectorizer(max_df=0.5, max_features=10000, min_df=2, stop_words='english', use_idf=True)
X = tfidf_vectorizer.fit_transform(documents)

svd = TruncatedSVD(1000)
normalizer = Normalizer(copy=False)
lsa = make_pipeline(svd, normalizer)
Xnew = lsa.fit_transform(X)

model = KMeans(n_clusters=10, init='k-means++', max_iter=100, n_init=1, verbose=False)
model.fit(Xnew)

【问题讨论】:

    标签: python scikit-learn k-means svd lsa


    【解决方案1】:

    LSA 将词袋特征空间转换为新的特征空间(具有正交基向量集),其中每个维度表示一个潜在概念(表示为原始维度中单词的线性组合)。

    PCA 一样,少数顶部特征向量通常捕获变换后特征空间中的大部分方差,而其他特征向量主要表示数据集中的噪声,因此,可以认为 LSA 特征空间中的顶部特征向量可能会捕捉到由原始空间中的单词定义的大部分概念。

    因此,在转换后的 LSA 特征空间中的降维可能比在原始 BOW tf-idf 特征空间中更有效(它只是去掉了不太频繁/不重要的词),从而导致更好的降维后的质量数据,并可能提高集群的质量。

    此外,降维有助于解决维数问题(例如,在 k-means 中计算距离时出现的问题)。

    【讨论】:

      【解决方案2】:

      a paper 表明 PCA 特征向量是 K-Means 的良好初始化器。

      max_features参数控制维度,相当于切断了词汇量的大小,有负面影响。例如,如果您将 max_features 设置为 10,则模型将使用语料库中最常见的 10 个单词并忽略其余单词。

      【讨论】:

      • 谢谢@elyase,这有帮助。因此,与在 TFIDF 中使用 max_features=10 相比,使用 LSA (SVD) 将产生更好的集群。 LSA (SVD) 是否类似于 PCA 或者我应该如何看待这个? LSA 和 PCA 有什么关系?
      • 我想你可以在这里找到答案stats.stackexchange.com/questions/65699/…。当你进行降维时,情况会有所不同。 PCA 计算输入数组的协方差矩阵。对于 SVD(或 LSA),它使用 scipy 来立即计算分解矩阵(X = U * S * V.T)。特别是对于 scikit-learn,您不能将稀疏矩阵输入 PCA 模型,因此如果您有 tf-idf 矩阵,使用 SVD 可能是更好的选择。
      猜你喜欢
      • 2016-07-28
      • 2012-03-24
      • 2015-06-22
      • 2019-01-06
      • 2015-01-16
      • 2016-08-14
      • 1970-01-01
      • 2020-08-28
      • 2017-11-01
      相关资源
      最近更新 更多