k-means クラスタリングを使用して一連のニュース項目をグループ化しています。私は bag-of-words モデルを使用してドキュメントを表現しています。より具体的には、各ドキュメントは単語の頻度ベクトルとして表現されています。
私の質問: すべての用語頻度ベクトルを再計算せずに新しいドキュメントを追加するにはどうすればよいですか (すべてのドキュメントのすべての用語を含む語彙が変更されることがわかります)。
k-means クラスタリングを使用して一連のニュース項目をグループ化しています。私は bag-of-words モデルを使用してドキュメントを表現しています。より具体的には、各ドキュメントは単語の頻度ベクトルとして表現されています。
私の質問: すべての用語頻度ベクトルを再計算せずに新しいドキュメントを追加するにはどうすればよいですか (すべてのドキュメントのすべての用語を含む語彙が変更されることがわかります)。
簡単な解決策は、新しい用語を無視して、既に見たドキュメントの語彙を使用することです。これは文書分類では慣例です。
近年一般的になった別の解決策は、ボキャブラリを完全に捨てて、機能ハッシュを使用することです。
3 番目の可能性は、将来の用語のために特徴ベクトルにスペースを確保することです。たとえば、サイズNのボキャブラリを持つドキュメントの束をベクトル化しているとしましょう。次に、実際にはそれらをサイズN + Kのベクトルに変換し、最終的なKを最初にゼロに設定します。語彙は後ほど。
(おそらく解決策ではないのは、ハッシュ テーブルで内積、平均などを直接計算することです。これは最も柔軟なアプローチですが、通常は非常に低速です。)