0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

用机器学习帮助完成找女票的事业还不行吗?

zhKF_jqr_AI 来源:未知 作者:李倩 2018-06-30 09:00 次阅读

编者按:本文作者是滑铁卢大学计算机科学专业17级的学生Bai Li,他在博客上写了一篇用逻辑回归预测找到女朋友的概率教程。论智君友情提示,本文意在分享项目思路,请勿轻易对号入座。

滑铁卢大学是加拿大著名的理工科高校,是北美地区最优秀的大学之一,我们的数学、计算机科学和工程学科水平居世界前列。然而,这样的学校都有一个明显的特点:男多女少。更糟糕的是滑铁卢大学是出了名的缺少社交活动,所以估计我也跟学校里众多CS同学一样,女朋友是找不到的,这辈子都找不到的。

有人觉得爱情是无法量化的,这种操作太抽象,女朋友什么的,还是顺其自然吧。但是作为滑铁卢大学的数据科学家,这一点我不敢苟同。计算机专业的男人绝不轻易认输!没有社交,用机器学习帮助完成找女票的事业还不行吗?

下面我就来说说详细的教程,都搬好板凳拿起小本本!

首先,我们要明确这个项目的问题是:滑铁卢大学的男生想找到女朋友,都需要哪些特质?首先,大部分人都觉得工资高肯定更吸引妹子,另外身高或者身材更是加分项。我们想确定的是,哪些因素可以用预测进行量化,哪些仅仅是猜测而没有数据支持。

我大概想了这么几个特征:

约会(目标变量):有女朋友的男生,或者过去五年至少谈了六个月恋爱的男生

是否是国际学生

专业是否为CS、SE或ECE

成绩优异,并找到了牛X的实习

是否幽默健谈

性格是否外向、愿意结交新朋友

是否自信

比我高(175+)

戴不戴眼镜

经常去健身房或喜欢各项运动的人

注重穿衣打扮

长居加拿大或者在加拿大居住工作至少五年

是否为亚裔

你也许注意到其中一些特征太主观了,比如怎么才能规定一个人“有趣”、“幽默”呢?在这个项目中,我将人们分成两部分,用1标记其中一半,另外一半标为0。所以我根据自己对周围人的观察,确定他们找到女朋友的能力。

要说明的是,本文并不属于客观严谨的统计型研究,而是给大家提供一种思路。

为了收集数据,我把每个能想到的同学的信息都制成表格,用1或0代表“是”或“否”,最后共有70个同学信息。注意了,滑铁卢大学的各位,过去两年跟Bai Li说过话的男生,你们可能已经被用作训练数据了哦。

分析过程

首先我们在目标变量Dating上对各种其他变量进行费舍尔精确检验,最终得到三种最重要的变量:

健身——爱健身爱运动的男生比其他男生有女朋友的概率大了两倍(p-value=0.02)

眼镜——不戴眼镜的男生比戴眼镜的男生有女朋友的概率多了70%(p-value=0.08)(睡前别玩手机了!眼保健操做起来啊各位!)

自信——有信心的男森最帅啦(p-value=0.09)

果然妹子们都喜欢身材好、有朝气的男生。不过我有点吃惊戴眼镜竟然这么重要?可能有些人会把戴眼镜和nerd联系起来吧,不过还真的有论文研究过这个问题,结果发现人们确实觉得眼镜会让魅力大打折扣。

有些变量也许可以预测成功约会的概率,但是由于样本数量太少,结果不确定性很大:

国际学生比当地学生成功几率大

亚洲男生比其他种族的男生优势较小

其他因素不变的情况下,CS专业的男生似乎更受欢迎

剩下的类似身高、成绩、穿衣打扮等因素跟能否找女朋友关系不大,就算你去Facebook总部工作,对不起,该单身还是单身。

下面是实验的全部结果:

Variable: international

N(international)=10, N(~international)=60

p(dating|international)=0.60, p(dating|~international)=0.38

p-value=0.299

Variable: cs

N(cs)=56, N(~cs)=14

p(dating|cs)=0.45, p(dating|~cs)=0.29

p-value=0.368

Variable: career

N(career)=46, N(~career)=24

p(dating|career)=0.43, p(dating|~career)=0.38

p-value=0.799

Variable: interesting

N(interesting)=34, N(~interesting)=36

p(dating|interesting)=0.47, p(dating|~interesting)=0.36

p-value=0.467

Variable: social

N(social)=29, N(~social)=41

p(dating|social)=0.45, p(dating|~social)=0.39

p-value=0.806

Variable: confident

N(confident)=37, N(~confident)=33

p(dating|confident)=0.51, p(dating|~confident)=0.30

p-value=0.092

Variable: tall

N(tall)=26, N(~tall)=44

p(dating|tall)=0.46, p(dating|~tall)=0.39

p-value=0.619

Variable: glasses

N(glasses)=41, N(~glasses)=29

p(dating|glasses)=0.32, p(dating|~glasses)=0.55

p-value=0.084

Variable: gym

N(gym)=22, N(~gym)=48

p(dating|gym)=0.64, p(dating|~gym)=0.31

p-value=0.018

Variable: fashion

N(fashion)=17, N(~fashion)=53

p(dating|fashion)=0.41, p(dating|~fashion)=0.42

p-value=1.000

Variable: canada

N(canada)=31, N(~canada)=39

p(dating|canada)=0.42, p(dating|~canada)=0.41

p-value=1.000

Variable: asian

N(asian)=59, N(~asian)=11

p(dating|asian)=0.37, p(dating|~asian)=0.64

p-value=0.181

接着,我们对比了各变量之间的关系,这可以帮助找出错误的模型假设。红点表示正面联系,蓝色表示负面联系。我们只显示出了统计显著性<0.1的关系,所以大部分变量的组合是空白的。

如图所示{有女朋友,有自信,健身,不戴眼镜}互相有关。

这里我再强调一下,我统计的信息都是身边的同学,或者同学的同学,专业都是学CS的并不能代表整个滑铁卢大学的学生。

所以任何模型在这个数据上训练都会反映出同样的偏差。未来我会收集更多数据改进模型。

用逻辑回归预测恋爱概率

如何用算法预测找到女朋友的概率呢?让我们搓搓手准备开始吧!

我训练了一个逻辑回归GLM,从各个解释变量的角度预测找到女朋友的概率。利用R中的glmnet和caret包,我用弹性网络正则化训练了一个GLM。然后再用标准网格搜索进行超参数优化,用leave-one-out交叉验证并且在每次迭代中对Kappa系数进行优化。

结果模型的ROC曲线上交叉验证的AUC分数为0.673,也就是说,模型的预测还是有点准的,不过其中的不确定性因素仍然很多。最后,我还做了一个简单计算器,大家有兴趣可以玩玩。

小编测试了一下,全部选取了“弱势因素”,这个结果可真悲伤

好了啥也不说了,我要去健身房举铁冷静一下,再预约个近视手术了(手动再见)。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4455

    浏览量

    90755
  • Facebook
    +关注

    关注

    3

    文章

    1428

    浏览量

    54033
  • 机器学习
    +关注

    关注

    66

    文章

    8122

    浏览量

    130561

原文标题:用机器学习预测找到女朋友的概率,制胜秘诀有三点

文章出处:【微信号:jqr_AI,微信公众号:论智】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    为什么多晶硅栅上还要再摞一层钨?不用不行吗

    为什么多晶硅栅上还要再摞一层钨?不用不行吗? 求大虾指点
    发表于 01-12 17:22

    不得不说平板抢才是王道啊~

    今年假日办不知道脑袋是不是被驴踢了,居然提前60天预订春运的,特么的给那些黄牛便利啊,60天前都还不知道什么时候放假不知道要抢哪天的,只能抢年后回来广州的…要不是我机智抢到了2张
    发表于 02-12 10:23

    今年春节,你还抢回家吗?

    `又到了一年一度的人口大迁移季节,很多小伙伴们已经开始每天守在电脑前,抢春节回家的票了吧!小编也是第一次抢,所以终于体会到了抢的难度!原来比
    发表于 12-03 17:33

    ccs生成静态库只用新的库文件不行吗

    ccs工程中,调用新编函数时,发现不仅需要新的库文件,还要该函数用到的他人库文件的支持。只用新的库文件不行吗?如何可以做到?谢谢!
    发表于 05-28 12:34

    51拓展外部地址不清楚

    有个关于51拓展外部地址不清楚的地方请教 最近学习CAN总线就用最熟悉的51开始学习了但是遇到一个问题 SJA1000这个控制器要把它当做外部设备连接 那么问题来了我的例程中都是
    发表于 06-13 04:01

    介绍机器学习的基础内容

    系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助
    发表于 08-13 07:39

    请问在win下面UUU就升级内核不行吗

    我修改了内核,在win 下面UUU 就升级内核不行吗?烧写 u-boot、内核、 文件系统到 emmc:, 能指定烧哪个吗?
    发表于 12-31 07:17

    机器学习的基础内容

    系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助
    发表于 02-09 06:47

    什么是TI-RSLK机器人系统学习套件

    首先说说什么是TI-RSLK(中国版)机器人系统学习套件吧。TI-RSLK 中国版是一款适合用于机器人入门学习的移动机器人套件,该套件可以
    发表于 02-11 06:42

    什么是机器学习? 机器学习基础入门

    可以采取行动的洞察力。条形图固然不错,但是如果我们真正想要的是能够在机器故障和脱机之前预测到它需要服务,那么简单的算法方法是不行的。机器学习开发回路进入
    发表于 06-21 11:06

    不同模块怎么共享sbit变量,extern不行吗?

    不同模块怎么共享sbit变量,extern不行吗
    发表于 11-03 06:48

    一文助你全面理解机器学习

    如果你对人工智能和机器学习的理解还不是很清楚,那么本文对你来说将会很有用。我将配合精彩的视频和文字解说来帮助你全面理解机器
    的头像 发表于 07-17 16:04 2866次阅读

    机器学习的100天作战计划与教程

    其实机器学习涵盖的知识面非常多,而且不仅要学习理论还有实践同样不能忽视。如果基础薄弱,学习起来肯定是会遇到很多困难的,但就一定不行吗?如何在
    的头像 发表于 08-03 09:50 4234次阅读

    机器学习可以帮助未来的癌症诊断

    机器学习可以帮助未来的癌症诊断
    的头像 发表于 12-30 09:40 728次阅读

    PLC中为什么要间接寻址?直接寻址不行吗

    PLC中为什么要间接寻址?直接寻址不行吗? PLC,也称程序可编程控制器,是一种专门用于自动化控制的电子设备,广泛应用于各种工业领域中。在PLC编程中,常常用到寻址的概念,以便读取或控制具体的设备
    的头像 发表于 09-15 14:59 1158次阅读