位置:中国供求网 > 化工能源 > 正文 >

一文带你了解搜索功能设计

2020年05月22日 16:51来源:未知手机版

radio,撸图吧,岐山县邮编

从PC时代到移动互联网时代,搜索满足了人们从海量信息中找到有价值信息的需求,进一步提高了用户的信息消费能力和获取信息效率。笔者曾做过一个比较简单的APP站内搜索功能优化,查阅了许多搜索功能设计资料。

于是乎便有了这篇搜索文章,我将从搜索最主要的三步理解用户搜索意图、召回内容、排序内容来给大家讲讲搜索功能设计的那些事。

大纲如下:

搜索是为了解决什么 如何设计站内搜索 理解用户搜索意图 query分析 一、搜索是为了解决什么

搜索引擎在PC时代崛起,谷歌、百度通过输入框和网页搜索结果来满足网民的信息消费,帮助网民打破各种信息不对称。谷歌、百度的搜索信息是相对开放的,用户能在上面搜到大部分的内容。

随着移动互联网的普及,许多APP开始构建自己的内容生态,搭建自身的站内搜索。谷歌、百度等搜索引擎时从搜索到内容,这些站内搜索是从内容到搜索,基于自家的内容生态来搭建搜索功能。

对于用户来说,用户搜索内容可分为几种场景:

有明确想搜的内容并记得所有关键词 有明确想搜的内容但记不清所有关键词 无明确想搜的内容

所以对于用户来说,搜索是为了解决用户明确或者不明确的搜索需求,让用户能够搜到想搜的内容。从更深一层来说,搜索提高了用户获取信息、内容的效率。

二、如何设计站内搜索

站内搜索对于搜索系统来说,整个流程可以分为三步,分别是:

理解用户搜索意图

整个流程里,第一步理解用户搜索意图会涉及到query预处理、分词技术等技术,第二步召回相关内容一般用到的是索引倒序的技术,召回有相关性的内容,这里会涉及到倒排索引和匹配度问题。第三步排序内容目前常见的有排序策略、机器学习。

产品经理需要做的主要是画搜索原型图和制定召回相关性策略和排序策略,其他的主要是靠技术或者第三方去实现。

三、理解用户搜索意图

用户搜索是整个搜索系统的上游,只有理解了用户的搜索意图,搜索展现的结果才会是用户想要的。如果对搜索意图理解错了,不论我们的召回率和排序策略多么牛,对用户来说这次的搜索其实是失败的。

那么怎么理解用户的搜索意图呢?用户输入的是关键词,所以我们来分析下怎么理解关键词。(ps:这篇文章只讨论搜索方式为输入文字的方式,不讨论语音输入、图片、视频输入等方式)

3.1 query预处理

3.1.1 拼音转文字

当用户在搜索框中输入拼音时,可以识别出文字。这种搜索场景还是蛮常见的,比如用户想在微信读书中搜索“俞军产品方法论”,那么当用户在搜索框中输入”yujunchnapinfangfalun”时能理解出“俞军产品方法论”,并给出搜索结果。

3.1.2 繁体转简体

对于一些有繁体输入习惯的用户,需要对用户输入的繁体字进行转化,可以识别出其简体。具体方案是通过词表将繁体query转化为简体query,后续系统在将简体query进行召回。

3.1.3 自动纠错

当用户在搜索框中输入“于军”,其实用户想搜的是“俞军”。系统可以对这个query进行判断,判断有没有在索引库命中文档,如果没有,则需要对其进行预处理的自动纠错。

自动纠错可以通过维护纠错表的方式实现。在纠错表里通过映射原词给纠错后的词,从而实现query改写。

目前自动纠错在客户端显示上也有几种不同的形式:

强纠错:直接改写query,给用户的提示一般为“已显示XXX的搜索结果” 中纠错:直接改写query,给用户的提示一般为“已显示XXX的搜索结果,仍然搜索:X原词XX” 弱纠错:不改写query,只是给用户提示“你是不是要搜索:XXX”

本文地址:http://www.zgcg360.com/huagongnenyuan/696071.html 转载请注明出处!

今日热点资讯