我是怎么用机器学习技术找到女票的

简介: 机器学习在我们生活中的用处有多大,就不用我们多说了,大到医疗诊断,小到手机应用,机器学习都应用的风风火火。但是用机器学习帮自己在学校找对象,你听说过吗?

机器学习在我们生活中的用处有多大,就不用我们多说了,大到医疗诊断,小到手机应用,机器学习都应用的风风火火。但是用机器学习帮自己在学校找对象,你听说过吗?

__20180725133317

最近滑铁卢大学一位叫 Bai Li 的留学生(李白?应是中国同胞)在 medium 上分享了如何用 ML 中的逻辑回归方法帮自己找女票的神操作。像这么实用的技术,我们必须观摩学习一个。

这里插一嘴,以前老有人搞错滑铁卢大学,这里的滑铁卢在加拿大,不是比利时那个让拿破仑最后真的拿了破轮的滑铁卢。滑铁卢大学是加拿大一所著名高校,是北美地区最优大学之一,其数学、计算机科学和工程学科教学水平居世界前列,其中优势专业计算机科学名列 2017 年 usnews 世界大学排行榜第 18 位。

好了废话不说,我们观看少年的表演:

滑铁卢大学是出了名的缺少社交活动和很难找到对象。和我(原作者Bai Li——译者注)一样,滑大的很多计算机专业男生都觉得,找女票是不可能找到的,大概毕业前都不会找到的。找也不知道该怎么找,谈恋爱又不会,就只能敲敲代码才能维持得了生活这样子。

__20180725133320

有些人觉得爱情这种东西是没法量化的,你只管“做你自己”就好了。不过,作为滑铁卢大学的一个数据科学家,我对此持不同意见。我就想了,既然是搞计算机的,干嘛不试试借助机器学习找女朋友呢?

方法论

心动不如行动,马上着手研究如何用机器学习技术找女票。

这个研究的核心问题是:具备哪些属性,能在滑铁卢大学众多男生中脱颖而出找到女朋友?

很多人觉得兜里有钱会更能吸引妹子,此外身高、有没有肌肉这些指标也会起作用。

我们下面就试着找出哪些是最有预测力的属性,哪些假设没有数据支撑。

我首先想到了下面这些属性:

约会(目标变量):有女朋友,或者过去5年内曾有过至少维持了半年感情的女朋友。
国籍:留学生(因为我也是留学生)
专业:CS,SE和ECE专业
事业:在学术上很成功,找到了薪水优渥的实习工作
有趣性:能说会道,总能找到有趣的谈资
社交性:外向性格,总想认识新朋友
自信:看着比较自信
身高:身高比我高(> 175 cm)
眼镜:戴眼镜(我也戴)
健身:定期去健身房,或者运动
时尚:注重外在形象,穿着有品位
加拿大:过去5年内基本生活在加拿大
亚洲人:来自东亚地区(因为我也是)

看到这里你应该会发现,上面有些属性非常主观,比如怎么证明一个人很有趣?

__20180725133324


在上面这些情况中,我按照是否符合标准会赋予 1 或 0 这两个值。所以,我们是在衡量人们的上述属性和能找到对象之间的关系(当然是根据我自己的理解,不喜勿喷)。

所以,假如你是想看那种超硬核又严格统计的研究,那么后面的内容可能不是你的菜。

为了收集数据,我把自己能想到的每个人都列在表格里,在每个属性里会以 0 或 1 给他们打分。最终,数据集有 N=70 行。如果你过去两年待在滑大,和我认识,多半这个表格上有你。

分析

首先,我们将精确概率法(Fisher’s Exact Test)对目标约会变量和所有的说明变量进行分析,发现其中有 3 个变量影响最为显著:

健身:定期去健身房或运动的人有女朋友的概率会高出两倍以上(P值=0.02)

眼镜:不戴眼镜的人有女朋友的概率比戴眼镜的人会高出 70%(P值=0.08)

自信:有自信心的人有朋友的概率更高(P 值=0.09)

和我预期的一样,有肌肉有自信的小伙更有吸引力。不过我对戴眼镜与否影响这么大感到很意外,好奇是不是因为戴眼镜一般会给人产生“书呆子”的印象。所以我又查了些资料,发现还真有这么一回事,有篇研究论文讲到大多数人认为不管男性还是女性,戴眼镜会降低自身吸引力。

有些变量对于能否成功约会可能比较有预测力,不过很难确定,因为样本较小:

留学生比加拿大本地学生的约会成功率要高
亚洲人和其它人种相比约会机会更少
纵览其它因素,虽然女生很少,计算机专业的男生似乎并不处于劣势

剩下的变量(身高/事业/有趣性/社交性/时尚/居住地)这些和成功约会的关系不是很大。不好意思,哪怕你在 Facebook 上班,该没女票还是没有。

本次实验的完整结果:

__20180725133329


接着我们检查各变量之间的关系,这可以帮我们识别出不正确的模型假设。红色表示正相关,蓝色表示负相关。我们只展示统计显著性 <0.1 的相关性,因此大部分变量之间的关系为空白。

__20180725133333

从图中看起来{有女朋友,看起来自信,去健身房,不戴眼镜}有相互关系。

在接着往下看之前,我得强调一下我的这些朋友不能代表滑铁卢大学的整体情况。我平时都是在课堂上或工作中认识的他们(虽然什么样的人都有,但都是从事计算机相关的事情),要么是熟人(虽然来自不同专业,但大部分来自东亚地区,在加拿大生活)。

用这些数据训练后的模型也会反应这些偏差,未来我也会扩大调查范围,收集更多数据。

用逻辑回归预测找女票

要是有个算法能够预测你有多大几率可以找到女票,岂不美哉?我们试试!

我训练了一个逻辑回归广义线性模型,根据我们前文列举的这些说明变量预测是否会有女票。借助 R 语言中的 glmnet 和 caret 包,我用弹性网络正则化训练了这个广义线性模型。然后用标准网格搜索法优化了超参数,在每次迭代中使用留一交叉验证法,并优化 kappa 系数。

__20180725133336

最终模型的交叉验证 ROC AUC 分数为 0.673,也就是说模型在预测你找到女票的几率方面,比你凭感觉乱猜还是更靠谱些。当然了,生活中总会有些偶然的不确定因素,人生也会有惊喜嘛。

好了不说了,我去健身房了,还要努力摘掉眼镜!

后话:小哥在原文中将自己的模型分享了出来(很可能已经找到另一半所以也不藏私了),用它就能测试自己在滑铁卢大学找到女票的概率。奈何打开链接后,目前已无法获取模型。如果后期能正常访问,我们会把这款能预测你“姻缘”的模型分享给大家。当然了,如果你能自己创建一款这样可以预测桃花运概率的AI“半仙”,那是坠吼滴!

文章分享自网络,版权归原作者所有,转载仅供学习使用,不用于任何商业用途,如有侵权请留言联系删除,感谢合作。
参考资料: Learning to find a Girlfriend at the University of Waterloo by Logistic Regression
https://medium.com/@uw_data_scientist/learning-to-find-a-girlfriend-at-the-university-of-waterloo-by-logistic-regression-18a0d22da896

原文发布时间为:2018-07-24
本文作者:数据与算法之美
本文来自云栖社区合作伙伴“数据与算法之美”,了解相关信息可以关注“数据与算法之美”。

相关文章
|
23天前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能与机器学习:探索未来的技术边界
【10月更文挑战第18天】 在这篇文章中,我们将深入探讨人工智能(AI)和机器学习(ML)的基础知识、应用领域以及未来趋势。通过对比分析,我们将揭示这些技术如何改变我们的生活和工作方式,并预测它们在未来可能带来的影响。文章旨在为读者提供一个全面而深入的理解,帮助他们更好地把握这一领域的发展趋势。
|
3天前
|
机器学习/深度学习 自然语言处理 语音技术
探索机器学习中的自然语言处理技术
【10月更文挑战第38天】在本文中,我们将深入探讨自然语言处理(NLP)技术及其在机器学习领域的应用。通过浅显易懂的语言和生动的比喻,我们将揭示NLP技术的奥秘,包括其工作原理、主要任务以及面临的挑战。此外,我们还将分享一些实用的代码示例,帮助您更好地理解和掌握这一技术。无论您是初学者还是有经验的开发者,相信您都能从本文中获得宝贵的知识和启示。
12 3
|
11天前
|
机器学习/深度学习 人工智能 自然语言处理
思通数科AI平台在尽职调查中的技术解析与应用
思通数科AI多模态能力平台结合OCR、NLP和深度学习技术,为IPO尽职调查、融资等重要交易环节提供智能化解决方案。平台自动识别、提取并分类海量文档,实现高效数据核验与合规性检查,显著提升审查速度和精准度,同时保障敏感信息管理和数据安全。
57 11
|
3月前
|
机器学习/深度学习 存储 人工智能
提升深度学习性能的利器—全面解析PAI-TorchAcc的优化技术与应用场景
在当今深度学习的快速发展中,模型训练和推理的效率变得尤为重要。为了应对计算需求不断增长的挑战,AI加速引擎应运而生。其中,PAI-TorchAcc作为一个新兴的加速引擎,旨在提升PyTorch框架下的计算性能。本文将详细介绍PAI-TorchAcc的基本概念、主要特性,并通过代码实例展示其性能优势。
18158 166
|
2月前
|
机器学习/深度学习 数据可视化 JavaScript
探索机器学习模型的可视化技术
【9月更文挑战第23天】在数据科学中,理解和解释机器学习模型的决策过程是至关重要的。本文将介绍几种流行的可视化工具和库,如TensorBoard、D3.js等,帮助读者更好地理解模型内部工作原理及其预测结果。通过实例演示如何使用这些工具进行模型可视化,增强模型的可解释性。
|
3月前
|
人工智能 Anolis
展示全栈式AI平台,探讨软硬件技术!英特尔分论坛议程来啦 | 2024 龙蜥大会
英特尔分论坛将依托英特尔云到端的全面产品组合,围绕至强可扩展处理器、AI 加速器、以及 oneAPI、OpenVINO 等软硬件技术展开探讨。
展示全栈式AI平台,探讨软硬件技术!英特尔分论坛议程来啦 | 2024 龙蜥大会
|
3月前
|
图形学 机器学习/深度学习 人工智能
颠覆传统游戏开发,解锁未来娱乐新纪元:深度解析如何运用Unity引擎结合机器学习技术,打造具备自我进化能力的智能游戏角色,彻底改变你的游戏体验——从基础设置到高级应用全面指南
【8月更文挑战第31天】本文探讨了如何在Unity中利用机器学习增强游戏智能。作为领先的游戏开发引擎,Unity通过ML-Agents Toolkit等工具支持AI代理的强化学习训练,使游戏角色能自主学习完成任务。文章提供了一个迷宫游戏示例及其C#脚本,展示了环境观察、动作响应及奖励机制的设计,并介绍了如何设置训练流程。此外,还提到了Unity与其他机器学习框架(如TensorFlow和PyTorch)的集成,以实现更复杂的游戏玩法。通过这些技术,游戏的智能化程度得以显著提升,为玩家带来更丰富的体验。
62 1
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】python之人工智能应用篇--代码生成技术
代码生成技术是人工智能与软件工程交叉领域的一项重要技术,它利用机器学习、自然语言处理和其他AI算法自动编写或辅助编写计算机程序代码。这一技术旨在提高编程效率、降低错误率,并帮助非专业开发者快速实现功能。以下是代码生成技术的概述及其典型应用场景。
50 6
|
3月前
|
机器学习/深度学习 数据采集 人工智能
揭秘大型机器学习模型背后的秘密:如何在技术深度与广度之间找到完美平衡点,探索那些鲜为人知的设计、训练与部署技巧,让你的作品脱颖而出!
【8月更文挑战第21天】大型机器学习模型是人工智能的关键方向,借助不断增强的计算力和海量数据,已实现在学术与产业上的重大突破。本文深入探讨大型模型从设计到部署的全过程,涉及数据预处理、模型架构(如Transformer)、训练技巧及模型压缩技术,旨在面对挑战时提供解决方案,促进AI技术的实用化进程。
69 1
|
3月前
|
机器学习/深度学习 数据挖掘
机器学习模型的选择与评估:技术深度解析
【8月更文挑战第21天】机器学习模型的选择与评估是一个复杂而重要的过程。通过深入理解问题、选择合适的评估指标和交叉验证方法,我们可以更准确地评估模型的性能,并选择出最适合当前问题的模型。然而,机器学习领域的发展日新月异,新的模型和评估方法不断涌现。因此,我们需要保持对新技术的学习和关注,不断优化和改进我们的模型选择与评估策略。

热门文章

最新文章