2

私がやろうとしているのは、人々が送信するメッセージと仲間が送信するメッセージを比較することにより、人々に「インテリジェントな」提案を生成するために実装できるアルゴリズムを見つけることです。

たとえば、人物 A が Obj1 について話しているメッセージを人物 B に送信します。人物 C が Obj1 について人物 D にメッセージを送信すると、同じことについて話していることがわかり、人物 A が人物 C と話していることを示唆する可能性があります。

人々が共通して持っている言及をキャプチャするために統計の収集を実装しましたが、これを分析するためにどのアルゴリズムを使用すればよいかわかりません。

助言がありますか?(これが十分に理にかなっていることを願っています)

4

2 に答える 2

0

これは、Twitter が直面している問題とまったく同じです。これをクラックすれば、そこで仕事が見つかるかもしれません;)

重大な注意事項として、このようなことを行うために大雑把な手段 (つまり、ヒューリスティック ベース) を使用することもできますが、エラーの割合が大きくなります。デルナンがコメントで言ったように。

NLPは確かな賭けです。NLP を使用してもエラー % が発生することに注意してください。ただし、使用するヒューリスティックよりもはるかに正確です。Python を使用している場合は、このツールキットをお勧めします。ときどき使用します - NLP

他の言語については、この点で役立つパッケージがあると確信しています。

UPDATE1:ユーザーがメッセージにタグを付ける方法がある場合 (stackoverflow のように)、NLP を禁止してこの問題に取り組むことができます。次に、両方のメッセージのタグの共通点を取得して、共通点があるかどうかを確認し、共通項目の上位項目を提案するだけです。

しかし、対処しなければならない問題が他にもあります - タグを必須にすること、さらにユーザーが実際に正しいタグを入力していることを確認する必要があることなど... しかし、それでもこれは問題を大幅に単純化します。

更新 2: Q が更新されたとき - 関心のある特定のキーワード/フレーズがあるため。この種の単純化します。それぞれのメッセージを取得し、それを単語に分割してから、各単語をステミングする必要があります。ステミングの後、このセットをあなたが持っているキーワードのセットと交差させます。セット (S1) を取得します。2 番目のメッセージで同じことを行うと、set(S2) が得られます。S1、S2 を交差します。共通点があればビンゴ!メッセージ 1、メッセージ 2 の間でいくつかのテーマが共通しています。他に何もありません。

于 2010-12-04T14:30:14.780 に答える
0

クラスタリングアルゴリズムを見てください

クイック スタート用のk -meansまたは k-nearest neighbors

どのくらいのデータを持っていますか?多ければ多いほどよい。この問題には多くのアプローチがあります。たとえば、すべてのユーザーがある程度似ていると仮定し、各ユーザーについて最も類似したユーザーを見つけたいとします。ベクトル空間、コサイン類似度により、迅速な結果が得られます。あなたが達成したいことについて、もう少し情報を提供してください。

于 2010-12-04T15:03:35.300 に答える