根据技能预测职位名称

predict job title on the basis of skills

我正在做一个项目,我需要根据一个人的技能来预测他应该是前端开发人员、后端开发人员、DevOps 工程师还是数据科学家等。

例如:

Sam 拥有 ['python','sql','machine learning','flask'] 的技能,因此他可以被称为 数据科学家.

我已经废弃了 LinkedIn,并获得了人们的职位和他们的技能。我需要一些指导:

  1. 我如何使用 NLP 规范化数据
  2. 我如何预测新用户他属于特定的工作或领域。

使用 python 实现它的过程应该是什么,非常感谢任何参考文章或教程提前致谢

这里我假设您要采用的方法是 ML 模型而不是字符串匹配问题。 我解决这个问题的方法是:

  1. 为您自己的数据集中存在的技能创建 one-hot 编码。这将确保您拥有针对相关工作简介的所有技能的二进制文件,示例如下:
      python sql machine_learning flask product_management        Job   
0       1     1        1           1           0             Data_Scientist 
  1. 同样,下一步是将作业转换为相应的标签。
     python sql machine_learning flask product_management        Job   
0       1     1        1           1           0                  1 
  1. 现在这两个值都已设置,您可以使用任何可用的预测算法,从线性回归到使用 ANN,以便根据技能值预测工作标签。

我看到的 NLP 的用法是,不是使用 one-hot 编码转换值,您可以使用自定义训练的分词器,以便将技能分解为标记,然后进一步分解为相关向量(tok2vec ) 然后可以将其输入数据帧进行预测。

我已经通过使用 BERT 解决了这个问题,它本身负责矢量化和标记化。我有一个具有特定技能及其领域(前端、后端等)的数据集。我使用多分类器来预测域,然后这就是所有作业通过特定域聚集的方式