一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

包含近似词语的文本的分组方法、装置及介质与流程

2022-05-17 21:53:05 来源:中国专利 TAG:


1.本公开总体上涉及包含近似词语的文本的分组方法、装置及介质。


背景技术:

2.随着信息化时代发展越来越迅速,对信息安全的需求也越来越高,而信息安全保护是要建立在对资产分类分级的基础上的,所以对信息的存储、管理及分类分级也就变得尤为重要。尤其是在电信等大规模数据行业,资产梳理也就变得尤为困难。目前许多知识的分类由于缺乏更多信息特征,因而涉及到针对含专有名词的近似短词组或文本进行分类。例如针对不同省份相同或相似系统的分类分级就涉及到需要通过系统名进行分类,系统本身可能存在其他特征信息可以使用,但信息缺失或错误,分类不准,或者简介五花八门都使得针对系统名直接进行分类反而更为高效和精准。
3.主流自然语言处理方法很难解决短词组的分类问题:目前主流的自然语言处理方法大多需要大量训练样本训练监督学习模型,或者使用语义模型对文本进行向量转换计算两两相似度或对它们进行聚类,它们大多数针对的是信息量较大的文章或者短句,对这些有一定篇幅的文字进行处理后可以对处理后的数据进行特征提取,比如tf-idf (词频-逆向文件频率)的转换来形成一个多维特征的语义空间,然后在这个空间里可以进行相似度计算或者将这些特征进行聚类以对文章进行聚类,但此类方法对短词组并不适用,短词组本身分词较少,且由于基数较小,干扰词及多义词较多,词频及逆向文件频率等特征无法精准体现词组的核心意义,尤其是若含有专有名词或者分词存在错误,此类方法就很难达到可以使用的准确率
4.针对短词组的分类方法主要以监督学习为主且需要大量前期资源投入:目前针对缺乏信息量但含专有名词及行业术语的文本或短词组的分类/分组方法相对较少,仅有的几个使用的也都是通过业务逻辑或其他特征归纳(比如词性)或通过训练分类模型的方式对短词组进行硬性归类和打标,这些方法需要获取大量的有标签数据,术语词库,业务专家知识,或者算法专家调参进行训练,且打标不具备灵活性(需要确定固定几个分类),若改变规则重新分类,则需要重新训练(而且有时无法清楚了解到底有几类)。硬性打标的方式也很难保证分类的准确率,若需要检查准确率,则又需要对一个个数据进行检查比对,效率较低。


技术实现要素:

5.根据本公开的一个方面,提供一种对包含近似词语的多个文本进行分组的方法,包括:对所述多个文本进行初始分组,包括:计算所述多个文本中的任意两个文本之间的相似度;将相似度大于第一相似度阈值的文本归类为一个初始分组,从而形成一个或多个初始分组;在存在多个初始分组的情况下,对所述多个初始分组进行第一层分组,包括:计算所述多个初始分组中的任意两个初始分组之间的相似度;对于每个初始分组,找到与该初始分组相似度最高的相似初始分组,如果该初始分组与所述相似初始分组之间的相似度大
于第二相似度阈值,那么将该初始分组与所述相似初始分组归类为一个第一层分组,从而形成一个或多个第一层分组。
6.根据本公开的另一个方面,提供一种对包含近似词语的多个文本进行分组的装置,包括:存储器,其上存储有指令;以及处理器,被配置为执行存储在所述存储器上的指令,以执行如上所述的方法。
7.根据本公开的又一个方面,提供一种计算机可读存储介质,其包括计算机可执行指令,所述计算机可执行指令在由一个或多个处理器执行时,使得所述一个或多个处理器执行根据本公开的上述方面所述的方法。
附图说明
8.构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
9.参照附图,根据下面的详细描述,可以更清楚地理解本公开,其中:
10.图1示出了根据本公开的一个实施例的对包含近似词语的多个文本进行分组的方法的流程图。
11.图2示出了可以实现根据本公开的实施例的计算设备的示例性配置。
12.图3示出了根据本公开的一个实施例中的短词组的相似度矩阵。
13.图4示出了根据本公开的一个实施例所获得的分层结构及最终排序结果。
具体实施方式
14.参考附图进行以下详细描述,并且提供以下详细描述以帮助全面理解本公开的各种示例实施例。以下描述包括各种细节以帮助理解,但是这些细节仅被认为是示例,而不是为了限制本公开,本公开是由随附权利要求及其等同内容限定的。在以下描述中使用的词语和短语仅用于能够清楚一致地理解本公开。另外,为了清楚和简洁起见,可能省略了对公知的结构、功能和配置的描述。本领域普通技术人员将认识到,在不脱离本公开的精神和范围的情况下,可以对本文描述的示例进行各种改变和修改。
15.针对上述文本或短词组的分类方法所存在的问题,本公开提出一种创新的无监督多层次分类归组排序算法,可以实现对含专有名词的文本或短词组在无需先验知识及分类规则设定情况下进行多层分组,将越相似的词组排在越接近的位置,从而可以达成人工自定义分组或可选智能分组的创新分类排序算法,解决了硬性打标在准确率、初始类别制定、及后续类别修改上的问题,并为分组提供了更多的灵活性和更高的自由度,更便于自由选择分类标准的严弱层级并检查每一层的分类精准度,在智能算法目前无法在短文本或短词缺乏信息时达到极高准确率的情况下,提供了一种可选型智能算法。这个可以实现半人工半智能的辅助人工的创新算法在无需先验知识及分类规则设定的情况下,依然可以保证高准确率和效率,大幅降低前期人工打标、词库建造或者模型训练所需要的人工参与度。
16.图1示出了根据本公开的一个实施例的对包含近似词语的多个文本进行分组的方法100的流程图。该方法100主要包括:对所述多个文本进行初始分组(步骤101);以及在存在多个初始分组的情况下,对所述多个初始分组进行第一层分组(步骤102)。
17.在一个实施例中,上述文本可以是包含近似词语(例如,任意一个或多个领域中的
专有名词)的一段任意语言的文本。在一个实施例中,上述文本可以包含一个或多个短词组、一个或多个短语或一个或多个句子。在一个实施例中,上述文本可以是一个系统的名称或系统名称与子系统名称的组合。
18.在一个实施例中,步骤101可以包括:计算所述多个文本中的任意两个文本之间的相似度;将相似度大于第一相似度阈值的文本归类为一个初始分组,从而形成一个或多个初始分组。
19.在一个实施例中,步骤102可以包括:计算所述多个初始分组中的任意两个初始分组之间的相似度;对于每个初始分组,找到与该初始分组相似度最高的相似初始分组,如果该初始分组与所述相似初始分组之间的相似度大于第二相似度阈值,那么将该初始分组与所述相似初始分组归类为一个第一层分组,从而形成一个或多个第一层分组。
20.通过上述方法100,能够对文本进行两层分组。
21.在一个实施例中,方法100还包括:在存在多个较低层分组(例如,在进行第二层分组的情况下,多个第一层分组)的情况下,对该多个较低层分组进行后续层分组,包括:计算所述多个较低层分组中的任意两个较低层分组之间的相似度;对于每个较低层分组,找到与该较低层分组相似度最高的相似较低层分组,如果该较低层分组与所述相似较低层分组之间的相似度大于对应的相似度阈值(例如,第一层相似度阈值、第二层相似度阈值

),那么将该较低层分组与所述相似较低层分组归类为一个较高层分组,从而形成一个或多个较高层分组;以及重复进行后续层分组,直到无法继续对较低层分组进行归类,或者已将所有较低层分组归类到同一组。
22.通过上述方法100,能够对文本进行两层或更多层的分组。
23.在一个实施例中,方法100还可以包括:针对每一层分组,按照分组中的成员数量、分组的组号以及相似度高低,以从上级到下级的顺序排序。
24.在一个实施例中,较高层的分组步骤中使用的相似度阈值小于较低层的分组步骤中使用的相似度阈值。由此,可以对文本按照相似度的不同层级进行多层分组。
25.在一个实施例中,可以通过将每个文本转换成向量,并利用向量来计算两个文本之间的相似度。可以通过诸如lsi(潜在语义索引 (latent semantic indexing)之类的模型、诸如训练过的神经网络(如bert)、doc2vec模型、word2vec模型、fasttext模型以及其他任意合适的方法将文本转换成向量。
26.在一个实施例中,可以对于每一层中的每个分组,通过生成分组中的各分组成员的组代表分词,将组代表分词转换成向量,并利用向量来计算每一层中的两个分组之间的相似度。
27.在一个实施例中,可以将每一层中的一个分组中的各成员与另一分组中的各成员之间的相似度的中位值或平均值,作为这两个分组之间的相似度。
28.在一个实施例中,在进行所述初始分组之前,还可以对每个文本进行关键词提取处理,从而获得与所述多个文本分别对应的多个词组。在此情况下,可以基于所述多个词组(例如,通过将每个文本对应的多个词组转换成代表该文本的向量)计算所述多个文本中的任意两个文本之间的相似度。
29.在一个实施例中,对每个文本进行关键词提取处理的步骤可以包括:去除停用词或高频词,以及增加所获得的关键词的关联词或将所获得的关键词替换为关联词。这样,可
以提高每一层的分组处理的准确率。
30.图2示出了能够实现根据本公开的实施例的计算设备1200的示例性配置。
31.计算设备1200是能够应用本公开的上述方法的硬件设备的实例。计算设备1200可以是被配置为执行处理和/或计算的任何机器。计算设备1200可以是但不限制于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数据助手(pda)、智能电话、车载计算机或以上组合。
32.如图2所示,计算设备1200可以包括可以经由一个或多个接口与总线1202连接或通信的一个或多个元件。总线2102可以包括但不限于,工业标准架构(industry standard architecture,isa)总线、微通道架构(micro channel architecture,mca)总线、增强isa(eisa) 总线、视频电子标准协会(vesa)局部总线、以及外设组件互连(pci) 总线等。计算设备1200可以包括例如一个或多个处理器1204、一个或多个输入设备1206以及一个或多个输出设备1208。一个或多个处理器1204可以是任何种类的处理器,并且可以包括但不限于一个或多个通用处理器或专用处理器(诸如专用处理芯片)。处理器1202例如可以被配置为实现上述方法100。输入设备1206可以是能够向计算设备输入信息的任何类型的输入设备,并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或远程控制器。输出设备1208可以是能够呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。
33.计算设备1200还可以包括或被连接至非暂态存储设备1214,该非暂态存储设备1214可以是任何非暂态的并且可以实现数据存储的存储设备,并且可以包括但不限于盘驱动器、光存储设备、固态存储器、软盘、柔性盘、硬盘、磁带或任何其他磁性介质、压缩盘或任何其他光学介质、缓存存储器和/或任何其他存储芯片或模块、和/或计算机可以从其中读取数据、指令和/或代码的其他任何介质。计算设备 1200还可以包括随机存取存储器(ram)1210和只读存储器(rom) 1212。rom 1212可以以非易失性方式存储待执行的程序、实用程序或进程。ram 1210可提供易失性数据存储,并存储与计算设备1200 的操作相关的指令。计算设备1200还可包括耦接至数据链路1218的网络/总线接口1216。网络/总线接口1216可以是能够启用与外部装置和/或网络通信的任何种类的设备或系统,并且可以包括但不限于调制解调器、网络卡、红外线通信设备、无线通信设备和/或芯片集(诸如蓝牙
tm
设备、802.11设备、wifi设备、wimax设备、蜂窝通信设施等)。
34.在一个实施例中,本公开可以提供一种计算机可读存储介质,其包括可执行指令,当所述可执行指令由信息处理装置(例如,诸如计算机、智能电话之类的装置)执行时,使该信息处理装置执行上述对包含近似词语的多个文本进行分组的方法。
35.以下给出上述方法100的一个示例性概要实施方式。在该示例中,对多个短词组进行分组。显然,方法100可以对包括近似词语的任意文本(即,包含一个或多个句子的文本,或者包含一个或多个短语的文本,或者包含多个分散的词语的短词组)进行分组。
36.实现流程(注意,以下使用短词组作为文本的一个示例进行描述。在其他类型的文本的情况下,实现流程是类似的):
37.步骤一:数据获取及预处理
38.·
输入所有需要分组的短词组,并对其进行关键词提取,进行合适的预处理。具体来说,包括分词(分词可以设置专业术语字典以避免错分)、去除停用词/高频词、关联词增
加/替换(关联词可以设置已知业务术语关联规则/字典,或者使用关联规则学习,或者近义词字典)。
39.·
将分完词的短词组/每个短词组的关键词进行向量转换,将短词组通过语义模型转换成语义空间的向量,语义模型可以是主题模型如lsi,也可以是通过现有成熟的训练过的神经网络如bert的词嵌入进行转换。
40.需要强调的是,上述关键词提取和其他预处理都是可选的,而不是必需的步骤。即,本公开可以对输入的包括近似词语的任意多个文本直接进行初始分组,该初始分组的步骤可以包括直接计算任意两个文本之间的相似度的步骤。
41.步骤二:初始高相似分组(即,初始分组)
42.·
使用任何合理的两两相似度计算的方式(如余弦相似度,欧式距离等)计算得出所有短词组两两之间的相似度形成相似度矩阵
43.·
设置高相似度阈值(在阈值为1的情况下,关键词完全一致),则可以视任何相似度高于此阈值的词组对为互相有连接关系,所有有连接关系的词组被归为一个小分组(在阈值为1的情况下,所有关键词完全一致的被归入一个小分组/当成一个词组进行后续分组(即,合并)),形成多个初始分组。
44.步骤三:分组合并形成上级分组
45.·
对每个初始分组生成组代表分词/向量(在上述阈值为1 的情况下,因为关键词完全一致,所以组代表分词即任意组内成员的分词,等同于将所有关键词一致的词组当成一个词组来看),将分组视为一个关键词是组代表分词的词组来看,这样就可以计算分组间两两相似度矩阵(也可以通过组内成员间的两两相似度来计算分组间的两两相似度)。
46.·
对于每个初始分组,找到与其相似度最高的分组,并判定该相似度是否超过预设的该层合并所需要的最低相似度阈值,若超过则将这两个分组进行合并。
47.·
对于合并操作后的新分组,可根据组的大小(成员数多少),组号以及最大相似度排序。
48.步骤四:多次循环形成多层分组
49.·
设置每一层的最低合并相似度阈值(若未设置则使用预置阈值),若仍然存在两两相似度超过该阈值的新分组,则再次执行步骤三,将新分组再次进行合并,直到达成循环终止条件,形成多层分组。
50.·
每层合并分组后将词组按照每层的分组大小(组员多少)、组号及相似度高低,按照从上级到下级顺序排序并输出。用户可选择是否开启自动分类打标。
51.以下,仅仅作为示例,给出上述步骤二、三、四的一种更具体实现方法。
52.·
步骤a:初始高相似分组
53.1.生成原始短词组间相似度矩阵
54.假设有n个短词组,则有如图3所示的相似度矩阵。
55.a).相似度计算可以使用任意成熟的nlp模型
56.包括两个步骤:
57.1)将短词组分词后映射到向量空间(可以是主题模型如lsi,也可以是通过现有成熟的训练过的神经网络如bert的词嵌入进行转换)
58.2)对短词组向量进行相似度计算(计算方式可以是余弦相似度,欧式距离等)
59.b).将词组自己与自己的相似度替换成-1,即sim(i,i)=-1,i∈(0,n)
60.2.提取所有相似度高于设定的最低相似度阈值t的短词组对,并针对相似度从高到低进行排序。
61.3.初始高相似分组:两两相似度高于t的短词组被分至一组。
62.假设有n个短词组,t为设置的最低相似度阈值(在阈值为1 的情况下,完全相似才算一组),初始高相似需要高相似度,所以建议阈值t设置为大于0.8且小于等于1的数值。
63.初始分组公式为:
64.yi=-1,i∈(1,n)
65.对于如果满足sim(i,j)≥t
66.那么
67.按排序完成一遍分组后再次循环此分组步骤直到分组无变化。
68.·
步骤二:合并分组形成上级新分组
69.1.组间相似度计算
70.组与组之间的相似度计算可以通过(不限于)以下两种方式:
71.a)单独组成员两两相似度的中位值或平均值
72.假设有分组a和分组b:
[0073][0074]
simab=median(sim(i,j))(中位值)
[0075]
(平均值)
[0076]
其中,|a|表示分组a中的成员的个数,|b|类同。
[0077]
b)通过组成员分词生成组代表分词,使用组代表分词进行两两相似度计算(计算方式与之前分词后的词组间相似度计算保持一致)
[0078]
假设组内有n个词组,则它们被处理过(分词并去停用词后) 的分词集合可被称为{分词i},i∈(1,n)
[0079]
组a代表分词{分词a}可以通过(不限于)以下三种方式(严格程度从高到低):
[0080]
a)交集:{分词a}={分词1}∩{分词2}∩...∩{分词n}
[0081]
b)频繁词集:{所有出现于超过x%(例如,50%)的本组词组中的分词}
[0082]
c)并集:{分词a}={分词1}∪{分词2}∪...∪{分词n}
[0083]
2.后续上级每一层合并分组
[0084]
假设有m个下级分组,将相似度矩阵中组gi与组gj间的相似度表示为sim(gi,gj),将第l层的组gi的分组表示为
[0085]
对每个下级分组gi,找到与其相似度最高的所有下级分组(且最高相似度需要高于本上级层设定最低相似度阈值t
l
),并对所有提取出的最高相似度下级分组对进行相似度从高到低的排序(每一层合并的最低相似度阈值t
l
的设定可通过经验,或根据最后分类结果人工调试,或通过一些衡量指标进行人工或自动化调参,可行的指标如(但不限于):所有组的组内所有点之间平均相似度除以组内所有点与组外所有点之间平均相似度的商相加后获得的总和大小,该指标越大证明组分得越合理,即表示所有组总体的组内平均相似度相较于组内点与组外平均相似度要大很多)。
[0086]
则第l层的分组公式可表示为:
[0087][0088]
对于满足:
[0089][0090][0091]
按排序完成一遍分组后再次循环此分组步骤直到分组无变化。
[0092]
3.每层合并分组后将词组按照每层的分组大小(组成员数多少)、组号及相似度高低按照上级到下级的分组依次排序并输出。
[0093]
4.循环执行1、2、3直到满足终止条件。
[0094]
终止条件可以有(但不限于)两种设置方式:
[0095]
a)当不存在满足条件(即两两相似度大于该层级最小合并相似度阈值t
l
)的下级分组对(sim(gi,g
maxi
)≥t
l
)时,循环自动终止,判定已无法继续合并(此层为最高层)
[0096]
b)所有词组已合并到同一组,判定已无法继续合并(此层为最高层)。
[0097]
本公开提出的针对含专有名词的文本或短词组的多层次分类归组排序方法,解决了现有技术需要过多前期人工参与/训练/调试(设计模型或者规则需要一定的先验知识:术语词库、业务知识等,或者需要大量有标签的样本进行有监督学习训练模型),以及有监督分类模型必须要预先定死分类导致在准确率、初始类别制定、及后续类别修改上出现的问题,实现了对含专有名词的近似短词组进行高效多层次分组,为分组提供了更多的灵活性和更高的自由度,更便于自由选择分类标准的严弱层级并检查每一层的分类精准度,在智能算法目前无法在短词缺乏信息时达到高准确率的情况下,提供了一种可选型智能算法。这个可以实现半人工半智能的辅助人工的创新算法在无需先验知识及分类规则设定的情况下,依然可以保证高准确率和效率,大幅降低前期人工打标、词库建造或者模型训练所需要的人工参与度。
[0098]
以下,仅仅作为一个示例,描述将本公开的方法应用于系统的分类分级上的具体
分类情况(以下数据摘取自脱敏及简单修改后的真实数据,**多为地域,停用词会排除)。
[0099]
1.数据预处理及初始分组:
[0100][0101]
表1
[0102]
在上述表1中,最右侧一列中,最上两行的初始分组的组号为 1,第三和第四行的初始分组的组号为2,第五和第六行的初始分组的组号为3,之后依此为4,5,6,7,8,9,10。初始分组后的分组数量为10个。
[0103]
*去除的停用词包括所有数据高频词(如

中心’,

平台’,

系统’) 以及描述地区的词(如省市,

公司’)等。
[0104]
*关联词可以自定义关联词字典增加规则条件:比如出现

crm’或

客户关系’的将两个词更换成其中一个,或者两个词都包括,此处选择都包括增加关键词权重。
[0105]
2.上级第一层分组及组分词生成
[0106][0107]
表2
[0108]
3.上级第二层分组及组分词生成
[0109][0110]
表3
[0111]
*语义相似度不仅仅考虑分词是否相同,也考虑分词的重要程度,及词与词之间的关联关系。
[0112]
*上级分组与初始分组的区别在于,在上级分组中,每一组只挑选相似度最大的分组进行合并(假设相似度超过阈值的有多个分组)。
[0113]
4.上级第三层分组
[0114][0115]
表4
[0116]
*此处满足终止条件:所有词组已合并至同一分组,无法再进行合并
[0117]
5.分层结构及最终排序
[0118]
图4示出了分层结构及最终排序,其中每个小圆圈代表一个短词组。
[0119]
最终初始分组排序顺序(见图4最右侧)为:分组2,分组5,分组6,分组8,分组9,分组10,分组1,分组3,分组4,分组 7(其中分组1,分组2,分组3分别有两个短词组,由于此实施例使用的是预置/完全相同的关键词,所以初始分组内的排序可以随意排序,当关键词不同时,可以考虑使用与前一组末尾词的相似度关系作为排序标准),最终排序使得越相似的短词组越聚集在一起,方便人工检查查看并确定使用其中的任何一层的分类作为自动分类打标的标准。
[0120]
以下6条技术要点为本公开的重要组成部分:
[0121]
·
通过设定阈值和计算文本间的两两相似度来判定文本间的连接关系,使用文本连接关系进行初始分组
[0122]
·
使用组代表分词或文本的创新概念(或者基于每个组成员两两相似度)对组与组之间进行两两相似度计算
[0123]
·
使用组与组之间的两两相似度和设定每层的阈值,通过合并下级分组形成上级分组,从而形成多层次分组
[0124]
·
通过多层分组的组号及相似度高低按照上级到下级的分组依次排序达到最相似的词排在最近的位置的目的
[0125]
·
多层分组/分类规则及自定义分组的概念:用户可以选择使用任何一层的分组规则进行自动/智能打标分类,也可以通过最后的排序手动分类,达到人工辅助的功能(由于最终排序将最相似的词组排在最近的位置,更方便人工分组)
[0126]
·
针对文本或短词组的预处理提高分组准确率:去除停用词(包括高频词),以及增加或替换关联词。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献