1.一种基于知识图谱和排序学习的岗位推荐方法,其特征在于,包括以下步骤:步骤1:爬取求职网站获取用户和岗位数据,并根据所获取的用户和岗位数据采用三元组的形式来构建知识图谱;
步骤2:通过知识表示学习的方法挖掘知识图谱,将知识图谱的三元组信息进行向量化表示,得到用户特征向量zuser和岗位特征向量zpost;
步骤2.1:通过使用TransE表示学习算法对知识图谱的内容进行特征向量的提取;
步骤2.2:将用户和岗位知识图谱看作三元组集合{zuser,l,f}和{zpost,l,f}并输入到TransE模型中,随机生成任意维度的向量来模拟这个三元组,其中,zuser表示用户,zpost表示岗位,l表示关系,f表示尾实体;
步骤2.3:打乱训练数据生成正例的三元组和负例的三元组组成新的训练数据;
步骤2.4:计算损失函数,通过梯度下降法来批量更新之前随机生成的向量,从而得到用户向量zuser和岗位向量zpost;
步骤3:通过余弦相似度的方法来衡量用户特征向量和岗位特征向量间的语义相似度,得到用户‑岗位相似度集合;
步骤3.1:通过使用余弦相似度来计算用户特征向量zuser与岗位特征向量zpost间语义相似度来得到相似度矩阵W(z)=sim(zuser,zpost);
步骤3.2:将得到的相似度矩阵W(z)进一步生成数据集D=sim(zuser,zpost)作为排序学习模型的训练集;
步骤4:将得到的相似度集合和特征向量整体定义为文档特征x输入到排序模型中训练,通过神经网络来训练排序模型,基于排序模型为用户在岗位集合中对岗位进行排序,得到Top‑K推荐列表;所述神经网络为改进后的RankNet排序学习算法,其构建新的损失函数,具体为:交叉熵损失函数为:Cij=‑PijlogPij‑(1‑Pij)log(1‑Pij),其中,Pij为文档i排在文档j的前面的概率;
构造的点级损失公式如下:
其中,xt为输入的文档特征,f(xt)文档的预测评分,y是文档的真实评分,a是由预测评分减去真实评分得到;
所构建的新损失函数公式如下: 通过验证集来确定损失函数的权值k的大小。
2.根据权利要求1所述的基于知识图谱和排序学习的岗位推荐方法,其特征在于,所述步骤1的具体方法为:步骤1.1:所述的用户和岗位数据包括职位信息和用户履历信息及其它与岗位和用户相关的数据;
步骤1.2:对收集到的用户和岗位数据进行结构化处理,从处理后的数据中提取知识,包括实体及其属性的提取、关系和关系属性的提取;
步骤1.3:根据所获取的实体与关系构建用户信息知识图谱和岗位信息知识图谱,并将所构建的知识图谱存储在Neo4j图数据库中。
3.根据权利要求1所述的基于知识图谱和排序学习的岗位推荐方法,其特征在于,所述步骤4的具体方法为:步骤4.1:利用改进后的RankNet排序学习算法训练排序模型,所述模型训练一个给文档计算评分的函数f(x,w),其中,x为文档的输入特征,w为排序模型的参数;
步骤4.2:根据打分函数f(x,w)计算文档i和文档j的评分si=f(xi,w),sj=f(xj,w);则文档i排在文档j的前面的概率为:而文档i排在文档j前面的真实概率为:
步骤4.3:为RankNet算法构建一个新的损失函数,并以此损失函数来衡量Pij对 的拟合程度;
步骤4.4:将RankNet算法用三层神经网络模型来实现,输入层为样本的特征,输出层为样本的分数,排序函数可以定义为:i
其中,x为输入的文档特征;g 表示第i层的传递函数;w和v分别为隐藏层到输出层的神经元的权重和输入层到隐藏层的神经元的权重;b和bj表示隐藏层到输出层神经元叠加后的偏置值和输入层到隐藏层神经元叠加后的偏置;
步骤4.5:使用梯度下降法计算后,得到以下关系式:
步骤4.6:改进后的损失函数对输入层和隐藏层间的参数vij求导,进而更新迭代模型:其中,Δvij中的i,j分别表示输入层的第i个节点,隐藏层的第j个节点,对隐藏层和输出层的参数wj求导,Δwj为:更新网络的所有权重v,w:v=v‑ηΔv,w=w‑ηΔw;
步骤4.7:在算法迭代过程中,不断修正v和w的值,以期获得最小的损失函数,最后将得到的相似度集合W(z)以及特征向量zuser和zpost放入排序模型中训练得到用户‑岗位的评分f(x),进一步得到最终的Top‑K推荐列表。