先给大家看一组数字:
● 一家企业在进行了5年以上的招聘,通过不同渠道可以接触到行业内60%以上目标候选人。
● 经过3年以上招聘的中大型企业,从不同渠道累积获取的简历可达到10万份以上。
● 企业人才库简历的平均利用率不到10%。
换句话说,经过几年招聘,大部分企业都会积累丰富的简历资源。但是,这样的人才金矿并没有得到充分的利用。人才池的水平线不断上涨,最终却成了一潭死水。
为什么企业不愿意优先从人才库中搜索已有简历,反而不断投入人力和金钱从外部渠道获取人才呢?
很大一部分原因就是人才库系统不好用,只是简单的简历储存。上万份甚至上百万份简历堆砌在一个库里,要找人的时候怎么也找不到。
要处理海量数据,AI算法就体现了天然的优势。HR只要通过关键词和标签,强大的搜索引擎就可以快速锚定目标候选人,基于人才画像,自动筛选高质量简历,从成千上万的候选人简历中快速找到最匹配的那个TA,从而达到快速填补空缺职位、提高招聘效率、降低招聘成本的目的。
那具体AI是怎么做到的呢?e成科技算法团队今天就来给大家科普一下人才库搜索引擎背后的算法知识:
知识图谱在e成科技人才搜索引擎中的应用
背景介绍
人才搜索引擎是e成科技企业服务中的重要组成部分,为用户提供人才库搜索服务。e成科技早期的搜索引擎主要依赖于term weight、bm25等传统的信息检索相关技术,在语义匹配方面相对薄弱,而随着e成科技人力资源知识图谱的落地,搜索引擎引入知识图谱相关数据在效果上获得较大提升。
知识图谱
e成科技的知识图谱主要组成部分是实体(entity)和实体间关系,实体类型主要有职能、技能和行业等, 实体关系主要为上下位关系,基于整个graph,可以训练出每个entity的embedding。
人才搜索引擎的主要模块
人才搜索引擎主要有以下几个主要模块组成:
Query understanding:
query理解的主要工作包括对query切词,以及基本的短语识别,去除停用词,并通过NER和分类算法进行tagging,以及通过word重要性模型weighting,知识图谱落地后,NER识别后还需要通过实体链接将识别出的term/phrase对应到graph中的相应实体id。
Talent document understanding:
同样对于简历和人才画像等特征,通过识别和实体链接实体id的集合。
Match:
通过匹配模型计算query和document的match score。
Rank:
结合match模块的相关特征以及文档时效性,用户招聘偏好等特征基于pairwise的LTR模型得到document的排序。
模型介绍
1. 神经网络在文本匹配上有两种类型:
representation:
包括DSSM, CDSSM等,主要思想在于将query和document映射到语义空间,最后通过计算相似性表征两者的match score,这种方法的优点在于可用来建立索引,但是忽略了词粒度的特征以及重要性。
interaction:
包括MatchPyramid、KNRM、DRMM等,设计match function对query和document中的word进行两两交叉,得到match score从而构建interaction matrix。这种方法的效果优于前一种方法,主要原因在于在我们的场景下,岗位和人才的相关性往往取决于重要性最靠前的实体是否精确匹配或者有与之非常相关的实体出现在人才简历或画像中。
2. 基于知识图谱计算word/entity matrix
因此,我们采用了interaction类型的模型,如何构建interaction matrix是核心问题。首先通过query和document解析,得到query和document的表示
Query:<QueryEntity1, QueryEntity2 ……QueryEntityn,QueryWord1, ……QueryWordn>
doc:<DocEntity1, DocEntity2 ……DocEntityn,DocWord1, …DocWordn>
entity之间的match score通过entity embedding计算得到,entity和word以及word和word之间的match score有其他的模型计算得出,这里不详细阐述。
query entity和word与document的entity 和word交叉通过match function得到相应的矩阵。
我们选定DRMM为大体框架,而DRMM中对上述交叉后的matrix进行Histogram Pooling,考虑到这种方式会带来一定的信息损失,我们将其更换为mlp,并增加一维用来表征是否为extract match。
以下为model网络结构图:
由于word和entity的重要性在计算match feature时比较重要,我们通过attention网络计算每个query中entity/word在计算match feature时的贡献度
其中Vi为query中一个entity或者word对应的embedding向量拼接对应的实体类型等其他特征后的向量,是可训练的参数。
由于搜索排序还需要考虑其他因素,在match feature的基础上拼接了一些额外的特征,如doc的时效性、query中的entitiy在文档出现位置的proximity、用户招聘偏好等,最后计算出score。
模型训练
我们使用系统的用户行为数据构造偏序关系,在同一query下已offer的人才>面试邀约的人才>未邀约的人才,构建pairwise的hinge loss.
参考文献
[1] Jiafeng Guo, Yixing Fan, Qingyao Ai, andW Bruce Cro.. 2016. A deep relevance matching model for ad-hoc retrieval. In CIKM. ACM, 55–64.
[2] Po-Sen Huang, Xiaodong He, Jianfeng Gao, Li Deng, Alex Acero, and Larry
Heck. 2013. Learning deep structured semantic models for web search using clickthrough data. In CIKM. ACM, 2333–2338.