本申请涉及自然语言文本智能分析技术领域,尤其涉及一种数据处理方法、装置、计算机设备及存储介质。
背景技术:
文本聚类是自然语言文本智能分析技术领域的一种应用,目前在对原始文本进行聚类处理的过程中,具有文本聚类功能的计算机设备可以获取k个原始文本作为k个簇的中心点,进而可以确定除中心点之外的其余原始文本(例如,原始文本a)与每个中心点之间的向量距离。其中,k为小于原始文本数量的正整数。此时,该计算机设备可以将该原始文本a添加至与该原始文本a具有最小距离的中心点对应的聚类簇(例如,聚类簇a)中,并重新确定该聚类簇a的中心点。
应当理解,当原始文本的数量较多时,该计算机设备在确定除中心点以外的每一个原始文本所属的聚类簇时,所有原始文本均需要参与计算,从而使得该计算机设备在聚类处理时的计算量大,进而导致该计算机设备的聚类效率降低。
申请内容
本申请实施例提供一种数据处理方法、装置、计算机设备及存储介质,可以提高聚类效率。
本申请实施例一方面提供一种数据处理方法,包括:
获取至少两个原始文本;
获取至少两个原始文本分别对应的文本向量,根据至少两个文本向量之间的向量距离,构建聚类树;
将聚类树中用于分簇的树节点,作为节点簇;
将节点簇中文本向量对应的原始文本进行拼装,得到融合文本;
提取融合文本的关键词,作为至少两个原始文本的关键词。
本申请实施例一方面提供一种数据处理装置,该装置集成在计算机设备,包括:
第一获取模块,用于获取至少两个原始文本;
第二获取模块,用于获取至少两个原始文本分别对应的文本向量;
构建模块,用于根据至少两个文本向量之间的向量距离,构建聚类树;
第一确定模块,用于将聚类树中用于分簇的树节点,作为节点簇;
拼装模块,用于将节点簇中文本向量对应的原始文本进行拼装,得到融合文本;
提取模块,用于提取融合文本的关键词,作为至少两个原始文本的关键词。
其中,该第二获取模块包括:
第一分词单元,用于对至少两个原始文本进行词性标注,根据所标注的词性对至少两个原始文本进行分词;
匹配单元,用于根据停用词表和保留词表对分词进行匹配,得到待过滤文本;停用词表用于存储待过滤的分词,保留词表用于确定不属于停用词表中的分词的过滤关系;
剔除单元,用于从至少两个原始文本中剔除待过滤文本,得到待编码文本;
提取单元,用于对待编码文本进行特征提取,得到待编码文本对应的初始文本向量;
降维单元,用于对初始文本向量进行降维处理,得到文本向量。
其中,该提取单元包括:
字符编码子单元,用于对待编码文本中的字符进行字符编码,得到待编码文本中的字符对应的字符向量;
位置编码子单元,用于对待编码文本中的字符进行位置编码,得到待编码文本中的字符对应的位置向量;
第一确定子单元,用于基于字符向量以及位置向量,确定待编码文本对应的初始文本向量。
其中,该构建模块包括:
第一确定单元,用于将至少两个文本向量均确定为拓扑节点,获取拓扑节点之间的向量距离;
构建单元,用于根据拓扑节点以及拓扑节点之间的向量距离,构建最短路径拓扑图;最短路径拓扑图中的边的权重参数是由向量距离所确定的;
划分单元,用于基于最短路径拓扑图中的边的权重参数,对最短路径拓扑图中的拓扑节点进行划分,得到最短路径拓扑图对应的初始聚类树;
删减单元,用于根据初始聚类树中的树节点中所包含的拓扑节点的数量,对初始聚类树中的树节点进行删减处理,得到聚类树。
其中,该构建单元包括:
构建子单元,用于根据拓扑节点以及拓扑节点之间的向量距离,构建初始拓扑图;初始拓扑图包括拓扑节点ti,拓扑节点tj以及拓扑节点tk,i、j和k均为小于或等于n的正整数,n为至少两个文本向量的数量,i、j和k互不相同;
第一添加子单元,用于在初始拓扑图中选取拓扑节点ti,确定与拓扑节点ti具有最小权重参数的连接边对应的拓扑节点tj,将拓扑节点ti和拓扑节点tj添加至最短路径拓扑图;
第二确定子单元,用于将初始拓扑图中除了最短路径拓扑图所包含的拓扑节点之外的拓扑节点,确定为剩余拓扑节点;
第二添加子单元,用于在剩余拓扑节点中确定与拓扑节点ti和拓扑节点tj具有最小权重参数的连接边对应的拓扑节点tk,将拓扑节点tk添加至最短路径拓扑图,直至剩余拓扑节点为空,完成对最短路径拓扑图的构建。
其中,该第一确定单元包括:
第三确定子单元,用于确定与拓扑节点ti相关联的k个拓扑节点分别对应的原始距离,将与拓扑节点ti具有最大的原始距离确定为第一距离;k为小于或者等于n的正整数;
第四确定子单元,用于确定与拓扑节点tj相关联的k个拓扑节点分别对应的原始距离,将与拓扑节点tj具有最大的原始距离确定为第二距离;
第五确定子单元,用于确定拓扑节点ti与拓扑节点tj之间的原始距离,将拓扑节点ti与拓扑节点tj之间的原始距离确定为第三距离;
第六确定子单元,用于基于第一距离,第二距离以及第三距离,确定拓扑节点ti与拓扑节点tj之间的向量距离。
其中,该删减单元包括:
第一获取子单元,用于获取初始聚类树中的父树节点的子树节点am所包含的拓扑节点的数量,作为第一数量,获取父树节点的子树节点an所包含的拓扑节点的数量,作为第二数量;m和n均为小于或等于f的正整数,f为初始聚类树中所包含的树节点的数量,m和n不相同;
第一删除子单元,用于若第一数量与第二数量均未达到数量阈值,则删除子树节点am和子树节点an;
保留子单元,用于若第一数量与第二数量均达到数量阈值,则保留子树节点am和子树节点an;
第二删除子单元,用于若第一数量未达到数量阈值,且第二数量达到数量阈值,则删除子树节点am,将父树节点替换为子树节点an;
第七确定子单元,用于根据所保留的树节点,得到聚类树。
其中,该第一确定模块包括:
第二确定单元,用于将聚类树中的父树节点bx的稳定性参数作为第一稳定性参数,将父树节点对应的子树节点by的稳定性参数和子树节点bz的稳定性参数之和作为第二稳定性参数;稳定性参数是基于向量距离所确定的;
替换单元,用于若第一稳定性参数小于第二稳定性参数,则将第一稳定性参数替换为第二稳定性参数;
删除单元,用于若第一稳定性参数大于或者等于第二稳定性参数,则将父树节点bx确定为用于分簇的树节点,删除子树节点bz和子树节点by;
第三确定单元,用于将用于分簇的树节点作为聚类树中的节点簇。
其中,该第二删除子单元还用于:
若第一数量未达到数量阈值,且第二数量达到数量阈值,则将所删除的子树节点am中的拓扑节点确定为噪声节点;
获取聚类树中的节点簇的中心拓扑节点;
基于噪声节点与中心拓扑节点之间的向量距离,将与噪声节点具有最小向量距离的节点簇确定为目标节点簇;
将噪声节点添加至目标节点簇中。
其中,该提取模块包括:
第二分词单元,用于对融合文本进行分词;
统计单元,用于统计分词在节点簇中的频率以及分词在节点簇之外的其它节点簇中的逆频率;
第四确定单元,用于基于频率以及逆频率,确定分词的关键词评估参数;
第五确定单元,用于基于关键词评估参数,选取p个分词作为节点簇的关键词;p为正整数。
其中,该装置还包括:
第二确定模块,用于对节点簇中的拓扑节点之间的向量距离进行均值处理,得到节点簇中的拓扑节点对应的第一平均值;
第一排序模块,用于对第一平均值进行排序,根据第一平均值的排序结果,展示节点簇中的拓扑节点对应的原始文本。
其中,节点簇的数量为至少两个;
装置还包括:
第三确定模块,用于对至少两个节点簇中每个节点簇的第一平均值进行均值处理,得到用于表示节点簇的聚类效果的第二平均值;
第二排序模块,用于对至少两个节点簇分别对应的第二平均值进行排序,根据第二平均值的排序结果,展示至少两个节点簇。
本申请一方面提供了一种计算机设备,包括:处理器、存储器、网络接口;
该处理器与存储器、网络接口相连,其中,网络接口用于提供数据通信功能,该存储器用于存储计算机程序,该处理器用于调用该计算机程序,以执行本申请实施例中一方面中的方法。
本申请一方面提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令当被处理器执行时,执行本申请实施例中一方面中的方法。
本申请实施例可以根据所获取的与至少两个原始文本相关联的文本向量,从而可以确定该文本向量之间的向量距离。其中,该文本向量是对原始文本进行深层次语义信息编码所确定的。进一步地,本申请实施例可以根据该距离向量,构建聚类树,进而可以根据该聚类树的树节点的稳定性参数,快速的将用于进行分簇的树节点作为节点簇,并提取该节点簇的关键词,从而可以提高对原始文本的聚类效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种网络架构的结构示意图;
图2是本申请实施例提供的一种进行业务数据交互的场景示意图;
图3是本申请实施例提供的一种数据处理方法的流程示意图;
图4是本申请实施例提供的一种bert模型的结构示意图;
图5是本申请是实施例提供的一种确定两个拓扑节点之间的向量距离的场景示意图;
图6是本申请实施例提供的一种构建最短路径拓扑图的场景示意图;
图7是本申请实施例提供的一种构建初始聚类树的场景示意图;
图8是本申请实施例提供的一种构建聚类树的场景示意图;
图9是本申请实施例提供的一种数据处理方法的流程示意图;
图10是本申请实施例提供的一种确定问题文本对应的答案文本的场景示意图;
图11是本申请实施例提供的一种数据处理装置的结构示意图;
图12是本申请实施例提供的一种计算机设备的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1,是本申请实施例提供的一种网络架构的结构示意图。如图1所示,该网络架构可以包括服务器2000和用户终端集群,该用户终端集群可以包括多个用户终端,如图1所示,具体可以包括用户终端3000a、用户终端3000b、用户终端3000c、…、用户终端3000n。
如图1所示,用户终端3000a、用户终端3000b、用户终端3000c、…、用户终端3000n可以分别与服务器2000进行网络连接,以便于每个用户终端可以通过该网络连接与服务器2000进行数据交互。
如图1所示,该用户终端集群中的每个用户终端均可以安装有目标应用,当该目标应用运行于各用户终端中时,可以分别与上述图1所示的服务器2000之间进行数据交互,其中,该目标应用可以为在自动化客服领域等人工智能领域中进行业务处理的应用。例如,该目标应用可以用于售前的导购、售后的服务、医院的导诊、医疗的辅助诊断以及游戏场景中的游戏助手(例如,游戏知己)等。
可以理解的是,所谓人工智能(artificialintelligence,简称ai)是指利用数字计算机或者数据计算机控制的计算机设备(例如,图1所示服务器2000)来进行模拟、延伸和扩展人的智能的理论、方法、技术以及应用系统的一门新的技术科学。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
其中,自然语言处理(naturelanguageprocessing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
可以理解的是,本申请实施例中的计算机设备可以为具有文本聚类处理功能的实体终端,该实体终端可以为如图1所示的服务器2000,还可以为问答机器人对应的终端设备,在此不做限定。
其中,为便于理解,本申请实施例可以在图1所示的多个用户终端中选择一个用户终端作为目标用户终端,该目标用户终端可以包括:智能手机、平板电脑、桌上型电脑等具有文本聚类处理功能的智能终端。例如,本申请实施例可以将图1所示的用户终端3000a作为目标用户终端,该目标用户终端中可以集成有目标应用,此时,该目标用户终端可以通过该目标应用对应的业务数据平台与服务器2000之间实现数据交互。
为便于理解,进一步地,请参见图2,是本申请实施例提供的一种进行业务数据交互的场景示意图。本申请实施例中的服务器10a可以以图1所示的服务器2000为例,用以阐述计算机设备对原始文本进行聚类处理的具体实现方式。如图2所示,本申请实施例中的用户终端10b可以为图1所示的用户终端集群中的任意一个用户终端(例如,用户终端3000b)。本申请实施例中的数据库10c可以为与该服务器10a具有网络连接关系的数据库10c。该数据库10c中存储的数据包括问题文本和答案文本。
应当理解,用户终端10b可以响应该用户终端10b对应的用户的触发操作,从而可以向该服务器10a发送问题文本。其中,该触发操作可以包含点击或者长按等接触性操作,也可以包含语音或者手势等非接触性操作,这里将不对其进行限定。其中,该问题文本可以为游戏场景中的游戏玩家所提出的与游戏相关联的问题。例如,“具备速度属性的xx装备可以提升多少速度?”。该原始文本也可以为学习场景中的学生所提出的与专业知识相关的问题。例如,“加速度的概念是什么?”。该原始文本还可以为购物场景中的顾客所提出的与商品有关的问题。例如,“女装在商场的哪一层?”。该原始文本还可以为其他场景中所提出的问题,这里不对其进行限定。
进一步地,该服务器10a在接收到问题文本(例如,问题文本1)后,可以快速的确定该问题文本1与数据库10c中的各个问题文本之间的相似度,从而可以从该数据库10c中确定出具有最高匹配度的问题文本(例如,问题文本2)。进一步地,该服务器10a可以将该问题文本2对应的答案文本(例如,答案文本2)作为该问题文本1的答案文本,并将该答案文本2返回给该用户终端10b。
应当理解,该服务器10a在获得用户终端10b所发送的问题文本时,可以将该问题文本发送给数据库10c,以使该数据库10c可以存储用户终端10b对应的用户所提出的问题文本。可以理解的是,该服务器10a可以对数据库10c中所存储的问题文本进行聚类。其中,该服务器10a可以定期的从数据库10c中获取至少两个原始文本。其中,该服务器10a所获取的原始文本可以为该数据库10c中所存储的问题文本。
进一步地,该服务器10a可以获取至少两个原始文本分别对应的文本向量。该服务器10a可以确定至少两个文本向量之间的向量距离,从而可以构建聚类树。其中,该聚类树中可以包括根节点、叶子节点以及该根节点与叶子节点之间的中间节点。该根节点包含与至少两个原始文本相关联的文本向量,该叶子节点包括具有相同向量距离的文本向量。例如,若该服务器从数据库10c中所获取的原始文本可以分别对应10个文本向量,则该聚类树的根节点可以包括这10个文本向量。
进一步地,该服务器10a可以根据该聚类树中的树节点对应的稳定性参数,将该聚类树中用于分簇的树节点,作为节点簇。其中,稳定性参数是用于指示该树节点的稳定性程度,该稳定性参数是基于向量距离所确定的。可以理解的是,若该聚类树中的树节点(例如,树节点a)的稳定性参数越大,则可以理解为该树节点a的稳定性越好。本申请实施例中的节点簇是该服务器10a对原始文本进行聚类处理后所得到的聚类集群。
可以理解的是,该服务器10a可以将该节点簇中所包含的文本向量对应的原始文本进行拼装,得到融合文本。进一步地,该服务器10a可以提取该融合文本中的关键词,作为该节点簇的关键词,从而可以得到该服务器10a所获取的与至少两个原始文本对应的关键词。进一步地,该服务器10a可以将该至少两个原始文本进行聚类处理后所得到的节点簇以及每一个节点簇分别对应的关键词,展示在该用户终端10b的显示界面100上,以便于与该用户终端10b相关联的工作人员可以快速的进行人工筛选,从而可以扩充该数据库10c所存储的问题文本。例如,该服务器10a对所获取的原始文本进行聚类处理后,得到两个聚类集群,即节点簇a和节点簇b。其中,该节点簇a中所提取的关键词可以为“如何”、“广告”以及“转位”。该节点簇b所提取的关键词可以为“内存”、“网络”以及“黑屏”。其中,该显示界面100上可以显示最新聚类的文本数据,例如,图2所示的问题文本10可以为最新聚类的文本数据。
可以理解的是,本申请实施例中的服务器10a对原始文本进行聚类处理,可以快速得到与该原始文本相关联的节点簇以及该节点簇对应的关键词,以便于进行后续的人工筛选,从而可以在大量的原始文本(即问题文本)中发现新的问题类型,也可以识别出问题类型的不同问法,进而可以扩充数据库10c。
其中,该计算机设备对原始文本进行聚类处理,从而得到该原始文本对应的关键词的具体实现方式可以参见下述图3-图10所对应的实施例。
进一步地,请参见图3,是本申请实施例提供的一种数据处理方法的流程示意图。如图3所示,该方法可以包括:
s101,获取至少两个原始文本。
具体地,本申请实施例中的计算机设备可以从与该计算机设备具有网络连接关系的数据库中,定期获取至少两个原始文本。其中,该原始文本是数据库中所存储的问题文本,该问题文本是由与该计算机设备具有网络连接关系的用户终端通过该计算机设备发送给该数据库的。
其中,本申请实施例中计算机设备可以为具有文本聚类处理功能的实体终端,该实体终端可以为如图1所示的服务器2000,还可以为问答机器人对应的终端设备,在此不做限定。
s102,获取至少两个原始文本分别对应的文本向量,根据至少两个文本向量之间的向量距离,构建聚类树。
其中,该聚类树可以包括根节点、叶子节点以及该根节点与该叶子节点之间的中间节点;该根节点包括该与至少两个原始文本相关联的文本向量、该叶子节点包括具有相同向量距离的文本向量。
具体地,该计算机设备可以获取至少两个原始文本分别对应的文本向量。其中,一个原始文本对应一个文本向量。进一步地,该计算机设备可以将该至少两个文本向量均确定为拓扑节点,并可以获取该拓扑节点之间的向量距离。此时,该计算机设备可以根据该拓扑节点以及该拓扑节点之间的向量距离,构建最短路径拓扑图。其中,该最短路径拓扑图中的边的权重参数是由该向量距离所确定的。该计算机设备可以基于该最短路径拓扑图中的边的权重参数,对该最短路径拓扑图中的拓扑节点进行划分,得到该最短路径拓扑图对应的初始聚类树。进一步地,该计算机设备可以根据该初始聚类树中的树节点中所包含的拓扑节点的数量,对初始聚类树中的该树节点进行删减处理,得到聚类树。
应当理解,该计算机设备可以获取至少两个原始文本分别对应的文本向量。其中,可以理解的是,该计算机设备可以对从数据库中获取的至少两个原始文本进行词性标注,并根据所标注的词性对该至少两个原始文本进行分词。进一步地,该计算机设备可以根据停用词表和保留词表对该分词进行匹配,得到待过滤文本。其中,本申请实施例可以将没有实际含义的文本确定为待过滤文本。例如,“aaaaaaaaaa”这样一句没有实际含义的文本。
其中,停用词表是指在信息检索中,为节省存储空间和提高搜索效率,在处理自然语言数据(或文本)之前会自动过滤掉的某些词,这些词被称之为停用词。例如,“嘿”、“哼”、“呼哧”、“要么”、“要不是”以及标点符号等。换言之,该计算机设备可以根据该停用词表,将不属于该停用词表中的分词统称为非停用词。
保留词表可以包括特殊词表(例如,问答机器人场景中的实用词表)和可接受词性表。该特殊词表是人工定义的一些具有实义的词语,例如,青龙偃月刀、xx铠甲、xx符篆等。该可接受词性表中可以包含形容词、叹词、方位词、成语、简称略称、后接成分、习用语、名词、拟声词、代词、处所词、时间词、动词、语气词等。
进一步地,该计算机设备可以根据该保留词表,确定非停用词的过滤关系。其中,若某一分词(例如,分词a)不属于停用词表中的词语,且该分词a不属于该保留词表中的词语,则该计算机设备可以将该分词a的过滤关系确定为需要过滤的过滤词。若某一分词(例如,分词b)不属于停用词表中的词语,且该分词b属于该保留词表中的词语,则该计算机设备可以将该分词b的过滤关系确定为需要保留的保留词。
可以理解的是,若对一个原始文本a中进行分词后,所得到的所有分词均为过滤词,则该计算机设备可以将该原始文本a确定为待过滤文本。例如,该待过滤文本a可以为“12345678980”这样一句没有实际含义的文本。
进一步地,该计算机设备可以从所获取的原始文本中剔除该待过滤文本,从而得到待编码文本。其中,本申请实施例可以将除待过滤文本之外的原始文本确定为待编码文本。例如,该计算机设备所获取的原始文本可以为原始文本a、原始文本b、原始文本c以及原始文本d。进一步地,该计算机设备可以根据停用词表和保留词表,确定出这4个原始文本中的待过滤文本,即原始文本a。此时,该计算机设备可以将原始文本b、原始文本c以及原始文本d确定为待编码文本。
应当理解,该计算机设备可以对该待编码文本进行特征提取,从而可以得到与该待编码文本对应的初始文本向量。其中,可以理解的是,该计算机设备对待编码文本进行特征提取时,可以通过一种语言表征模型(bidirectionalencoderrepresentationsfromtransformers,简称,bert)得到与该待编码文本对应的初始文本向量。其中,该bert模型是采用在中文维基百科大型数据集上通过掩盖语言模型(maskedlanguagemodel,简称,mlm)和下一句预测模型(nextsentencepredicate,简称,nsp)所预训练好的多层双向编码器。
为便于理解,进一步地,请参见图4,是本申请实施例提供的一种bert模型的结构示意图。如图4所示,该bert模型中可以包括h个相同的层堆叠在一起,其中,h可以为正整数。每一层有两个支层,其中一个支层可以为一个多头的自注意力层和归一化层所构成的层,另一个支层可以为一个简单的全连接前馈网络(即逐位置前向传播层)和归一化层所构成的层。
应当理解,该计算机设备可以对待编码文本中的字符进行字符编码,从而可以得到该待编码文本中的字符对应的字符向量。可以理解的是,该计算机设备可以将该待编码文本中的每一个字符分别用唯一的标记token(例如,整型数字)来表示,从而转化为字符向量。其中,该字符向量的维度可以为该bert模型支层的输出维度dmodel。进一步地,该计算机设备可以对该待编码文本中的字符进行位置编码,从而可以得到该待编码文本中的字符对应的位置向量。其中,位置编码的形式有多种选择,既有学习到的也有固定不变的,本申请实施例可以以正弦函数和余弦函数为例,用以阐述对待编码文本中的字符进行位置编码。
具体地,位置编码的公式可以如下述公式(1)和公式(2)所示:
其中,pos是字符的位置,i是维度,dmodel是该bert模型支层的输出维度。
可以理解的是,由于该待编码文本的每一个字符的字符向量和该字符的位置向量的维度均可以为dmodel,所以该计算机设备可以将每一个字符的该字符向量和位置向量进行叠加,从而得到该待编码文本的字符的叠加向量,进而传输至该bert模型中的多头自注意力层。
具体地,该多头注意力层中的输出矩阵可以如公式(3)至公式(5)所示:
where:headi=attention(qwiq,kwik,vwiv),(3)
multihead(q,k,v)=concat(head1,...,headh)wo,(4)
其中,q、k、v均可以为该待编码文本传输至该多头自注意力层的特征向量,wiq、wik、wiv均可以为映射的参数矩阵,wo可以为该多头自注意力层中的可训练权重参数,h为多头自注意力层的层数,dk可以为k的维度,且dk=dmodel/h。
进一步地,该计算机设备可以将从多头自注意力层输出的待编码文本的输出向量,传输至该bert模型中的逐位置前向传播层。应当理解,该计算机设备可以将从该bert模型中输出的输出向量称之为初始文本向量。具体地,该逐位置前向传播层的公式可以如下述公式(6)所示:
ffn(x)=max(0,xw1 b1)w2 b2,(6)
其中,x是该待编码文本从多头自注意力层所输出的输出向量,w1、w2、b1以及b2均可以为可训练权重参数。
如图4所示,该bert模型中可以包含12层多头自注意力层,经过该bert进行编码的向量维度dmodel可以为768维度。其中,待编码文本a中可以有30个字符,对该待编码文本a中的每个字符分别进行字符编码,从而可以得到30个1×768维度的字符向量。进一步地,该待编码文本a中的每个字符分别进行位置编码,从而可以得到30个1×768维度的位置向量。
此时,该计算机设备可以基于该位置向量以及该字符向量,得到30个1×768维度的叠加向量。进一步地,该计算机设备可以将该待编码文本的字符的叠加向量并在一起,从而可以得到该待编码文本传输至该多头自注意力层的30×768维度的特征向量。应当理解,该30×768维度的特征向量经过该bert模型中的多头自注意力层以及逐位置前向传播层,可以得到该待编码文本a对应的初始文本向量a。
进一步地,该计算机设备可以对该初始文本向量进行降维处理,从而可以得到该待编码文本的文本向量。其中,本申请实施例可以将降维处理后的初始文本向量称之为文本向量。可以理解的是,该机算机设备可以获取搜索领域k以及最小容纳距离。其中,该搜索领域k可以用于确定相邻初始文本向量的数量,k为小于或等于n的正整数,n为至少两个文本向量的数量;该最小容纳距离可以用于控制该初始文本向量允许嵌入的紧密程度。
该计算机设备可以从所得到的初始文本向量中随意选择一个初始文本向量作为目标初始文本向量。其中,该目标初始文本向量可以为具有高维空间的特征向量,例如,该目标初始文本向量可以为30×768维度的特征向量。然后,该计算机设备可以在该高维空间(例如,768维空间)中,确定与该目标初始文本向量相关联的k个初始文本向量分别对应的原始距离,将所述目标初始文本向量投影到低维空间(例如,2维空间),得到该目标初始文本向量对应的文本向量。进一步地,该计算机设备可以在该低维空间中,确定与该目标初始文本向量对应的文本向量相关联的k个文本向量分别对应的原始距离。
此时,该计算机设备可以基于最小容纳距离,优化该低维空间中所表示的文本向量。换言之,该计算机设备可以使用梯度下降算法(例如,随机梯度算法),从而对所确定的原始距离之间差异进行最小化。其中,梯度下降算法可以包含多种不同的算法,有批量梯度算法,随机梯度算法,折中梯度算法等等。对于随机梯度算法而言,该计算机设备可以通过不停的判断和选择当前目标初始文本向量下的最短路径,从而能够在最短路径下达到最优的结果。
其中,该计算机设备确定与该目标初始文本向量对应的文本向量相关联的k个文本向量分别对应的原始距离的具体实现方式可以参见下述图5所对应的实施例中的描述,在此不再继续进行赘述。
应当理解,本申请实施例可以采用一种数据降维工具对该初始文本向量进行降维处理。例如,流式降维工具(uniformmanifoldapproximationandprojectionfordimensionreduction,简称,umap)。该umap是一种基于多种学习技术和拓扑数据分析思想的降维算法,其特点在于能够保留数据集(即待编码文本的初始文本向量)的流形空间结构和密度空间分布,从而可以在对该待编码文本进行聚类处理时,提高聚类效果。其中,该umap可以通过设置搜索领域(例如,24)和最小容纳距离(例如,0),对该原始文本的文本向量进行降维处理。
比如,如图4所示的待编码文本a对应的初始文本向量a可以为30×768维度的向量,该计算机设备可以采用公开的流式降维工具umap对该初始文本向量a进行降维处理,从而可以得到该待编码文本a对应的文本向量,该文本向量可以为30×2维度的向量,极大程度的降低了该待编码文本的初始文本向量的维度,从而使得该待编码文本的在空间分布上更加密集,内存占用空间更小,进而使得该待编码文本聚类的效果更好。
进一步地,该计算机设备可以对待编码文本的文本向量进行聚类处理,从而可以得到与该原始文本相关联的聚类树。其中,本申请实施例可以采用一种开源的聚类方法(例如,density-basedclusteringbasedonhierarchicaldensityestimates,简称,hdbscan)对该计算机设备所获得的至少两个文本向量进行聚类处理。应当理解,该计算机设备可以将与该原始文本相关联的文本向量确定为拓扑节点。其中,该计算机设备所确定的文本向量的数量为n,n为大于或者等于2的正整数。进一步地,该计算机可以获取该拓扑节点之间的向量距离。
具体地,确定向量距离的公式可以如下述公式(7)所示:
dmreach-k(a,b)=max{corek(a),corek(b),d(a,b)},(7)
其中,k可以为该计算机设备所确定搜索领域,该搜索领域用于确定相邻拓扑节点的数量,k为小于或者等于n的正整数。corek(x)可以表示在搜索领域内与拓扑节点x具有最大原始距离的向量距离。d(a,b)可以表示拓扑节点a与拓扑节点b之间的原始距离。
其中,可以理解的是,该计算机设备所确定的拓扑节点可以包含拓扑节点ti和该拓扑节点tj,i和j为互不相同的正整数。应当理解,该计算机设备可以确定与该拓扑节点ti相关联的k个拓扑节点分别对应的原始距离,将与该拓扑节点ti具有最大的原始距离确定为第一距离。进一步地,该计算机设备可以确定与该拓扑节点tj相关联的k个拓扑节点分别对应的原始距离,将与该拓扑节点tj具有最大的原始距离确定为第二距离。然后,该计算机设备可以确定该拓扑节点ti与该拓扑节点tj之间的原始距离,将该拓扑节点ti与该拓扑节点tj之间的原始距离确定为第三距离。进一步地,该计算机设备可以基于该第一距离,该第二距离以及该第三距离,确定该拓扑节点ti与该拓扑节点tj之间的向量距离。
为便于理解,进一步地,请参见图5,是本申请是实施例提供的一种确定两个拓扑节点之间的向量距离的场景示意图。如图5所示,本申请实施例中的拓扑节点图中的拓扑节点是计算机设备所获取的原始文本分别对应的文本向量,其中,该计算机设备所获取的原始文本分别对应的文本向量的数量n可以为12个,所以该拓扑节点图中的拓扑节点可以为12个。本申请实施例中的计算机设备所确定的搜索领域k可以以3个为例,用以阐述确定向量距离的具体实现方式。
如图5所示,该计算机设备可以确定拓扑节点1与拓扑节点2之间的向量距离。其中,可以理解的是,该计算机设备可以确定与该拓扑节点1相关联的3个拓扑节点分别对应的原始距离,从而可以确定出该拓扑节点1与拓扑节点3之间的原始距离(即d(1,3))最大,进而可以将该原始距离d(1,3)确定为第一距离。
进一步地,该计算机设备可以确定与该拓扑节点2相关联的3个拓扑节点分别对应的原始距离,从而可以确定该拓扑节点2与拓扑节点4之间的原始距离(即d(2,4))最大,进而可以将该原始距离d(2,4)确定为第二距离。然后,该计算机设备可以将该拓扑节点1与该拓扑节点2之间的原始距离(即d(1,2))确定为第三距离。进一步地,该计算机设备可以根据公式(7),从该第一距离,该第二距离以及该第三距离中选择最大距离,并将该最大距离确定为该拓扑节点1与该拓扑节点2之间的向量距离(例如,第三距离)。
应当理解,该计算机设备可以通过该拓扑节点和该拓扑节点之间的向量距离,构建最短路径拓扑图。其中,本申请实施例可以将根据与拓扑节点具有最小权重参数的边所构建的拓扑图确定为最短路径拓扑图。该最短路径拓扑图中的边的权重参数是由该拓扑节点之间的向量距离所确定的。
其中,可以理解的是,该计算机设备可以根据该拓扑节点以及该拓扑节点之间的向量距离,构建初始拓扑图。其中,该初始拓扑图可以包括拓扑节点ti,拓扑节点tj以及拓扑节点tk,i、j和k均为小于或等于n的正整数,n为该至少两个文本向量的数量,i、j和k互不相同。
进一步地,该计算机设备可以在该初始拓扑图中选取拓扑节点ti,进而可以确定与该拓扑节点ti具有最小权重参数的连接边对应的拓扑节点tj,并将该拓扑节点ti和该拓扑节点tj添加至最短路径拓扑图。进一步地,该计算机设备可以将该初始拓扑图中除了该最短路径拓扑图所包含的拓扑节点之外的拓扑节点,确定为剩余拓扑节点。然后,该计算机设备可以在该剩余拓扑节点中确定与该拓扑节点ti和该拓扑节点tj具有最小权重参数的连接边对应的拓扑节点tk,并将该拓扑节点tk添加至最短路径拓扑图,直至该剩余拓扑节点为空,完成对该最短路径拓扑图的构建。
为便于理解,进一步地,请参见图6,是本申请实施例提供的一种构建最短路径拓扑图的场景示意图。如图6所示,本申请实施例中的初始拓扑图a是计算机设备根据拓扑节点与拓扑节点之间的向量距离所构建的。该初始拓扑图a中可以包含多个拓扑节点,具体可以包含:拓扑节点a、拓扑节点b、拓扑节点c、拓扑节点d、拓扑节点e以及拓扑节点f。
应当理解,该计算机设备可以在该初始拓扑图a中随机选取一个拓扑节点a,并确定其他拓扑节点与该拓扑节点a的连接边的权重参数。如图6所示的拓扑图a的拓扑节点c下的(a,1)表示该拓扑节点c与该拓扑节点a的连接边的权重参数为1,该权重参数是由该拓扑节点a与该拓扑节点c之间的向量距离所确定的。
如图6中的拓扑图a所示,进一步地,该计算机设备可以确定出与该拓扑节点a具有最小权重参数(即1)的连接边对应的拓扑节点c。此时,该计算机设备可以将该拓扑节点a与该拓扑节点c添加至最短路径拓扑图中。应当理解,该计算机设备可以将除了该最短路径拓扑图所包含的拓扑节点之外的拓扑节点确定为剩余拓扑节点。图6的拓扑图a中的剩余拓扑节点具体可以包含拓扑节点b、拓扑节点d、拓扑节点e以及拓扑节点f。
如图6中的拓扑图b所示,该计算机设备可以在图6的拓扑图a中的剩余拓扑节点中确定与拓扑节点a和拓扑节点c具有最小权重参数(即4)的连接边对应的拓扑节点f。此时,该计算机设备可以将该拓扑节点f添加至最短路径拓扑图中。图6的拓扑图b中的剩余拓扑节点具体可以包含拓扑节点b、拓扑节点d以及拓扑节点e。
如图6中的拓扑图c所示,该计算机设备可以在图6的拓扑图b中的剩余拓扑节点中确定与拓扑节点a、拓扑节点c和拓扑节点f具有最小权重参数(即2)的连接边对应的拓扑节点d。此时,该计算机设备可以将该拓扑节点d添加至最短路径拓扑图中。图6的拓扑图c中的剩余拓扑节点具体可以包含拓扑节点b以及拓扑节点e。
如图6中的拓扑图d所示,该计算机设备可以在图6的拓扑图c中的剩余拓扑节点中确定与拓扑节点a、拓扑节点c、拓扑节点f和拓扑节点d具有最小权重参数(即5)的连接边对应的拓扑节点b。此时,该计算机设备可以将该拓扑节点b添加至最短路径拓扑图中。图6的拓扑图d中的剩余拓扑节点具体可以包含拓扑节点e。
如图6中的拓扑图e所示,该计算机设备可以在图6的拓扑图d中的剩余拓扑节点中确定与拓扑节点a、拓扑节点c、拓扑节点f、拓扑节点d以及拓扑节点b具有最小权重参数(即3)的连接边对应的拓扑节点e。此时,该计算机设备可以将该拓扑节点e添加至最短路径拓扑图中。图6的拓扑图e中的剩余拓扑节点为空。
应当理解,在剩余拓扑节点为空时,该计算机设备可以完成对该最短路径拓扑图的构建。其中,本申请实施例中的计算机设备所构建的与原始文本相关联的最短路径拓扑图可以如图6的最短路径拓扑图b所示。
应当理解,该计算机设备还可以基于该最短路径拓扑图中的边的权重参数,对该最短路径拓扑图中的拓扑节点进行划分,从而可以得到该最短路径拓扑图对应的初始聚类树。
为便于理解,进一步地,请参见图7,是本申请实施例提供的一种构建初始聚类树的场景示意图,如图7所示,本申请实施例中的最短路径拓扑图x中的边的权重参数是由该拓扑节点之间的向量距离所确定的。其中,本申请实施例中的计算机设备所获取的原始文本分别对应的文本向量的数量可以为15个,所以该最短路径拓扑图x可以包含15个拓扑节点,具体可以包含拓扑节点a、拓扑节点b、拓扑节点c、拓扑节点d、拓扑节点e、拓扑节点f、拓扑节点g、拓扑节点h、拓扑节点i、拓扑节点j、拓扑节点k、拓扑节点l、拓扑节点m、拓扑节点n以及拓扑节点o。
应当理解,该计算机设备可以将该最短路径拓扑图x中的边根据权重参数进行排序(例如,根据递增顺序进行排序),从而可以将边的两端的拓扑节点划分为初始聚类树中的树节点。如图7所示,该计算机设备可以将拓扑节点a与拓扑节点b之间的边称之为边ab。其中,边ab的权重参数为1。以此类推,在此不再赘述。
此时,该计算机设备可以基于边的权重参数进行排序。例如,边ab,边bc,边cd,边ij,边jk,边mn,边ef,边eg,边hl,边mo,边hi,边de,边dh以及边lm。进一步地,由于该边ab、边bc与边cd的权重参数均为1,且拓扑节点a、拓扑节点b、拓扑节点c以及拓扑节点d相邻,所以该计算机设备可以将该边ab、边bc、边cd两端的拓扑节点划分为同一个层次(即区域a),并将该层次确定为用于构建初始聚类树的树节点a。
进一步地,该计算机设备可以根据权重参数为1的边ij和边jk,将拓扑节点i、拓扑节点j以及拓扑节点k划分为一个层次(即区域b)并将该层次确定为用于构建初始聚类树的树节点b。该计算机设备可以根据权重参数为1的边mn,将拓扑节点m以及拓扑节点n划分为一个层次(即区域c)并将该层次确定为用于构建初始聚类树的树节点c。该计算机设备可以根据权重参数为2的边ef和边eg,将拓扑节点e、拓扑节点f以及拓扑节点g划分为一个层次(即区域d)并将该层次确定为用于构建初始聚类树的树节点d。该计算机设备可以根据权重参数为2的边hl,将拓扑节点h以及拓扑节点l划分为一个层次(即区域e)并将该层次确定为用于构建初始聚类树的树节点e。
对于权重参数为3的边mo,由于拓扑节点m属于为区域c中的拓扑节点,所以该计算机设备可以将区域c中的拓扑节点m、拓扑节点n以及拓扑节点o划分为一个层次(即区域f),并将该层次确定为用于构建初始聚类树的树节点f。
对于权重参数为3的边hi,由于拓扑节点h属于区域e中的拓扑节点,拓扑节点i属于区域b中的拓扑节点,所以该计算机设备可以将区域e中的将拓扑节点与区域b中的拓扑节点划分为一个层次(即区域g),并将该层次确定为用于构建初始聚类树的树节点g。
对于权重参数为4的边de,由于拓扑节点d属于区域a中的拓扑节点,拓扑节点e属于区域d中的拓扑节点,所以该计算机设备可以将区域a中的将拓扑节点与区域d中的拓扑节点划分为一个层次(即区域h),并将该层次确定为用于构建初始聚类树的树节点h。
对于权重参数为5的边dh,由于拓扑节点d属于区域h中的拓扑节点,拓扑节点h属于区域g中的拓扑节点,所以该计算机设备可以将区域h中的将拓扑节点与区域g中的拓扑节点划分为一个层次(即区域i),并将该层次确定为用于构建初始聚类树的树节点i。
对于权重参数为7的边ln,由于拓扑节点l属于区域i中的拓扑节点,拓扑节点n属于区域f中的拓扑节点,所以该计算机设备可以将区域i中的将拓扑节点与区域f中的拓扑节点划分为一个层次(即区域f),并将该层次确定为用于构建初始聚类树的树节点j。
此时,该初始聚类树的树节点可以包含该最短路径拓扑图x中的所有拓扑节点,则该计算机设备可以完成对初始聚类树的构建。其中,该初始聚类树可以如图7中的初始聚类树y所示。
进一步地,该计算机设备可以根据该初始聚类树中的树节点中所包含的拓扑节点的数量,对该初始聚类树中的该树节点进行删减处理,得到聚类树。其中,可以理解的是,该计算机设备可以获取该初始聚类树中的父树节点的子树节点am所包含的拓扑节点的数量,作为第一数量。进一步地,该计算机设备可以获取该父树节点的子树节点an所包含的拓扑节点的数量,作为第二数量。其中m和n均为小于或等于f的正整数,f为该初始聚类树中所包含的树节点的数量,m和n不相同。
若该第一数量与该第二数量均未达到数量阈值,则该计算机设备可以删除该子树节点am和该子树节点an。若该第一数量与该第二数量均达到该数量阈值,则该计算机设备可以保留该子树节点am和该子树节点an。若该第一数量未达到该数量阈值,且该第二数量达到该数量阈值,则该计算机设备可以删除该子树节点am,并将该父树节点替换为该子树节点an。进一步地,该计算机设备可以根据所保留的树节点,得到聚类树。
为便于理解,进一步地,请参见图8,是本申请实施例提供的一种构建聚类树的场景示意图。如图8所示,本申请实施例中的初始聚类树80可以为图7所示的初始聚类树y。应当理解,本申请实施例中的计算机设备可以根据初始聚类树80中的树节点中所包含的拓扑节点的数量,从而可以得到该初始聚类树80对应的聚类树81。
其中,可以理解的是,该计算机设备可以由该初始聚类树80中的根节点j开始,自上而下的遍历整个初始聚类树80。对于该初始聚类树80中的树节点j,树节点i以及树节点f,本申请实施例可以将该树节点j称之为父树节点,该树节点j可以包括该子树节点(树节点i)和该子树节点(树节点f)。可以理解的是,该计算机设备可以获取该树节点i所包含的拓扑节点的数量(例如,12),还可以获取该树节点f所包含的拓扑节点的数量(例如,3)。此时,该计算机设备可以确定出该树节点i所包含的拓扑节点的数量与该树节点f所包含的拓扑节点的数量均达到数量阈值(例如,3),则该计算机设备可以保留该树节点i和该树节点f。
对于该初始聚类树80中的树节点i,树节点h以及树节点g,本申请实施例可以将该树节点i称之为父树节点,该树节点i可以包括该子树节点(树节点h)和该子树节点(树节点g)。可以理解的是,该计算机设备可以获取该树节点h所包含的拓扑节点的数量(例如,7),还可以获取该树节点g所包含的拓扑节点的数量(例如,5)。此时,该计算机设备可以确定出该树节点h所包含的拓扑节点的数量与该树节点g所包含的拓扑节点的数量均达到数量阈值(例如,3),则该计算机设备可以保留该树节点h和该树节点g。
对于该初始聚类树80中的树节点h,树节点a以及树节点d,本申请实施例可以将该树节点h称之为父树节点,该树节点h可以包括该子树节点(树节点a)和该子树节点(树节点d)。可以理解的是,该计算机设备可以获取该树节点a所包含的拓扑节点的数量(例如,4),还可以获取该树节点d所包含的拓扑节点的数量(例如,3)。此时,该计算机设备可以确定出该树节点a所包含的拓扑节点的数量与该树节点d所包含的拓扑节点的数量均达到数量阈值(例如,3),则该计算机设备可以保留该树节点a和该树节点d。
对于该初始聚类树80中的树节点g,树节点e以及树节点b,本申请实施例可以将该树节点g称之为父树节点,该树节点g可以包括该子树节点(树节点e)和该子树节点(树节点b)。可以理解的是,该计算机设备可以获取该树节点e所包含的拓扑节点的数量(例如,2),还可以获取该树节点b所包含的拓扑节点的数量(例如,3)。此时,该计算机设备可以确定出该树节点e所包含的拓扑节点的数量未达到该数量阈值(例如,3),该树节点b所包含的数量达到该数量阈值,则该计算机设备可以删除该树节点e,并将该树节点g替换为该树节点b。
对于该初始聚类树80中的树节点f以及树节点c本申请实施例可以将该树节点g称之为父树节点,该树节点g可以包括该子树节点(树节点c)和子树节点(拓扑节点o)。可以理解的是,该计算机设备可以获取该树节点c所包含的拓扑节点的数量(例如,2),还可以获取该树节点c所包含的拓扑节点的数量(例如,3)。此时,该计算机设备可以确定出该树节点c所包含的拓扑节点的数量以及拓扑节点o均未达到该数量阈值(例如,3),则该计算机设备可以删除该子树节点e以及该拓扑节点o。
此时,该计算机设备可以根据所保留的树节点,从而可以得到如图8所示的聚类树81。
s103,将聚类树中用于分簇的树节点,作为节点簇。
具体地,该计算机设备可以将该聚类树中的父树节点bx的稳定性参数作为第一稳定性参数,并可以将该父树节点对应的子树节点by的稳定性参数和子树节点bz的稳定性参数之和作为第二稳定性参数。其中,该x、y和z均为小于或等于o的正整数,o为该聚类树中的树节点的数量,x、y和z互不相同;该稳定性参数是基于该向量距离所确定的。应当理解,若该第一稳定性参数小于该第二稳定性参数,则该计算机设备可以将该第一稳定性参数替换为该第二稳定性参数。若该第一稳定性参数大于或者等于该第二稳定性参数,则该计算机设备可以将该父树节点bx确定为用于分簇的树节点,并可以删除该子树节点bz和该子树节点by。然后,该计算机设备可以将用于分簇的树节点作为该聚类树中的节点簇。
此外,若所述第一数量小于数量阈值,且第二数量大于数量阈值,则该计算机设备可以将所删除的子树节点am中的拓扑节点确定为噪声节点。进一步地,该计算机设备可以获取聚类树中的节点簇的中心拓扑节点。该计算机设备可以基于噪声节点与中心拓扑节点之间的向量距离,将与噪声节点具有最小向量距离的节点簇确定为目标节点簇,进而可以将该噪声节点添加至该目标节点簇中。
应当理解,该计算机设备可以基于拓扑节点之间的向量距离,确定与原始文本对应的聚类树中的树节点的稳定性参数。具体地,该计算机设备确定该树节点s的稳定性参数可以如下述公式(8)所示:
其中,λp可以为该聚类树中的树节点s中所包含的拓扑节点p因为分裂离开该树节点s时,所断开的连接边对应的向量距离的倒数。λdeath可以为该树节点s分裂时所断开的连接边对应的向量距离的倒数。
可以理解的是,本申请实施例中图8所对应的聚类树81是根据图7中的最短路径拓扑图x所确定的。例如,该聚类树81中的树节点h的稳定性参数可以根据公式(8)所确定。其中,该树节点h的λdeath可以为拓扑节点d与拓扑节点e之间的向量距离的倒数(例如,1/4),则该计算机设备确定出该树节点h的稳定性参数可以为2.75。
进一步地,该计算机设备可以从叶子节点a开始,自下而上的遍历整个聚类树81,从而可以将该聚类树81中用于分簇的树节点作为节点簇。比如,对于聚类树81中的树节点a(子树节点)、树节点d(子树节点)以及树节点h(父树节点),该计算机设备可以将该树节点h的稳定性参数作为第一稳定性参数(例如,2.75),将该树节点a的稳定性参数(例如,3)与树节点d的稳定性(例如,4)参数之和作为第二稳定性参数(例如,7)。此时,该计算机设备可以确定该第一稳定性参数小于该第二稳定性参数,则该计算机设备可以将该树节点h的第一稳定性参数替换为第二稳定性参数,即该树节点h的稳定性参数可以为7。
对于聚类树81中的树节点h(子树节点)、树节点b(子树节点)以及树节点i(父树节点),该计算机设备可以将该树节点i的稳定性参数作为第一稳定性参数(例如,10),将该树节点h的稳定性参数(例如,7)与树节点b的稳定性(例如,1.3)参数之和作为第二稳定性参数(例如,8.3)。此时,该计算机设备可以确定该第一稳定性参数大于该第二稳定性参数,则该计算机设备可以将该树节点i确定为用于进行分簇的树节点,并可以删除该树节点h和树节点b。进一步地,该计算机设备可以将该树节点i作为该聚类树81中的节点簇。
此外,为减少删除初始聚类树中的部分树节点而造成的数据丢失,该计算机设备可以对所删除的树节点中的拓扑节点重新确定该拓扑节点所属的节点簇,从而可以减小该计算机设备进行业务处理时的时间复杂度。
其中,可以理解的是,对于树节点g、树节点e以及树节点b而言,由于该树节点e该计算机可以将图7所示的初始聚类树y中的该树节点e所包含的拓扑节点的数量未达到该数量阈值(例如,3),该树节点b所包含的数量达到该数量阈值,则该计算机设备可以删除该树节点e,并将该树节点g替换为该树节点b。此时,该计算机设备可以将该树节点e中的拓扑节点(即拓扑节点h以及拓扑节点l)确定为噪声节点。
进一步地,该计算机设备可以获取图8所示聚类树81中的节点簇的中心拓扑节点。例如,该计算机设备可以确定该聚类树81中的节点簇为树节点h和树节点f,则该计算机设备可以确定该树节点h的中心拓扑节点为拓扑节点d,该树节点f的拓扑节点为拓扑节点m。
此时,对于拓扑节点h(即噪声节点),该计算机设备可以确定该拓扑节点h分别与拓扑节点d和拓扑节点m之间的向量距离。进一步地,该计算机设备可以将与该拓扑节点h具有最小向量距离的节点簇确定为目标节点簇(例如,树节点h),并将该拓扑节点h添加至该目标节点簇中。
对于拓扑节点l(即噪声节点),该计算机设备可以确定该拓扑节点l分别与拓扑节点d和拓扑节点m之间的向量距离。进一步地,该计算机设备可以将与该拓扑节点l具有最小向量距离的节点簇确定为目标节点簇(例如,树节点h),并将该拓扑节点l添加至该目标节点簇中。
s104,将节点簇中文本向量对应的原始文本进行拼装,得到融合文本。
具体地,该计算机设备可以将节点簇中文本向量对应的原始文本进行拼装,从而可以得到融合文本。
应当理解,该计算机设备所确定的节点簇可以包含多个拓扑节点,其中,一个拓扑节点对应一个文本向量。例如,该计算机设备所获取的原始文本分别对应的文本向量的数量可以为100个。可以理解的是,该计算机设备可以对100个文本向量进行聚类处理,从而可以得到多个节点簇(例如,5个)。该计算机设备可以对这5个节点簇中的每个节点簇中的文本向量对应的原始文本进行拼装,从而可以得到每个节点簇分别对应的融合文本。
其中,可以理解的是,该计算机设备所确定的某一节点簇(例如,节点簇a)中可以包含15个拓扑节点,即包含15个文本向量。此时,该计算机设备可以将这15个文本向量分别对应的原始文本进行拼装,从而可以得到该节点簇a对应的融合文本。
可以理解的是,如图2中的用户终端10b的显示界面100中的所示,该节点簇a对应的融合文本可以为“如何转位怎么用原始的三级包皮肤怎么加id号如何快速转枪如何掉转头如何升级”。节点簇b应的融合文本可以为“5g开vpn说我网络有问题重启了之后也是这样手机网络内存都没有问题为什么实名制还要强制下线内存,网络稳定”。
s105,提取融合文本的关键词,作为至少两个原始文本的关键词。
具体地,该计算机设备可以对该融合文本进行分词。进一步地,该计算机设备可以统计该分词在该节点簇中的频率,并可以统计该分词在该节点簇之外的其它节点簇中的逆频率。其中,该逆频率可以由该计算机设备所确定的节点簇的数量以及该分词所出现的节点簇的数量所确定的。基于该频率以及该逆频率,该计算机设备可以确定该分词的关键词评估参数。此时,该计算机设备可以基于该关键词评估参数,选取p个分词作为该节点簇的关键词,从而可以得到该至少两个原始文本所确定的所有节点簇中的关键词。p为正整数。
具体地,该计算机设备确定该分词的关键词评估参数的公式可以如下述公式(9)所示:
w=tf*log(n/df),(9)
其中,tf可以为该分词在该节点簇中出现的次数,df可以为该分词所出现的节点簇的数量,n可以为所确定的节点簇的数量。
应当理解,如图2中的用户终端10b的显示界面100中的所示,该计算机设备可以采用jieba等中文分词工具对该节点簇a对应的融合文本进行分词。进一步地,该计算机设备可以统计该分词在该节点簇a中出现的次数(频率),并统计该分词在该节点簇之外的其它节点簇中的逆频率,进而可以根据公式(9)确定该分词的关键词评估参数。
进一步地,该计算机设备可以基于关键词评估参数,对该节点簇a中的分词进行排序(例如,降序或升序),从而可以选取关键词评估参数较大的p个分词作为该节点簇a的关键词。如图2所示,该计算机设备可以确定3个分词作为该节点簇a的关键词,即如何,广告,转位。
本申请实施例中的计算机设备可以根据所获取的与至少两个原始文本相关联的文本向量,从而可以确定该文本向量之间的向量距离。其中,该文本向量是对原始文本进行深层次语义信息编码所确定的。进一步地,本申请实施例可以根据该距离向量,构建聚类树,进而可以根据该聚类树的树节点的稳定性参数,快速的将用于进行分簇的树节点作为节点簇,并提取该节点簇的关键词,从而可以提高对原始文本的聚类效率。
进一步地,请参见图9,是本申请实施例提供的一种数据处理方法的流程示意图。如图9所示,该方法可以包括:
s201,获取至少两个原始文本。
具体地,本申请实施例中的计算机设备可以从与该计算机设备具有网络连接关系的数据库中定期获取至少两个原始文本。其中,该原始文本是用户输入至该计算机设备中的问题文本。
s202,获取至少两个原始文本分别对应的文本向量,根据至少两个文本向量之间的向量距离,构建聚类树。
其中,该聚类树包括根节点、叶子节点以及该根节点与该叶子节点之间的中间节点;该根节点包括与该至少两个原始文本相关联的文本向量、该叶子节点包括具有相同向量距离的文本向量。
具体地,该计算机设备可以获取至少两个原始文本分别对应的文本向量。其中,一个原始文本对应一个文本向量。进一步地,该计算机设备可以将这至少两个文本向量均确定为拓扑节点,并可以获取该拓扑节点之间的向量距离。此时,该计算机设备可以根据该拓扑节点以及该拓扑节点之间的向量距离,构建最短路径拓扑图。其中,该最短路径拓扑图中的边的权重参数是由该向量距离所确定的。该计算机设备可以基于该最短路径拓扑图中的边的权重参数,对该最短路径拓扑图中的拓扑节点进行划分,得到该最短路径拓扑图对应的初始聚类树。进一步地,该计算机设备可以根据该初始聚类树中的树节点中所包含的拓扑节点的数量,对初始聚类树中的该树节点进行删减处理,得到聚类树。
s203,将聚类树中用于分簇的树节点,作为节点簇。
具体地,该计算机设备可以将该聚类树中的父树节点bx的稳定性参数作为第一稳定性参数,并可以将该父树节点对应的子树节点by的稳定性参数和子树节点bz的稳定性参数之和作为第二稳定性参数。其中,该x、y和z均为小于或等于o的正整数,o为该聚类树中的树节点的数量,x、y和z互不相同;该稳定性参数是基于该向量距离所确定的。应当理解,若该第一稳定性参数小于该第二稳定性参数,则该计算机设备可以将该第一稳定性参数替换为该第二稳定性参数。若该第一稳定性参数大于或者等于该第二稳定性参数,则该计算机设备可以将该父树节点bx确定为用于分簇的树节点,并可以删除该子树节点bz和该子树节点by。然后,该计算机设备可以将用于分簇的树节点作为该聚类树中的节点簇。
s204,将节点簇中文本向量对应的原始文本进行拼装,得到融合文本。
具体地,该计算机设备可以将节点簇中文本向量对应的原始文本进行拼装,得到融合文本。
s205,提取融合文本的关键词,作为至少两个原始文本的关键词。
具体地,该计算机设备可以对该融合文本进行分词。进一步地,该计算机设备可以统计该分词在该节点簇中的频率,并可以统计该分词在该节点簇之外的其它节点簇中的逆频率。其中,该逆频率可以由该计算机设备所确定的节点簇的数量以及该分词所出现的节点簇的数量所确定的。基于该频率以及该逆频率,该计算机设备可以确定该分词的关键词评估参数。此时,该计算机设备可以基于该关键词评估参数,选取p个分词作为该节点簇的关键词,从而可以得到该至少两个原始文本所确定的所有节点簇中的关键词。p为正整数。
其中,该步骤s201-步骤s205的具体实施方式可参见图3所对应实施例中对步骤s101-步骤s105的描述,这里将不再赘述。
s206,对节点簇中的拓扑节点之间的向量距离进行均值处理,得到节点簇中的拓扑节点对应的第一平均值;
s207,对第一平均值进行排序,根据第一平均值的排序结果,展示节点簇中的拓扑节点对应的原始文本。
s208,对至少两个节点簇中每个节点簇的第一平均值进行均值处理,得到用于表示节点簇的聚类效果的第二平均值;
s209,对至少两个节点簇分别对应的第二平均值进行排序,根据第二平均值的排序结果,展示至少两个节点簇。
为了提高之后人工筛选的效率,该计算机设备可以将所确定的节点簇以及该节点簇中的原始文本进行排序处理,从而可以使得聚类效果较好的节点簇展示靠前展示。
应当理解,该计算机设备可以基于原始文本所得到的节点簇可以为如图2所示的节点簇a和节点簇b。此时,对于该节点簇a,该计算机设备可以对该节点簇a中的拓扑节点之间的向量距离进行均值处理,从而可以得到与该节点簇a中的拓扑节点对应的第一平均值。
例如,该节点簇a中可以包含6个拓扑节点,即拓扑节点1,拓扑节点2,拓扑节点3,拓扑节点4,拓扑节点5以及拓扑节点6。该计算机设备可以对该拓扑节点1与拓扑节点2之间的向量距离d(1,2),该拓扑节点1与拓扑节点3之间的向量距离d(1,3),该拓扑节点1与拓扑节点4之间的向量距离d(1,4),该拓扑节点1与拓扑节点5之间的向量距离d(1,5)与该拓扑节点1与拓扑节点6之间的向量距离d(1,6)进行均值处理,从而可以得到该拓扑节点1对应的第一平均值d11。
进一步地,该计算机设备还可以确定该拓扑节点2对应的第一平均值d12,该拓扑节点3对应的第一平均值d13,该拓扑节点4对应的第一平均值d14,该拓扑节点5对应的第一平均值d15,该拓扑节点6对应的第一平均值d16。可以理解的是,该计算机设备对该节点簇a中的其他拓扑节点的向量距离进行均值处理的描述可以参见该计算机设备对该拓扑节点d11的向量距离进行均值处理的具体实现过程,在此不再继续进行赘述。
应当理解,如图2所示,该计算机设备可以对d11、d12、d13、d14、d15以及d16进行排序(例如,升序处理),进而可以根据该排序结果,展示该拓扑节点对应的原始文本。可以理解的是,原始文本“怎么用原始的三级包皮肤”所对应的拓扑节点的第一平均值大于原始文本“如何快速转枪”所对应的拓扑节点的第一平均值。
对于该节点簇b,该计算机设备也可以对该节点簇b中的拓扑节点之间的向量距离进行均值处理,从而可以得到与该节点簇b中的拓扑节点对应的第一平均值,即d21、d22、d23、d24以及d25。进一步地,该计算机设备可以根据该节点簇b的第一平均值进行排序,进而可以根据该排序结果,展示该拓扑节点对应的原始文本。
进一步地,该计算机设备可以对节点簇a的第一平均值(即d11、d12、d13、d14、d15以及d16)进行均值处理,从而可以得到用于表示该节点簇a的聚类效果的第二平均值d1。此外,该计算机设备还可以对节点簇b的第一平均值(即d21、d22、d23、d24以及d25)进行均值处理,从而可以得到用于表示该节点簇b的聚类效果的第二平均值d2。
应当理解,如图2所示,该计算机设备可以对该d1和d2进行排序处理,并可以根据第二平均值的排序结果,展示该节点簇a和该节点簇b。可以理解的是,该节点簇a的第二平均值大于该节点簇b的第二平均值,换言之,该节点簇a的聚类效果比该节点簇b的聚类效果好,从而可以提高后续人工筛选问题文本的效率。
进一步地,请参见图10,是本申请实施例提供的一种确定问题文本对应的答案文本的场景示意图。应当理解,该计算机设备可以为图1所示的服务器2000,其中,该计算机设备可以为某游戏(例如,游戏a)应用对应的服务器。本申请实施例中的目标用户终端可以为安装该游戏a应用的用户终端,该目标用户终端可以为图1中的用户终端集群中的任意一个用户终端(例如,用户终端3000b)。本申请实施例中的数据库可以存储与该游戏a相关的问题文本和答案文本。
可以理解的是,在该游戏a的应用场景中,该计算机设备可以根据所获取的原始文本,经过聚类处理得到该原始文本所对应的节点簇。该原始文本可以为与该游戏a应用相关联的用户终端针对该游戏a所提出的问题文本。例如,该问题文本可以为“xx铠甲可以增加多少防御属性”,该问题文本也可以为“一个游戏钻石可以兑换多少游戏金币”,该问题文本还可以为“每周五的开设的周期活动是什么”等,在此不进行一一列举。
其中,该计算机设备所确定的节点簇的数量可以包含多个,本申请实施例可以以3个节点簇为例,如图10中的聚类结果所示,具体可以包括节点簇10,节点簇20,节点簇30。其中,该节点簇10可以为该游戏a中与装备属性相关联的问题的聚类,该节点簇20可以为该游戏a中与游戏商城相关联的问题的聚类,该节点簇30可以为该游戏a中与游戏活动相关联的问题的聚类。进一步地,该游戏a对应的后台工作人员可以基于该计算机设备所确定的节点簇以及该节点簇对应的关键词,对该节点簇中的问题进行人工筛选,从而可以扩充该数据库中的问题文本。
应当理解,该目标用户终端对应的目标用户可以针对该游戏a提出问题文本a,例如,该问题文本a可以为“xx大刀需要多少游戏币才能购买”。此时,该目标用户终端可以将该问题文本a发送给该计算机设备。进一步地,该计算机设备可以基于该问题文本a,快速确定出与该问题文本a与该数据库中每个问题文本分别对应的相似度。其中,该计算机设备可以将最有最高相似度的问题文本确定为目标问题文本。
此时,该计算机设备可以在该数据库中,获取该目标问题文本对应的答案文本(例如,答案文本b)。例如,该目标问题文本可以为“xx大刀在游戏商城的价值”,该答案文本b可以为“xx大刀在游戏商城价值40个游戏币”。此时,该计算机设备可以将该答案文本b作为该问题文本a的答案文本,并将该答案文本b返回给该目标用户终端。
本申请实施例中的计算机设备可以根据所获取的与至少两个原始文本相关联的文本向量,从而可以确定该文本向量之间的向量距离。其中,该文本向量是对原始文本进行深层次语义信息编码所确定的。进一步地,本申请实施例可以根据该距离向量构建聚类树,进而可以根据该聚类树的树节点的稳定性参数,快速的将用于进行分簇的树节点作为节点簇,并提取该节点簇的关键词,从而可以提高对原始文本的聚类效率。
进一步地,请参见图11,是本申请实施例提供的一种数据处理装置的结构示意图。该数据处理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如,该数据处理装置为一个应用软件;该数据处理装置可以用于执行本申请实施例提供的方法中的相应步骤。如图11所示,该数据处理装置1可以运行于计算机设备,该计算机设备可以为上述图2所对应实施例中的服务器10a。该数据处理装置1可以包括:第一获取模块11,第二获取模块12,构建模块13,第一确定模块14,拼装模块15,提取模块16,第二确定模块17,第一排序模块18,第三确定模块19以及第二排序模块20。
该第一获取模块11,用于获取至少两个原始文本;
该第二获取模块12,用于获取至少两个原始文本分别对应的文本向量。
其中,该第二获取模块12包括:第一分词单元121,匹配单元122,剔除单元123,提取单元124以及降维单元125。
该第一分词单元121,用于对至少两个原始文本进行词性标注,根据所标注的词性对至少两个原始文本进行分词;
该匹配单元122,用于根据停用词表和保留词表对分词进行匹配,得到待过滤文本;停用词表用于存储待过滤的分词,保留词表用于确定不属于停用词表中的分词的过滤关系;
该剔除单元123,用于从至少两个原始文本中剔除待过滤文本,得到待编码文本;
该提取单元124,用于对待编码文本进行特征提取,得到待编码文本对应的初始文本向量。
其中,该提取单元124包括:字符编码子单元1241,位置编码子单元1242以及第一确定子单元1243。
该字符编码子单元1241,用于对待编码文本中的字符进行字符编码,得到待编码文本中的字符对应的字符向量;
该位置编码子单元1242,用于对待编码文本中的字符进行位置编码,得到待编码文本中的字符对应的位置向量;
该第一确定子单元1243,用于基于字符向量以及位置向量,确定待编码文本对应的初始文本向量。
其中,该字符编码子单元1241,位置编码子单元1242以及第一确定子单元1243的具体实现方式可以参见图4所对应实施例中对初始文本向量的描述,这里将不再继续进行赘述。
该降维单元125,用于对初始文本向量进行降维处理,得到文本向量。
其中,该第一分词单元121,匹配单元122,剔除单元123,提取单元124以及降维单元125的具体实现方式可以参见上述图3所对应实施例中对步骤s102的描述,这里将不再继续进行赘述。
该构建模块13,用于根据至少两个文本向量之间的向量距离,构建聚类树。
其中,该构建模块13包括:第一确定单元131,构建单元132,划分单元133以及删减单元134。
该第一确定单元131,用于将至少两个文本向量均确定为拓扑节点,获取拓扑节点之间的向量距离。
其中,该第一确定单元131包括:第三确定子单元1311,第四确定子单元1312,第五确定子单元1313以及第六确定子单元1314。
该第三确定子单元1311,用于确定与拓扑节点ti相关联的k个拓扑节点分别对应的原始距离,将与拓扑节点ti具有最大的原始距离确定为第一距离;k为小于或者等于n的正整数;
该第四确定子单元1312,用于确定与拓扑节点tj相关联的k个拓扑节点分别对应的原始距离,将与拓扑节点tj具有最大的原始距离确定为第二距离;
该第五确定子单元1313,用于确定拓扑节点ti与拓扑节点tj之间的原始距离,将拓扑节点ti与拓扑节点tj之间的原始距离确定为第三距离;
该第六确定子单元1314,用于基于第一距离,第二距离以及第三距离,确定拓扑节点ti与拓扑节点tj之间的向量距离。
其中,该第三确定子单元1311,第四确定子单元1312,第五确定子单元1313以及第六确定子单元1314的具体实现方式可以参见上述图5所对应实施例中对向量距离的描述,这里将不再继续进行赘述。
该构建单元132,用于根据拓扑节点以及拓扑节点之间的向量距离,构建最短路径拓扑图;最短路径拓扑图中的边的权重参数是由向量距离所确定的。
其中,该构建单元132包括:构建子单元1321,第一添加子单元1322,第二确定子单元1323以及第二添加子单元1324。
该构建子单元1321,用于根据拓扑节点以及拓扑节点之间的向量距离,构建初始拓扑图;初始拓扑图包括拓扑节点ti,拓扑节点tj以及拓扑节点tk,i、j和k均为小于或等于n的正整数,n为至少两个文本向量的数量,i、j和k互不相同;
该第一添加子单元1322,用于在初始拓扑图中选取拓扑节点ti,确定与拓扑节点ti具有最小权重参数的连接边对应的拓扑节点tj,将拓扑节点ti和拓扑节点tj添加至最短路径拓扑图;
该第二确定子单元1323,用于将初始拓扑图中除了最短路径拓扑图所包含的拓扑节点之外的拓扑节点,确定为剩余拓扑节点;
该第二添加子单元1324,用于在剩余拓扑节点中确定与拓扑节点ti和拓扑节点tj具有最小权重参数的连接边对应的拓扑节点tk,将拓扑节点tk添加至最短路径拓扑图,直至剩余拓扑节点为空,完成对最短路径拓扑图的构建。
其中,该构建子单元1321,第一添加子单元1322,第二确定子单元1323以及第二添加子单元1324的具体实现方式可以参见上述图6所对应实施例中对最短路径拓扑图的描述,这里将不再继续进行赘述。
该划分单元133,用于基于最短路径拓扑图中的边的权重参数,对最短路径拓扑图中的拓扑节点进行划分,得到最短路径拓扑图对应的初始聚类树;
该删减单元134,用于根据初始聚类树中的树节点中所包含的拓扑节点的数量,对初始聚类树中的树节点进行删减处理,得到聚类树。
其中,该删减单元134包括:第一获取子单元1341,第一删除子单元1342,保留子单元1343,第二删除子单元1344以及第七确定子单元1345。
该第一获取子单元1341,用于获取初始聚类树中的父树节点的子树节点am所包含的拓扑节点的数量,作为第一数量,获取父树节点的子树节点an所包含的拓扑节点的数量,作为第二数量;m和n均为小于或等于f的正整数,f为初始聚类树中所包含的树节点的数量,m和n不相同;
该第一删除子单元1342,用于若第一数量与第二数量均未达到数量阈值,则删除子树节点am和子树节点an;
该保留子单元1343,用于若第一数量与第二数量均达到数量阈值,则保留子树节点am和子树节点an;
该第二删除子单元1344,用于若第一数量未达到数量阈值,且第二数量达到数量阈值,则删除子树节点am,将父树节点替换为子树节点an;
其中,该第二删除子单元1344还用于:
若第一数量未达到数量阈值,且第二数量达到数量阈值,则将所删除的子树节点am中的拓扑节点确定为噪声节点;获取聚类树中的节点簇的中心拓扑节点;基于噪声节点与中心拓扑节点之间的向量距离,将与噪声节点具有最小向量距离的节点簇确定为目标节点簇;将噪声节点添加至目标节点簇中。
该第七确定子单元1345,用于根据所保留的树节点,得到聚类树。
其中,该第一获取子单元1341,第一删除子单元1342,保留子单元1343,第二删除子单元1344以及第七确定子单元1345的具体实现方式可以参见图3所对应实施例中对构建聚类树的描述,这里将不再继续进行赘述。
其中,该第一确定单元131,构建单元132,划分单元133以及删减单元134的具体实现方式可以参见上述图3所对应实施例中对步骤s102的描述,这里将不再继续进行赘述。
该第一确定模块14,用于将聚类树中用于分簇的树节点,作为节点簇。
其中,该第一确定模块14包括:第二确定单元141,替换单元142,删除单元143以及第三确定单元144。
该第二确定单元141,用于将聚类树中的父树节点bx的稳定性参数作为第一稳定性参数,将父树节点对应的子树节点by的稳定性参数和子树节点bz的稳定性参数之和作为第二稳定性参数;稳定性参数是基于向量距离所确定的;
该替换单元142,用于若第一稳定性参数小于第二稳定性参数,则将第一稳定性参数替换为第二稳定性参数;
该删除单元143,用于若第一稳定性参数大于或者等于第二稳定性参数,则将父树节点bx确定为用于分簇的树节点,删除子树节点bz和子树节点by;
该第三确定单元144,用于将用于分簇的树节点作为聚类树中的节点簇。
其中,第二确定单元141,替换单元142,删除单元143以及第三确定单元144的具体实现方式可以参见上述图3所对应实施例中对步骤s103的描述,这里将不再继续进行赘述。
该拼装模块15,用于将节点簇中文本向量对应的原始文本进行拼装,得到融合文本;
该提取模块16,用于提取融合文本的关键词,作为至少两个原始文本的关键词。
其中,该提取模块16包括:第二分词单元161,统计单元162,第四确定单元163以及第五确定单元164。
该第二分词单元161,用于对融合文本进行分词;
该统计单元162,用于统计分词在节点簇中的频率以及分词在节点簇之外的其它节点簇中的逆频率;
该第四确定单元163,用于基于频率以及逆频率,确定分词的关键词评估参数;
该第五确定单元164,用于基于关键词评估参数,选取p个分词作为节点簇的关键词;p为正整数。
其中,该第二分词单元161,统计单元162,第四确定单元163以及第五确定单元164的具体实现方式可以参见上述图3所对应实施例中对步骤s105的描述,这里将不再继续进行赘述。
该第二确定模块17,用于对节点簇中的拓扑节点之间的向量距离进行均值处理,得到节点簇中的拓扑节点对应的第一平均值;
该第一排序模块18,用于对第一平均值进行排序,根据第一平均值的排序结果,展示节点簇中的拓扑节点对应的原始文本。
其中,节点簇的数量为至少两个;
该第三确定模块19,用于对至少两个节点簇中每个节点簇的第一平均值进行均值处理,得到用于表示节点簇的聚类效果的第二平均值;
该第二排序模块20,用于对至少两个节点簇分别对应的第二平均值进行排序,根据第二平均值的排序结果,展示至少两个节点簇。
其中,该第一获取模块11,第二获取模块12,构建模块13,第一确定模块14,拼装模块15,提取模块16,第二确定模块17,第一排序模块18,第三确定模块19以及第二排序模块20的具体实现方式可以参见上述图9所对应实施例中对步骤s201-步骤s209的描述,这里将不再继续进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
进一步地,请参见图12,是本申请实施例提供的一种计算机设备的示意图。如图12所示,该计算机设备1000可以为图2对应实施例中的用户终端10b,该计算机设备1000可以包括:至少一个处理器1001,例如cpu,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(display)、键盘(keyboard),网络接口1004可选地可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器1005可选地还可以是至少一个位于远离前述处理器1001的存储装置。如图12所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图12所示的计算机设备1000中,网络接口1004主要用于与用户终端进行网络通信;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取至少两个原始文本;
获取至少两个原始文本分别对应的文本向量,根据至少两个文本向量之间的向量距离,构建聚类树;
将聚类树中用于分簇的树节点,作为节点簇;
将节点簇中文本向量对应的原始文本进行拼装,得到融合文本;
提取融合文本的关键词,作为至少两个原始文本的关键词。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3和图9所对应实施例中对该数据处理方法的描述,也可执行前文图11所对应实施例中对该数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且该计算机可读存储介质中存储有前文提及的数据处理装置1所执行的计算机程序,且该计算机程序包括程序指令,当该处理器执行该程序指令时,能够执行前文图3或者图9所对应实施例中对该数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行,分布在多个地点且通过通信网络互连的多个计算设备可以组成区块链系统。
本领域普通技术人员可以理解实现实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
1.一种数据处理方法,其特征在于,包括:
获取至少两个原始文本;
获取所述至少两个原始文本分别对应的文本向量,根据至少两个文本向量之间的向量距离,构建聚类树;
将所述聚类树中用于分簇的树节点,作为节点簇;
将所述节点簇中文本向量对应的原始文本进行拼装,得到融合文本;
提取所述融合文本的关键词,作为所述至少两个原始文本的关键词。
2.根据权利要求1所述的方法,其特征在于,所述获取所述至少两个原始文本分别对应的文本向量,包括:
对所述至少两个原始文本进行分词;
根据停用词表和保留词表对所述分词进行匹配,得到待过滤文本;所述停用词表用于存储待过滤的分词,所述保留词表用于确定不属于所述停用词表中的分词的过滤关系;
从所述至少两个原始文本中剔除所述待过滤文本,得到待编码文本;
对所述待编码文本进行特征提取,得到所述待编码文本对应的初始文本向量;
对所述初始文本向量进行降维处理,得到所述文本向量。
3.根据权利要求2所述的方法,其特征在于,所述对所述待编码文本进行特征提取,得到所述待编码文本对应的初始文本向量,包括:
对所述待编码文本中的字符进行字符编码,得到所述待编码文本中的字符对应的字符向量;
对所述待编码文本中的字符进行位置编码,得到所述待编码文本中的字符对应的位置向量;
基于所述字符向量以及所述位置向量,确定所述待编码文本对应的初始文本向量。
4.根据权利要求1所述的方法,其特征在于,所述根据至少两个文本向量之间的向量距离,构建聚类树,包括:
将所述至少两个文本向量均确定为拓扑节点,获取所述拓扑节点之间的向量距离;
根据所述拓扑节点以及所述拓扑节点之间的向量距离,构建最短路径拓扑图;所述最短路径拓扑图中的边的权重参数是由所述向量距离所确定的;
基于所述最短路径拓扑图中的边的权重参数,对所述最短路径拓扑图中的拓扑节点进行划分,得到所述最短路径拓扑图对应的初始聚类树;
根据所述初始聚类树中的树节点中所包含的拓扑节点的数量,对所述初始聚类树中的所述树节点进行删减处理,得到聚类树。
5.根据权利要求4所述的方法,其特征在于,所述根据所述拓扑节点以及所述拓扑节点之间的向量距离,构建最短路径拓扑图,包括:
根据所述拓扑节点以及所述拓扑节点之间的向量距离,构建初始拓扑图;所述初始拓扑图包括拓扑节点ti,拓扑节点tj以及拓扑节点tk,i、j和k均为小于或等于n的正整数,n为所述至少两个文本向量的数量,i、j和k互不相同;
在所述初始拓扑图中选取拓扑节点ti,确定与所述拓扑节点ti具有最小权重参数的连接边对应的拓扑节点tj,将所述拓扑节点ti和所述拓扑节点tj添加至最短路径拓扑图;
将所述初始拓扑图中除了所述最短路径拓扑图所包含的拓扑节点之外的拓扑节点,确定为剩余拓扑节点;
在所述剩余拓扑节点中确定与所述拓扑节点ti和所述拓扑节点tj具有最小权重参数的连接边对应的拓扑节点tk,将所述拓扑节点tk添加至最短路径拓扑图,直至所述剩余拓扑节点为空,完成对所述最短路径拓扑图的构建。
6.根据权利要求5所述的方法,其特征在于,所述将所述至少两个文本向量均确定为拓扑节点,获取所述拓扑节点之间的向量距离,包括:
确定与所述拓扑节点ti相关联的k个拓扑节点分别对应的原始距离,将与所述拓扑节点ti具有最大的原始距离确定为第一距离;k为小于或者等于n的正整数;
确定与所述拓扑节点tj相关联的k个拓扑节点分别对应的原始距离,将与所述拓扑节点tj具有最大的原始距离确定为第二距离;
确定所述拓扑节点ti与所述拓扑节点tj之间的原始距离,将所述拓扑节点ti与所述拓扑节点tj之间的原始距离确定为第三距离;
基于所述第一距离,所述第二距离以及所述第三距离,确定所述拓扑节点ti与所述拓扑节点tj之间的向量距离。
7.根据权利要求4所述的方法,其特征在于,所述根据所述初始聚类树中的树节点中所包含的拓扑节点的数量,对所述初始聚类树中的所述树节点进行删减处理,得到聚类树,包括:
获取所述初始聚类树中的父树节点的子树节点am所包含的拓扑节点的数量,作为第一数量,获取所述父树节点的子树节点an所包含的拓扑节点的数量,作为第二数量;m和n均为小于或等于f的正整数,f为所述初始聚类树中所包含的树节点的数量,m和n不相同;
若所述第一数量与所述第二数量均未达到数量阈值,则删除所述子树节点am和所述子树节点an;
若所述第一数量与所述第二数量均达到所述数量阈值,则保留所述子树节点am和所述子树节点an;
若所述第一数量未达到所述数量阈值,且所述第二数量达到所述数量阈值,则删除所述子树节点am,将所述父树节点替换为所述子树节点an;
根据所保留的树节点,得到聚类树。
8.根据权利要求1所述的方法,其特征在于,所述将所述聚类树中用于分簇的树节点,作为节点簇,包括:
将所述聚类树中的父树节点bx的稳定性参数作为第一稳定性参数,将所述父树节点对应的子树节点by的稳定性参数和子树节点bz的稳定性参数之和作为第二稳定性参数;所述稳定性参数是基于所述向量距离所确定的;
若所述第一稳定性参数小于所述第二稳定性参数,则将所述第一稳定性参数替换为所述第二稳定性参数;
若所述第一稳定性参数大于或者等于所述第二稳定性参数,则将所述父树节点bx确定为用于分簇的树节点,删除所述子树节点bz和所述子树节点by;
将所述用于分簇的树节点作为所述聚类树中的节点簇。
9.根据权利要求7所述的方法,其特征在于,还包括:
若所述第一数量未达到所述数量阈值,且所述第二数量达到所述数量阈值,则将所删除的所述子树节点am中的拓扑节点确定为噪声节点;
获取所述聚类树中的节点簇的中心拓扑节点;
基于所述噪声节点与所述中心拓扑节点之间的向量距离,将与所述噪声节点具有最小向量距离的节点簇确定为目标节点簇;
将所述噪声节点添加至所述目标节点簇中。
10.根据权利要求1所述的方法,其特征在于,所述提取所述融合文本的关键词,作为所述至少两个原始文本的关键词,包括:
对所述融合文本进行分词;
统计所述分词在所述节点簇中的频率以及所述分词在所述节点簇之外的其它节点簇中的逆频率;
基于所述频率以及所述逆频率,确定所述分词的关键词评估参数;
基于所述关键词评估参数,选取p个分词作为所述节点簇的关键词;所述p为正整数。
11.根据权利要求1所述的方法,其特征在于,还包括:
对所述节点簇中的拓扑节点之间的向量距离进行均值处理,得到所述节点簇中的拓扑节点对应的第一平均值;
对所述第一平均值进行排序,根据第一平均值的排序结果,展示所述节点簇中的拓扑节点对应的原始文本。
12.根据权利要求11所述的方法,其特征在于,所述节点簇的数量为至少两个;
所述方法还包括:
对至少两个节点簇中每个节点簇的所述第一平均值进行均值处理,得到用于表示所述节点簇的聚类效果的第二平均值;
对所述至少两个节点簇分别对应的第二平均值进行排序,根据所述第二平均值的排序结果,展示所述至少两个节点簇。
13.一种数据处理装置,其特征在于,包括:
第一获取模块,用于获取至少两个原始文本;
第二获取模块,用于获取所述至少两个原始文本分别对应的文本向量;
构建模块,用于根据至少两个文本向量之间的向量距离,构建聚类树;
第一确定模块,用于将所述聚类树中用于分簇的树节点,作为节点簇;
拼装模块,用于将所述节点簇中文本向量对应的原始文本进行拼装,得到融合文本;
提取模块,用于提取所述融合文本的关键词,作为所述至少两个原始文本的关键词。
14.一种计算机设备,其特征在于,包括:处理器、存储器、网络接口;
所述处理器与存储器、网络接口相连,其中,网络接口用于提供数据通信功能,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以执行如权利要求1-12任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1-12任一项所述的方法。
技术总结