前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >干货 | 京东JIMI用户未来意图预测技术揭秘

干货 | 京东JIMI用户未来意图预测技术揭秘

作者头像
携程技术
发布2018-03-16 14:28:29
2.3K0
发布2018-03-16 14:28:29
举报
文章被收录于专栏:携程技术携程技术

作者简介

邹波,京东JIMI核心算法架构师,致力于NLP领域和深度学习方向。目前负责用户未来意图预测,智能分流,会话结束预测等项目,极大的提高了客服工作效率,同时也降低人力成本,提升了客户体验。

随着近年来人工智能技术的发展,Chatbot聊天机器人越来越普及,随之而来的用户访问不断增多,如何让Chatbot系统在解决用户问题的同时简化用户操作,优化用户与机器人聊天过程中的体验成为当前难点。

目前的智能问答机器人不仅需要实现智能人机交互(文本、语音等)的全渠道多媒体整合应用,而且需要各领域内大数据、深度语义理解等前沿技术上的研究与积累,让机器人去回答用户的同时预测用户接下来的意图,并做对应的个性化处理,因此针对Chatbot的用户未来意图预测技术应运而生。

1、京东JIMI及发展现状

1.1 关于JIMI

京东JIMI是由京东自主研发的Chatbot,通过自然语言处理、深度神经网络、机器学习等技术,能完成全天候、无限量的用户咨询,涵盖售前咨询、售后服务、闲聊陪伴等环节。

自2012年诞生至今,已累计服务数亿用户,覆盖京东10亿+的商品,应答准确率90%以上,用户满意度高达80%以上,每月为京东节省上千万人力成本。

1.2 现有技术方案

JIMI现有技术架构主要由以下模块组成,如图1所示:

(1)算法:包括纠错、分词、实体识别、知识图谱、词法分析等模块,根据用户输入的问题,结合领域术语词库和其他语法、语义方面的资源,在解决歧义、指代关系等问题后,使用深度神经网络技术,提供用户意图的精准理解。

(2)工程:根据业务处理逻辑,判断该问题的答案处理流程,例如答案是闲聊或业务,是否需要用户登录等。

(3)数据:通过对用户原始数据的挖掘、清洗和聚合等,实现对客服领域知识的储备,并对现有数据做可视化处理。

图1:Chatbot系统架构图

1.3 现有方案的缺点

传统Chatbot只能根据用户的当前问题,给出对应的答案,类似于一问一答的形式。对于用户在聊天过程中接下来的意图,没有预测功能。如此以来用户每次都必须完整输入自己想问的问题,才能获得相关答案。这种方式比较费时,用户体验也不是特别好。

本文接下来会介绍一种基于用户未来意图预测的方法,对用户的聊天过程做实时分析,根据当前及历史问题,智能预测用户接下来的意图,提升用户的聊天体验。

2、预测未来意图技术方案

2.1 应用场景

基于现有技术存在的问题和缺陷,我们提出了一种智能预测用户下一个意图的方法。该方法基于用户目前订单、购物车状态等账号信息以及历史聊天内容,智能预测用户接下来最可能问的问题。它主要会在以下两种场景下使用:

1)用户开始咨询前预测

如何在用户进入JIMI后还未咨询前,提前预测用户可能会问到的问题,并将其直接展示给用户供用户点选,提升用户体验,需要解决两个技术问题,一是如何获取用户可能会问的标准问题,二是如何做到个性化地对不同的用户推送不同的问题。

在具体实现上,采用人工去整理就存在人力成本高、问题更新不及时的情况,因此我们采用无监督的聚类方式得到用户可能问的标准问题,再通过线上试验,先随机出这些问题,收集用户点击作为分类标签,最后用分类的思想去解决它。

具体技术实现如下,如图2所示,首先按热门SKU的维度收集问题,包括用户在JIMI/咚咚发送的信息,以及单品页购买中咨询的问题。这些原始问题不能直接作为标准问题进行使用,所以需要人工进行一次过滤,由于数据量非常庞大,这里采用Logistic Regression训练一个语料过滤模型,用于数据清洗。接着对这些问题做切词,word2vec训练词向量,进而得到句子向量,最终用K-means聚类的方法,找到最大的前20个Cluster,选出现次数最多的问题作为标准问题。

图2:用户进入咨询前预测

系统上线后,先随机出这些问题,然后根据用户点击行为确定样本的标签,再收集用户的订单、服务单、实时浏览数据、以及画像数据作为样本,最终训练一个用于用户开始咨询前的未来意图预测分类模型。当用户再来咨询时,根据分类模型给出用户最可能问到的前3个问题,供其点选。

2)用户咨询过程中实时预测

对于用户咨询过程中的未来意图预测,如图3所示,系统会在用户说每句话时,实时预测用户下一意图,并将预测的TOP5用户意图展示在前端界面。如果用户觉得预测准确,可直接点击该问题获取答案,不用自己手动输入问题,从而提升用户体验。

图3:用户咨询过程中实时意图预测

2.2 未来意图预测流程

用户咨询过程中未来意图预测流程包括预处理、模型预测,数据记录三大模块。如图4所示:

图4:用户咨询过程中未来意图预测模块内部流程图

各模块的作用如下:

预处理:预处理模块主要做一些必要入参的判断,比如判断输入的用户ask是否合法,以及对于用户提问小于2句的情况,不做未来意图预测处理。用户提问大于2句才会继续往下走到模型预测模块。

模型预测:通过模型计算用户下一个可能的问题概率,如果预测值低于当前设置的阀值则不做推送,高于阈值才会继续往下走到数据记录模块。

数据记录:负责系统日志记录,比如记录下每句话具体推送了哪些分类,方便系统上线后模型调优。

接下来,详细介绍模型预测子模块。该模块通过模型分类的方法,将用户问题对应到不同分类,并实时计算用户下一问题的概率。具体技术方案如下:

1)样本构造

首先,收集用户和客服的聊天日志信息,我们可以根据这些海量信息,发现用户当前问题与下一个问题的联系。

比如用户进入咨询首先发送“你好”,然后说“这个商品有货吗?”,紧接着问“有优惠吗?”,最后问“现在下单,什么时候能送到?”。这时我们构造样本就需要把前三句话拼在一起,构造出来这样的样本“你好这个商品有货吗?有优惠吗?”

2)标签构造

上面这个样本的标签就是第四句话“现在下单,什么时候能送到?”所对应的分类。

如何确定分类?用人工审核的方式,将所有用户的问题都看一遍,并将每个问题对应到一个具体的分类。比如用户问“我的商品有货吗?”或者“还有货吗?”都会被分到“是否有货”这个分类,标记“分类1”,以此类推。

3)标签选择

推送给用户的问题,最好是用户常问的问题,而不是一些长尾问题,这样可以提升推送的准确率。

统计最近1年的聊天日志,将所有用户每句话对应到一个分类标签,计算出TOP10的分类标签,主动推送的分类就限定在这TOP10之中。最终构造出的样本和标签信息,如图5。

图5:构造样本和标签

样本构造的总体思路:

  • 从最近1年的聊天日志取出用户原始问题
  • 将用户的问题分类,每个用户问题对应一个类别标签
  • 每通会话包含N个用户问题,其中前N-1个问题拼起来作为样本,第N个问题的分类,作为该样本标签
  • 最终取TOP10的标签分类,保证预测结果能够覆盖用户的高频问题

4)模型训练:

深度学习CNN模型,可用于求解一个分类问题,将用户的问题映射到一个具体的分类。最终在算法选型上,我们采用深度学习CNN模型,其中模型参数:

  • 词向量采用100维
  • 每个样本限定30个字以内,超出30截断,不足30补充随机向量
  • 单层CNN网络,第一层卷积核大小3*50

5)模型效果

最终模型效果的统计,我们通过建立BaseLine与模型对比的方式来度量。BaseLine的建立思路如下:针对当前分类X,基于历史数据统计,给出最高频的下一分类Y

模型

点击率

准确率

Baseline

52.4%

62.4%

LSTM

68.7%

75.5%

LSTM + Attention

71.2%

78.2%

3、结语

经线上验证,用户未来意图预测技术已经能优化用户咨询效率和咨询体验,让机器人不仅“懂你所问”,更“知你所想”。后续基于不断优化提高的自然语言理解能力和深度学习,对用户未来意图预测会越来越准确,让用户体验更智能的机器人。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-10-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 携程技术中心 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档