在微信公众号中看到一个很有趣的题目:

假如你是一名人事经理,你要招聘一名数据分析师,目前有100名面试者,你该如何抉择?

应聘流程:

这100人随机排序,逐一面试,每当一位候选人面试完后,要么录用,要么不选。如果选择了他,不再考虑后面的人。你必须从中选择一人,如果前99都看不中,必须选择最后一人。那么你怎么保证自己最高概率录取到能力最强的人

欧拉数:e

e^{i\pi}+1=0,含义是单位时间内,持续翻倍增长所能达到的极限值。如何理解?
比如:一个细胞单位时间24h可以分裂一次,那么24h后:
(1+1)^1=2
如果12h分裂一次,那么24h后:
(1+1/2)^2=2.25
如果24/n h内分裂一次,那么24h后:
(1+1/n)^n \to e

我们的问题答案就是100/e=37 ,pass掉前37人,从第38人开始选择大于前37人能力的第一个人作为录取者。

37%法则,我们通过实验来证明一下:我们选择100个应聘者,编号1-100。随机打乱顺序,按照37%法则选取,程序运行1w次后,我们看看结果。

#100个人招聘能力最好的人,怎么保证最大概率找到最合适的人才,只选一人,一旦选择不考虑其他,如一直不选择,选最后一位。import random
#mport numpy as np
#import itertools
#import math
import matplotlib.pyplot as plt
from collections import defaultdictnumber = 100
n=100000
def generate(n):dict=defaultdict()L=[j for j in range(1,number+1)]for i in range(n):random.shuffle(L)mid=int(number*0.37)L_left=L[:mid]L_right=L[mid:]best_out=max(L_left)choose = choose1(best_out,L_right)if choose in dict:dict[choose]=dict[choose]+1else:dict[choose]=1return dictdef choose1(best_out,List_right):m=len(List_right)for i in range(m):if List_right[i]>best_out:choose=List_right[i]return choosechoose=List_right[-1]return choosedict=generate(n)
dict
x=[int(i) for i,_ in dict.items() ]
y=[float(i/n) for _,i in dict.items() ]
#print(x)
#print(y)plt.scatter(x,y,color='r')plt.show()

图中X坐标表示最后录取者的能力值,Y表示在1w次中所占比重,我们可以看到有接近40%的时候会选到最好的候选人,说明37%准则是比较准确的。

趣味概率问题:脑洞蒙特卡洛模型,来招聘!!!相关推荐

  1. python基于模型对测试集和训练集的预测概率结果文件可视化模型的校准曲线、多个模型的校准曲线(calibration curve)

    python基于模型对测试集和训练集的预测概率结果文件可视化模型的校准曲线.多个模型的校准曲线(calibration curve) 目录

  2. NLP —— 图模型(三)pLSA(Probabilistic latent semantic analysis,概率隐性语义分析)模型...

    LSA(Latent semantic analysis,隐性语义分析).pLSA(Probabilistic latent semantic analysis,概率隐性语义分析)和 LDA(Late ...

  3. python 模型 欺诈概率_python信用卡欺诈模型,最大似然参数设置/混淆矩阵

    #定义画混淆矩阵的函数 def plot_confusion_matrix(cm, classes,title='Confusion matrix',cmap=plt.cm.Blues): " ...

  4. 新冠感染池检测选取最优池检测人数(概率模型理论公式+蒙特卡洛matlab仿真)

    问题如下: 典型离散概率模型,每组池检测中,感染人数服从二项分布. 计算每一组测试的时间,求数学期望即可. matlab代码如下: %蒙特卡洛仿真新冠感染池检测选取最优池检测人数 %仿真时长约十几秒 ...

  5. 一道100个飞机乘客随机坐座位的趣味概率问题

    题目如下所示 分析 题目初看觉得很难用概率学的计算公式来解决,但是对于计算机专业的我们来说,可以方便地使用计算机模拟来解决.这又是一道蒙特卡罗求解算法.我们只要模拟每一次实验,然后执行多次求结果即可. ...

  6. P3750 [六省联考2017]分手是祝愿(期望概率,返祖模型)

    题意:给n个灯,初始化下给出每个灯的状态,给n个开关,操作开关i会使得编号是i的约数的灯的状态翻转一次,现在有一个种算法,如果当前状态下可以操作k次及以下就能使所有灯熄灭,直接操作这个次数,游戏结束, ...

  7. 练习:班里有人和我同生日难吗?(概率probability、蒙特卡洛随机模拟法)

    Python 官网: https://www.python.org/   这里,才 python 前沿.可惜是英文原版.所以,我要练习英文阅读.

  8. python蒙特卡洛算法模拟赌博模型

    sklearn实战-乳腺癌细胞数据挖掘 https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campai ...

  9. 【数据挖掘】高斯混合模型 ( 模型简介 | 软聚类 | 概率作用 | 高斯分布 | 概率密度函数 | 高斯混合模型参数 | 概率密度函数 )

    文章目录 I . 高斯混合模型方法 ( GMM ) II . 硬聚类 与 软聚类 III . GMM 聚类结果概率的作用 IV . 高斯混合分布 V . 概率密度函数 VI . 高斯分布 曲线 ( 仅 ...

  10. NLP-文本处理:拼写纠错【非词(编辑距离)、真词(编辑距离...)候选词 -> “噪音通道模型”计算候选词错拼成待纠错词的似然概率 -> N-gram模型评估候选词组成的语句合理性】

    一.贝叶斯公式 1.单事件 P(Ax∣B)P(A_x|B)P(Ax​∣B)=P(AxB)P(B)=P(B∣Ax)×P(Ax)P(B)=P(B∣Ax)×P(Ax)∑i=0n[P(B∣Ai)∗P(Ai)] ...

最新文章

  1. 神奇的requestAnimationFrame
  2. KlayGE新增Realtime Caustics
  3. 无法检测或故障_电热水壶故障检修分析。
  4. C#接口(Interface)理解
  5. 心路历程:「双非」研究生数据分析春招
  6. 双时隙的工作原理_智能天线工作原理是什么 智能天线技术发展介绍【图文】...
  7. 无招胜有招之Java进阶JVM(三)内存模型
  8. 中国豪华的政府大楼VS破学校
  9. 5W2H | 关于写博客的七点反思
  10. Chrome书签删除恢复
  11. 游戏版署过审注意事项
  12. 后端自我介绍_java开发自我介绍3篇
  13. USB PD协议规范
  14. 让模糊图片变清晰:滴滴云推出图像超分辨API,新用户免费调用100次
  15. 判断当前手机设备的类型(安卓还是IOS)
  16. Java题目训练——年终奖和迷宫问题
  17. 完全备份、增量备份和差异备份
  18. 如何做一个网页送给女朋友做生日礼物
  19. 使用普通账户安装 Redis 服务
  20. 一篇文章告诉你什么是量化的统计套利

热门文章

  1. php 后台存cookie前台js中文读取cookie的办法
  2. 人人开源项目前端添加静态路由
  3. 腾讯电脑管家具有计算机病毒查杀功能,腾讯电脑管家算杀毒软件吗_腾讯电脑管家不仅仅是杀毒软件-高达阁杀毒软件站...
  4. c语言乐谱提取软件,SmartScore X2 Pro(乐谱扫描识别软件) V10.5.4 官方版
  5. java json转excel_JSON转Excel怎么转?
  6. 【工作技巧】防止电脑睡眠,让鼠标自动周期性的点击屏幕
  7. 服装制版师用软件代替手工_楚天都市报_多媒体报
  8. 快递公司type字典
  9. linux 抓包tcp
  10. 一个迅速崛起的国产开源OCR项目