1

皆さん、私はタイトルと要約を持ったたくさんの文書(約200k)を持っています。各ドキュメントで利用できる他のメタデータがあります。たとえば、カテゴリ(料理、健康、運動などの1つのみ)、ジャンル(ユーモア、行動、怒りの1つのみ)などです。メタデータは適切に構造化されており、これらすべてが利用可能です。 MySqlDBで。

彼女が私たちのサイトでこれらのドキュメントの1つを読んでいる間、私はユーザー関連のドキュメントを表示する必要があります。このサービスを試すには、タイトル、要約、メタデータのウェイトエイジをプロダクトマネージャーに提供する必要があります。

このデータの上でクラスタリングを実行することを計画していますが、すべてのMahoutクラスタリングの例では、数値の上に定式化されたDenseVectors 、またはLuceneベースのテキストベクトル化のいずれかを使用しているために妨げられています。

例は、数値データのみまたはテキストデータのみです。誰かが以前にこの種の問題を解決したことがありますか。私はMahoutinActionの本とMahoutWikiを読んでいますが、あまり成功していません。

私は最初の原則からこれを行うことができます-すべてのタイトルと要約をDBに抽出し、TFIDFとLLRを計算し、各単語を次元として扱い、多くのコードを記述してこの実験を行います。それは解決への長い道のりのようです。

一言で言えば、それは私が閉じ込められている場所です-私は最初の原則に運命づけられているのか、それとも私がどういうわけか見逃したツール/方法論が存在するのですか?同様の問題を解決してくれた人々からの連絡をお待ちしています。

前もって感謝します

4

2 に答える 2

0

ここにテキストの類似性の問題があり、正しく考えていると思います。テキストに関する例に従ってください。本当にたくさんのコードですか?ドキュメント内の単語を数えると、ほとんど完了です。次に、必要なクラスタラーにフィードします。抽出という用語は、Mahoutで行うことではありませんが、それが得意なライブラリやツールは確かにあります。

于 2013-01-30T19:15:26.690 に答える
0

私は実際に似たようなものに取り組んでいますが、数値フィールドとテキストフィールドを区別する必要はありません。

私は、tfidf、セマンティック空間ベクトルの構築、および類似性検索に関するすべての部分を実行するセマンティックベクトルパッケージを使用することにしました。Luceneインデックスを使用します。

Semanticvectorsが自分に合わない場合は、 s-spaceパッケージを使用することもできることに注意してください(もちろん、その道を進んでいる場合)。

このアプローチで私が直面している唯一の注意点は、インデックス作成部分を反復できないことです。新しいドキュメントが追加されたり、古いドキュメントが変更されたりするたびに、すべてにインデックスを付ける必要があります。セマンティックベクトルを使用している人は、インデックス作成時間が非常に良いと言っています。しかし、彼らのコーパスがどれほど大きいかはわかりません。ウィキペディアのダンプを使用してこれらの問題をテストし、どれだけ速くなるかを確認します。

于 2013-01-31T10:02:24.240 に答える