首页 / 专利库 / 集成电路 / 集成电路卡 / 微控制器 / 存储器 / 无监督文本分类系统及方法

无监督文本分类系统及方法

阅读:435发布:2023-06-11

专利汇可以提供无监督文本分类系统及方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种无监督 文本分类 方法及系统,该方法包括步骤:针对于每个分类标签,设置 种子 关键词;采用预训练的词向量对种子关键词进行语义相似词扩充,得到扩充关键词;将种子关键词和扩充关键词编码为词向量;将待分类文本转换为文本向量;基于所述词向量,对所述文本向量进行分类。本发明方法及系统,对文本进行分类时,无需进行人工标注,进而可以降低人工标注的成本,以及加快文本分类的效率。,下面是无监督文本分类系统及方法专利的具体信息内容。

1.一种无监督文本分类方法,其特征在于,包括以下步骤:
针对于每个分类标签,设置种子关键词;
采用预训练的词向量对种子关键词进行语义相似词扩充,得到扩充关键词;
将种子关键词和扩充关键词编码为词向量;
将待分类文本转换为文本向量;
基于所述词向量,对所述文本向量进行分类。
2.根据权利要求1所述的方法,其特征在于,所述将种子关键词和扩充关键词编码为词向量的步骤中,采用预训练的BERT模型进行编码。
3.根据权利要求1所述的方法,其特征在于,所述将待分类文本转换为文本向量的步骤中,首先将待分类文本中的词转成词向量,然后对转换后的词向量按照位置求和取均值,最后生成的向量作为文本的向量。
4.根据权利要求1所述的方法,其特征在于,所述基于所述词向量,对所述文本向量进行分类的步骤中,采用K邻近算法进行分类。
5.一种无监督文本分类系统,其特征在于,包括:
配置模,用于针对于每个分类标签,设置种子关键词;
扩充模块,用于采用预训练的词向量对种子关键词进行语义相似词扩充,得到扩充关键词;
词转换模块,用于将种子关键词和扩充关键词编码为词向量;
文本转换模块,用于将待分类文本转换为文本向量;
分类模块,用于基于词转换模块中输出的所述词向量,对所述文本向量进行分类。
6.根据权利要求5所述的系统,其特征在于,所述词转换模块采用预训练的BERT模型将种子关键词和扩充关键词编码为词向量。
7.根据权利要求5所述的系统,其特征在于,所述文本转换模块,首先将待分类文本中的词转成词向量,然后对转换后的词向量按照位置求和取均值,最后生成的向量作为文本的向量。
8.根据权利要求5所述的系统,其特征在于,所述分类模块采用K邻近算法进行分类。
9.一种包括计算机可读指令的计算机可读存储介质,其特征在于,所述计算机可读指令在被执行时使处理器执行权利要求1-4任一所述方法中的操作。
10.一种电子设备,其特征在于,所述的设备包括:
存储器,存储程序指令;
处理器,与所述存储器相连接,执行存储器中的程序指令,实现权利要求1-4任一所述方法中的步骤。

说明书全文

无监督文本分类系统及方法

技术领域

[0001] 本发明涉及自然语言处理技术领域,特别涉及一种无监督文本分类系统及方法。

背景技术

[0002] 自然语言处理(NLP)是计算机科学领域与人工智能领域中的一个重要方向,通常包括语句分类、文本分类、信息抽取等分支。文本分类是指给文本指定一个特定的标签,当前通常采用有监督的机器学习方法训练模型,进而基于该模型进行文本分类,具有一定的准确率,但是同时也存在缺陷。例如,有监督的方法需要投入大量的人进行语料标注,如果分类标签成百上千时,将大大增加人工标注的难度,同时人工标注的效率也比较低下。

发明内容

[0003] 本发明的目的在于改善现有技术中所存在的上述不足,提供一种无监督文本分类系统及方法,无需进行人工标注,大大提高文本分类的效率,降低人工成本。
[0004] 为了实现上述发明目的,本发明实施例提供了以下技术方案:
[0005] 一种无监督文本分类方法,包括以下步骤:
[0006] 针对于每个分类标签,设置种子关键词;
[0007] 采用预训练的词向量对种子关键词进行语义相似词扩充,得到扩充关键词;
[0008] 将种子关键词和扩充关键词编码为词向量;
[0009] 将待分类文本转换为文本向量;
[0010] 基于所述词向量,对所述文本向量进行分类。
[0011] 另一方面,本发明实施例同时提供了一种无监督文本分类系统,包括:
[0012] 配置模,用于针对于每个分类标签,设置种子关键词;
[0013] 扩充模块,用于采用预训练的词向量对种子关键词进行语义相似词扩充,得到扩充关键词;
[0014] 词转换模块,用于将种子关键词和扩充关键词编码为词向量;
[0015] 文本转换模块,用于将待分类文本转换为文本向量;
[0016] 分类模块,用于基于词转换模块中输出的所述词向量,对所述文本向量进行分类。
[0017] 再一方面,本发明实施例同时提供了一种包括计算机可读指令的计算机可读存储介质,所述计算机可读指令在被执行时使处理器执行本发明实施例中所述方法中的操作。
[0018] 再一方面,本发明实施例同时提供了一种电子设备,包括:存储器,存储程序指令;处理器,与所述存储器相连接,执行存储器中的程序指令,实现本发明实施例中所述方法中的步骤。
[0019] 与现有技术相比,本发明方法及系统,对文本进行分类时,无需进行人工标注,进而可以规避人工标注所存在的缺陷,例如规避人工标注所存在的人工成本高、效率低下、类别较多时的标注困难等缺陷。附图说明
[0020] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0021] 图1为实施例中所述文本分类方法的流程图
[0022] 图2为降维后文本向量二维分布图。
[0023] 图3为分类效果图。
[0024] 图4为实施例中所述的文本分类系统的示意框图
[0025] 图5为实施例中所述的电子设备的组成框图。

具体实施方式

[0026] 下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0027] 请参阅图1,本实施例中提供的无监督文本分类方法,包括如下步骤:
[0028] S10,针对每个分类标签设置种子关键词。
[0029] 本步骤中,可以根据行业专家经验设置种子关键词。针对于每个分类标签,本步骤设置的种子关键词的数量及种子关键词的具体内容是初步构建,精确度没有特别要求,当然地,为了精确性考虑,也不会随意设置,种子关键词以能够体现该分类标签的含义为优,具有代表性。
[0030] 例如以新闻语料为例,主要包括体育、娱乐、科技等十个主题的新闻数据,每个类别选取500个样本进行测试。针对每个分类标签,根据专家经验设定的相对应的种子关键词如下:
[0031] '娱乐':['电影','影视','奥斯卡','导演'],
[0032] '科技':['数码','手机','相机','像素'],
[0033] '时尚':['时髦','潮流','穿搭','性感'],
[0034] '时政':['外交','政治','时事','草案'],
[0035] '家居':['家具','建材','厨卫','涂料'],
[0036] '房产':['房价','房贷','物业','楼市'],
[0037] '游戏':['玩家','网游','手游','技能'],
[0038] '体育':['比赛','NBA','体育讯','得分'],
[0039] '财经':['基金','投资','股票','分红'],
[0040] '教育':['考试','学生','英语','四六级']
[0041] S20,采用预训练的词向量对种子关键词进行语义相似词扩充,即通过预训练好的词向量提取与种子关键词语义相近的前K个词,扩充的词称为扩充关键词,种子关键词和扩充关键词可以统称为关键词。
[0042] 词向量最简单的理解就是一个词典,里面存放很多词汇,并且每个词对应一个向量。当进行关键词扩充时,计算种子关键词和词典中其他词的距离,最后取距离最近的K个词,作为扩充关键词,计算距离使用的方法可以是余弦距离,也就是两个向量的夹越小,余弦值越大,距离越近,两个词汇越相似。词向量的训练是很成熟的技术,目前中文词向量的训练常用的方法有word2vector、Glove、FastText,本实施例中对于词向量的训练过程不做细述。
[0043] 例如,针对于电影这个分类标签,扩充后的种子关键词为:['影片','电视剧','经典电影','影视作品','导演','纪录片','青春片','黑白影片','影视','影视剧','香港电影','国产电影','喜剧电影','惊险片','故事片','旧片','动画电影','体育片','关本良','娱乐片']。又例如针对于投资这个分类标签,扩充后的种子关键词为:['融资','筹资','投资总额','投资额','投资者','资金','资产','投资规模','资金投入','回收期','吸引外资','融资额','总投资额','再投资','长期投资','投资性','投资收益','增持','投资人','哑铃式']。
[0044] S30,采用预训练的BERT模型对种子关键词和扩充关键词进行编码,编码为词向量,作为训练集合。本实施例中,采用的是谷歌开源的BERT预训练模型,将关键词编码成768维向量,即词向量。
[0045] BERT模型的训练以及采用训练好的BERT模型对关键词进行编码,都采用的现有成熟的技术,例如BERT模型的训练例如可以参考https://github.com/google-research/bert中介绍的方法,采用训练好的BERT模型对关键词进行编码可以参考https://github.com/hanxiao/bert-as-service中介绍的方法,为简化内容,本实施例中对于BERT模型的具体训练过程及使用过程不做细述。
[0046] 例如以关键词“影片”为例,编码后的结果为:
[0047] 影片:[0.09058967232704163,0.05817750468850136,0.11494268476963043,-0.17733846604824066,0.005463721230626106,-0.3044826090335846,-
0.09630196541547775,0.04823431000113487,-0.0317508801817894,
0.4866386651992798,0.15882273018360138,0.30112338066101074,
0.2476760894060135,0.0013605416752398014,0.42977267503738403,-
0.48495161533355713,0.020803432911634445,0.6325737237930298,
0.3427196145057678,0.3033221960067749,-0.2647889256477356,0.3640071153640747,
0.2438550591468811,-0.03894853591918945,-0.21981193125247955,
0.1812286078929901,0.09971249848604202,0.13998325169086456,-
0.12446393817663193,0.003824261948466301,-0.5084753632545471,-
0.022439805790781975,-0.2599483132362366,-0.17469613254070282,
0.030943699181079865,-0.0775805190205574,0.08118350803852081,
0.12982016801834106,0.8488555550575256,0.07304045557975769,-
0.3434842824935913,-0.4610704779624939…]
[0048] S40,采用预训练的BERT模型将待分类文本编码成文本向量。本步骤,同样的采用BERT将文本编码成词向量。
[0049] 将待分类文本转为向量的过程是,首先将待分类文本中的词采用预训练的BERT模型转成词向量,然后对转换后的词向量按照位置求和取均值,最后生成的向量作为文本的向量。此处的BERT模型可以是上述步骤S30中相同的模型,其实词只是比较短的文本,是文本的一个特例,因此将文本转换为词向量与将词转换为词向量的操作相同。
[0050] 为了观察BERT是否学习到了文本的内在差异,采用PCA(Principal ComponentAnalysis,主成分分析)对文本编码后向量进行降维,就是采用PCA将768维文本向量压缩成2维,然后对其二维数据进行可视化操作,如图2所示,图2为降维后文本向量二维分布图,图2中的每个点表示一篇文本,不同类别文本采用不同颜色和形状表示,每个类别显示50个样本。可以看出,BERT预训练的模型可以将十个类别样本进行编码,并且学习到了各个类别之间的差异。
[0051] PCA也是比较成熟的技术,具体的降维过程不做细述。因为前述步骤采用BERT生成的文本向量的维度是768维,不能通过画图进行可视化显示,此处采用PCA将768维的向量压缩到2维,就可以通过画图观察数据的分布。通过进行降维处理,主要就是观察数据在二维平面的分布,若每个相同类别聚集成堆,不同类别之间有较大的间隔,则说明用BERT编码后的文本向量学习到了不同类别文本之间的差异。因此,通过图2可以看出,经过BERT模型将文本转化为向量,可以学习到到各个类别之间的差异,也就是说进行文本分类时具有很高的准确度。
[0052] S50,基于步骤S30中得到的词向量,采用KNN(k-NearestNeighbor,K邻近算法)对文本向量进行分类。
[0053] KNN算法的核心思想是,如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别。假如有两个类别0和1,在样本空间中每个类别各20个样本。现在有一个未知类别的样本,计算这个样本和空间中的所有样本的距离,然后取距离最近的k个,假设k为7,然后统计7个样本中0和1的个数,若类别0的个数为5,类别1的个数为2,则未知样本的类别为0。KNN算法为现有技术,因此此处对于具体的分类过程不做详述。
[0054] 请参阅图3,图3为分类效果图,就是采用上述分类方法对真实文本(即前面说的新闻语料文本,共十个类别,测试时每个类别取500个样本)进行分类的结果。图3中所示的n_neighbors:150,表示KNN计算时选取的k的大小;accuracy:准确率;micro和macro为多分类不同的评价方式;precison:精确度;recall:召回率;f1:f1值;confusion_matrix:分类混淆矩阵。从图3中可以看出,无论采用何种评价方式,分类f1都接近或者超过0.8。f1是一种综合评价指标,f1=2*precision*recall/(precision+recall)。实验例中,在只提供四个种子关键词(步骤S10中所述)的情况下,采用上述方法f1值已经达到了0.88,即分类效果非常好,即采用上述分类方法对文本进行分类具有很高的准确度及可靠性。
[0055] 从上述步骤中可以看出,采用上述方法进行文本分类,不需要人工进行标注(无监督即是指无需人工标注),继而大大地减少了人力投入,也可以极大地加快分类效率。
[0056] 请参阅图4,基于相同的发明构思,本实施例中同时提供了一种无监督文本分类系统,包括配置模块、扩充模块、词转换模块、文本转换模块以及分类模块。
[0057] 具体地,配置模块用于针对于每个分类标签,设置种子关键词。
[0058] 扩充模块用于采用预训练的词向量对种子关键词进行语义相似词扩充,得到扩充关键词。
[0059] 词转换模块用于基于预训练的BERT模型将种子关键词和扩充关键词编码为词向量;
[0060] 文本转换模块用于基于预训练的BERT模型将待分类文本转换为文本向量。
[0061] 分类模块用于基于词转换模块中输出的所述词向量,采用KNN算法对所述文本向量进行分类。
[0062] 针对于各个模块的详细操作可以参见前述方法的对应描述。
[0063] 如图5所示,本实施例同时提供了一种电子设备,该电子设备可以包括处理器51和存储器52,其中存储器52耦合至处理器51。值得注意的是,该图是示例性的,还可以使用其他类型的结构来补充或替代该结构,实现数据提取、报告生成、通信或其他功能。
[0064] 如图5所示,该电子设备还可以包括:输入单元53、显示单元54和电源55。值得注意的是,该电子设备也并不是必须要包括图5中显示的所有部件。此外,电子设备还可以包括图5中没有示出的部件,可以参考现有技术。
[0065] 处理器51有时也称控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该处理器51接收输入并控制电子设备的各个部件的操作。
[0066] 其中,存储器52例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其他合适装置中的一种或多种,可存储上述处理器51的配置信息、处理器51执行的指令、记录的表格数据等信息。处理器51可以执行存储器52存储的程序,以实现信息存储或处理等。在一个实施例中,存储器52中还包括缓冲存储器,即缓冲器,以存储中间信息。
[0067] 输入单元53例如用于向处理器51提供待标注的文本数据。显示单元54用于显示处理过程中的各种结果,例如输入的文本数据、调整模块的输出结果、CRF模块的输出结果等,该显示单元例如可以为LCD显示器,但本发明并不限于此。电源55用于为电子设备提供电力。
[0068] 本发明实施例还提供一种计算机可读指令,其中当在电子设备中执行所述指令时,所述程序使得电子设备执行本发明方法所包含的操作步骤。
[0069] 本发明实施例还提供一种存储有计算机可读指令的存储介质,其中所述计算机可读指令使得电子设备执行本发明方法所包含的操作步骤。
[0070] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0071] 所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0072] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成模块及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0073] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
[0074] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈