具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请上述的技术方案,下面通过具体实施例来进行说明。
实施例一
下面对本申请实施例提供的一种问题分类方法进行描述,请参阅图1,本申请实施例中的问题分类方法包括:
在步骤101中,在待处理的客服问答数据中,提取得到两个以上主问题;
在本申请实施例中,智能客服的研发人员可以预先对用户使用智能客服时可能提出的问题进行整理,并对这些问题设定相对应的回答,得到待处理的客服问答数据。在上述待处理的客服问答数据中,提取得到两个以上主问题,其中,每个主问题均对应有各自的类别ID。可选地,研发人员可事先在上述客服问答数据中对整理得到的各个问题进行标注,用以确定一问题是否为主问题。
在步骤102中,根据第一主问题及第二主问题的类别ID,分别确定上述第一主问题及上述第二主问题的第一类别、第二类别及第三类别;
在本申请实施例中,上述客服问答数据中的每一问题都具有其类别ID,可根据其类别ID在预设的类别ID与类别对照表中,查询得到各个类别ID所对应的类别。具体地,在本申请实施例中,在划分类别时,可根据类别由大至小的顺序划分为第一类别、第二类别及第三类别,其中,上述第一类别为问题的最大所属类别,上述第三类别为问题的最小所属类别。上述这三种类别均为研发人员自行定义的,例如,研发人员可将上述第一类别-第二类别-第三类别分别设定为产品名称-产品特征-产品介绍,可以认为,一个第一类别中包含有多个第二类别,而一个第二类别中也可以包含有多个第三类别,通过上述第一类别、第二类别及第三类别,可逐渐缩小问题所属类别的范围。具体地,上述第一主问题及第二主问题是步骤101中提取出的主问题中的任意两个主问题,此处不作限定。也即是说,通过本申请实施例的方案,可以得到任意两个主问题之间的相关级别。
在步骤103中,根据上述第一主问题及上述第二主问题的第一类别、第二类别及第三类别,确定上述第一主问题与上述第二主问题的相关级别。
在本申请实施例中,通常情况下,若两个不同的问题之间相关度较高,则这两个问题所属的类别的重合比例也会较高;而如果两个不同的问题完全不相关,则这两个问题所属的类别的重合比例会偏低。因而,可以根据上述第一主问题及上述第二主问题的第一类别、第二类别及第三类别,确定上述第一主问题与上述第二主问题的相关度。在本申请实施例中,用标注相关级别的方式指示两个不同问题之间的相关度,相关级别越低,则两个问题之间的相关程度越低;相关级别越高,则两个问题之间的相关程度越高。
可选地,上述问题分类方法还包括:
对上述待处理的客服问答数据进行预处理,其中,上述预处理包括图片检测处理、敏感词禁用词识别处理、繁简体转换处理、表情识别替换处理及拼音检测处理。
在本申请实施例中,可以在上述步骤101之前,先对上述客服问答数据中的各个问题进行预处理,上述预处理包括图片检测处理、敏感词禁用词识别处理、繁简体转换处理、表情识别替换处理及拼音检测处理。具体地,上述图片检测处理可以检测出问题中是否包含有图片,如果包含有图片,则可以对该图片进行图片识别,如果能够识别出有意义的结果,则可以文字输出该图片识别的结果作为问题的一部分,否则,如果无法识别出有意义的结果,则将该图片从问题中删除或丢弃。当然,也可以选择直接删除或丢弃问题中所包含的图片,此处不作限定;上述敏感词禁用词识别处理可以识别出问题中所包含的非法词语,并在识别出敏感词或禁用词等非法词语时,屏蔽这些非法词语;上述繁简体转化处理可以根据研发人员的设置,将繁体字转换为简体字,或者,将简体字转换为繁体字,此处不作限定;上述表情识别替换处理可以识别出问题中所包含的emoji表情、绘文字表情等不同类型的表情,用于表情仅用于表达提问者的心情,往往不会对问题产生实质影响,因而,可以对识别到的表情作删除或丢弃,或者,以文字的方式标替换识别到的上述表情;上述拼音检测处理可以检测出问题中存在的拼音,可选地,还可以依据上下文将检测到的拼音转换为文字。
可选地,请参阅图2,上述步骤103包括:
在步骤201中,依次检测上述第一主问题与上述第二主问题的第一类别、第二类别及第三类别是否相同;
在本申请实施例中,上述步骤201具体可以为:
A1、检测上述第一主问题的第一类别与上述第二主问题的第一类别是否相同,若相同,则执行步骤A2,若不相同,则跳出步骤201,执行步骤202;
A2、检测上述第一主问题的第二类别与上述第二主问题的第二类别是否相同,若相同,则执行步骤A3,若不相同,则跳出步骤201,执行步骤202;
A3、检测上述第一主问题的第三类别与上述第二主问题的第三类别是否相同,并在得到检测结果后,跳出步骤201,执行步骤202。
可见,由于第一类别是问题的最大所属类别,因而,可从上述第一类别开始进行检测,再逐步缩小范围,继续检测第二类别及第三类别是否相同。
在步骤202中,基于上述第一主问题与上述第二主问题之间类别相同的情况,确定上述第一主问题与上述第二主问题的相关级别。具体地,上述步骤202包括:
B1、若上述第一主问题与上述第二主问题的第一类别不相同,则确定上述第一主问题与上述第二主问题为零级相关;
B2、若上述第一主问题与上述第二主问题仅第一类别相同,则确定上述第一主问题与上述第二主问题为一级相关;
B3、若上述第一主问题与上述第二主问题的第一类别相同,且上述第一主问题与上述第二主问题的第二类别相同,且上述第一主问题与上述第二主问题的第三类别不相同,则确定上述第一主问题与上述第二主问题为二级相关;
B4、若上述第一主问题与上述第二主问题的第一类别、第二类别及第三类别均相同,则确定上述第一主问题与上述第二主问题为三级相关。
可见,如果两个问题的分类ID完全相同,也即,这两个问题的第一类别相同,第二类别相同,且第三类别相同,则认为这两个问题非常相似,可标注这两个问题为三级相关;而如果两个问题的第一类别相同,第二类别相同,但第三类别不相同,则认为二者的相关程度有所下降,但仍有一定相似性,此时可标注这两个问题为二级相关;而如果两个问题只有第一类别相同,则认为二者的相关程度又有进一步下降,此时,标注这两个问题仅为一级相关;对于其他情况,也即,如果两个问题的第一类别不相同,第二类别不相同且第三类别也不相同,则认为这两个问题基本没有任何联系,此时标注这两个问题为零级相关。由于在上述步骤103中已说明了相关级别越低,则两个问题之间的相关程度越低;相关级别越高,则两个问题之间的相关程度越高。可见,对于上述四种不同的相关级别,三级相关所指示的相关程度最高,而零级相关所指示的相关程度最低。
可选地,上述问题分类方法还包括:
C1、基于预设的相似问题表,获取得到各个主问题的相似问题;
C2、针对任一主问题,将上述主问题的相似问题与上述主问题确定为四级相关。
在本申请实施例中,研发人员可对每一主问题进行拓展,得到这些主问题的相似问题。可以认为,主问题的相似问题与主问题所表达的意思是一致的,只是其表述方式不一样。例如,主问题为“什么是积木机器人”,研发人员可基于该主问题作出拓展,得到相似问题“什么是JIMU”、“积木机器人是啥”。可以认为主问题与该主问题的相似问题是极其相似的,只是问法稍稍不同而已,因而,可以将主问题与其相似问题的相关级别确定为四级相关,即表示这两个问题是极其相似的关系。可选地,研发人员拓展得到了主问题的相似问题后,可以以主问题-相似问题1-相似问题2-……-相似问题n的形式将该主问题及该主问题的相似问题存放于相似问题表中。
可选地,上述问题分类方法还包括:
根据上述第一主问题与上述第二主问题的相关级别,确定上述第一主问题的相似问题与上述第二主问题的相关级别,同时,确定上述第一主问题的相似问题与上述第二主问题的相似问题的相关级别。
在本申请实施例中,由于主问题与该主问题的相似问题是及其相似的关系,二者之间仅仅是问法(也即表述方式)有所区别,因而,在得到了第一主问题与第二主问题的相关级别后,也以同样的相关级别标注上述第一主问题的相似问题与上述第二主问题的相关级别,也可以以同样的相关级别标注上述第一主问题的相似问题与上述第二主问题的相似问题的相关级别。例如,主问题Q1与主问题Q2的相关级别为3级,那么主问题Q1的相似问题Q1’与主问题Q2的相关级别也为3级,同时,该主问题Q1的相似问题Q1’与主问题Q2的相似问题Q2’的相关级别也为3级。可见,只要得到了主问题之间的相关级别,那么其他相似问题之间及相似问题与主问题之间的相关级别也能够得以确定。
可选地,上述问题分类方法还包括:
D1、以预设的抽取比例从不同相关级别的问题组中,抽取得到样本问题组;
在本申请实施例中,由于每两个问题之间都可以组成问题组,通过本实施例所提出的问题分类方法,可以得到每一问题组的相关级别。假定上述客服问答数据中有224种不同的类别,1662条主问题,以及在此基础上扩展出了相似问题10672条,那么在通过上述问题分类方法对问题组进行标注时,总共可得到25124566对数据对。通常情况下,相关等级为四级相关的问题组较少,相关等级为0级相关的问题组较多,下表1给出了不同相关级别的问题组的数量示例:
相关等级 |
0 |
1 |
2 |
3 |
4 |
问题组数量 |
17362104 |
4639704 |
1170624 |
1909189 |
42945 |
如果使用上述问题组进行训练,则会因问题组的偏置导致相关等级为四级相关的问题组的精度受到很大的影响。所以我们按照相关等级比4:3:2:1:0=1:2:2:2:2进行问题组的抽样,以构成新的样本问题组(即样本数据),随机地抽取558285条样本问题组。
D2、基于上述样本问题组,对上述客服问答数据进行训练,以在接收到用户输入的问题时,对上述用户输入的问题进行分类预测。
在本申请实施例中,在抽取得到样本问题组后,可按照训练样本:交叉验证样本:测试样本=3:1:1的比例,组成334971条训练样本、111657条验证样本及111657条测试样本。并基于上述训练样本、验证样本及测试样本对客服问答数据进行训练,以在接收到用户输入的问题时,对上述用户输入的问题进行分类预测。
由上可见,通过本申请实施例,通过不同问题所属的第一类别、第二类别及第三类别来划分不同问题之间的相关等级,不再简单地把不同问题之间的相关关系划分为相关或不相关,而是通过相关等级来表示相关的程度,通过四级相关至零级相关来准确表示问题之间深层的相关关系。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
实施例二
本申请实施例二提供了一种问题分类装置,上述问题分类装置可集成于电子设备中,如图3所示,本申请实施例中的问题分类装置300包括:
问题提取单元301,用于在待处理的客服问答数据中,提取得到两个以上主问题,其中,每个主问题均对应有各自的类别ID;
类别确定单元302,用于根据第一主问题及第二主问题的类别ID,分别确定上述第一主问题及上述第二主问题的第一类别、第二类别及第三类别,其中,上述第一类别为问题的最大所属类别,上述第三类别为问题的最小所属类别;
相关级别确定单元303,用于根据上述第一主问题及上述第二主问题的第一类别、第二类别及第三类别,确定上述第一主问题与上述第二主问题的相关级别。
可选地,上述问题分类装置300还包括:
预处理单元,用于对上述待处理的客服问答数据进行预处理,其中,上述预处理包括图片检测处理、敏感词禁用词识别处理、繁简体转换处理、表情识别替换处理及拼音检测处理。
可选地,上述相关级别确定单元303包括:
类别检测子单元,用于依次检测上述第一主问题与上述第二主问题的第一类别、第二类别及第三类别是否相同;
级别确定子单元,用于基于上述第一主问题与上述第二主问题之间类别相同的情况,确定上述第一主问题与上述第二主问题的相关级别。
可选地,上述级别确定子单元具体用于,若上述第一主问题与上述第二主问题的第一类别不相同,则确定上述第一主问题与上述第二主问题为零级相关;若上述第一主问题与上述第二主问题仅第一类别相同,则确定上述第一主问题与上述第二主问题为一级相关;若上述第一主问题与上述第二主问题的第一类别相同,且上述第一主问题与上述第二主问题的第二类别相同,且上述第一主问题与上述第二主问题的第三类别不相同,则确定上述第一主问题与上述第二主问题为二级相关;若上述第一主问题与上述第二主问题的第一类别、第二类别及第三类别均相同,则确定上述第一主问题与上述第二主问题为三级相关。
可选地,上述问题分类装置300还包括:
相似问题获取单元,用于基于预设的相似问题表,获取得到各个主问题的相似问题;
上述相关级别确定单元303,还用于针对任一主问题,将上述主问题的相似问题与上述主问题确定为四级相关。
可选地,上述相关级别确定单元303,还用于根据上述第一主问题与上述第二主问题的相关级别,确定上述第一主问题的相似问题与上述第二主问题的相关级别,同时,确定上述第一主问题的相似问题与上述第二主问题的相似问题的相关级别。
可选地,上述问题分类装置300还包括:
样本抽取单元,用于以预设的抽取比例从不同相关级别的问题组中,抽取得到样本问题组;
数据训练单元,用于基于上述样本问题组,对上述客服问答数据进行训练,以在接收到用户输入的问题时,对上述用户输入的问题进行分类预测。
由上可见,通过本申请实施例,问题分类装置通过不同问题所属的第一类别、第二类别及第三类别来划分不同问题之间的相关等级,不再简单地把不同问题之间的相关关系划分为相关或不相关,而是通过相关等级来表示相关的程度,通过四级相关至零级相关来准确表示问题之间深层的相关关系。
实施例三
本申请实施例三提供了一种电子设备,请参阅图4,本申请实施例中的电子设备4包括:存储器401,一个或多个处理器402(图4中仅示出一个)及存储在存储器401上并可在处理器上运行的计算机程序。其中:存储器401用于存储软件程序以及模块,处理器402通过运行存储在存储器401的软件程序以及单元,从而执行各种功能应用以及数据处理,以获取上述预设事件对应的资源。具体地,处理器402通过运行存储在存储器401的上述计算机程序时实现以下步骤:
在待处理的客服问答数据中,提取得到两个以上主问题,其中,每个主问题均对应有各自的类别ID;
根据第一主问题及第二主问题的类别ID,分别确定上述第一主问题及上述第二主问题的第一类别、第二类别及第三类别,其中,上述第一类别为问题的最大所属类别,上述第三类别为问题的最小所属类别;
根据上述第一主问题及上述第二主问题的第一类别、第二类别及第三类别,确定上述第一主问题与上述第二主问题的相关级别。
假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,在上述在待处理的客服问答数据中,提取得到两个以上主问题之前,处理器402通过运行存储在存储器401的上述计算机程序时还实现以下步骤:
对上述待处理的客服问答数据进行预处理,其中,上述预处理包括图片检测处理、敏感词禁用词识别处理、繁简体转换处理、表情识别替换处理及拼音检测处理。
在上述第一种可能的实施方式作为基础而提供的第三种可能的实施方式中,上述根据上述第一主问题及上述第二主问题的第一类别、第二类别及第三类别,确定上述第一主问题与上述第二主问题的相关级别,包括:
依次检测上述第一主问题与上述第二主问题的第一类别、第二类别及第三类别是否相同;
基于上述第一主问题与上述第二主问题之间类别相同的情况,确定上述第一主问题与上述第二主问题的相关级别。
在上述第三种可能的实施方式作为基础而提供的第四种可能的实施方式中,上述基于上述第一主问题与上述第二主问题之间类别相同的情况,确定上述第一主问题与上述第二主问题的相关级别,包括;
若上述第一主问题与上述第二主问题的第一类别不相同,则确定上述第一主问题与上述第二主问题为零级相关;
若上述第一主问题与上述第二主问题仅第一类别相同,则确定上述第一主问题与上述第二主问题为一级相关;
若上述第一主问题与上述第二主问题的第一类别相同,且上述第一主问题与上述第二主问题的第二类别相同,且上述第一主问题与上述第二主问题的第三类别不相同,则确定上述第一主问题与上述第二主问题为二级相关;
若上述第一主问题与上述第二主问题的第一类别、第二类别及第三类别均相同,则确定上述第一主问题与上述第二主问题为三级相关。
在上述第四种可能的实施方式作为基础而提供的第五种可能的实施方式中,处理器402通过运行存储在存储器401的上述计算机程序时还实现以下步骤:
基于预设的相似问题表,获取得到各个主问题的相似问题;
针对任一主问题,将上述主问题的相似问题与上述主问题确定为四级相关。
在上述第四种可能的实施方式作为基础而提供的第六种可能的实施方式中,处理器402通过运行存储在存储器401的上述计算机程序时还实现以下步骤:
根据上述第一主问题与上述第二主问题的相关级别,确定上述第一主问题的相似问题与上述第二主问题的相关级别,同时,确定上述第一主问题的相似问题与上述第二主问题的相似问题的相关级别。
在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基础,或者上述第三种可能的实施方式作为基础,或者上述第四种可能的实施方式作为基础,或者上述第五种可能的实施方式作为基础,或者上述第六种可能的实施方式作为基础而提供的第七种可能的实施方式中,处理器402通过运行存储在存储器401的上述计算机程序时还实现以下步骤:
以预设的抽取比例从不同相关级别的问题组中,抽取得到样本问题组;
基于上述样本问题组,对上述客服问答数据进行训练,以在接收到用户输入的问题时,对上述用户输入的问题进行分类预测。
应当理解,在本申请实施例中,所称处理器402可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器401可以包括只读存储器和随机存取存储器,并向处理器402提供指令和数据。存储器401的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器401还可以存储设备类型的信息。
由上可见,通过本申请实施例,电子设备通过不同问题所属的第一类别、第二类别及第三类别来划分不同问题之间的相关等级,不再简单地把不同问题之间的相关关系划分为相关或不相关,而是通过相关等级来表示相关的程度,通过四级相关至零级相关来准确表示问题之间深层的相关关系。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者外部设备软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读存储介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机可读存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括是电载波信号和电信信号。
以上上述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。