2

ユーザーが興味を持ち、フォローする可能性のあるパーソナライズされたユーザーを表示できるようにしたいと考えています...

私は次のように考えていました。

- Get all users he is currently following
- Get all followers that they follow
- rank them by total posts they made (DESC), filled up personal information fields
- show 5 of them on each page load

ユーザーにフォロワーがいる場合、情報メッセージが表示されます...

この種の機能はこのアルゴリズムで実行できますか、それともより良い、またはより簡単な方法はありますか?

4

4 に答える 4

4

あなたのアルゴリズムでは、なぜ投稿数に基づいてユーザーを並べ替える必要があるのか​​ 疑問に思っています。おそらく評判と関係がありますか?

レコメンドは確かに非常に大きなオープンなトピックであり、ホットな学術研究分野でもあります。実用的なプロジェクトに取り組んでいる場合は、シンプルで集中するのがいいと思います。

非常に人気のあるソーシャル Web サイトで、次の 2 種類の推奨事項を目にしました。私の経験から、レコメンデーションの出力は高品質です。ここで、背後にあるアルゴリズムについてブレインストーミングを行っています。それが役に立てば幸い。

  1. あなたが知っているかもしれない人を発見する: 「次のセット」があなたの「次のセット」と交差する人を推薦します。これは、ソーシャル ネットワークの「クラスタリング効果」に基づいています。あなたの友達の友達は、あなたの友達である可能性が高くなります。

  2. 興味に基づいて人を推薦する: ユーザーが有名人、企業、機関、報道機関などである場合、次のような推薦が役立つ場合があります: 「@Linus をフォローしている人は、@Stallman、@LinuxDeveloper などもフォローしています。」@Linus をフォローしたばかりで、@Stallman や @LinuxDeveloper を推薦するために、まず @Linus をフォローしているすべてのユーザーを見つけて、おそらくフォロワー数でランク付けされた共通のフォローリストを見つけ出す必要があります。アイデアは、関心の相関関係に基づいてユーザーを推薦することです。ユーザーのフォローリストが関心ごとにグループ化されていると仮定して、相関性の高いユーザーを計算して発見します。

(また、アルゴリズム 1 は、ユーザーが有名人である可能性がある場合など、あなたと共通の関心を共有する人を発見すると考えています。これは、いくつかのシナリオでは好まれるかもしれません。)

于 2012-06-06T06:20:37.923 に答える
2

ここで非常に自由回答の質問をしています - 大きなセットから少数の推奨事項を選択する方法. 答えは、単純にすることも複雑にすることもできるということです。最も単純なのは、ランダムにいくつかを選択することです (より複雑なアルゴリズムでは、それよりも良い結果が得られることを証明する必要があります)。2 ホップ離れたすべてのユーザーを収集し、投稿数でランク付けするソリューションは、もう少し複雑で、その対極にあるのは、世界中の Amazon や Google が使用する洗練されたアルゴリズムです。企業はこの種のものを構築するために多大な努力を払っています - Netflix賞について聞いたことがありますか?

于 2012-05-30T16:20:16.510 に答える
0

特定のユーザーをフォローしているユーザーを含めないことを検討することをお勧めします。あなたにあまり興味がないかもしれませんが、これは潜在的に問題になる可能性があります. ただし、フォローしている人々についてもっと知りたいと思うかもしれません。

これらの人々が彼らに推薦された理由をユーザーに示すことを検討していますか? たとえば、あなたのように言うことは、あなたの妻とのつながりのために小さなビリーが言っていることに興味があるかもしれません. もしそうなら、怒っているユーザーを潜在的に回避するために、ある意味でオプトアウトできるようにする価値があるかもしれません.

それ以外は、誰かが興味を持っているユーザーを推薦するのにかなり良い方法のようです.私が考えることができる唯一の他のことは、同様の興味を持つ人々を見つけるのにも役立つかもしれません.投稿にタグを付ける。同じような興味や投稿内容でユーザーを見つけることができます。

あなたが調べることができるもう1つの問題は、同様の関心を持つユーザーを見つけることです. たとえば、a さんが c さんをフォローしていて、b さんが c さんをフォローしている場合、a さんを b さんにおすすめします。ただし、注意しないと、非常に長いクエリになる可能性があるようです。

于 2012-06-06T21:59:38.527 に答える
0

あなたのテーマに関する高品質の情報を提供できるユーザーをフォローしたいのは承知しています.このユーザーを結果として提供するアルゴリズムが必要ですが、これらのユーザーを見つけるにはどうすればよいですか: 多くのフォロワーを持つユーザーは良い選択です.しかし、Twitter のユーザーの多くが、敬意や倫理観だけで他のユーザーをフォローしているわけではありません。自分のつぶやきが他のユーザーと何度もリツイートするユーザーは良い選択であり、他のユーザーから何度もメンションされているユーザーです。これらのユーザーを見つけるには、HITSやページランクアルゴリズムなどのリンクベースの分析を使用する必要があると思います

于 2012-06-06T09:21:05.350 に答える