独家|一探Stack Overflow工作搜索

  本文长度为6100字,建议阅读20分钟

  Aurélien Gasser在本文中对Stack Overflow的工作搜索的发展历程作了详细的分享,主要是匹配算法的优化过程,包括算法特征的选择、算法和Elasticserach搜索引擎的配合使用等。

  大约在两年前,Stack Overflow上发生了一件大事:Stack Overflow发布了一个叫做Providence的新系统。这个系统可以得知访问者对什么样的技术有兴趣,也可以衡量某个访问者和某个工作之间的匹配程度。

  更通俗的说,Providence的发布可以被看作是Stack Overflow向“更智能”迈进以及在数据科学领域上持续投资的道路上的里程碑。如果想了解更多关于Providence的信息,可以参考下面这个系列博客。

  作为工作匹配团队中的一个开发者,我致力于用这个新的方法帮助大家找到新的、更好的工作。本篇博客大部分都是关于我如何完成这些的历程。

  

  在你的Stack Overflow档案中,工作匹配偏好提供给我们有关你工作兴趣的线索

  如何立即失败的

  工作匹配、感兴趣的工作、工作推荐。不管我们怎么叫它们,核心都是要正确。每个人都对工作有不同的要求和不同的偏好。有的人想要从美国搬到挪威,有的人不会考虑离家超过5英里的工作。有的人不想在创业公司工作而有的人只想在创业公司工作。因此,我从中总结到的是:没有一个方案可以满足所有人,但是无论如何我们都会尝试着做到这一点。

  每个人对工作的陈述信(cover letter)都是不一样的

  在我们引入个性化的工作搜索结果之前,Stack Overflow Jobs上默认的方法是显示最近发布(的工作)。这是一个可以接受的方法,但远非一个好方法。它的其中一个问题是没有考虑到你的兴趣,甚至这份工作离你十万八千里远也会显示给你。对于这种情况,我们肯定可以做得更好。

  有了Providence的帮助,我们的工具箱里有了新的工具。对每一份工作,我们都可以确定一个在0到1之间的分数来表示这份工作所需的学历证技术和某个访问者之间的匹配程度。如果不显示最近发布的工作,为什么不干脆显示符合技术项的工作?尽管这种做法也不是完美的,但是至少通过这种方式选出的工作是和你相关的,所以工作匹配度会表现得会更好一些,不是吗?

  好吧,并非如此。我们的首次A/B测试中点击率出现了骤降。大约不到原来50%的用户点击了工作搜索中给出的结果。首次尝试的时候把我们引向了一个似乎更难的问题。

  

  大量失败的证据

  什么因素让用户对一份工作有兴趣?

  我们知道了单单只有Providence(从技术出发匹配用户和工作)是没有作用的。我们也知道了只显示最新发布也没有作用的,所以应该从什么地方再进行下去呢?

  我们知道距离是一个重要的因素:大多数人都想在离家近的地方工作。我们也知道显示最近发布的工作也不差,毕竟比我们新的“Providence价值函数”表现得好。

  所以我们做了如下尝试:我们把用户和对应工作之前的距离(可以从用户IP地址来获取这个数据)乘上工作发布的时间长短,通过这种方式我们可以得到一个工作的得分,然后用这个得分对工作进行排序。

  

  这次,它行得通了!实际上,它的表现非常好。

  结果好很多了,更多的人点击了工作申请(获得了42%的提升)

  现在我们知道了两件事:

  工作发布的时效性是重要的;

  用户和工作地点之间的距离也是重要的。

  那么怎么评估两者之间的重要程度呢?距离是否和工作发布的时间长短一样重要?或者说距离是3倍重要于工作发布的时间长短? 为了回答这个问题,我们画了很多像下面这样的图表。

  

  工作申请数的密度(美国访问者)

  你会发现当超过一定距离之后,单位申请工作数就会变得非常少,这距离是纽约和洛杉矶之间的距离。

  右边的图向我们表明申请人数的密度随着距离的增加而减小。这是合乎情理的:访问者更倾向于离自己近的工作。工作发布的时效性并不是那么重要的一个因素,除非这个工作是特别近发布的(在一天之内发布),也会有很多的申请者。

  有了这个申请人数密度的数据,我们使用了线性回归(enpedia/wiki/Linear_regression)基于距离和时效来预测用户可能申请的概率。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值