交互搜索中的自然语言理解技术

本文涉及的产品
推荐全链路深度定制开发平台,高级版 1个月
简介: 交互搜索 交互搜索是一种新的产品形态,可以和用户对话,记住用户的购物需求和偏好,提供购物知识和建议。在搜索页面下拉就可以进入了,类似于微信的小程序的进入方式。 自然语言理解 对话和搜索的最大区别就是对话是多轮的,而搜索是单轮的。

交互搜索

交互搜索是一种新的产品形态,可以和用户对话,记住用户的购物需求和偏好,提供购物知识和建议。在搜索页面下拉就可以进入了,类似于微信的小程序的进入方式。

20180319151637.png

自然语言理解

对话和搜索的最大区别就是对话是多轮的,而搜索是单轮的。另外对话中,特别是语音输入中,会有更多的自然语言,而搜索中更多的是商品语言。因此,对话中的核心技术就是自然语言理解(NLU),在交互过程中,理解用户的购物需求和意图。

20180319114458.png

上面是用户多轮对话购物的一个例子,在用户每次输入后,Query理解模块(QU)都会识别他本次对话的意图、类目和属性,对话状态管理模块(DST)都会更新当前最终的意图、类目和属性。

  • 意图(intent):

    • 购物:我想买连衣裙
    • 知识问答:高端手机品牌有哪些,怎么除甲醛
    • 购物攻略:怎么挑连衣裙
    • 搭配:红色连衣裙搭配什么鞋子
    • 促销活动:iphone8活动
    • 产品比较:iphone8 mate10 哪个好
  • 类目(category):商品的类目或者品类。
  • 属性(attribute):类目或品类下,商品的属性(CPV)。

NLU技术点

自然语言理解的模块如下:

20180319135527.png

意图识别 很多时候,用户的意图是不明确的,比如搜“手机”,可能既想买手机,也不知道怎么挑。但是从概率上来说,“手机”这个query的主要意图还是购物。而“怎么挑手机”,则主要是找购物攻略。因此,我们可以从querylog中找出用户在输入某些短语(如“怎么挑”)的时候,是想找购物攻略的。意图识别就是把这些短语挖掘出来,对query的意图分类。

Session切分 在用户的一次购物过程中,可能会买多种类目(品类)的商品,同一个类目的商品属于一个购物需求或者一个session。因此,每次用户输入后,都要识别用户是继续说的,还是新的需求。有的时候,这种session切换会包含歧义,如先搜“手机”,再搜"苹果",这时可能是“苹果手机”,或者是“苹果水果”,这时需要根据概率出默认的语义(苹果手机),并且给用户其他的选项(苹果水果)。

类目预测 如果session切分是正确的,类目预测就会比较容易了。不过,多轮的时候,用户的需求更复杂,对类目预测的要求也更高。当然,如果session切分错了,类目预测也会出错。由于session切分和类目预测都是对类目需求的理解,这两个任务之间有很多共同点,所以我们也在考虑一起优化。

属性填充Slot filling 不同的叶子类目有不同的属性集合,淘宝的上万个叶子类目中,也有上万个属性(Slot)。高频的属性值可以通过知识图谱中的CPV来直接匹配,但中低频的属性值则需要用到更多的信息。很多属性值有不同的说法,比如:iphone8plus、iphone8p、8plus、8p,这4个词都是指"型号:iphone8plus"。还有很多属性值并不在CPV中,比如“3到4岁”的奶粉。这些都需要识别到某一个CPV属性,或者一个文本属性,或者是没有意义的词。

对话状态管理State Tracking 这里主要是进行属性值的追加或者替换,比如先搜“only连衣裙”,再搜“zara”,这时的状态是“zara连衣裙”。更复杂的是文本属性的替换,比如先搜“便宜的手机”,再搜“贵的”,这时的状态是“贵的手机”。

State Tracking之后,用户对话的语义理解就完成了,会输出表示当前搜索语义的“标准Query”和tagging的结果,给后续的对话策略、排序等模块使用。

后记

交互搜索中的自然语言理解就给大家简单介绍到这里,真正想要理解自然语言的语义,任重而道远。举几个语音搜索中的例子,作为未来的目标,“1.5米宽儿童上下床带衣柜”,“我要夜萝莉精灵梦中的萝莉公主最好便宜的”,“必背小孩子玩的玩具”。

目录
相关文章
|
3天前
|
自然语言处理
举例说明自然语言处理(NLP)技术
举例说明自然语言处理(NLP)技术
10 0
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
springboot基于人工智能和自然语言理解技术的医院智能导医系统源码
智能导诊系统可为患者提供线上挂号智能辅助服务,患者根据提示手动输入自己的基本症状,通过智能对话方式,该系统会依据大数据一步步帮助患者“诊断”,并最终推荐就医的科室和相关专家。患者可自主选择,实现“一键挂号”。这一模式将精确的导诊服务前置,从源头上让医疗服务更高效。
22 2
|
2月前
|
机器学习/深度学习 自然语言处理 数据可视化
NLP:预测新闻类别 - 自然语言处理中嵌入技术
NLP:预测新闻类别 - 自然语言处理中嵌入技术
50 0
|
2月前
|
人工智能 自然语言处理 语音技术
举例说明自然语言处理(NLP)技术
举例说明自然语言处理(NLP)技术
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
放射学中的自然语言处理技术综述
放射学中的自然语言处理技术综述
46 0
|
5月前
|
人工智能 自然语言处理 机器人
智能电话机器人核心技术:自然语言处理
什么是自然语言处理? 自然语言处理是计算机科学领域与人工智能领域中的一个重要方向.它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法.自然语言处理是一门融语言学、计算机科学、数学于一体的科学.因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别. 自然语言处理并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统.因而它是计算机科学的一部分. 自然语言处理(NLP)是计算机科学,人工智能,语言学关注计算机和人类(自然)语言之间的相互作用的领域.
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
将强化学习引入NLP:原理、技术和代码实现
将强化学习引入NLP:原理、技术和代码实现
175 0
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
自然语言生成技术介绍与应用
自然语言生成技术介绍与应用
62 0
|
4月前
|
机器学习/深度学习 存储 人工智能
一文综述:自然语言处理技术NLP
一文综述:自然语言处理技术NLP
167 0
一文综述:自然语言处理技术NLP
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习技术在自然语言处理中的应用与思考
【2月更文挑战第3天】 传统的自然语言处理技术在处理复杂语义和语法问题时存在诸多限制,而深度学习技术的崛起为解决这一难题提供了新的可能性。本文将探讨深度学习技术在自然语言处理领域的应用现状及未来发展趋势,以及对技术发展的思考和展望。

相关产品

  • 智能推荐 AIRec
  • 智能开放搜索 OpenSearch