具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书一个或多个实施例。但是本说明书一个或多个实施例能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书一个或多个实施例内涵的情况下做类似推广,因此本说明书一个或多个实施例不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在本说明书一个或多个实施例中,提供了一种确定突发问题的方法及装置、计算设备和计算机存储介质,在下面的实施例中逐一进行详细说明。
首先,对于本说明书一个或多个实施例中涉及的术语进行说明。
标准问题:(简称标问)指同一类的用户问题集合,用一个适合对外展示的标题展示,可以用一个或多个答案解决用户问题。
标准问句:指同一类用户问句,聚集在同一个标准问题下,问句来源于各种渠道获取的真实的问法。
突发问题:指某一个时间段内访问量突发翻倍增长的问题或某个时间段内新出现且访问量较高的问题。
参考前述定义,问题和问句的含义并不相同,多个问句可以聚集在同一个问题下。例如,用户的问句可以为“怎样支付”、“怎样付钱”、“支付流程是什么”,均可以聚集在“支付流程”的问题下。
图1为本说明书一个或多个实施例提供的确定突发问题的方法所应用的***架构的示意图。参见图1,客户端10指的是用户终端,例如包括手机、笔记本、智能手表等移动设备,台式计算机或电脑等台式设备。服务器端20指的是网站或应用程序的网络侧服务器,可以为移动式或静止式的服务器。服务器端20与客户端10通过网络30连接。客户端10发起提问问句,服务器端20通过网络30接收提问问句并返回答案至客户端10。服务器端20内设置有问句历史库21和聚类模型22。
在服务器端20获取用户的访问量大于第一阈值的提问问句的情况下,服务器端20将提问问句与问句历史库21进行匹配,得到筛选问句集;然后服务器20将提问问句与筛选问句集中的问句分别进行相似度计算,若相似度小于第二阈值,则聚类模型22根据提问问句生成突发问题;若相似度大于等于第二阈值且用户的访问量大于第三阈值,则服务器端20根据提问问句在预存的标准问题库中查找对应的标准问题,并确定该标准问题为突发问题。
其中,第一阈值、第二阈值和第三阈值可以自行设置,第三阈值要大于第一阈值。例如设置第一阈值为10万条,第三阈值为50万条。
另外,提问问句为在各个渠道中用户不断地提问产生的问句。渠道可以包括多种,例如机器服务渠道、人工服务渠道等。问句历史库21中的问句时间可以设置,例如可以设置为最近15天产生的问句。
在本说明书的一个具体使用场景中,最近一段时间内,用户提到的大于第一阈值的提问问句包括:“购物怎样操作”和“退货怎样操作”。服务器分别将上述问句与问句历史库进行匹配,得到筛选问句集。
服务器分别将提问问句与筛选问句集中的问句进行相似度计算,得到“购物怎样操作”的提问问句与筛选问句集中的问句的相似度大于第二阈值。服务器查看该提问问句的用户访问量是否大于第三阈值,若是,则根据该提问问句在预存的标准问题库中查找到对应的标准问题“购物流程”,并确定该标准问题“购物流程”为突发问题。
服务器得到“退货怎样操作”的提问问句与筛选问句集中的问句的相似度小于第二阈值,则通过聚类模型将该提问问句生成突发问题“退货流程”。。
本说明书的一个实施例中,公开了一种确定突发问题的方法,参见图2,包括步骤202~210:
202、获取用户的访问量大于第一阈值的提问问句。
获取用户提问问句的渠道有多个,例如机器服务渠道、人工服务渠道等。
所述机器服务渠道例如可以是在线机器人客服或者自动语音问答等。
人工服务渠道例如可以是在线人工客服或者人工接线员答复等。
其中,第一阈值可以设定,例如设置第一阈值为10万条。
204、将所述提问问句与问句历史库进行匹配,得到筛选问句集。
具体地,参见图3,步骤204包括步骤302和304:
302、将所述提问问句转换为多维向量,并将所述多维向量散列化。
其中,将多维向量散列化的方式可以为通过哈希算法计算。哈希算法有多种,例如局部敏感哈希(Locality-Sensitive Hashing,LSH)算法。
局部敏感哈希算法通过多次哈希处理,让相似项尽可能落到同一桶(bucket,hashbin)中。该算法的优点为可以减少对比次数。
304、将散列化的所述多维向量与问句历史库的问句向量进行比对,并根据比对的结果得到对应的筛选问句集。
其中,问句历史库的提问问句可以预先选取,例如选取15天内的提问问句作为问句历史库中的问句。
将散列化的所述多维向量与问句历史库的问句向量进行匹配的过程,可以为将散列化的多维向量与问句历史库中的问句向量进行比对,若问句向量与提问问句散列化的向量相同,则将问句向量对应的问句添加到筛选问句集中。
206、将所述提问问句与所述筛选问句集中的问句分别进行相似度计算,若相似度小于第二阈值,执行步骤208;若相似度大于等于第二阈值且用户的访问量大于第三阈值,执行步骤210。
由步骤206可见,提问问句与筛选问句集中的问句的相似度小于第二阈值的情况下,问句历史库中不存在或很少存在与该提问问句相似的问句。此种情况下,执行步骤208;提问问句与筛选问句集中的问句的相似度大于等于第二阈值的情况下,问句历史库中存在与提问问句相似的问句,那么继续判断该提问问句的用户访问量是否大于第三阈值,在该提问问句的用户访问量大于第三阈值的情况下,执行步骤210。
其中,第二阈值可以为预先设置,例如设置第二阈值为85%、75%、80%等。
第三阈值大于第一阈值。第三阈值可以设定,例如设置第三阈值为50万条。
208、根据所述提问问句生成突发问题。
具体地,步骤208包括:将所述提问问句输入至聚类模型进行聚类计算,并根据聚类计算的结果得到所述提问问句对应的突发问题。
所述聚类模型包括:Single-Pass单遍算法模型或K-means均值算法模型。
该聚类计算的目的为根据相似度小于第二阈值的提问问句得到突发问题。当然,聚类计算的结果得到的突发问题可以为一个,也可以为多个。
在本说明书的一个或多个实施例中,在步骤208中,还需要剔除垃圾问句,例如包含有敏感词语、侮辱词语等的问句。参见图4,本步骤208包括步骤402~410:
402、将所述提问问句与垃圾问句库中的垃圾问句进行匹配,并剔除与所述垃圾问句库相匹配的提问问句,得到清洁的提问问句。
其中,所述垃圾问句库内预存有至少一条垃圾问句。
具体地,本步骤402中,将提问问句与垃圾问句进行匹配的过程,可以是将提问问句与垃圾问句逐一进行关键词对比,若关键词相同,则将当前对比的提问问句剔除。
404、将所述清洁的提问问句输入至聚类模型进行聚类计算,得到聚类计算的结果。
406、确定聚类计算的结果是否与已有的突发问题相对应,若是,执行步骤408,若否,执行步骤410。
在实际使用的过程中,本说明书的方法会生成多于一个的突发问题,那么就需要判断进行聚类计算的结果是否与已有的突发问题相对应。
408、将与所述聚类计算的结果对应的突发问句写入所述对应的突发问题。
410、新建突发问题,并将与所述聚类计算的结果对应的突发问句写入所述新建的突发问题。
本说明书提供的确定突发问题的方法,在用户线上提交提问问句后,可以快速地确定突发问题,从而改善线上实际问题的解决情况,提升用户体验。
210、根据所述提问问句在预存的标准问题库中查找对应的标准问题,并确定该标准问题为突发问题。
具体地,根据所述提问问句在预存的标准问题库中查找对应的标准问题,包括:将所述提问问句与所述标准问句进行匹配,根据匹配到的标准问句在预存的标准问题库查找对应的标准问题。
其中,标准问题库中存储有至少一个标准问题以及每个所述标准问题对应的答案,每个标准问题对应于至少一个标准问句。
可选地,在步骤210后,还包括:
212、在预存的标准问题库中查找所述标准问题对应的答案,并将查找到的答案推送给用户。
可选地,在步骤208后,还包括:
214、将所述突发问题进行审核处理,并为审核处理后的所述突发问题配置对应的答案。
其中,审核处理可以为人工手动处理。审核处理的方式包括多种,例如:
将所述突发问题进行合并;
将所述突发问题进行打散;和/或
将所述突发问题内的至少一个提问问句标记为垃圾问句,并将所述垃圾问句写入至所述垃圾问句库中。
其中,将突发问题进行合并的方式,适用于突发问题和已有突发问题重复的情形;将突发问题进行打散的方式,适用于突发问题的聚类效果不好的情形。
本步骤214中,为审核处理后的所述突发问题配置对应的答案,可以为人工手动配置答案。
在审核处理后,还包括:将所述审核处理的结果作为训练数据写入至所述聚类模型,以训练所述聚类模型。
216、将所述突发问题及其对应的答案写入标准问题库,并将所述突发问题的答案推送给用户。
在将突发问题及其对应的答案写入标准问题库后,在后续的使用过程中,该突发问题便可以作为标准问题来使用。
通过步骤214和216,可以为突发问题配置答案,并将答案推送至用户,从而解决用户的实际需求。
为了便于对本说明书的技术方案理解,图5示出了本说明书的确定突发问题的方法的流程简图。由图5中可见,本说明书的确定突发问题的方法为一循环执行的过程,该过程包括以下执行步骤:
502、获取提问问句。
具体地,本步骤502为获取用户的访问量大于第一阈值的提问问句。
其中,对于步骤502的具体执行过程,参见上述实施例的步骤202的具体内容。
504、确定突发问题。
其中,对于步骤504的具体执行过程,参见上述实施例的步骤204、206、208、210的具体内容。
506、审核处理。
其中,对于步骤506的具体执行过程,参见上述实施例的步骤214的具体内容。
508、问题入库,即将突发问题及其配置的答案写入标准问题库;
其中,对于步骤508的具体执行过程,参见上述实施例的步骤216的具体内容。
510、线上匹配。
其中,对于步骤510中的线上匹配,若用户的提问问句匹配到该突发问题,则为用户推送答案。
为了对本发明的确定突发问题的方法进一步地详尽说明,在一个实施例中,示出了确定突发问题的方法的详细流程,参见图6和图7。图6为本实施例的发现突发问题的链路图,图7为本实施例的确定突发问题的方法流程示意图。
由图6可见,本说明书一实施例的发现突发问题的流程包括:
获取用户的访问量大于第一阈值的提问问句602;
将提问问句602通过哈希算法604进行哈希计算,并将哈希计算得到的多维向量输入至问句哈希库606;
将问句哈希库606中的多维向量与问句历史库608的问句向量进行比对,并根据比对的结果得到对应的筛选问句集;
将所述提问问句602与所述筛选问句集中的问句分别进行相似度计算;
若相似度小于第二阈值,将提问问句602与垃圾问句库614中的垃圾问句进行匹配,并剔除与垃圾问句库614相匹配的提问问句602,得到清洁的提问问句;
将所述清洁的提问问句输入至聚类模型610进行聚类计算,得到聚类计算的结果;确定聚类计算的结果是否与已有的突发问题612相对应;
若是,则将与所述聚类计算的结果对应的所述清洁的提问问句写入所述对应的突发问题612;
否则,新建突发问题612,并将与所述聚类计算的结果对应的所述清洁的提问问句写入所述新建的突发问题612;
若相似度大于等于第二阈值且用户的访问量大于第三阈值,则根据所述提问问句在预存的标准问题库618中查找对应的标准问题,并确定该标准问题为突发问题。
将所述突发问题612进行审核处理616,并为审核处理616后的所述突发问题612配置对应的答案;
将所述突发问题612及其对应的答案写入标准问题库618,并将所述突发问题的答案推送给用户;
并且,将所述审核处理616的结果作为训练数据写入至聚类模型610,以训练所述聚类模型610。
通过本说明书一实施例的确定突发问题的方法,在用户线上提交提问问句后,可以快速地确定突发问题,进而配置突发问题的答案,从而改善线上实际问题的解决情况,提升用户体验。
进一步参考图7。图7为本发明一个实施例的确定突发问题的方法流程示意图。该流程详细示出了提问问句与筛选问句集中的问句的相似度小于第二阈值的情形下,根据提问问句生成突发问题的过程。该方法包括:
702、获取用户的访问量大于第一阈值的提问问句。
704、哈希计算。将用户的访问量大于第一阈值的提问问句输入至聚类模型进行哈希计算,得到散列化的多维向量。
706、对比问句历史库。将哈希后的多维向量与问句历史库的问句向量进行匹配,并根据匹配到的问句向量得到对应的筛选问句集。
708、相似度计算。将提问问句与筛选问句集中的问句分别进行相似度计算。
710、垃圾拦截。将相似度小于第二阈值的提问问句与垃圾问句库中的垃圾问句进行匹配,并剔除与所述垃圾问句库相匹配的提问问句,得到清洁的提问问句。
其中,清洁的提问问句存储于问句哈希库中。
712、生成突发问题。将所述清洁的提问问句通过聚类模型进行聚类计算,得到聚类计算的结果,并根据聚类计算的结果生成突发问题。
其中,本步骤具体包括:
确定所述聚类计算的结果是否与已有的突发问题相对应;
若是,则将与所述聚类计算的结果对应的所述清洁的提问问句写入所述对应的突发问题;
否则,新建突发问题,并将与所述聚类计算的结果对应的所述清洁的提问问句写入所述新建的突发问题。
714、审核处理。将所述突发问题进行审核处理,并为审核处理后的所述突发问题配置对应的答案,将所述突发问题及其对应的答案写入标准问题库。
其中,审核处理包括:
将所述突发问题进行合并;
将所述突发问题进行打散;和/或
将所述突发问题内的至少一个提问问句标记为垃圾问句,并将所述垃圾问句写入至所述垃圾问句库中。
716、训练聚类模型。将所述审核处理的结果作为训练数据写入至所述聚类模型,以训练所述聚类模型。
718、配置上线。在用户的提问问句匹配到该写入标准问题库的突发问题后,在线输出答案。
本说明书提供的确定突发问题的方法,在用户线上提交提问问句后,可以快速地确定突发问题,并为突发问题配置答案后,将突发问题及其答案存储于标准问题库中,从而改善线上实际问题的解决情况,提升用户体验。
本说明书的一个实施例中还公开了一种确定突发问题的装置,参见图8,包括设置于服务器端82的:
提问问句获取模块802,被配置为获取用户的访问量大于第一阈值的提问问句;
其中,提问问句在终端80侧产生;
匹配模块804,被配置为将所述提问问句与问句历史库进行匹配,得到筛选问句集;
相似度计算模块806,被配置为将所述提问问句与所述筛选问句集中的问句分别进行相似度计算;
突发问题生成模块808,被配置为若相似度小于第二阈值,则根据所述提问问句生成突发问题;
突发问题查找模块810,被配置为若相似度大于等于第二阈值且用户的访问量大于第三阈值,则根据所述提问问句在预存的标准问题库中查找对应的标准问题,并确定该标准问题为突发问题,其中,所述第三阈值大于第一阈值。
可选地,参见图8,匹配模块804包括:
提问问句转换模块8042,被配置为将所述提问问句转换为多维向量,并将所述多维向量散列化;
筛选问句集确定模块8044,被配置为将散列化的所述多维向量与问句历史库的问句向量进行比对,并根据比对的结果得到对应的筛选问句集。
可选地,突发问题生成模块808包括:
聚类计算模块8082,被配置为将所述提问问句输入至聚类模型进行聚类计算;
突发问题获得模块8084,被配置为根据聚类计算的结果得到所述提问问句对应的突发问题。
可选地,本发明一实施例的确定突发问题的装置还包括:
审核处理模块812,被配置为将所述突发问题进行审核处理,并为审核处理后的所述突发问题配置对应的答案;
突发问题处理模块814,被配置为将所述突发问题及其对应的答案写入标准问题库,并将所述突发问题的答案推送给用户。
其中,审核处理包括:
将所述突发问题进行合并;
将所述突发问题进行打散;和/或
将所述突发问题内的至少一个提问问句标记为垃圾问句,并将所述垃圾问句写入至所述垃圾问句库中。
可选地,标准问题库中存储有至少一个标准问题以及每个所述标准问题对应的答案,每个标准问题对应于至少一个标准问句。
所述突发问题查找模块810根据所述提问问句在预存的标准问题库中查找对应的标准问题,包括:
所述突发问题查找模块810将所述提问问句与所述标准问句进行匹配,根据匹配到的标准问句在预存的标准问题库查找对应的标准问题。
可选地,本发明一实施例的确定突发问题的装置还包括:
答案查找模块816,被配置为在预存的标准问题库中查找所述标准问题对应的答案,并将查找到的答案推送给用户。
可选地,参见图9,本发明一实施例的聚类计算模块8082包括:
垃圾问句剔除模块9022,被配置为将所述提问问句与垃圾问句库中的垃圾问句进行匹配,并剔除与所述垃圾问句库相匹配的提问问句,得到清洁的提问问句;其中,所述垃圾问句库内预存有至少一条垃圾问句;
聚类结果获取模块9024,被配置为将所述清洁的提问问句输入至聚类模型进行聚类计算,得到聚类计算的结果;
所述突发问题获得模块8084包括:
判断模块9042,被配置为确定所述聚类计算的结果是否与已有的突发问题相对应,若是,执行第一处理模块,若否,执行第二处理模块;
第一处理模块9044,被配置为将与所述聚类计算的结果对应的所述清洁的提问问句写入所述对应的突发问题;
第二处理模块9046,被配置为新建突发问题,并将与所述聚类计算的结果对应的所述清洁的提问问句写入所述新建的突发问题。
可选地,本说明书中的确定突发问题的装置包括:
聚类模型训练模块,被配置为将所述审核处理的结果作为训练数据写入至所述聚类模型,以训练所述聚类模型。
可选地,本发明中的聚类模型包括:Single-Pass单遍算法模型或K-means均值算法模型。
本说明书提供的确定突发问题的装置,在用户线上提交提问问句后,可以快速地确定突发问题,并为突发问题配置答案后,将突发问题及其答案存储于标准问题库中,从而改善线上实际问题的解决情况,提升用户体验。
上述为本实施例的一种确定突发问题的装置的示意性方案。需要说明的是,该确定突发问题的装置的技术方案与上述的确定突发问题的方法的技术方案属于同一构思,确定突发问题的装置的技术方案未详细描述的细节内容,均可以参见上述确定突发问题的方法的技术方案的描述。
本说明书一实施例还提供一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现确定突发问题的方法。
应该知道,计算设备还可以包括网络接口,网络接口使得计算设备能够经由一个或多个网络通信。这些网络的示例包括局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。网络接口可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备的上述以及未提到的其他部件也可以彼此相连接,例如通过总线。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备还可以是移动式或静止式的服务器。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述确定突发问题的方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的确定突发问题的方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述确定突发问题的方法的技术方案的描述。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。