我已经阅读了不少文章,介绍了Facebook如何实现图谱搜索的背景信息。所有这些似乎都只是浏览了他们正在使用的解析器的实际实现细节。
从该页面开始:
我们结合了各种解析技术来构建子字符串解析器: 假设一个用户输入,例如,"朋友纽约"我们有 定义了我们所有潜在页面标题的综合集 系统可以处理。然后我们的解析器可以生成完全图形 搜索包含用户输入的标题,包括类似的内容 "住在纽约的朋友"和访问过New的朋友 纽约"如果我们能找到一种方法来适当地对那些建议进行排名 图搜索输出标题的标题,我们将有一个良好的开端。
我真的很想学习用来解决这个问题的方法。使用什么算法/技术来编写这样的系统?
任何链接都会非常感激。
答案 0 :(得分:1)
我正在考虑实施类似的东西......想在这里询问问题,并发现这已经问过......
以下是我一直在考虑的问题 -
假设facebook搜索引擎“知道”底层数据存储(复杂图形)。所以搜索引擎理解“朋友”,“亲戚”等关键词以及其他类似关系,并不会将它们视为英语中的琐碎词语。
在这种情况下,一个好主意可能是将用户输入(使用客户端javascript)解析为JSON并将其发送到搜索引擎..一些好处..解析可以完成在客户端,通过不发送不需要的数据来节省网络带宽,解析输入的服务器端处理因为JSON更好.. ..
让我们调用这个JSON fbJSON ..因为除了是一个JSON ..它遵循某种格式..你可以为你的格式创建一个规范..这样发送到搜索引擎的JSON必然包含一些信息..这可以让生活更轻松..就像我们有geoJSON等..
使用NLP程序将用户输入解析为fbJSON [我仍然要考虑这个]
这是我开始实施的一个广泛的方法..唯一的瓶颈是第4点。因为我对NLP没有太多经验..