首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >下一职业推荐系统

下一职业推荐系统
EN

Data Science用户
提问于 2018-10-19 15:01:34
回答 2查看 294关注 0票数 4

我想建立一个推荐系统,以建议你的职业生涯的下一步。

关于数据集。约有50,000名拥有以下资料的用户:

  • 技能(标签、字符串值)
  • 他们所做的每一项工作(嵌入职称)
  • 他们去的每一所学校

现在,推荐系统应该告诉你职业生涯的下一步是什么,如果你需要另一项技能或学位来完成这一步。

你应该如何建立这样一个系统?(监督,无监督(推荐制度,.),.)

EN

回答 2

Data Science用户

发布于 2018-10-19 15:09:35

我曾经尝试过类似的东西。我使用了一种你不希望看到的方法,但它带来了一些令人惊讶的好结果。

我在Tensorflow中使用了神经机器翻译( NMT )模型。网上有一些越南语->英语翻译的例子.我将其更改为从“旧职务名称”转换为“新职务名称”,并在数据集上对其进行了培训。这很容易做到,您不需要修改任何代码,除非可能稍微修改模型(例如,文档的长度现在比机器翻译示例中的长度短)。

这种方法的缺点是,在使用它进行推理时,只考虑了最近的职称。但是,您可以尝试将所有以前的职务和其他数据(学校等)作为输入文本连接起来,以生成一个单独的职位作为输出,这样您就可以确保您正在利用他们的整个职业生涯。

我建议调整架构的各个方面(层数、以前使用的作业数、现成的word2vec与特定领域的受过训练的word2vec等),直到您在使用的评估指标中获得最佳性能为止。

您可以采取的另一种方法是获取每个标题的doc2vec,并训练某种RNN/LSTM来预测给定所有以前的vecs的下一个vec。然后,需要对输出进行后处理阶段,以便将输出vec转换为文本。不幸的是,我在这里不知道有什么捷径可以避免从头开始构建模型体系结构,所以这种方法需要更多的工作。

当然,解决这个问题还有其他方法,但由于没有其他人回答,我想我可以提出我的建议。

票数 2
EN

Data Science用户

发布于 2019-10-08 20:59:58

这是一个好主意,首先阐明系统的性能/准确性将如何衡量。

你说你的推荐系统的输出是“你职业生涯的下一步可以是什么”,但是如果这个系统告诉我我应该是一个面包师,你将如何衡量推荐的好程度?这是否取决于它对我下一个职业生涯的预测如何?该系统是否允许我对其建议给予反馈,并对其进行相应的评估?

一旦澄清了,你就进入了游戏。您有某种合适的函数g,您现在正在寻找一个函数f,以便g(f(x), y)最大化(或最小化,这取决于您的定义),其中x是数据,y是推荐的。

然后还有两个问题:如何对解释性数据x和目标变量y进行编码?同样,这在很大程度上取决于目标是什么,但考虑到您拥有的数据是多么的不规范化,我确实会将所有的数据转换为文本挖掘问题:您需要将数据映射到一组标记(英文单词或任何其他符号),过滤出您所知道的很少携带信息的模式(标点符号、数字等),并将单词包转换为向量(例如,使用@Tom提到的word2vec )。您可能也希望将y划分为类别,或者相反,将其扩展到一个单词向量,这样就可以比较类似的作业。

得到一个基于y的预测/估计x的模型是很容易的。您会发现有很多现成的学习者可以尝试(例如在sklearn (python)或tensorflow中)。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/39919

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档