热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

某点评网搜索策略的一些理解

本文介绍了某点评网的搜索策略,包括名称和地址的匹配策略,模糊匹配的方法以及不同口音和拼音的近似发音。同时提供了一些例子来说明这些策略的应用。

1. 查询串为 纯汉字,查询出被拆分为单个字,然后使用全文检索,尽可能找出包含查询串的 POI,查找范围为所有POI拥有的文本信息。


例如搜索 “顺轩”,返回结果为:http://www.dianping.com/search/keyword/1/0_顺轩而搜索“轩顺”,返回结果为:http://www.dianping.com/search/keyword/1/0_轩顺两个个搜索返回的结果是一致的,可得使用的匹配步骤比较简单;返回列表的排序规则可以总结为两条:a. POI中查询出是否按照查询串中的顺序连续出现b. 名称包含优先于地址包含c. 匹配发生在 名称,标签,地址 等2. 查询串为 纯拼音,不对查询串(拼音串)进行任何拆分
例子1,shuguanghttp://www.dianping.com/search/keyword/1/0_shuguang例子2,shuguanhttp://www.dianping.com/search/keyword/1/0_shuguan两个搜索返回的结果基本一致,并且同时出现提醒,你要找的是不是曙光书馆
例子3,caguanhttp://www.dianping.com/search/keyword/1/0_caguan你要找的是不是茶馆
例子4,canguan(餐馆)http://www.dianping.com/search/keyword/1/0_canguan上海站全部商户中,没有找到"canguan"(0)
例子5,cacantinghttp://www.dianping.com/search/keyword/1/0_cacanting你要找的是不是查餐厅茶餐厅例子6,xijiaobailian(西郊百联)http://www.dianping.com/search/keyword/1/0_xijiaobailian你要找的是不是西郊百联例子7,xijiaobalianhttp://www.dianping.com/search/keyword/1/0_xijiaobalian你要找的是不是西郊百联
例子8,xijiaoblianhttp://www.dianping.com/search/keyword/1/0_xijiaoblian上海站全部商户中,没有找到"xijiaoblian"(0)
例子由上面的例子,可以大概推测如下:a. 内部有一个词典,保存了 词和拼音 映射关系,b. 先使用 拼音进行匹配搜索,匹配策略可能是:b1. 精准匹配b2. 包含匹配b3. 模糊匹配(最小编辑距离 <某个阙值,比如2,参考例子6,7,8,读者可自行尝试其他组合)b4. 没有找到任何匹配,即返回空,参考例子4.(canguang竟然没有,很让人费解)c. 利用拼音映射到的汉字,回归到第一条中的 纯汉字 搜索d. 匹配发生在 名称,标签,地址 等 另外,例子9,jiaodahttp://www.dianping.com/search/keyword/1/0_jiaoda你要找的是不是交大
例子10,jiadahttp://www.dianping.com/search/keyword/1/0_jiada你要找的是不是佳达例子11,jiaodhttp://www.dianping.com/search/keyword/1/0_jiaod上海站全部商户中,没有找到"jiaod"(0)
例子12,shangdahttp://www.dianping.com/search/keyword/1/0_shangda你要找的是不是散打上大杉达例子13,shangdhttp://www.dianping.com/search/keyword/1/0_shangd上海站全部商户中,没有找到"shangd"(0)
例子14,sangdahttp://www.dianping.com/search/keyword/1/0_sangda你要找的是不是散打上大杉达例子15,suguanghttp://www.dianping.com/search/keyword/1/0_suguang你要找的是不是曙光书馆由上面的例子可以推测,b3 的描述可能是不正确的(例子9,11不符合 最小编辑距离匹配),不能完全断定 -- 查询使用了 最小编辑距离匹配,应该还加入了 口音 的考虑(对比 例子15 与前面的例子1,2):<1> 不同的口音,相同的拼音,存在不同的发音,考虑了同一个拼音,近似发音的匹配<2> 不同的口音,不同的拼音,存在近似的发音,后续有新发现,继续补充3. 查询串为 汉字+拼音例子16,属guanghttp://www.dianping.com/search/keyword/1/0_属guang你要找的是不是曙光书馆
例子25,素guanghttp://www.dianping.com/search/keyword/1/0_素guang你要找的是不是曙光书馆
例子17,属guanhttp://www.dianping.com/search/keyword/1/0_属guan你要找的是不是曙光书馆
例子18,shu光http://www.dianping.com/search/keyword/1/0_shu光你要找的是不是曙光书馆
例子19,shu广http://www.dianping.com/search/keyword/1/0_shu广搜索策略 的一些理解" title="某点评网 搜索策略 的一些理解" src="https://www.#.com/go/dW5kZWZpbmVk" referrerpolicy="no-referrer">某点评网 <wbr>搜索策略 <wbr>的一些理解

例子20,shang大http://www.dianping.com/search/keyword/1/0_shang大某点评网 <wbr>搜索策略 <wbr>的一些理解

例子21,shang大leihttp://www.dianping.com/search/keyword/1/0_shang大lei某点评网 <wbr>搜索策略 <wbr>的一些理解

例子22,shanglei大http://www.dianping.com/search/keyword/1/0_shanglei大上海站全部商户中,没有找到"shanglei大"(0
例子23,上dahttp://www.dianping.com/search/keyword/1/0_上da某点评网 <wbr>搜索策略 <wbr>的一些理解

例子24,西jiaobailianhttp://www.dianping.com/search/keyword/1/0_西jiaobailian你要找的是不是西郊百联
a. 首先不区分 拼音 汉字,进行 全文检索,找到包含整个串的POI,不考虑 查找单元 的顺序a1. 连续的拼音视为一个查找单元,单个汉子视为查找单元,参考例子20,21,22a2. 查找不到包含所有 查找单元 的 POI系统,转到 bb. 汉字映射为拼音,转行为 第二条 纯拼音 搜索,注意 例子17,25



推荐阅读
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文介绍了一些好用的搜索引擎的替代品,包括网盘搜索工具、百度网盘搜索引擎等。同时还介绍了一些笑话大全、GIF笑话图片、动态图等资源的搜索引擎。此外,还推荐了一些迅雷快传搜索和360云盘资源搜索的网盘搜索引擎。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • MACElasticsearch安装步骤及验证方法
    本文介绍了MACElasticsearch的安装步骤,包括下载ZIP文件、解压到安装目录、启动服务,并提供了验证启动是否成功的方法。同时,还介绍了安装elasticsearch-head插件的方法,以便于进行查询操作。 ... [详细]
  • 本文介绍了游标的使用方法,并以一个水果供应商数据库为例进行了说明。首先创建了一个名为fruits的表,包含了水果的id、供应商id、名称和价格等字段。然后使用游标查询了水果的名称和价格,并将结果输出。最后对游标进行了关闭操作。通过本文可以了解到游标在数据库操作中的应用。 ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • ALTERTABLE通过更改、添加、除去列和约束,或者通过启用或禁用约束和触发器来更改表的定义。语法ALTERTABLEtable{[ALTERCOLUMNcolu ... [详细]
author-avatar
小么么和
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有