1

我想创建一个功能来建议社交网络中的联系。

在网络中,您可以建立连接并连接到其他用户。

我想在网络上实现连接建议功能。

我认为实现这一点的最基本方法是检查我的所有连接,我的用户未连接到的最常见的常见连接,并建议该用户连接到我的用户。

我的问题是:

  1. 对于简单的连接查找器来说,这是一个很好的基本方法吗?
  2. 有没有什么好的实现算法可以用来找到他们连接的最常出现的用户?
4

1 回答 1

1

我会尝试一种机器学习方法来解决这个问题。
为了解决这个问题,我将提出两个常见的机器学习概念。为了使它们都起作用-您需要从数据中提取特征(例如,查看子图,与子图中每个成员的友谊是二元特征)。

这两种方法是:

  1. 分类。在这里,您试图找到一个分类器C:UserxUser->Boolean(一个给定两个用户的分类器,给出一个布尔答案 - 他们应该是朋友)。分类方法将要求您首先手动标记或提取一些分类信息(足够大的对,每个对都有一个分类)。该算法将学习这种模式,并使用它来预测未来的输入。
  2. 聚类(AKA 无监督学习)。您可以尝试在图表中查找集群,并建议用户与集群中的所有成员成为朋友。

我不得不承认我从未使用过任何这些方法来建议友谊——所以我不知道它会有多准确。您可以使用交叉验证来估计算法的准确性。


如果您有兴趣了解更多相关信息 - 两周前,斯坦福大学开设了关于机器学习的免费在线课程: https ://class.coursera.org/ml-2012-002

于 2012-09-02T09:57:12.807 回答