注册

数学天才寻爱记


来源:译言网

人参与 评论

Chris McKinlay,蜷缩在UCLA数学科学楼5楼的一个小隔间里,眼睛盯着对面的显示器,脑袋顶着一个小小的灯泡。Chris McKinlay使用Python脚本快速分析OkCupid的调查问题,他将女性约会者分为七个维度,比如“Diverse” 、 “Mindful”,每个都有自己的特点。

 

Chris McKinlay,蜷缩在UCLA数学科学楼5楼的一个小隔间里,眼睛盯着对面的显示器,脑袋顶着一个小小的灯泡。凌晨3点,这是压榨科罗拉多超级计算机性能的最佳时间,在他的PHD论文中,需要使用这台超级计算机(论题关于大规模数据处理,并行数值计算方法)。当计算机程序在一边运行时,他默默点开另一个窗口,查看他的OKCupid的收件箱。(译者注:OKCupid是美国在线约会网站)

McKinlay,瘦瘦的35岁男子,一头杂乱的头发,他是渴望在社交网站,像Match.com,J-Date和e-Harmony上有着浪漫缘分的4000万美国男女之一,在他上次分手之后,他已经徒劳的在网络上搜寻了9个月的时间。他曾经向OKCupid系统算法所推荐的用户发送了无数的“调情信息”,大多数都被忽略了;9个月里,他也只是去过6次约会,这六次约会有一个相似点:第一次见面也是最后一次见面。

2012年6月的一个早晨,他的编译器在一个显示器里与机器码互相纠缠,他孤独的约会资料在另一个屏幕里被人遗忘着,他渐渐明白,他以前的这种方式是错误的。他意识到,在过去,他和其他用户一样,接受着网站的安排,而他更应该像一个数学家一样去约会。

OKCupid由哈佛的数学专业高才生在2004年创建,最初引起人们的注意是因为网站使用数学方法给人们配对决策。每一个网站的会员都需要填写一个关于生活中各个方面的多选问卷,像政治,宗教信仰,家庭,还有爱好,性别和手机等等。

平均来看,受调查者会从数千个问题中选择350个问题来回答,像“一部电影的那些因素会更加吸引你?”,或者“在你的生活中,宗教信仰/神有多重要?”。每一个问题,使用者都会选择一个答案,认为自己的伴侣最合适的选项,并给问题对自己有多重要打一个分,从无关紧要的1分到非常非常非常重要的5分。OKCupid的匹配引擎会使用这些数据计算一对男女的匹配度。越接近100%,即数学意义上的真正的心灵伴侣,匹配度就越高。

但是在数学上,Mckinlay与洛杉矶女性的匹配度简直————糟透了。OKCupid的算法仅仅使用参与者都作答过的题目进行匹配,而McKinley选择作答的题目或多或少有一些随机性,这被证明是不受欢迎的方式。当他浏览他匹配的对象时,仅有不到100人在匹配度上超过90%。要知道,这是一个超过200万女性人口的城市(约有80000人使用OKCupid)。在一个兼容度几乎等同于可见度的网站,他当然就像一个黑夜幽灵一样存在。

他意识到他需要让这个数目变大。如果,通过抽样统计,Mckinley可以找到哪些问题对于他喜欢的女人是重要的,他就能重建建立一个新的资料,诚实的回答新资料中的这些问题,而忽略其余的。他就能找到洛杉矶中可能适合他的每一个女子,而不去遇见那些不适合的。

即使仅仅作为一个数学家,McKinley已经算不同寻常了。成长在波士顿郊区,2001年毕业于明德学院(Middlebury College)中文专业。同年8月,在纽约找了一个兼职工作,为一家公司将中文翻译为英文,这家公司位于世贸大厦北楼91层,5周之后这座楼塌掉了(Mckinlay在下午两点上班,上午8:46分飞机撞上大楼时,他还在睡觉)。他说:“在那之后我问我自己,什么是我真正想做的。”这之后,哥伦比亚的一个朋友找他加入麻省理工学院的一个著名的专业扑克牌队的一个分队,后来的几年,他奔波于纽约和拉斯维加斯的赌场之间,每年能赚到60000美元。

这段经历激起了他在应用数学上的兴趣,最终激励他在这一领域取得了一个硕士学位和博士学位。“在赌博中,可以在许多不同的情况下使用数学方法”,他说“一些新的比赛,像三卡牌九扑克,我们回到家,写一些代码,就能够找到一些策略来击败对手”。

现在,为了真爱,他要去做同样的事情。首先,他需要数据。他一边继续着论文工作,另一边,他注册了12个OKCupid账户,通过Python脚本来管理他们。脚本会搜索他的目标人群(25到45的异性恋或双性恋女士),访问她们的页面,抓取她们的有用信息碎片:种族,身高,吸烟与否,星座......"方方面面",他说道。

为了找到调查的答案,他不得不做一点额外的工作。OKCupid允许用户查看别人的回答,但是只有那些自己回答过的问题才可以。Mckinley使用了一个机器人程序随机回答问题,因为他不使用这些假帐户来吸引女子,所以答案也就无关紧要,之后搜集这些女性的答案到数据库里。

Mckinley看着自己的机器人愉快的执行,感到很满意。在收集了上千份资料之后,他碰到了自己的第一个障碍。OKCupid有一个防御系统,防止类似的大规模数据收集:系统可以准确的发现反常速度的计算机行为。就这样,他的小机器人一个接着一个被阻拦了。

他必须把计算机训练的像一个人。

他求助于他的朋友 Sam Torrisi,一个神经系统科学家,最近一直在教Mckinney音乐课程,并以Mckinley的高等数学知识作为交换。Torrisi同样工作于OKCupid,并且同意Mckinley在他的电脑上安装一个检测程序监控他对这个网站的操作。这样数据就到手了,Mckinley编程让他的机器人模拟Torrisi的点击频率打字速度。他从家里带来了第二台电脑,把这台电脑安装到了数学楼的宽带上,24小时不间断的运行这个程序。

3周之后,他获取了6百万个问题和全国20000位女子的回答数据。论文项目被他扔在一边,一头扎到了这些数据之中。往常的大多数夜晚,他都在自己的小隔间里度过。现在,他彻底的放弃了他的公寓,搬到了这个昏暗泛黄的小隔间中,想睡觉时,就在桌上的一条床垫上躺一会。

对于McKinley的计划来说,他需要找到调查问卷中数据的一种普遍模式。突破在他使用改进的贝尔实验室算法——K-Modes时产生。K-Modes算法最初应用在1998年分析患病大豆作物中,算法接受各种类型的数据,数据像溶洞中各种颜色的岩溶流动一样聚合。通过一些微调,他可以调整结果的粘性,使数据变得平滑,或者让“岩溶”固定成固定的形状。

他随机的对参数进行调整,发现了一个自然静止点,20000份女性的问题和答案被分类到7个集群中。“我当时非常激动”,他说:“那是他整个6月最高兴的一瞬间。”

他重新编程,来分类另一份样本数据:在过去的一个月中,在旧金山和洛杉矶登录过OKCupid的5000名女性。用K-Modes算法计算的数据得到了相同的集群结果。他的统计取样取得了效果。

现在,他需要决定哪一份集群数据适合他。他检查了每一个集群中的一些资料。一个集群中的人太年轻,有两个集群中的人太老了,还有两个太“基督”了。不过,他仔细观察了一份集群中的女性,20多岁,都很独立,懂音乐,懂艺术。这就是黄金集群了。就像大海捞针一般,在这之中,他会找到他的真爱。

事实上,一个相邻的集群看上去好像十分酷,年龄稍大,拥有专业性,创造性的工作,像编辑或者设计师。他决定两者兼顾。他决定制作两份资料,一份去匹配A组,一份匹配B组。

他在这两个集群上进行文本挖掘,找到什么最能激起他们的兴趣;教师似乎是一个流行的主题,所以他在简历上着重强调了做数学教授的工作。最重要的部分是那份调查。他选取了在两个集群中最受欢迎的500个问题。他早就想好,一定要认真诚实的填写这些调查,因为他不想将自己的关系建立在计算机自动生成的谎言的基础上。但是,他让他的电脑计算出每一个问题的重要度,使用一种机器学习算法,叫自适应增强最佳权重。

 

用这种方法,他创建了两份资料,一份附带一个攀岩的照片,另一份用一张在音乐俱乐部演奏吉他的照片。第一个问题:“抛开未来的计划,性和爱,哪一个对你更重要?”回答是:显然是爱。但面对年轻的A组,计算机对这道题目给出的重要度是“重要”,对B,重要度是“必需”。

所有的问题回答完毕,他用OKCupid搜索了一下洛杉矶的匹配女性。在顶部:是一整页的匹配度为99%的女性。他不断的向下拉动页面,不断的下拉,几千个洛杉矶的女性一扫而过,匹配度依旧在90%以上。

他还需要一个步骤来使自己得到注意。OKCupid用户在有人浏览个人主页时会得到通知,所以他写了一个程序来访问所有的匹配度高的页面,并以年龄为周期;周一访问41岁的女性,周二访问40岁的女性,两周之后,访问到了27岁的年轻女性。当然,他得到了回报,他的主页有时一天有400次的访问量。信息也开始不断涌入。

“直到遇见你,我还没有遇见过这么玩的转数字的人,而且...我对你的资料很感兴趣。”一个女人写道,“同样也是一个擅长数学的‘丰富’的人”。

“Hey,你的资料真的吸引住了我,我只是想和你say hi,”另一个女人写道,“我认为我们有很多的共同点,或许不是在数学上,但是在其他许多事物上一定是的!”

“你真的能翻译汉语吗?”另一个问道。“我参加了一个课程但是并没有很好的掌握。”

Mckinley‘研究’的数学部分完美成功了。只有一件事还没有做,他要离开他的小隔间,把他的研究投入实战,开始约会。

6月30日,Mckinley出现在UCLA的体育场,开着自己的小尼桑,穿越整个镇子,去见自己的第一个数据挖掘对象。Sheila是一个来自A组的web设计师,艺术家类型。他们在Echo公园的咖啡厅见面。“太恐怖了,”Mckinley回忆说,“这几乎是一次学术会面。”

在和Shelia约会的最后,很明显双方的注意力都不在对方身上。第二天,他开始了他的第二次约会,一个B组的充满魅力的博客编辑。他计划了一个浪漫的湖边漫步,但是散着散着,气氛变得越来越怪。女主角曾经读过普鲁斯特,对自己的生活也很失望。“真是个悲伤的故事”,他说。

第三次约会同样来自B组。他与Alison在韩国城见面。Alison是一位编剧学生,在她的右肩上有一个斐波那契螺旋的纹身。Mckinley被韩国啤酒灌醉,第二天在自己的小隔间里痛苦的醒来。他在OKCupid给Alison发了一条信息,然而,没有回应。

被拒绝当然是痛苦的,但是他仍然能每天收到20条信息。但是与计算机收集的人打交道是完全不同的两件事。他会忽略那些有负面倾向的信息。回复那些有幽默感或者包含有意思的事的信息。在过去他是追求者的时代,他需要来回发送3到5条信息才能得到一次约会机会。但是现在,他只是回复一句话,"你很cool,想要见个面吗?"

20次约会后,他注意到了这两组人中的一些潜在特征。在年轻的这组里,住在洛杉矶东部,有着2个或更多纹身的一个女人。另一组中,有一些人喜欢养中型的宠物犬。

一开始的约会他都会细心准备,但是经过了最开始的狂热之后,他会在某个随意的下午,到经常去的地点,喝杯咖啡或吃个午饭,还经常会在一天内和两个人约会。他在这次寻爱马拉松中总结了一套个人法则。不饮酒,一杯也不行。在结束时彻底终止这次约会,不要让对方尾随自己。并且,没有音乐会,没有电影。“你的注意力不应该在其他的事物上,而完全应该在对方身上,”他说,“电影,音乐,会降低效率。”

数据分析中的爱情

Mckinley的代码发现,根据女性回答方式,可以分为7种不同的类型。Greens这组,是在线约会的新用户;Samanthas这组,是更加成熟,更加乐于冒险的一组,下面是每一个集群中对最流行的4个问题的不同回答。

在经过了一个月的约会之后,他意识到他浪费了太多的时间在去往城东的高速公路上。他删除了自己的A组资料。他的效率开始提升,但是结果还是同样。夏天就要过去,他已经参加了大约55份约会,每一次都记录在实验室的笔记本上。只有3位有过第二次的约会;只有一位有过3次约会。

大多数不成功的约会男女都面对着自尊问题。Mckinley尤其是。他开始质疑他的计算。

之后又一条信息出现了,来自Christine Tien Wang,28岁,文艺女青年,反监禁分子。Mckinley在她的搜寻视野里出现,蓝眼6英尺UCLA男,她同样在UCLA攻读艺术学位。她们俩有91%的匹配度。

“我觉得这神秘又有趣”,她说。“我喜欢。”

这是他的第88次约会。不小心有了与她的第二次,之后又有了第三次。在两周之后,他们都暂停了自己OKCupid账户。

“我认为我和其他人一样,只是多了一点算法思维,大数据,和机器学习视野。”Mckinley说。每一个人都想要创建一个合适的资料——他只是把数据分析的思想融合了进去。

在Mckinley与Tien Wang约会一年以后,他们回到了第一次见面的地方。Mckinley拿到了PHD学位,教授数学课程,同时攻读音乐研究生学位。Tien Wang接受了一年的卡塔尔交换生课程。他们用Skype保持联络,中途Tien Wang回来了几次。

对与Tien Wang来说,Mckinley的寻爱故事很有趣。但是所有的数学和代码只是他们两个爱情故事的序曲。真正铸成这段关系的还是在见面之后。“人们比自己的资料要复杂的多,”她说。“所以我们见面的方式只是肤浅的那一部分,但是这一切的发生并不肤浅,这之后有我们的用心。”

“一切就好像我们匹配度高,然后在一起,事实并不是这样。匹配度只是一种将两个人放在一个空间的机制,OKCupid能够帮我找到一些人,把我们放在一起。”Mckinley说。

Tien推了Mckinley一下,说到:“你没找到我,是我找到的你”。Mckinley想了一下,承认了她是对的。

一周之后,Tien Wang回到卡塔尔,寻常的一天,摄像头前,Mckinley拿出一枚戒指。

他们并不确定什么时候会结婚,或许他们会再做一个研究来确定一个合适的日子吧。

相关新闻:

[责任编辑:于一爽]

标签:Mckinney 机器人程序 e-Harmony

人参与 评论

凤凰文化官方微信

0
分享到: