你没见过老虎和狮子,也没听过关于它们的任何描述。现在,我有老虎和狮子的照片各100张,照片里的老虎或狮子,大的、小的、公的、母的、站着的、躺着的,各式各样。我从中各拿出40张照片,告诉你哪张是老虎,哪张是狮子。请问:你能不能将其他照片里的老虎和狮子识别出来?
当然可以!哪怕让你做判断的照片上,只有一个躺在草丛里的隐隐约约的轮廓。
此时,也许你还不能精确、严谨地描述出来老虎或狮子长什么样,但这不影响你做出准确的判断。
如果我和计算机来重复以上游戏,就是一个有监督学习中的分类问题。没那么费解,对不对?
在上篇文章中,我模拟了两个场景:一是招聘面试时,不断挖掘出关于应聘对象的信息,并做出录用决定的过程;二是依据李雷经常泡在自习室、来自省重点中学等信息,不断修正了对“李雷能否考上重点大学”的推测(点开查看)。根据新出现的信息,动态调整对某事件发生概率的判断,正是贝叶斯思维的核心。
本文介绍利用朴素贝叶斯算法识别人才的操作实例。
一、放下执念,回归初心
中国古代的思想家认为,事物的内在本质虽然难以把握,但可以通过诸多外在现象进行观察和分析。人的内心世界、内在本质,可以通过对个人境遇、人际关系、仪容举止、语气声调来观察识别。《吕氏春秋》提出“八观六验”,比如,无事可做时,有什么喜好?穷困时,是否接受不义之财?孔子拟订了七种测评人才的方法,“远使之而观其忠”,“近使之而观其敬”,等等。
现在广泛应用的人才评价技术主要有几大类:对个性、能力、兴趣、动机与价值观等的心理测验;无领导小组讨论、公文筐测验、案例分析、角色扮演等情景模拟;情境面试、压力面试、行为面试等。此外,还有知识测验、履历分析等技术。
这么复杂的人才识别方法,正好说明,人是难于评价的(此处省略苦不堪言的一万字)。
如果你的目标只是买到一双穿着舒服的鞋,而且自己能去一趟鞋店,那你去试穿一下,就能做出最佳选择。至于为什么穿着舒服,是材质、款式还是别的什么因素影响的,你不必深入研究。因为在挑鞋这件事上,你是消费者,而非设计师。
如果你是企业里的一名HR,你的目的是想办法把优秀人才找出来,解决“培养谁、提拔谁、奖励谁、留住谁”这些迫切、棘手的问题,那你不必一上来就带着大量人力财力一头扎进心理学理论、素质模型、人才测评技术的浩瀚大海。它的成本高、难度大、周期长,也许没等你整完,市场变了、企业黄了、老板跑了。
做事当然要脚踏实地,没有什么捷径可言。但值得提倡的是,不去追求面面俱到,而是聚焦主要问题,找一个性价比最高的解决方案。
二、就地取材,“数”尽其用
优秀人才,一定会在工作中留下蛛丝马迹,比如,年度绩效考核为优、受到表彰、晋升很快,等等。我们力图从这些蛛丝马迹,去倒推哪些人是优秀人才。
需要解决两个问题。
一是关于蛛丝马迹的不确定性。受过表彰或者年度绩效考核为优的员工,不见得就是优秀人才。就像看网购商品的买家评价,有没有“托”?有没有虚假交易?应对这种不确定性,不仅要看评分,还要看交易数量,做假的成本越大,结果可靠性越高。一个员工可能在某个蛛丝马迹中做假,但很难在众多蛛丝马迹中都能一致做假,这时我们有足够的信心认为,他就是优秀人才。
二是关于优秀人才的多样性。到底什么样才算优秀人才?一般来说,要按岗位建立素质模型,不可一概而论。比如科研人员和一线操作人员之间,优秀人才一定不一样。优秀的科研人员可能会有很强的学习能力、创新思维,优秀一线操作人员可能更倚重技能和责任心。为了不纠结于具体特征,我们不妨把优秀人才届定为一个抽象概念,将不同部门、不同岗位的员工都人为地分成优秀人才和一般员工,这总是可以做到的。
基于以上思路,我不设任何条件,让各部门在限定名额内,推荐一份本部门的优秀人才名单。然后,我把员工的年龄、年度绩效考核、职位晋升快慢、学历、职位层级等11个特征与是否被推荐放到一起,欣喜地发现,果然有蛛丝马迹!比如,大家推荐出来的优秀人才,在某个比较年轻的年龄段占比更高(但不是刚参加工作的最年轻的群体),在高学历的人员中占比更高。
接下来,你是不是会自然地想到,如果员工A的年龄、学历等11个特征,都处于推荐的优秀人才占比比较高的区间,那么,员工A是优秀人才的可能性是不是很高?当然!
三、用算法把优秀人才“猜”出来
本次研究中,被推荐为优秀人才的人数为820人,未被推荐的人数为2181人。从这3001人中,随机抽取80%人员的数据作为训练集,剩下20%人员的数据作为测试集。
建立高斯朴素贝叶斯模型,采用训练集数据进行训练,然后对测试集数据进行预测。算法预测结果的混淆矩阵如下:
算法预测为0 | 算法预测为1 | |
---|---|---|
实际推荐为0 | 1332 | 849 |
实际推荐为1 | 76 | 744 |
预测效果好不好?常用的指标有:
精确度(Accuracy)=(1332+744)/(1332+744+849+76)=69.2%
优秀人才的查准率(Precision)=744/(849+744)=46.7%
优秀人才的召回率(Recall)=744/(76+744)=90.7%
在本研究中,精确度的意义不大,查准率低不可避免。受名额限制或者推荐操作误差甚至作弊,一定会有优秀人才没有被推荐出来,也就是说,混淆矩阵中的849这个数字应该更小,而744这个数字应该更大。
优秀人才的召回率90.7%,最值得关注。实际推荐的820人中,有744人被算法预测为优秀人才,只有76人被算法否定。
细心的读者会发现,实际推荐的只有820人,算法预测出来的有849+744共1593人,猜中的比例当然要高啦!实际上,推荐的人数占总人数比例为27.3%,如果从3001人中随机选出1593人,只能猜出820人中的1593/3001=53.1%。而算法能猜中90.7%(如前论述,该值偏于保守),效果是值得肯定的。
当然,划分训练集和测试集时,也存在误差。通过十折交叉验证,召回率仍达到88.3%。预测效果是可靠的。
四、预测结果的直观分析
对11个特征进行因子分析后,提取潜力、能力、业绩3个公因子,计算每名员工的因子得分,并绘制三维散点图。实际推荐的人员相对集中,但仍存在离群值,且连续性不强。算法预测的人员集中度更高,相对连续,更具说服力。
五、小结
通过朴素贝叶斯算法,依据各部门推荐的820名员工名单,及3001名员工的11项数据,较好地“猜”出了哪些员工是企业的优秀人才,而且能过滤掉一些“假优秀”。你已经能够在一串长长的素未谋面的员工名单上,标注出哪些是优秀人才。这样的预测结果,已经在科学识人的征途上前进了一小步。
但是,实际中却存在这样的个例:与员工B相比,员工A的年龄、学历上处于劣势,其他方面优势明显,这两员名工,本是难分高下的。在概率模型里,他俩可能正好被划入优秀与非优秀两个不同的类别中。因此,二分类建模(优秀与非优秀),过于粗糙,下步还要想办法实现对人才更细致的分类或者排序。
另外,从分类判别公式中可以看出,它与我们提倡的“用人所长”的价值导向并不完全吻合。就好比,在发现澳大利亚黑天鹅之前,17世纪之前的欧洲人认为天鹅都是白色的。“所有的天鹅都是白的”这一结论,已经有数万只白天鹅可以作为证据。但是要推翻它,只需要一只黑天鹅就足够了。
虽然在人才识别这件事上,我们不会完全依赖算法,但要时刻警惕遗珠之憾。
我们需要在这一研究成果的基础上,建立更加审慎的人才评价方法。