GitRec:個人用GitHubのヒント

画像



間違いなく、Githubは、オープンソースプロジェクトで共同作業するための最高のプラットフォームの1つです。 しかし、あなたにとって精神と意味が近いプロジェクトを見つけることは、多くの場合、ここではそれほど簡単ではありません。 しかし、同様のプロジェクトを見つけて、その開発に参加できます。 さて、この質問で、 GitRecの登場後、特定のリポジトリまたはユーザー名に関する推奨事項のリストを取得できるようになり、少し簡単になるかもしれません。



アルゴリズムの一般的なスキームは次のとおりです。



  1. エッジがユーザーとリポジトリ間の接続を表すグラフが構築されます。
  2. グラフは、リポジトリ間の類似性を見つけるために使用されます。
  3. 以前に対話したリポジトリに類似した推奨リポジトリが提供されます。


最初のステップでは、Github Archiveからイベントログが取得され、そこからグラフが生成されます。 そこから4つのタイプのアクションが取得されます:watch、fork、pull request、push。 2つ目は、ユーザーがリポジトリAとBに関連付けられている場合、これらのリポジトリ間に接続があるという仮定に基づいて、類似のリポジトリを検索するための類似性グラフが構築されます。 その後、ベイズの定理により、ランダムユーザーがリポジトリBと対話する確率を計算します(前にAと作業した場合)。最後に、最後のステップで、ユーザーの人気と好みがランク付けされます。



プロジェクトのソースコードはここで完全に公開されており、Mortarプロジェクトの作成者はプルリクエストを待っています。



試してみる

動作原理の詳細



All Articles