原文来自Wired,作者Kevin Poulsen为Wired的调查编辑,他同时还是《Kingpin : How One Hacker Took Over the Billion-Dollar Cybercrime Underground》一书的作者。
2012年六月的某天,凌晨三点,在洛杉矶UCLA数学系的某个角落里,窝着一个年轻人,他正盯着计算机,为他的博士毕业论文而苦苦挣扎。但他心心念念的却是他的OkCupid(美国知名婚介交友网站)收件箱里,是否有新的消息。
他叫Chris McKinlay,35岁,单身九个月了。像其他4000万美国人一样,他正试图通过OkCupid这样的网站,来寻找下一个约会对象。可结果并不如人意。
在OkCupid里头,每个注册用户需要回答350道左右的问题,这些问题是随机选取的,包含了政治、宗教、家庭观、爱情观、性、喜欢的书籍电影甚至智能手机等等。系统会根据问题的答案自动计算用户间的匹配程度,匹配度高的,系统会优先推荐给你。
在这样的算法下,McKinlay发现自己吃了大亏。他被分配到的那些问题明显比较冷门,所以拿来跟他配对的女性的数量也少的可怜。只有不到100个勉强达到90%的match。而要知道,全洛杉矶,至少有8万个女性在用OkCupid。他可是华丽丽的被无视了呢。
面对着满屏的代码与空空如也的约会日程表,他决定了,既然他是个数学家,那么就要拿出专业一点的办法来搞定约会这个难题。McKinlay想到他可以通过抽样与统计,知道那些他喜欢的女人们都会在意哪些问题。然后他可以根据这些问题,建立一个新的档案,那些偏门的问题就不回答也罢。这样就可以保证,全洛杉矶适合他的女人,都能到他的碗里来了。
故事说到这里,或者你会以为这个家伙就是个死数学宅,那么你错了。2001年,Chris McKinlay从Middlebury College(明德学院,美国顶级文理学院之一)中文系毕业。随后,他在纽约世贸中心的91楼找到了一份翻译工作(没错,就是倒掉了的那座)。在众所周知的那一天,他没有当班,在家睡觉而躲过了一劫。劫后余生的他,决定重新规划自己的人生。他应邀加入了大名鼎鼎的MIT-21点记牌团队的一个分部,开始了他的职业赌徒生涯,不停的穿梭在纽约与拉斯维加斯各大赌场之间(注:MIT有个以学生为主的商业化计牌团伙,从80年代开始,专门出入各个赌场,赚得盆满钵满,事迹被写成了书,拍成了电影)。那几年,他有高达6万美金的年收入。而在这些算牌的日子里,他发现自己已经深深的为数学这门艺术而倾倒。于是2006年,McKinlay毅然转投UCLA,成为一个数学系的博士生。
现在,他的满腔热情被这个叫做OkCupid的网站给再次唤醒了。
Round 1:爱情就是数据分析?
为了获取资料,McKinlay申请了12个OkCupid账户,胡乱填写了资料,而后编了一个基于Python的脚本。利用这12个账户,该脚本自动搜索25至45岁之间的异性恋和双性恋女性,访问她们的主页,搜集她们的种种信息包括:种族,身高,是否吸烟,星座等等。 可在收集了一千个左右的样本之后,问题来了,OkCupid的防御系统起作用了,McKinlay的程序因为快速的读取被检测出来而后被屏蔽掉了。
他必须再想个办法,好让他的系统像人一样的干活。于是他想到了Sam Torrisi,他的一个神经学家朋友。最近这些日子,Sam教他音乐,他教Sam高数,两人乐此不疲。Sam也活跃在OkCupid上,他答应了让McKinlay在他的电脑上安装一个软件,监视自己使用该网站的情况。于是McKinlay就有了一手的数据,让他的程序可以模拟Sam的点击率和打字速度来欺骗OkCupid。
仅仅三周,他收集到了600多个问题的答案,数据来自全美的数万个女性。现在,他已经顾不上自己的毕业论文了,全身心投入到了这些数据的分析中去。他甚至不回家,直接在书桌边丢了块床垫,就睡在实验室里了。
通过比较,McKinlay选择了贝尔实验室的K-Modes算法来给这些女人分类。于是乎,2万个来自洛杉矶的待选女性被自动分成了七组。现在,他只要在七个群组里头挑出最适合他的那些个。综合考虑了下,去掉太老太小太迷信的,两队人马脱颖而出。一是二十出头,特立独行,爱音乐爱艺术的年轻姑娘们,他把她们叫做A组。二是年龄稍长,主要从事设计类工作的事业女性,他把她们叫做B组。他确信,这里头一定有最适合他的那一个。
Round 2:姑娘,我们很相配!
同样在计算机的帮助下McKinlay了解了这两拨姑娘的喜好,对此精挑细选了500个最让她们关心的问题,如实填写了自己的答案(他可不想用电脑替他撒谎,毕竟这关系到他的真实人生)。就这样,他创建了两份最终档案,针对性的附上不同的照片:给A组年轻姑娘们看的是他正在攀岩的照片,而给B组秀的是他演奏吉他的样子。
当这一切都完成的时候,他运行了OkCupid的配对搜索,结果很惊人:99% match的女人就有好多页,滚也滚不完,一直拉到了第一万个,都还有90%的匹配度。
有了匹配度,还得让那些姑娘们注意到自己。他又写了个程序,自动在对方的主页上踩下痕迹。这样姑娘们登陆OkCupid之后就会发现,有个超速配的帅哥关注过自己。之后,他的收件箱自然就被塞满了。每天不停的有美女主动来跟他问候,闲聊,要求见面。
Round 3:约会见真章
完成了计算机上的工作,更考验人的事来了。就在6月30日,McKinlay达成了他的首次约会。对象Sheila是个年轻的网页设计师,来自A组,他们在咖啡馆共进午餐,结果却叫人沮丧,这简直成了一次学术交流会。第二次约会是和一个网站编辑,来自B组。在他的构想中两人会在公园湖畔浪漫的散步,可现实完全走样。第三次约会的Alison是个学编剧的在校生,有纹身,很酷,他们约在了酒吧,结果他大醉了一场,怎么回的家也不知道。
接下来的不说也罢。一次次的约会,一次次的失望。McKinlay觉得自己必须调整战略方向,他注意到A组的女人,常常会有很多纹身,并且多居住在洛杉矶东面。他毅然决定放弃掉她们,集中火力攻占B组。现在他已驾轻就熟,有一套自己的约会守则:约会都定在下午而不要一起吃饭;一天可以约会两个对象;不去看电影或者听音乐会……
就这样,到夏季结束时,他约会了近百次,每一次约会他都详细的记录在一个笔记本上头。这里头只有三个姑娘给了他第二次机会,而仅有一个约会了三次,然后统统没有下文。
Final:谢谢爱神光顾
McKinlay大受打击,他开始怀疑自己的人品以及程序。可就在这时,爱神丘比特终于眷顾到他了。一个叫Christine Tien Wang的28岁姑娘,主动在网站上跟他say hi。她也在UCLA,一个美术专业的硕士生。
他们在学校的花园碰了头,又一起在寿司店吃了饭。他们谈论了书籍,艺术和音乐,互相留下了深刻的印象。McKinlay告诉她自己是如何利用OkCupid获得约会机会的事,而姑娘也坦白说,在短消息他之前,她也稍微改了下自己的档案。
Tien Wang是McKinlay的第88次约会,马上,她又成了第89次,然后是一次又一次,两周后,两人都暂停了OkCupid的账户。
一年后,McKinlay已经拿到了他的博士学位,在大学里做授课讲师,可他同时也在进修音乐。而Tien Wang,拿到了一个为期一年的奖学金,在卡塔尔学习艺术。他们每天用Skype联系。直到有一天,McKinlay在视频聊天时,拿出一只钻石戒指,然后,她点头了,说好的。接下来,他可能需要再编个程序,让计算机帮他们挑个黄道吉日来举行婚礼了。
前些日子,McKinlay出了本关于OkCupid的书:Optimal Cupid: Mastering the Hidden Logic of OkCupid。有兴趣的朋友不妨找来读读,看看能不能在我们自己的世纪佳缘或者百合网之类的,捣鼓点什么出来。