一、为什么要做意图识别
意图识别算是query理解中比较上有的位置,对query进行意图识别,是指分析用户的核心搜索需求,例如是要找电影、找小说,还会想问百科知识,还有查快递、市政办公等需求,这些需求在底层的检索策略会有很大的不同,错误的识别几乎可以确定找不到能满足用户需求的内容,导致产生非常差的用户体验,因此精准的意图识别非常重要。
来举一个例子,用户输入唐人街探案,一般是电影、网剧、网评之类的需求,退一步可能是比较弱的新闻、明星之类的意图,而肯定不是汽车、体育、快递之类的意图。而在底层的检索策略,只有我们识别到了电影意图,我们才会去电影的数据库里面检索,里面就不会有汽车、体育、快递,换言之,没有识别到电影意图,压根就不可能出现唐人街探案的电影的卡片甚至咨询,而如果我们错误的识别到了汽车,那我们就只会在这个意图下出汽车的相关内容了。可想而知,错误的意图识别会带来多大的负面影响。
意图识别的具体内容
其实从上面的描述可以看到,意图识别是对query进行意图的分类,因此总体思路上采用文本分类的方式进行,这个相信大家能想的明白。而在架构上,也需要对意图识别的逻辑进行设计。
意图识别的架构设计
考虑搜索场景的下面这些原因,进行意图识别的架构设计:
- 用户输入内容模糊或者涵盖内容广,因此经常会出现多意图,如“苹果”(手机、水果)、“长城”(景点、电影、汽车)、口罩(医疗、购物)。
- 多个意图不可能同时开发上线,必须一个一个开发迭代。
- 开发一个意图时要求独立,尽可能不影响其他意图的计算。
- 虽然每个意图独立,但是要求意图之间尽可能可比(例如意图强弱打分),这个信息需要传导到排序层。
- 每一个意图的识别算法可能会不同,需要分别设计。
当然上面的所有很难兼顾,我们一般根据搜索系统

最低0.47元/天 解锁文章
787

被折叠的 条评论
为什么被折叠?



