算法|那些约会软件背后的算法,以及一个恼羞成怒的数学家的故事( 二 )


当一名用户舒舒服服地躺在床上对手机中的异性进行左划右划时 , 他/她自己的资料也正在无数陌生人的手机中被端详、审视、评价 。 最终 , 每名用户都会得到一个其他人对自己做出的集体评审结果 。
也许是为了避免被外界指责说他们把用户分成三六九等 , Tinder官方在2019年澄清说他们已经放弃了Elo积分算法 , 而是采用了一种更加智能的算法 , 可以通过每名用户在软件里的操作历史来为他/她推荐相匹配的异性 。 但Tinder拒绝透露这种新算法的具体规则 。 很难说这种所谓新算法会不会只是Elo算法的一个升级版而已 。
除了Tinder之外 , 也有一些约会软件使用的是不那么弱肉强食的算法 , 比如Hinge使用的是一种叫做Gale-Shapley的算法 。 这是一种可以把两组数量相等的元素进行配对的算法 。 比如说有男女各100人 , 每个人都对另外100名异性有一个从最喜欢到最不喜欢的选择顺序 。 那么Gale-Shapley算法可以把这两组人组成100对情侣 , 并使得每一个人都可以跟愿意和他/她组成情侣的人中排序最高的人组成一对 。 从数学的角度来说 , 这200名男女之间此时就形成了一种稳定组合状态 , 即在现有组合之外 , 不存在一男一女同时想要与对方形成新的组合 。 在2012年 , 发明这个算法的两名教授获得了诺贝尔经济学奖 。
【算法|那些约会软件背后的算法,以及一个恼羞成怒的数学家的故事】Hinge所做的就是根据用户所填写的约会偏好和使用app时的点赞记录等信息来猜测出他/她对于异性的偏好排序 。 在推测出每名用户的对于其他异性用户的偏好排序后 , 再使用Gale-Shapley算法对他们进行配对 。 所以最后每名用户在app里看到的异性都是算法认为的“他们喜欢的人里最有可能喜欢他们的人” 。
还有一个约会网站OkCupid则使用了另外一种算法 。 会员在这个网站上注册时需要从几千个问题中挑选一些进行回答 , 比如最喜欢的电影或者信仰的宗教 。 接下来 , 网站后台会把那些在相同问题下给出相同回答的人匹配在一起 , 背后的逻辑是他们拥有类似的价值观和生活品味 。
2012年 , 正在加州大学洛杉矶分校攻读数学博士学位的麦金莱(McKinlay)也在OkCupid上注册了会员 。 也许是因为过于直男 , 麦金莱在注册时选择的问题全是些女生们不感兴趣的冷僻问题 , 因此系统只给他推荐了数量很少的跟他相匹配的女性 。 可想而知 , 他自己的资料也几乎不会被系统推荐给其他女性用户 。
使用了一段时间后 , 麦金莱觉得自己简直就是一个在女性用户面前毫无存在感的透明人 , 这让他很愤怒 。
麦金莱决定用数学家的方式来解决这个问题 。 他发现OkCupid允许查看其他用户在某个问题下的回答 , 前提条件是你自己在注册时也选择了同样的问题 。 于是麦金莱批量生成了一批账号 , 把所有的问题都回答了一遍 , 然后用这些账号去抓取女性用户在各种问题下的答案 。 一开始 , 他创建的机器人账号由于操作速度太快 , 很快就被系统封杀了 。 后来他又抓取了真实用户的点击速度和浏览模式 , 然后重新创建了一批账号 , 让这些账号模仿真实用户的行为去读取数据 。 这一次 , 他成功了 。 海量的数据源源不断地涌入了他的笔记本电脑 。
麦金莱在撰写博士论文的过程中可以申请使用学校的超级计算机 。 他利用这个机会把自己收集到的六百万条数据导入超级计算机进行了分析 。 从统计学的角度 , 麦金莱把OkCupid网上的女性会员分成了七个大类 。
在这七个分类中 , 麦金莱挑选了两个自己最感兴趣的分类 。 一类是从事音乐和艺术相关工作的女性 , 另一类是从事编辑和设计相关工作的女性 。 他重新创建了两个账户 , 分别用来与这两组女性用户来匹配 。 在给这两个新账户选择回答问题这个步骤中 , 麦金莱开启了作弊模式 。 他让电脑帮自己计算出了能和目标组里的女性们达到最佳匹配度的问题组合 。 除此之外 , 他还处心积虑地按照大数据分析结果给这两个账户选择了不同的头像 , 用来吸引不同的女性人群 。 他的一个账户使用了攀岩的照片 , 营造出一个户外运动健将的形象 。 另一个账户则使用了弹吉他的照片 , 强调他的艺术气质 。