最适合简历,文档匹配

时间:2016-11-02 12:04:37

标签: scikit-learn nltk information-retrieval tf-idf gensim

我使用了三种不同的方法来计算简历和工作描述之间的匹配。谁能告诉我哪种方法最好?为什么?

  1. 我使用NLTK进行关键字提取,然后使用RAKE for 关键词/关键词评分,然后我应用余弦相似度。

  2. Scikit用于关键字提取,tf-idf和余弦相似度 计算

  3. 使用LSA / LSI模型的Gensim库提取关键字并进行计算 文件和查询之间的余弦相似性。

3 个答案:

答案 0 :(得分:3)

这里没人能给你答案。 决定哪种方法效果更好的唯一方法是让一个或多个人独立匹配大量的简历和职位描述,并将他们的工作与算法的作用进行比较。理想情况下,您拥有已经匹配的简历和职位描述的数据集(公司必须在人们申请时执行此类操作),因为创建足够大的数据集需要大量工作。

下次参加此类项目时,首先要考虑如何评估您将要整合的解决方案的性能。

答案 1 :(得分:0)

由于作业描述和简历内容极有可能不同,您应该从语义学的角度思考。您可以做的一件事是使用一些领域知识。但是很难获得各种工作类型的领域知识。研究人员有时会使用字典来增强文档之间的相似性匹配。

研究人员正在使用深度神经网络来捕获文档的语法和语义结构。您可以使用doc2Vec来比较两个文档。 Gensim可以为您生成doc2Vec表示。我相信与关键字提取和相似度计算相比,这将带来更好的结果。您可以构建自己的神经网络模型来训练工作描述和简历。我猜神经网络对你的工作有效。

答案 2 :(得分:0)

正如答案中已经提到的,请尝试使用Doc2Vec。 似乎分别使用Gensim的Doc2Vec对语料库(CV和作业描述)进行分类,然后使用两个向量之间的余弦相似性是最简单的工作流程。它在形式和文字内容上不相似但在上下文和语义上相似的文档上比其他文档更好,因此仅仅关键字在这里没有多大帮助。

然后,您可以尝试在匹配的CV& JD对的语料库中训练CNN,如果可用,则使用它来标记简历/简历。

基本上我会在同样的任务中尝试这些方法,请参阅https://datascience.stackexchange.com/questions/22421/is-there-an-algorithm-or-nn-to-match-two-documents-basically-not-closely-simila