同义词是否用不同页面获取排名|搜索引擎 QUERY处理简介

同义词是否用不同页面获取排名|搜索引擎 QUERY处理简介

前几天朋友问我同义词怎么处理,要不要做成不同页面来获取排名,给了这2个词: personalized mug 和。

同义词是否用不同页面获取排名|搜索引擎 QUERY处理简介

我截图做了标注给他,回复: Google 现在已经能识别这些同义词 。所以当搜索 personalized mug 和时,搜索结果的重复度很高(准确来讲,网页召回阶段是相同,排名阶段有少量差异)。而且上图看见,搜索 personalized 时,也会飘红,所以 建议是做一个页面就好了 (即2个同义词用一个页面来获取排名)。

Query 处理简介

以上的情况主要是在搜索引擎的 Query 处理阶段。这是用户输入关键词后的第一个阶段。以 Google 搜索引擎举例,当 Google 拿到用户的 Query 词(即搜索词)之后,并不是直接去索引库中查找,而是 对 Query 词做了一些处理,比如规范化、分词、扩展和分析等 可以让搜索引擎去除干扰,更理解用户的查询,尽可能地准确地找到用户所需的信息。

主要有以下几个部分:

另外为了找到更全面的信息,还会做一些扩展,比如:

以上环节完成之后,就会形成一个清晰又丰富的词组,可以去索引库中找到更多更准确的网页了。

在 AI 时期,Query 处理对搜索引擎会更重要 ,因为 Query 更长,更需要了解用户的意图。最后,因为并不是专业的搜索引擎开发人员,所以有错误之处还请多指教。

过去的今天:


关于搜索引擎架构理解

1、搜索引擎流程 如图,整个搜索引擎逻辑可以理解成两条线,上面是需求理解,下面是资源管理,然后合理的让资源以符合用户需求的方式给出,就是搜索引擎做的事情。 所以,总结为以下3件事:需求理解、资源管理、匹配逻辑2、检索关系图 各个模块的工作 master(M1/M2)是大脑,控制中心,负责进行全局调控,外加整合处理; QS负责用户的需求理解分析 GS负责对页面整体排序 RS是对结果的包装和美化 各个模块的具体工作: M1: 连接Master1(Gs),接收Master2-Gs排序后返回的结果 连接LBS、外部整合、KS 等服务 负责大库数据 与 LBS、外部整合、KS的混排工作 负责整体结构化结果聚合工作 QS热度 + 结构化聚合策略 + Gs结果信息 = 共同指导混排 【整合结果层:策略来源QS,决定者M1】 QS: 需求分析,可以提供query分类、核心词、同义词、实体词等信息 M2: 连接各类worker-IS检索集群 通过QS、GS策略 执行 检索调度 获取IS数据发送GS 进行全局排序 获取DI 【大库搜索结果层:决定者GS】 QS: Query解析、变换 Query用户需求识别 需求类别热度识别(排序参照) QT 含 内部、外部整合、LBS query类别召回 Query实体词识别 连接纠错、新闻词server 识别纠错词、新闻词 GS: 从Master2获取IS检索结果 进行全局结果排序 (暂不包括 外部整合与LBS排序) IS: 根据Query特征对索引进行检索,结合网页特征及Query特征,基本确定相关网页集合3、 网页结果构成 可以从query的理解上研究怎样找到最好的给出结果的方式(即上面说的第三件事,匹配逻辑); 也可以从搜索结果的来源上,研究怎样逐一优化,这种方式可以理解为上面说的第二件事,资源管理;4、系统架构图 检索关系图可以看成是对搜索引擎的业务的横向理解,即理解用户从输入query到结果呈现的过程是怎样的; 系统架构图可以看成是纵向理解;

有赞搜索引擎实践(算法篇)

注:转自于 有赞 在上篇文章(工程篇)中, 我们介绍了有赞搜索引擎的基本框架. 搜索引擎主要3个部件构成. 第一, hadoop集群, 用于生成大规模搜索和实时索引; 第二, ElasticSearch集群, 提供分布式搜索方案; 第三, 高级搜索集群, 用于提供商业搜索的特殊功能. 商业电商搜索由于搜索的特殊性, 独立的ElasticSearch集群是无法满足多样的算法需求的, 我们在搜索的各个部件上都有相应的算法插件, 用于构建商业电商搜索引擎的算法体系. 创建索引过程从原始数据创建倒排索引的过程. 这个过程中我们对商品(doc)进行分析, 计算商品静态分, 并对商品进行相似度计算. 商品的静态分对于提升搜索引擎质量起到至关重要的作用, 相当于网页搜索的pagerank, 想象一下如果没有pagerank算法, 网页搜索的质量会有多么差. 在电商搜索中, 最常见的问题是相似商品太多, 必须在建立索引过程中就对商品间的相似度进行预计算, 以便在检索过程中进行有效去重. 创建索引的过程如下. step 1. 计算每个doc的静态分 step 2. 计算两两doc的相似度 step 3. 根据相似度和其他信息对数据进行分库 step 4. 建立ES索引 检索过程是搜索引擎接收用户的query进行一系列处理并返回相关结果的过程. 商业搜索引擎在检索过程中需要考虑2个因素: 1) 相关性 2) 重要性. 相关性是指返回结果和输入query是否相关, 这是搜索引擎基本问题之一, 目前常用的算法有BM25和空间向量模型. 这个两个算法ElasticSearch都支持, 一般商业搜索引擎都用BM25算法. BM25算法会计算每个doc和query的相关性分, 我们使用Dscore表示. 重要性是指商品被信赖的程度, 我们应该吧最被消费之信赖的商品返回给消费者, 而不是让消费之自己鉴别. 尤其是在商品充分竞争的电商搜索, 我们必须赋予商品合理的重要性分数, 才能保证搜索结果的优质. 重要性分, 又叫做静态分, 使用Tscore表示. 搜索引擎最终的排序依据是: Score = Dscore * Tscore 即综合考虑静态分和动态分, 给用户相关且重要的商品. 检索的过程大致抽象为如下几个步骤. step 1. 对原始query进行query分析 step 2. 在as中根据query分析结果进行query重写 step 3. 在as中使用重写后的query检索es step 4. 在es查询过程中根据静态分和动态分综合排序 step 5. 在as中吧es返回的结果进行重排 step 6. 返回结果 下面几章阐述几个重点技术. 在电商搜索引擎里面商品的静态分是有网页搜索里面的pagerank同等的价值和重要性, 他们都是doc固有的和查询query无关的价值度量. pagerank通过doc之间的投票关系进行运算, 相对而言商品的静态分的因素会更多一些. 商品静态计算过程和pagerank一样需要解决如下2个问题: 1. 稳定性. pagerank可以保证一个网站不会因为简单链接堆砌可以线性提升网站的排名. 同样, 商品静态分的计算不可以让商品可以通过增加单一指标线性增加分值(比如刷单对搜索引擎的质量的影响). 2. 区分度. 在保证稳定性的基础上商品静态分要有足够的区分度可以保证同样搜索的条件下, 排在前面的商品的质量比排在后面的商品的质量高. 我们假设商品的静态分有3个决定性因素, 1.下单数, 2. 好评率 3. 发货速度 静态分我们使用Tsocre表示, Tscore可以写成如下形式: Tscore = a * f(下单数) + b * g(好评率) + c * h(发货速度) a,b,c是权重参数, 用于平衡各个指标的影响程度. f,g,h是代表函数用于把原始的指标转化成合理的度量. 首先, 我们需要寻找合理的代表函数. z-score 标准化方法这种方法非常不稳定, 假设一个奇异点是第二大的值的1000倍, 会让大部分的值都集中在0~0.01, 同样失去了归一化的目的.(图三: log-zscore归一化) 最后, 选择合适的权重 经过log-zscore归一化以后, 我们基本上吧f,g,h的表示的代表函数说明清楚. Tscore = a f(下单数) + b g(好评率) + c*h(发货速度), 下一步就是确定a,b,c的参数. 一般有两个方法: a) 专家法. 根据我们的日常经验动态调整权重参数; b) 实验法. 首先在专家的帮助下赋一个初始值, 然后改变单一变量的方法根据abtest的结果来动态调整参数. 商品标题去重在电商搜索中起到重要作用, 根据数据, 用户通过搜索页购买商品80%选择搜索的前4页. 商品标题的重复会导致重要的页面没有含金量, 极大降低了搜索的购买率. 举个例子: Title1:美味/香蕉/包邮/广东/高州/香蕉/banana//无/催熟剂/ Title2:美味/香蕉/广东/高州/香蕉//非/粉蕉/包邮/ 首先, 进行特征向量化 这里用到 bag of word 技术, 将词汇表作为空间向量的维度, 标题的每个term的词频作为这个feature的值. 以这个例子来说. 这个词汇的维度为: 美味(0), 香蕉(1), 包邮(2), 广东(3), 高州(4), banana(5),无(6), 催熟剂(7),非(8),粉蕉(9) 位置: 0,1,2,3,4,5,6,7,8,9 Title1: 1,2,1,1,1,1,1,1,0,0 Title2: 1,2,1,1,1,0,0,0,1,1 这个每个title都用一个固定长度的向量表示. 再次, 计算两两相似度 相似度一般是通过计算两个向量的距离实现的, 不失一般性, 在这里我们使用1-cosine(x,y)来表示两个向量的距离. 这是一个All Pair Similarity的问题, 即需要两两比较, 复杂度在O(n^2). 在商品量巨大的时候单机很难处理. 我们给出两种方法用于实现All Pair Similarity. 方法一: spark的矩阵运算. 方法二: map-reduce 线性方法. 这个方法参考论文Pairwise Document Similarity in Large Collections with MapReduce. 可以实现几乎线性的时间复杂度. 相对于矩阵运算在大规模(10亿以上)pair similarity 运算上面有优势. 这个方法简单的描述如下: 首先, 按照倒排索引的计算方式计算每个term到doc的映射. 比如3个doc: 转化为倒排格式, 这个需要一次mapper reduce 然后, 对于value只有一个元素的过滤掉, 对于value大于2个doc的两两组合: 最后, 对于输出进行聚合,value为重复次数和两个doc乘积开根号的比. 对于2个title1, title2, 如果X(title1, title2) > 0.7 则认为title1和title2相似, 对于相似的两个doc, 静态分大的定义为主doc, 静态分小的定义为辅doc. 主doc和辅doc分别建库. 区别于网页搜索(网页搜索直接将辅doc删除), 我们将主doc和辅doc分别建库. 每一次搜索按比例分别搜主库和辅库, 并将结果融合返回. 这样可以保证结果的多样性. 店铺去重和商品标题去重有点不同. 由于电商特定场景的需要, 不希望搜索结果一家独大, 这样会引发强烈的马太效应. 店铺去重不能使用如上的方法进行. 因为上面的方法的主要依据是文本相似, 在结果都相关的前提下, 进行适当的取舍. 但是店铺去重不是这样的特性. 设想一下, 如果我们根据店铺是否相同, 把同一店铺的商品分到主库和从库中, 如下图所示. A和B代表不同的店铺. 在搜索香蕉的时候, 的确可以控制A店铺结果的数量, 但是在搜索梨的时候就错误的吧B店铺的梨排在前面了(假设A:梨比B:梨静态分高).搜索的过程每个桶平均分摊搜索任务的25%, 并根据静态分合并成一页的结果. 这样同一保证结果的相对顺序, 又达到了店铺去重的目的. 如上图所示, 搜索香蕉, 虽然A店铺有10个满足需求的结果, 但是每页搜索醉倒只有5个结果可以展示. 上面介绍了几个建立索引过程中几项技术, 检索过程中的关键技术有很多. 其中最著名的是query分析技术. 我们使用的query分析技术主要包括核心词识别, 同义词拓展, 品牌词识别等等. query分析技术大部分都是NLP研究范围, 本文就不详细阐述很多理论知识. 我们重点介绍同义词拓展技术. 这个技术一般都需要根据自己的商品和和用户日志特定训练, 无法像分词技术和品牌词识别一样有标准的库可以适用. 同义词拓展一般是通过分析用户session日志获取. 如果一个用户输入苹果手机没有得到想要的结果, 他接着输入iPhone, 我们在苹果手机和iphone之间创建一个转移关系. 基于统计, 我们可以把用户query创建一个相互联系的权重图. 用户输入query 苹果手机, 根据query分析, 苹果手机有 iphone 0.8, iphone 6 0.5 两个同义词. 0.8和0.5分别表示同义的程度. 我们想要苹果手机, iphone, iphone 6 3个query同时输入, 并且按照同义的程度对不同的query赋予不同的权重. ElasticSearch提供的BoostingQuery可以支持这个需求. 参考:query_ 原始query: 改写后的Query 其他比如核心词识别, 歧义词纠正等方法差不多, 本文不做详细阐述. 商业电商搜索算法另外两个重要技术, 一个是类目体系建立和应用,另一个是个性化技术. 这个两项技术我们还处在探索阶段. 类目体系我们主要使用机器学习的方法进行训练, 个性化主要通过用户画像进行Query改写来实现. 等我们上线有效果在与大家分享. 搜索算法是一个非常值得一个电商产品持续投入的技术. 一方面我们技术人员要有良好的技术背景, 可以借鉴很多成熟的技术, 避免重复造轮子; 另一方面, 每个产品的搜索都有自身的特点, 需要深入研究产品的特性给出合理的解决方案. 本文给出的案例都具有代表性, 灵活的运用搜索的各方面的技术. 另外, 商业搜索非常看重投入产出比, 我们也需要在众多方案中寻找捷径. 比如我们在做类目体系时候, 没有投入大量的人力资源用于标注数据, 而是通过爬虫爬取其他电商的数据进行参考, 从而节省了80%的人力资源. 由于笔者能力有限, 文中的方案不保证是问题的最优解, 如果有指正, 请联系笔者( ).

信息检索按其检索手段划分

信息检索按存储载体和检索手段方式划分,可分为:手工检索、机械检索、计算机检索三种。

检索需求:满足用户在海量信息中迅速筛选出自己感兴趣的内容。

检索外部流程:用户检索意图 → 输入的内容(关键词/图片/语音/二维码等)→ 搜索结果(屏蔽部分结果)→ 搜索结果展现(默认排序和选择排序)。

检索内部流程:用户输入query → query分析 → 索引&词库 → 内容筛选 → 结果召回→ 结果排序及展示。

Query分析主要是对用户输入的query进行信息的转译过程,将用户输入的query进行分词处理。各个搜索平台都有自己的分词模型,CRF模型是一种序列标注的机器学习方法,其关键点在于如何有足够且标注准确的训练语料库。切分后的关键词进一步用子项检索策略处理,归一化无效词,如:“的”。Query分析里面包含了很多子项策略,包括纠错,相关搜索词,query改写/变换,query类别识别,意图识别,同义词替换,Term词项构造(文本词条化,停用词过滤,词条归一化,词干提取,词形还原)等等。

在实际项目中,因为召回率和准确率相互影响,所以我们尽可能在保证一定召回率的情况下提升准确率(但如果是反作弊系统则是在保证准确率的情况下,保证召回率)。因此,我们通过统计出一组不同阀值下的准确率和召回率的关系,称之为P-R曲线。计算一个F值作为准确率和召回率的综合表征,F = 2*P*R / (P + R) 。在实际应用中也会对参数进行调整做出适应使用场景的灵活变化。

排序的合理性评估则是需要根据用户的使用场景确定是要根据热度排序还是距离排序等进行评估。评估时需制定评估标准,做到评估标准相互独立,完全穷尽的原则,便于他人理解与工作复查(检索结果排序常用GSB方式评估,需要注意Bad中是否有极端bad的结果)。

外链关键词:  诗歌我今天为你祝福  基础学历价值  康宝莱纤维粉加奶昔能廋吗  催奶培训  三修一配都是什么学历  昆卫教师学历  身材最好的美女  大学生群体分析 
本文地址: https://www.q16k.com/article/bfd4c29d05bc1b91f858.html
搜狗联盟

该站点未添加描述description...

多快好省,购物逛京东!

该站点未添加描述description...

号码认证平台

百度安全号码认证平台是基于百度安全大数据,在百度搜索结果展示专属认证,满足企业和用户的诉求,搭建信息的桥梁。

吸猫网

奇葩吸猫网是一款吸猫游戏,现在的人动不动就是猫奴,但是猫咪无论在现实中还是游戏中一直是可爱的代表,很多手机游戏都会以猫作为主题,萌萌哒的喵星人让你完全没有抵抗力.

汽车中国赣州站,赣州本地汽车网站,2014赣州最新汽车报价和优惠信息

赣州汽车网为赣州汽车用户免费提供赣州车市汽车价格汽车中国赣州站,赣州本地汽车网站,2014赣州最新汽车报价和优惠信息,赣州汽车报价信息.赣州车市降价,汽车优惠信息,赣州新车信息,赣州汽车经销商信息等最新资讯。

古诗词经典唐诗宋词和现代诗赏析

中华诗歌大全网,立志做最好的诗歌网,为您呈现不一样的诗歌体验。

网站目录

第三导航网站目录,人性化网站分类目录,打造专业化网站目录收录平台,免费提交网址,人工编辑审核,第三导航网最大化优化您的网站信息,提交各大搜索引擎收录,第三网站目录为您的网站提高流量和权重值。

641资源网

641辅助网(www.641r.com)致力于优质游戏辅助,自学教学,游戏辅助,免费下载在线听优质音乐,绿色工具的分享发布.拥有全网最新电影资源,努力为广大网友提供优质绿色的软件资源平台,精心分享,有心创造.

打印机驱动,打印机驱动下载

打印机驱动网提供打印机驱动下载,为您安装和使用打印机驱动提供帮助,解决您在打印机驱动使用过程中的困惑。

花呗

该站点未添加描述description...

石家庄文明网

该站点未添加描述description...

酒泉紫页114

该站点未添加描述description...

红柳理论在线

该站点未添加描述description...

中新搜索

该站点未添加描述description...

杭州富阳区银湖街道诚毅园艺场

本场成立于2011年,主要经营各类园林绿化常规大规格苗木,以及砼木地板。欢迎参观,选购,合作!

十张爆笑图

每天精选一批非常搞笑好玩的图片给大家,大家可以进行评论互动,喜欢就分享给好友吧.

织音博客

织音博客是一个乐享资源记忆点滴的博客,致力创造一个高质量分享平台!织音博客(ITZHIYIN.CN)