基于海量问题的知识库构建方法、电子装置及存储介质与流程

文档序号:13910104阅读:132来源:国知局
基于海量问题的知识库构建方法、电子装置及存储介质与流程

本发明涉及知识库构建领域,涉及一种基于海量问题的知识库构建方法、电子装置及存储介质。



背景技术:

随着互联网的飞速发展,人们服务意识的提高,网络客服已经普及到各行各业,深入到日常商业服务的各个环节。

目前,常见的网络客户有智能客服机器人、留言平台等,相较于传统的客服方式,这些客服可以全天候服务,分流人工客服负担,从而有效降低企业客服领域的运营成本。

但是随之而来也产生了很多无法解答的新问题,这些问题杂乱无章,数量可达几千上万条,如果要对这些问题一一作答,只能通过人工一条条查看并解答,耗时巨大,效率也不高。而且其中很多问题的意思都是相似的,而答案也都是一样,但是由于没有很好的归类,无法进行集中统一解答。

因此,现在急需对这些杂乱无章的问题进行快速分类,以减少人工解答问题的工作量。



技术实现要素:

本发明要解决的技术问题是为了克服现有技术中无法很好地对杂乱无章的海量问题进行集中处理的问题,提出了一种基于海量问题的知识库构建方法、电子装置及存储介质,通过将杂乱无章的海量问题进行归类,方便问题和相应答案的关联整理后维护进知识库,以实现使用智能客服机器人代替人工客服对这些问题进行解答。

本发明是通过下述技术方案来解决上述技术问题:

一种基于海量问题的知识库构建方法,包括如下步骤:

s1、问题预处理:将原始问题拆分为若干关键词组成的词序列;

s2、文本降维:将每个预处理后的问题作为一个文本,利用主题模型算法进行文本降维,用多个主题分布来表示每个文本;

s3、聚类实现:采用k-means聚类算法对降维后的文本进行分类,对应不同的类别将文本保存到不同的簇并输出;

s4、知识库构建:将所有文本还原为原始问题,并将属于同一簇中的原始问题关联同一个标准问题-答案对后保存到知识库中。

优选地,步骤s1之前还包括:s0、问题的搜集:将各种平台上历史记录中未回答的问题按统一格式保存到一个文件中。

优选地,步骤s1具体包括以下分步骤:

s11、将问题拆分成由若干个词组成的词序列;

s12、将词序列中的停用词去掉;

s13、保存仅包含有关键词的关键词序列。

优选地,步骤3具体包括以下分步骤:

s30、预设循环次数的上限和与所述循环次数相对应的若干呈递进关系的判断阈值,所述循环次数初始值为1;

s31、将所有文本预设为一个当前簇;

s32、随机获取当前簇中的多个文本中的一个文本作为质心文本,并将该质心文本从前簇中删除;

s33、计算当前簇中其余文本与该质心文本之间的匹配值,取出所有匹配值大于当前循环次数对应的判断阈值的文本和质心文本保存到一个新簇中;

s34、判断当前簇中是否还有剩余文本未保存到新簇中,若是则执行步骤s32,若否则执行步骤s35;

s35、判断是否还有与当前簇属于同一循环的簇中还有文本,若是则执行步骤s36,若否则执行步骤s37;

s36、将当前簇重置为该还有文本的簇后执行步骤s32;

s37、判断循环次数是否达到上限,若是则执行步骤s39,若否则执行步骤s38;

s38、循环次数加1,将当前簇重置为若干新簇中的一个新簇,执行步骤s32;

s39、输出所有新簇。

优选地,分步骤s33具体包括以下子步骤:

s331、获取当前簇中其余文本中的首个文本作为当前比对文本;

s332、将当前比对文本中的关键词与所述质心文本中的关键词进行匹配,并根据匹配规则计算出匹配值;

s333、判断匹配值是否大于当前循环次数对应的判断阈值,若是则执行步骤s334,若否则执行步骤s331;

s334、将该当前比对文本取出暂存,并将该当前比对文本从当前簇中删除;

s335、判断当前比对文本是否为当前簇中其余文本中的最后一个文本,若是则执行步骤s337,若否则执行步骤s336;

s336、将当前比对文本之后的文本重置为新的当前比对文本,执行步骤s332;

s337、将暂存的文本与质心文本保存到一个新簇中。

优选地,步骤s4之前还包括:s4’、参数调整,具体包括以下分步骤:

s41’、检查输出的新簇是否符合归类标准,若不符合则执行步骤s42’,若符合则结束。

s42’、调整所述循环次数的上限和与所述循环次数相对应的若干呈递进关系的判断阈值,并重新执行步骤s31。

优选地,所述匹配规则为:将所有关键词划分为专业名词、普通名词和动词三类词,分别给三类词的匹配分配不同的权重,所述权重从大到小依次为专业名词、普通名词和动词。

优选地,步骤s4具体包括以下分步骤:

s41、获取首个新簇作为当前簇;

s42、将当前簇中的文本还原为原始问题;

s43、将各个原始问题与同一个标准问题-答案对关联保存到知识库中;

s44、判断当前簇是否为最后一个新簇,若是则结束,若否则执行步骤s45;

s45、将当前簇重置为当前簇之后的一个新簇,执行步骤s42。

一种电子装置,包括存储器和处理器,所述存储器上存储有可被所述处理器执行的基于海量问题的知识库构建系统,所述基于海量问题的知识库构建系统包括:

预处理模块,用于将原始问题拆分为若干关键词组成的词序列;

降维模块,利用主题模型算法进行文本降维;

聚类模块,采用k-means聚类算法对降维后的文本进行分类,且对应不同的类别将文本保存到不同的簇并输出;

知识库构建模块,用于将所有文本还原为原始问题,并将属于同一簇中的原始问题关联同一个标准问题-答案对后保存到知识库中。

一种计算机可读存储介质,所述计算机可读存储介质内存储有基于海量问题的知识库构建系统,所述基于海量问题的知识库构建系统可被至少一个处理器所执行,以使所述至少一个处理器执行如前述任一项所述的基于海量问题的知识库构建方法的步骤。

本发明的积极进步效果在于:本发明实现了海量问题的自动聚类,避免了人工整理海量问题耗费大量成本的问题,对经过自动聚类形成的同类问题,人工只需解答一次形成标准问题-答案对即可,然后将同类问题与标准问题-答案对关联后保存到知识库中,后续再碰到类似问题,就可以由智能客服代替人工客服进行解答,大大减少人工客服解答问题的工作量。

附图说明

图1示出了本发明电子装置一实施例的硬件架构示意图;

图2示出了本发明电子装置中基于海量问题的知识库构建系统一实施例的程序模块示意图;

图3示出了本发明基于海量问题的知识库构建方法实施例一的流程图;

图4示出了本发明基于海量问题的知识库构建方法实施例二中问题预处理的流程图;

图5示出了本发明基于海量问题的知识库构建方法实施例三中聚类实现的流程图;

图6示出了本发明基于海量问题的知识库构建方法实施例四中聚类实现的流程图;

图7示出了本发明基于海量问题的知识库构建方法实施例五中文本匹配的流程图;

图8示出了本发明基于海量问题的知识库构建方法实施例六中知识库构建的流程图。

具体实施方式

下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。

首先,本发明提出了一种电子装置。

参阅图1所示,是本发明电子装置一实施例的硬件架构示意图。本实施例中,所述电子装置2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图所示,所述电子装置2至少包括,但不限于,可通过系统总线相互通信连接存储器21、处理器22、网络接口23、以及基于海量问题的知识库构建系统20。其中:

所述存储器21至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器21可以是所述电子装置2的内部存储单元,例如该电子装置2的硬盘或内存。在另一些实施例中,所述存储器21也可以是所述电子装置2的外部存储设备,例如该电子装置2上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,所述存储器21还可以既包括所述电子装置2的内部存储单元也包括其外部存储设备。本实施例中,所述存储器21通常用于存储安装于所述电子装置2的操作系统和各类应用软件,例如所述基于海量问题的知识库构建系统20的程序代码等。此外,所述存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。

所述处理器22在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制所述电子装置2的总体操作,例如执行与所述电子装置2进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器22用于运行所述存储器21中存储的程序代码或者处理数据,例如运行所述的基于海量问题的知识库构建系统20等。

所述网络接口23可包括无线网络接口或有线网络接口,该网络接口23通常用于在所述电子装置2与其他电子装置之间建立通信连接。例如,所述网络接口23用于通过网络将所述电子装置2与外部终端相连,在所述电子装置2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(intranet)、互联网(internet)、全球移动通讯系统(globalsystemofmobilecommunication,gsm)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、4g网络、5g网络、蓝牙(bluetooth)、wi-fi等无线或有线网络。

需要指出的是,图1仅示出了具有组件21-23的电子装置2,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。

在本实施例中,存储于存储器21中的所述基于海量问题的知识库构建系统20可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器21中,并可由一个或多个处理器(本实施例为处理器22)所执行,以完成本发明。

例如,图2示出了所述基于海量问题的知识库构建系统20第一实施例的程序模块示意图,该实施例中,所述基于海量问题的知识库构建系统20可以被分割为预处理模块201、降维模块202、聚类模块203和知识库构建模块204。其中,本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述所述基于海量问题的知识库构建系统20在所述电子装置2中的执行过程。以下描述将具体介绍所述程序模块201-204的具体功能。

所述预处理模块201,用于将原始问题拆分为若干关键词组成的词序列;

所述降维模块202,利用主题模型算法进行文本降维;

所述聚类模块203,采用k-means聚类算法对降维后的文本进行分类,且对应不同的类别将文本保存到不同的簇并输出;

所述知识库构建模块204,用于将所有文本还原为原始问题,并将属于同一簇中的原始问题关联同一个标准问题-答案对后保存到知识库中。

本实施例中所述的系统20可以将上千条数据甚至更多的数据进行自动归类,假设经归类后得到一个簇中的文本还原的问题如下:

1、信用卡自动还款余额不足怎么办

2、借记卡里没钱了,那要怎么才能扣款

3、信用卡自动还款还能补扣么

4、信用卡自动还款补扣

5、信用卡自动还款没有金额扣除款项怎样

6、借记卡金额不足扣款

7、借记卡没有金额扣款怎样

8、借记卡没有金额扣除款项怎样

最终,可以将以上8个属于同类的问题关联到一个标准问题-答案对后保存到知识库中,以后再接收到客户询问上述8个问题或者标准问题中的任意一个问题时,都可以由智能客服从知识库中查询到相同的答案以回答客户。

通过此系统20来构建知识库,可以大大节约人工搜集问题的时间,且问题更贴近客户的询问习惯,以方便智能客服更准确的理解客户意图。

其次,本发明提出一种基于海量问题的知识库构建方法。

在实施例一中,如图3所示,所述的基于海量问题的知识库构建方法包括如下步骤:

s0、问题的搜集:将各种平台上历史记录中未回答的问题按统一格式保存到一个文件中。

这里所述平台主要是留言平台、在线客服系统、客服邮箱等,通过这些平台收到客户的各种问题,这些问题通常都没有规律,需要依靠人工一条条地解读,非常费时。

s1、问题预处理:将原始问题拆分为若干关键词组成的词序列。

为方便后续对问题的处理,需要对直接从各种平台上获取的问题进行预处理,主要是为了从问题中获取更清晰的客户意图。

s2、文本降维:将每个预处理后的问题作为一个文本,利用主题模型算法进行文本降维,用多个主题分布来表示每个文本。

s3、聚类实现:采用k-means聚类算法对降维后的文本进行分类,对应不同的类别将文本保存到不同的簇并输出。

s4、知识库构建:将所有文本还原为原始问题,并将属于同一簇中的原始问题关联同一个标准问题-答案对后保存到知识库中。

为了提高智能客服的知识储备,最后将所有分类后的问题保存到知识库中,以便下次碰到同样问题时,可以智能客服直接回答,减轻人工客服的压力。

在实施例二中,基于实施例一的基础上,如图4所示,问题预处理具体包括以下分步骤:

s11、将问题拆分成由若干个词组成的词序列。

s12、将词序列中的停用词去掉。

这里所述停用词指的是一些没有实际含义的词。

s13、保存仅包含有关键词的关键词序列。

下面以对问题“借记卡里没钱了,那要怎么才能扣款”的预处理为例,做具体说明:

1、将问题“借记卡里没钱了,那要怎么才能扣款”拆分为词序列“借记卡里没钱了那要怎么才能扣款”。

2、将前述词序列中的停用词“里”、“了”、“那”、“要”、“怎么”和“才能”去掉。

3、保存仅包含有关键词的关键词序列“借记卡没钱扣款”。

在实施例三中,基于实施例二的基础上,如图5所示,聚类实现的过程具体如下:

s30、预设循环次数的上限和与所述循环次数相对应的若干呈递进关系的判断阈值,所述循环次数初始值为1;

s31、将所有文本预设为一个当前簇;

s32、随机获取当前簇中的多个文本中的一个文本作为质心文本,并将该质心文本从前簇中删除;

s33、计算当前簇中其余文本与该质心文本之间的匹配值,取出所有匹配值大于当前循环次数对应的判断阈值的文本和质心文本保存到一个新簇中;

s34、判断当前簇中是否还有剩余文本未保存到新簇中,若是则执行步骤s32,若否则执行步骤s35;

s35、判断是否还有与当前簇属于同一循环的簇中还有文本,若是则执行步骤s36,若否则执行步骤s37;

s36、将当前簇重置为该还有文本的簇后执行步骤s32;

s37、判断循环次数是否达到上限,若是则执行步骤s39,若否则执行步骤s38;

s38、循环次数加1,将当前簇重置为若干新簇中的一个新簇,执行步骤s32;

s39、输出所有新簇。

本实施例中,所述簇与类别相对应,一个簇即一个类别,最终输出的所有新簇指的是将上千条甚至更多的问题划分为最小刻度,即一个簇中的问题所指向的答案为相同的,问题的多样性仅仅是由语言表达的多样性或者个人的表述习惯所造成的。以下面8个看似不同的问题为例做具体说明:

1、信用卡自动还款余额不足怎么办

2、借记卡里没钱了,那要怎么才能扣款

3、信用卡自动还款还能补扣么

4、信用卡自动还款补扣

5、信用卡自动还款没有金额扣除款项怎样

6、借记卡金额不足扣款

7、借记卡没有金额扣款怎样

8、借记卡没有金额扣除款项怎样

以上8个问题看似不同,但客户提问的意图是一样的,就是想知道“在信用卡自动还款借记卡的余额不足时,要怎么办?”,那么采用上述步骤进行聚类后,这8个问题将归到一个新簇中,即归为一类。

在实施例四中,为了得到更精细地分类,基于实施例三的基础上,如图6所示,在步骤s4之前还包括:步骤s4’、参数调整,具体包括以下分步骤:

s41’、检查输出的新簇是否符合归类标准,若不符合则执行步骤s42’,若符合则结束。

s42’、调整所述循环次数的上限和与所述循环次数相对应的若干呈递进关系的判断阈值,并重新执行步骤s31。

这里所述参数调整主要通过人工观测来实现,通常聚类都会通过几次参数调整后才能实现海量问题的较为准确的分类。

在实施例五中,基于实施例四的基础上,如图7所示,公开了分步骤s33的具体子步骤,具体如下:

s331、获取当前簇中其余文本中的首个文本作为当前比对文本;

s332、将当前比对文本中的关键词与所述质心文本中的关键词进行匹配,并根据匹配规则计算出匹配值;

s333、判断匹配值是否大于当前循环次数对应的判断阈值,若是则执行步骤s334,若否则执行步骤s331;

s334、将该当前比对文本取出暂存,并将该当前比对文本从当前簇中删除;

s335、判断当前比对文本是否为当前簇中其余文本中的最后一个文本,若是则执行步骤s337,若否则执行步骤s336;

s336、将当前比对文本之后的文本重置为新的当前比对文本,执行步骤s332;

s337、将暂存的文本与质心文本保存到一个新簇中。

本实施例中,所述匹配规则为:将所有关键词划分为专业名词、普通名词和动词三类词,分别给三类词的匹配分配不同的权重,所述权重从大到小依次为专业名词、普通名词和动词。

下面以对下述属于一个当前簇中的3个文本为例做具体说明:

文本1:信用卡自动还款余额不足

文本2:信用卡开卡自助

文本3:借记卡没有金额扣款

质心文本:借记卡没钱扣款

假设判断阈值为0.75。

1、将文本1作为当前比对文本。

2、将文本1与质心文本进行匹配,根据匹配规则计算得到匹配值为0.8。

3、匹配值0.8大于判断阈值0.75。

4、将文本1从当前簇中取出暂存。

5、将文本2作为当前比对文本。

6、将文本2与质心文本进行匹配,根据匹配规则计算得到匹配值为0.5。

7、匹配值0.5小于判断阈值0.75。

8、将文本3作为当前比对文本。

9、将文本3与质心文本进行匹配,根据匹配规则计算得到匹配值为0.9。

10、匹配值0.9大于判断阈值0.75。

11、将文本3从当前簇中取出暂存。

12、将暂存的文本1和文本3与质心文本保存到一个新簇中。

在实施例六中,基于实施例五的基础上,如图8所示,知识库构建过程具体如下:

s41、获取首个新簇作为当前簇;

s42、将当前簇中的文本还原为原始问题;

s43、将各个原始问题与同一个标准问题-答案对关联保存到知识库中;

s44、判断当前簇是否为最后一个新簇,若是则结束,若否则执行步骤s45;

s45、将当前簇重置为当前簇之后的一个新簇,执行步骤s42。

本实施例中,由于每个簇中的文本为仅包含关键词的关键词序列,因此需要先将这些文本还原为客户提问的原始问题,然后将原始问题关联标准问题-答案对后保存到知识库中。

接上例,对知识库的构建过程做具体说明:

1、将上例中保存的新簇作为当前簇。

2、将文本1“信用卡自动还款余额不足”还原为原始问题“信用卡自动还款余额不足怎么办”,将文本3“借记卡没有金额扣款”还原为原始问题“借记卡没有金额扣款怎样”,将质心文本“借记卡没钱扣款”还原为原始问题“借记卡里没钱了,那要怎么才能扣款”。

3、将还原得到的3个原始问题关联到同一个标准问题-答案对保存到知识库中。

假设还有其他的新簇,则依照上述3个步骤依次执行。

此外,本发明一种计算机可读存储介质,该计算机可读存储介质内存储有基于海量问题的知识库构建系统20,该基于海量问题的知识库构建系统20可被一个或多个处理器执行时,实现上述基于海量问题的知识库构建方法或电子装置的操作。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1