我正在使用k-means聚类来分组一组新闻。我使用词袋模型来表示文档,更具体地说,每个文档都表示为术语频率向量。
我的问题:如何在不重新计算所有术语频率向量的情况下添加新文档(看到包含所有文档的所有术语的词汇表都会发生变化)?
答案 0 :(得分:5)
简单的解决方案是使用您已经看过的文档中的词汇表,忽略任何新术语;这是文件分类中的习惯。
近年来流行的另一种解决方案是完全抛弃词汇并使用feature hashing。
第三种可能性是在特征向量中保留空间以用于将来的术语。例如,假设您使用大小为 N 的词汇表对一堆文档进行矢量化,然后实际上将它们转换为大小为 N + K < em>最终 K 最初设置为零,因此您可以稍后将 K 术语添加到词汇表中。
(可能不是解决方案是直接在哈希表上计算点积,均值等。这将是最灵活的方法,但它通常非常慢。)