我正在开发一个搜索引擎,其功能是将数据的语义考虑在内,与通常的基于关键字的索引不同。我设法使用元数据提取方法和RDF 为搜索开发了一个合理的索引,但是由于搜索查询非常短,我在搜索查询本身上使用这些方法有很大的困难即实际数据。任何想法如何使用类似的方法,自然语言处理等成功标记搜索查询?
谢谢!
答案 0 :(得分:1)
是的,典型查询的样本量太小,无法进行语义分析。
一种方法可能是使用“命名实体”或“主题动词对象”元组等下拉菜单来约束或扩展查询。
另一种方法是使用从元数据创建的规则来扩展简单关键字,例如,对'car'的查询可能会扩展为元组模式
(*,[drive,operate,sell],[car,automobile,vehicle])
提交前。
最后,您可以尝试使用非语义上有价值的前缀和/或后缀来扩展查询,以使查询大小足以触发OpenCalais的识别器。
类似'用户在她的查询中指定了以下术语:一,二,三。'。
一旦返回结果,过滤掉所有仅匹配添加的前缀/后缀的结果。
只是一些简单的想法。
答案 1 :(得分:1)
您需要构建语义树。它将基于关键字的组合。
例如,汽车 - >车辆 - >汽车这种关系技术方面的汽车。旅行 -
租用/租赁 - >车辆 - >汽车这是与旅行和租车相关的东西。 在这种情况下,MongoDB会对您有所帮助。