分层数据的语义类别预测

时间:2014-10-23 17:30:24

标签: mongodb search machine-learning classification

我正在构建一个为少数行业的企业提供服务的网络应用程序。 我想构建一个只询问

的搜索框

您从事什么类型的工作?

| ____搜索框_____ |

用户可以输入任何文本,并根据关键字,我想建议一些类别。理想情况下,我希望返回5个带有相关置信度的结果,并让他们通过复选框选择。

例如,如果

关键字:清理

结果:

  • 0:[清洁房屋,209]
  • 1:[租赁结束,589]
  • 2:[办公室清洁,210]
  • 3:[户外清洁,202]
  • 4:[General Gardening,161]

关键字:自动轮

结果:

  • 0:[汽车喷漆,533]
  • 1:[Panel Beating,104]
  • 2:[汽车清洁&细节,96]
  • 3:[Car Mechanics,101]
  • 4:[自动门&盖茨,185]

右边的数字是置信度。

请注意,我经常使用同义词作为关键字。鉴于我在 MongoDB 文档中的类别如下所示:

{
  'cleaning' : {
   'Outdoor Cleaning' : [ 'Outdoor', 'Yard', 'Cleaning', 'Field' ],
   'Office Cleaning' : ['Indoor', 'Office', 'Business', 'Corporate', Cleaning', 'Scrubbing']
  },
  'auto': {
    'mechanic' : ['car', '...']
  }
}

如何返回所需的结果? 我训练了一个朴素贝叶斯分类器,但只分类成一个类别。 我现在正在研究 Term Frequency-Inverse Document Frequency(tf-idf)以获得一组排名结果,但我有点担心我的数据模型不适合算法。

我是否必须包含所有可能的同义词来训练类别?我应该等到现场手动训练基于真实关键词搜索的类别吗?

如果有人知道更好的方法来构建这些信息,我仍然可以更改我的数据模型......如果有人遇到过这样的问题,那么任何见解都会受到高度赞赏。

谢谢

0 个答案:

没有答案