CN115129864A - 文本分类方法、装置、计算机设备和存储介质 - Google Patents
文本分类方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115129864A CN115129864A CN202210484210.7A CN202210484210A CN115129864A CN 115129864 A CN115129864 A CN 115129864A CN 202210484210 A CN202210484210 A CN 202210484210A CN 115129864 A CN115129864 A CN 115129864A
- Authority
- CN
- China
- Prior art keywords
- cluster
- text data
- sentences
- clusters
- sentence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种文本分类方法、装置、计算机设备和存储介质。所述方法包括:从文本数据中检索与所述文本数据中的关键词匹配的语句,得到类簇中心句;从所述文本数据中检索所述类簇中心句的相似句;基于所述类簇中心句和所述相似句,得到第一类簇;对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个第二类簇;基于所述第一类簇和所述第二类簇,确定所述文本数据对应的类别标签。采用本方法能够降低文本分类的成本。
Description
技术领域
本申请涉及机器学习技术领域,特别是涉及一种文本分类方法、装置、计算机设备和存储介质。
背景技术
随着社会经济的快速发展,很多行业都存在着大量的业务数据,对业务数据进行分析有助于了解用户关注的热点和痛点问题,从而提升服务质量。
传统方法中,首先利用已打标的文本数据对分类模型进行训练,再基于训练好的分类模型对业务下的文本数据进行打标,从而实现对业务数据的数据分析。但是,分类模型过于依赖已有的业务场景,无法适应业务场景的变化,在业务场景发生变化的时候,往往需要对分类模型重新训练。显然,这种方法会导致成本高的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够降低成本的文本分类方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种文本分类方法。所述方法包括:
从文本数据中检索与所述文本数据中的关键词匹配的语句,得到类簇中心句;
从所述文本数据中检索所述类簇中心句的相似句;
基于所述类簇中心句和所述相似句,得到第一类簇;
对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个第二类簇;
基于所述第一类簇和所述第二类簇,确定所述文本数据对应的类别标签。
第二方面,本申请还提供了一种文本分类装置。所述装置包括:
聚类模块,用于从文本数据中检索与所述文本数据中的关键词匹配的语句,得到类簇中心句;从所述文本数据中检索所述类簇中心句的相似句;基于所述类簇中心句和所述相似句,得到第一类簇;对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个第二类簇;
确定模块,用于基于所述第一类簇和所述第二类簇,确定所述文本数据对应的类别标签。
在其中一个实施例中,所述聚类模块,还用于若所述文本数据是流式数据,则基于所述文本数据中各词的增长情况,从文本数据中提取出关键词;若所述文本数据是非流式数据,则基于所述文本数据中各词的数量占比,从文本数据中提取出关键词。
在其中一个实施例中,所述聚类模块,还用于从所述文本数据中提取关键词;确定从提取的关键词中筛选出的种子关键词;从所述文本数据中检索出与所述种子关键词语义接近的语句,得到类簇中心句。
在其中一个实施例中,所述聚类模块,还用于对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个初始类簇;针对每个初始类簇,从所述初始类簇的多个语句中确定所述初始类簇的类簇中心句;基于所述初始类簇中的类簇中心句和多个语句之间的距离,确定所述初始类簇的噪音语句;按照所述噪音语句针对所述初始类簇中的语句进行过滤,得到第二类簇。
在其中一个实施例中,所述聚类模块,还用于对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个初始类簇;确定各所述初始类簇的类簇密度;基于所述类簇密度对所述至少一个初始类簇进行类簇过滤,得到过滤后剩余的第二类簇。
在其中一个实施例中,所述确定模块,还用于确定所述文本数据中的各类簇分别对应的类簇关键词;所述文本数据中的各类簇包括所述第一类簇和所述第二类簇;从所述文本数据中的多个类簇中确定各类簇分别对应的相似类簇;基于各类簇分别对应的相似类簇和类簇关键词,确定所述文本数据对应的类别标签。
在其中一个实施例中,所述确定模块,还用于分别确定各类簇的类簇中心句;通过对各类簇的类簇中心句之间的相似度比对,从所述文本数据的多个类簇中确定各类簇分别对应的相似类簇。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本申请所述方法各实施例中的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请所述方法各实施例中的步骤。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本申请所述方法各实施例中的步骤。
上述文本分类方法、装置、计算机设备、存储介质和计算机程序产品,从文本数据中检索与文本数据中的关键词匹配的语句,得到类簇中心句;从文本数据中检索类簇中心句的相似句;基于类簇中心句和相似句,得到第一类簇;对文本数据中除第一类簇外的语句聚类,得到至少一个第二类簇;基于第一类簇和第二类簇,确定文本数据对应的类别标签。首先基于文本数据中的关键词检索出第一类簇,再聚类除第一类簇外的语句得到第二类簇,最后基于第一类簇和第二类簇确定相应的类别标签,能够无监督地确定出文本数据的类别标签,所以即使文本数据中涉及到了新的业务场景,也能很好地适应,相较于基于分类模型的传统方式,降低了成本。
附图说明
图1为一个实施例中文本分类方法的应用环境图;
图2为一个实施例中文本分类方法的流程示意图;
图3a为一个实施例中文本分类方法的简易流程示意图;
图3b为一个实施例中检索第一类簇的类簇中心句的简易流程示意图;
图4为一个实施例中文本分类装置的结构框图;
图5为一个实施例中计算机设备的内部结构图;
图6为另一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的文本分类方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。服务器104可以从文本数据中检索与文本数据中的关键词匹配的语句,得到类簇中心句;服务器104可以从文本数据中检索类簇中心句的相似句;服务器104可以基于类簇中心句和相似句,得到第一类簇,并对文本数据中除第一类簇外的语句聚类,得到至少一个第二类簇;服务器104可以基于第一类簇和第二类簇,确定文本数据对应的类别标签。可以理解,服务器104可以将文本数据对应的类别标签返回至终端102。终端102可以展示文本数据对应的类别标签。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,上述服务器104执行的步骤也可以由终端102执行,还可以由终端102和服务器104共同执行。可以理解,文本分类方法的实现不限于具体的执行主体。
在一个实施例中,如图2所示,提供了一种文本分类方法,本实施例以该方法应用于服务器进行举例说明,可以理解的是,该方法也可以应用于终端,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤202,从文本数据中检索与文本数据中的关键词匹配的语句,得到类簇中心句。
其中,类簇中心句是用于反映类簇特征的标准句。可以理解,类簇中心句相当于是类簇中心点,类簇中心句是类簇中最具代表性的语句,能够最大程度地体现类簇的特征。关键词是文本数据中比较关键的词。可以理解,关键词可以在一定程度上反映文本数据所对应的类别标签情况,文本数据中同一个类别标签下的语句可以与同一关键词语义接近。
具体地,服务器可以基于关键词评价标准从文本数据中提取关键词,并从文本数据中检索与文本数据中的关键词匹配的语句,得到类簇中心句。可以理解,类簇中心句可以是与关键词最匹配的语句。
在一个实施例中,服务器可以直接将关键词作为种子关键词,从文本数据中检索与种子关键词语义接近的语句,得到类簇中心句。其中,种子关键词中具有类别标签的关键信息。可以理解,种子关键词可以在一定程度上代表一个类别标签。种子关键词中包含的语义可以指向一个类别标签。类簇中心句可以是包括种子关键词的语句,也可以是与种子关键词语义一致的语句。
在一个实施例中,文本数据中包括新增业务场景下的数据。服务器可以确定历史业务场景中的历史类别标签,通过比对历史类别标签和关键词,确定与历史类别标签不匹配的关键词,得到种子关键词。可以理解,与历史类别标签不匹配的关键词很可能反映了一种新的类别标签。
在一个实施例中,关键词评价标准可以包括增速和词频-逆向文件频率(termfrequency–inverse document frequency,TF-IDF)中的至少一种。
步骤204,从文本数据中检索类簇中心句的相似句;基于类簇中心句和相似句,得到第一类簇。
具体地,服务器可以通过比对文本数据中各语句与类簇中心句之间的相似度,从文本数据中检索出类簇中心句的相似句。服务器可以将类簇中心句和相似句组成第一类簇。可以理解,类簇中心句与相似句可能同属于一个类别标签。类簇中心句与相似句之间的相似度越高,则同属于一个类别标签的可能性越大。
在一个实施例中,服务器可以将类簇中心句和文本数据中各语句进行向量化,得到语句向量和中心句向量。服务器可以从多个语句向量中检索出与中心句向量匹配的相似句向量,得到相似句。可以理解,服务器可以通过计算语句向量和中心句向量之间的相似度,得到相似句向量。
在一个实施例中,服务器可以将类簇中心句和文本数据中各语句输入至句子向量化模型,得到语句向量和中心句向量。比如,句子向量化模型可以是基于自注意力模型(transformer)和对比学习的预训练模型。可以理解,服务器可以采用sentence-bert(语义相似度模型)和sim-bert(短文本语义匹配模型)中的至少一种预训练模型,对类簇中心句和文本数据中各语句进行向量化。
步骤206,对文本数据中除第一类簇外的语句聚类,得到至少一个第二类簇;基于第一类簇和第二类簇,确定文本数据对应的类别标签。
具体地,服务器可以多维度地对文本数据进行预处理,并对预处理后的文本数据中除第一类簇外的语句聚类,得到至少一个第二类簇。服务器可以将得到的第一类簇和第二类簇返回至终端,人工通过终端从第一类簇和第二类簇中去除无效类簇,并对除无效类簇外的有效类簇标记相应的类别标签。服务器可以获取标记类别标签的有效类簇,确定文本数据对应的类别标签。
在一个实施例中,服务器可以将标记历史类别标签的有效类簇作为现有分类模型的训练数据,以完善现有分类模型的功能。可以理解,待进行文本分类的文本数据可以是现有分类模型无法进行分类的数据。若有效类簇的类别标签是历史类别标签,即,有效类簇的类别标签属于历史标签体系,则现有分类模型无法完全识别出历史标签体系下的文本数据,服务器可以利用未被现有分类模型识别出的有效类簇,完善现有分类模型的功能,提高识别准确性。若有效类簇的类别标签不属于历史标签体系,则说明发现了新的类别标签,服务器可以对历史标签体系进行丰富和完善,得到新的标签体系。
在一个实施例中,服务器可以从对话维度和语句维度中的至少一种维度对文本数据进行预处理。文本数据可以是对话类型的数据,服务器可以先对文本数据进行对话筛选,再进行语句筛选,然后进行语句清洗,得到预处理后的文本数据。可以理解,对话筛选和语句筛选目的是从大量的文本数据中选出期望进行文本分类的有效对话,以及从有效对话中选出期望进行文本分类的有效语句。服务器可以根据关键词组合、对话对象角色和对话轮次等中的至少一种筛选维度进行对话筛选和语句筛选。比如,若对话中第一句语句中不包括客服坐席的关键词,则筛除相应对话;若对话中的对话伦次过少,则筛除相应对话。服务器可以只保留固定对话对象角色的语句。
在一个实施例中,服务器可以对完成对话筛选和语句筛选的文本数据进行语句清洗。可以理解,服务器可以去除停用词和正则的方式降低语句本身的噪音。比如,服务器可以通过预定义的正则表达式对文本数据中各语句进行过滤。可以理解,语句清洗可以对语句降噪,能够提高后续文本分类的效果。
上述文本分类方法中,从文本数据中检索与文本数据中的关键词匹配的语句,得到类簇中心句;从文本数据中检索类簇中心句的相似句;基于类簇中心句和相似句,得到第一类簇;对文本数据中除第一类簇外的语句聚类,得到至少一个第二类簇;基于第一类簇和第二类簇,确定文本数据对应的类别标签。首先基于文本数据中的关键词检索出第一类簇,再聚类除第一类簇外的语句得到第二类簇,最后基于第一类簇和第二类簇确定相应的类别标签,能够无监督地确定出文本数据的类别标签,所以即使文本数据中涉及到了新的业务场景,也能很好地适应,相较于基于分类模型的传统方式,降低了成本。
在一个实施例中,方法还包括:若文本数据是流式数据,则基于文本数据中各词的增长情况,从文本数据中提取出关键词;若文本数据是非流式数据,则基于文本数据中各词的数量占比,从文本数据中提取出关键词。
具体地,若文本数据是流式数据,则服务器可以基于增速的关键词提取算法,通过计算文本数据中各词在文本数据中的增速,从文本数据中提取出关键词;若文本数据是非流式数据,则服务器可以基于词频-逆向文件频率的关键词提取算法,通过计算文本数据中各词在文本数据中的数量占比,从文本数据中提取出关键词。
在一个实施例中,服务器可以统计各预设时段中各词的出现频数,通过比对当前预设时段中各词的出现频数和下一预设时段中各词的出现频数确定各词的增速。可以理解,对于流式数据这一类场景中,每个时段都会存在很多数据,词的突发性是衡量一个词是否关键的重要指标,词的增速可以用于表征词的突发性,词的增速越高则这个词就越关键。比如,9点~10点某个词出现的频数为10,10~11点该词出现频数提高到100,那么这个突然增加的词可能有着某种业务含义,服务器可以将这个词作为一个关键词。
在一个实施例中,服务器可以统计各词在待分类的文本数据中的总出现频数,并计算各词在第一语料库中的逆向文件频率,确定出各词的词频-逆向文件频率。可以理解,本申请各实施例中的文本数据是指待分类的文本数据,可以记为第一文本数据。第一语料库可以是预先设置的语料库,也可以是由在收集待分类的第一文本数据的场景下获取的至少部分语料组成的、与第一文本数据相关的语料。可以理解,在收集待分类的第一文本数据的场景下获取的至少部分语料,可以是由在收集待分类的第一文本数据的场景下获取的、且除第一文本数据外的文本数据构建的,也可以是由在收集待分类的第一文本数据的场景下获取的总语料构建。可以理解,总语料可以包括在同一场景下获取的待分类的第一文本数据本身以及除第一文本数据之外的第二文本数据。本申请对第一语料库的具体组成语料不做限定。为了便于理解,现举例说明,比如,在一个场景下获取了很多文本数据,用户可以从中选择想要进行分类的文本数据,即为第一文本数据,然后,基于剩余的其他文本数据(即第二文本数据)作为语料构建第一语料库。
本实施例中,若文本数据是流式数据,则基于文本数据中各词的增长情况,从文本数据中提取出关键词;若文本数据是非流式数据,则基于文本数据中各词的数量占比,从文本数据中提取出关键词,对于不同数据格式的文本数据采用不同的关键词评价标准,针对性地提取关键词,提高得到第一类簇的准确性。
在一个实施例中,方法还包括:从文本数据中提取关键词;确定从提取的关键词中筛选出的种子关键词;从文本数据中检索与文本数据中的关键词匹配的语句,得到类簇中心句包括:从文本数据中检索出与种子关键词语义接近的语句,得到类簇中心句。
具体地,服务器可以基于增速或词频-逆向文件频率的关键词提取算法,从文本数据中提取关键词,并确定从提取的关键词中筛选出的种子关键词。服务器可以基于词的检索算法和语义向量的检索算法中的至少一种,从文本数据中检索出与种子关键词语义接近的语句,得到类簇中心句。
在一个实施例中,服务器可以对种子关键词和文本数据分别进行分词,得到文本数据的各词和种子关键词的各词。服务器可以通过分别计算的文本数据的各词与种子关键词的各词的相似度,得到文本数据中各语句与种子关键词之间的匹配得分。可以理解,相似度越高,匹配得分越高,相应语句与种子关键词的语义就越接近。比如,服务器可以采用bm25(Best Matching,最匹配)检索算法从文本数据中检索出与种子关键词语义接近的语句。服务器可以采用分布式检索引擎(elasiticsearch)从文本数据中检索出与种子关键词语义接近的语句。
在一个实施例中,服务器可以获取文本数据中语句的语句语义向量、以及种子关键词的词语义向量。服务器可以通过比对语句语义向量和词语义向量,得到与种子关键词语义接近的语句。比如,服务器可以采用sentence-bert(语义相似度模型)和sim-bert(短文本语义匹配模型)中的至少一种预训练模型实现语义向量的检索。
在一个实施例中,服务器可以先基于词的检索算法检索出与种子关键词匹配得分高的词相关语句,再基于语义向量的检索算法从多个词相关语句中检索出与种子关键词语义接近的语句,得到类簇中心句。可以理解,基于词的检索算法的优点是速度较快,缺点是需要分词,且对语义信息的考虑较少,所以检索质量相对较低。因此,搭配使用基于语义向量的检索算法可以提高检索质量。比如,服务器可以先用分布式检索引擎从文本数据中检索出词相关语句,再采用语义向量模型(bert)从多个词相关语句中检索出与种子关键词语义接近的语句,得到类簇中心句。
在一个实施例中,服务器可以将提取的关键词返回至终端,终端可以向用户展示关键词。用户可以通过终端选择感兴趣的关键词,终端可以将用户选择的关键词发送至服务器,服务器可以将用户选择的关键词作为种子关键词。
本实施例中,从文本数据中提取关键词;确定从提取的关键词中筛选出的种子关键词;从文本数据中检索出与种子关键词语义接近的语句,得到类簇中心句,并通过关键词进行筛选出种子关键词,检索类簇中心句,无需依赖现有的分类模型,就能完成词粒度的类别标签挖掘,降低了文本分类的成本。
在一个实施例中,对文本数据中除第一类簇外的语句聚类,得到至少一个第二类簇包括:对文本数据中除第一类簇外的语句聚类,得到至少一个初始类簇;针对每个初始类簇,从初始类簇的多个语句中确定初始类簇的类簇中心句;基于初始类簇中的类簇中心句和多个语句之间的距离,确定初始类簇的噪音语句;按照噪音语句针对初始类簇中的语句进行过滤,得到第二类簇。
具体地,服务器可以从文本数据中除第一类簇外的语句作为聚类语句。服务器可以从多个聚类语句中选取至少一个初始类簇中心句,并计算各聚类语句与初始类簇中心句之间的距离,将各聚类语句分别聚类至距离最小的初始类簇中心句,得到至少一个初始类簇。服务器可以通过计算每个初始类簇的重心(平均距离中心),重新确定初始类簇的类簇中心句。服务器可以计算初始类簇中的类簇中心句和多个聚类语句之间的距离,将距离类簇中心句较远的聚类语句作为初始类簇的噪音语句。服务器可以从初始类簇中过滤掉噪音语句,得到第二类簇。
在一个实施例中,服务器可以将与类簇中心句之间的距离大于噪音距离阈值的聚类语句作为噪音语句。可以理解,去除噪音语句属于类内过滤,类内过滤的目的是减少类簇内的尾部噪音,服务器可以通过比对噪音距离阈值的方式去除距离类簇中心句较远的聚类语句。
在一个实施例中,服务器可以采用均值聚类算法(K-means)对文本数据中除第一类簇外的语句聚类,得到至少一个第二类簇。可以理解,在文本数据的数据量较大时,服务器可以采用均值聚类算法的优化算法。比如,服务器可以分批次从文本数据中抽取第一部分数据,使用均值聚类算法针对部分数据构建出初始类簇,并继续抽取第二部分数据,将第二部分数据分配至距离最近的类簇中心句,以添加至初始类簇中。服务器可以采用小批量均值聚类算法(mini-batch-kmeans)对文本数据中除第一类簇外的语句聚类,得到至少一个第二类簇。
本实施例中,通过对文本数据中除第一类簇外的语句聚类,得到至少一个初始类簇,实现句子粒度的聚类;基于初始类簇中的类簇中心句和多个语句之间的距离,过滤初始类簇的噪音语句,得到第二类簇,保证了第二类簇的质量。
在一个实施例中,对文本数据中除第一类簇外的语句聚类,得到至少一个第二类簇包括:对文本数据中除第一类簇外的语句聚类,得到至少一个初始类簇;确定各初始类簇的类簇密度;基于类簇密度对至少一个初始类簇进行类簇过滤,得到过滤后剩余的第二类簇。
具体地,服务器可以对文本数据中除第一类簇外的语句聚类,得到至少一个初始类簇。服务器可以从初始类簇中确定密度关联语句。其中,密度关联语句是与初始类簇的密度相关的语句。服务器可以基于密度关联语句和类簇中心句之间的距离,确定初始类簇的类簇密度。服务器可以过滤掉类簇密度较低的初始类簇,得到过滤后剩余的第二类簇。
在一个实施例中,服务器可以计算多个密度关联语句和类簇中心句之间的距离的方差,得到初始类簇的类簇密度。可以理解,服务器可以直接通过计算初始类簇内的各语句与类簇中心句之间距离的方差,得到初始类簇的类簇密度。
在一个实施例中,服务器可以将初始类簇中距离类簇中心句最近的前预设数量的语句作为密度关联语句。可以理解,滤除类簇密度较低的初始类簇是类间过滤,类簇密度通过计算类簇中心句和最近topN的语句之间距离的方差得到的。
在一个实施例中,服务器可以采用均值聚类算法对文本数据中除第一类簇外的语句聚类,得到至少一个初始类簇。服务器可以确定初始类簇的噪音语句、以及确定各初始类簇的类簇密度。服务器可以先滤除初始类簇中的噪音语句,再滤除类簇密度较低的初始类簇,得到过滤后剩余的第二类簇。可以理解,服务器也可以先滤除类簇密度较低的初始类簇,再滤除类簇密度较高的初始类簇中的噪音语句。
本实施例中,对文本数据中除第一类簇外的语句聚类,得到至少一个初始类簇,实现句子粒度的聚类。基于类簇密度对至少一个初始类簇进行类簇过滤,所得到的第二类簇的类簇密度高,保证了第二类簇的质量。
在一个实施例中,基于第一类簇和第二类簇,确定文本数据对应的类别标签包括:确定文本数据中的各类簇分别对应的类簇关键词;文本数据中的各类簇包括第一类簇和第二类簇;从文本数据中的多个类簇中确定各类簇分别对应的相似类簇;基于各类簇分别对应的相似类簇和类簇关键词,确定文本数据对应的类别标签。
具体地,服务器可以基于类簇中各词的数量占比,从类簇中提取出类簇关键词。服务器可以通过计算类簇之间的相似度,从文本数据中的多个类簇中确定各类簇分别对应的相似类簇。服务器可以将确定的各类簇分别对应的相似类簇和类簇关键词发送至终端,终端可以展示各类簇的相似类簇和类簇关键词。可以理解,人工通过终端进行打标时,在大数据场景中一个类簇可能包含很多语句,类簇关键词便于人工快速了解类簇信息,对类簇标记类别标签。终端可以针对每个类簇向人工推荐相似类簇,降低筛选成本。终端可以将人工标记的类别标签发送至服务器,服务器可以确定文本数据对应的类别标签。
在一个实施例中,服务器可以将第一类簇的种子关键词作为第一类簇的类簇关键词。可以理解,服务器也可以通过计算第一类簇中各词的数量占比,从第一类簇中提取出类簇关键词。
在一个实施例中,服务器可以统计各词在当前类簇中的总出现频数,并计算各词在第二语料库中的逆向文件频率,确定出当前类簇中各词的词频-逆向文件频率。其中,第二语料库可以是将文本数据中的第一类簇和第二类簇中的语句作为语料构建的,也可以是除当前类簇外的第一类簇和第二类簇中的语句作为语料构建的。服务器可以将词频-逆向文件频率高的词作为类簇关键词。服务器可以将下一类簇作为当前类簇,以确定出当前类簇中各词的词频-逆向文件频率,直至遍历文本数据中的全部类簇。
在一个实施例中,服务器可以对类簇关键词进行词性过滤,保留动词和名词等重要词性,得到最终的类簇关键词。
本实施例中,确定文本数据中的各类簇分别对应的类簇关键词;从文本数据中的多个类簇中确定各类簇分别对应的相似类簇;基于各类簇分别对应的相似类簇和类簇关键词,确定文本数据对应的类别标签,类簇关键词可以表征类簇中的关键信息,便于人工了解类簇,相似类簇可以降低人工筛选类簇的成本。
在一个实施例中,从文本数据中的多个类簇中确定各类簇分别对应的相似类簇包括:分别确定各类簇的类簇中心句;通过对各类簇的类簇中心句之间的相似度比对,从文本数据的多个类簇中确定各类簇分别对应的相似类簇。
具体地,服务器可以分别确定各类簇的类簇中心句。服务器可以计算各类簇的类簇中心句之间的相似度,通过对各类簇的类簇中心句之间的相似度比对,从文本数据的多个类簇中确定各类簇分别对应的相似类簇。服务器可以将各类簇对应的相似类簇发送至终端,终端可以向人工推荐当前类簇对应的相似类簇,降低人工筛选的成本。
本实施例中,分别确定各类簇的类簇中心句;通过对各类簇的类簇中心句之间的相似度比对,从文本数据的多个类簇中确定各类簇分别对应的相似类簇。可以理解,聚类算法是无监督的,效果往往难以保证,这就使得聚类结果中通常存在很多同一类别标签下的类簇,这些重复类簇会降低人工分析类簇的效率,通过确定出类簇对应的相似类簇,能够降低人工筛选成本。
图3a为一个实施例中文本分类方法的简易流程示意图。服务器可以对文本数据进行预处理,并将预处理后的文本数据中的语句向量化。服务器可以基于向量化结果从文本数据中检索用于作为第一类簇的中心的语句,即检索出第一类簇的类簇中心句。图3b为一个实施例中检索第一类簇的类簇中心句的简易流程示意图。如图3b所示,从文本数据中提取关键词,并按照向量检索的方式检索出与关键词匹配的语句,即得到第一类簇的类簇中心句。
进而,服务器可以进行聚类得到文本数据中的各类簇。可以理解,可以采取不同聚类方式得到第一类簇和第二类簇。具体地,针对已经检索出的第一类簇的类簇中心句,服务器可以从文本数据中检索出类簇中心句的相似句,以基于类簇中心句和相似句得到第一类簇。此外,服务器可以直接对文本数据中除第一类簇外的语句聚类,得到第二类簇。
可以理解,基于关键词检索的第一类簇的类簇中心句得到的第一类簇,是基于词粒度的标签挖掘结果,服务器可以不进行词粒度的标签挖掘,直接对文本数据中除第一类簇外的语句聚类,得到第二类簇。
服务器可以确定文本数据中各类簇对应的类簇关键词和相似类簇,并将文本数据中的各类簇与相应的类簇关键词和相应的相似类簇发送至终端。人工可以通过终端整理文本数据中的各类簇,根据类簇关键词快速了解类簇信息,便于对类簇标记类别标签,终端可以向人工推荐相似类簇,降低人工的筛选成本,便于对同一类别标签下的类簇进行打标。终端可以将人工标记完成的类簇发送至服务器,服务器可以确定文本数据对应的类别标签。
本实施例中,对文本数据进行词粒度和句子粒度的标签挖掘,相较于传统的基于单一算法的聚类模型,通过结合了关键词、检索和聚类的无监督算法,构建了一套可交互的标签挖掘流程,有效地优化了单一聚类算法,能够准确地挖掘出新的类别标签。此外,分类模型方面,标签挖掘通常非常依赖现有分类模型的效果,通过重点放在无监督算法的落地和优化上,减少了对分类模型效果的强依赖。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的文本分类方法的文本分类装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个文本分类装置实施例中的具体限定可以参见上文中对于文本分类方法的限定,在此不再赘述。
在一个实施例中,如图4所示,提供了一种文本分类装置400,包括:聚类模块402和确定模块404,其中:
聚类模块402,用于从文本数据中检索与文本数据中的关键词匹配的语句,得到类簇中心句;从文本数据中检索类簇中心句的相似句;基于类簇中心句和相似句,得到第一类簇;对文本数据中除第一类簇外的语句聚类,得到至少一个第二类簇;
确定模块404,用于基于第一类簇和第二类簇,确定文本数据对应的类别标签。
在一个实施例中,聚类模块402,还用于若文本数据是流式数据,则基于文本数据中各词的增长情况,从文本数据中提取出关键词;若文本数据是非流式数据,则基于文本数据中各词的数量占比,从文本数据中提取出关键词。
在一个实施例中,聚类模块402,还用于从文本数据中提取关键词;确定从提取的关键词中筛选出的种子关键词;从文本数据中检索出与种子关键词语义接近的语句,得到类簇中心句。
在一个实施例中,聚类模块402,还用于对文本数据中除第一类簇外的语句聚类,得到至少一个初始类簇;针对每个初始类簇,从初始类簇的多个语句中确定初始类簇的类簇中心句;基于初始类簇中的类簇中心句和多个语句之间的距离,确定初始类簇的噪音语句;按照噪音语句针对初始类簇中的语句进行过滤,得到第二类簇。
在一个实施例中,聚类模块402,还用于对文本数据中除第一类簇外的语句聚类,得到至少一个初始类簇;确定各初始类簇的类簇密度;基于类簇密度对至少一个初始类簇进行类簇过滤,得到过滤后剩余的第二类簇。
在一个实施例中,确定模块404,还用于确定文本数据中的各类簇分别对应的类簇关键词;文本数据中的各类簇包括第一类簇和第二类簇;从文本数据中的多个类簇中确定各类簇分别对应的相似类簇;基于各类簇分别对应的相似类簇和类簇关键词,确定文本数据对应的类别标签。
在一个实施例中,确定模块404,还用于分别确定各类簇的类簇中心句;通过对各类簇的类簇中心句之间的相似度比对,从文本数据的多个类簇中确定各类簇分别对应的相似类簇。
上述文本分类装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储文本数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种文本分类方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种文本分类方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图5和图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种文本分类方法,其特征在于,所述方法包括:
从文本数据中检索与所述文本数据中的关键词匹配的语句,得到类簇中心句;
从所述文本数据中检索所述类簇中心句的相似句;
基于所述类簇中心句和所述相似句,得到第一类簇;
对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个第二类簇;
基于所述第一类簇和所述第二类簇,确定所述文本数据对应的类别标签。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述文本数据是流式数据,则基于所述文本数据中各词的增长情况,从文本数据中提取出关键词;
若所述文本数据是非流式数据,则基于所述文本数据中各词的数量占比,从文本数据中提取出关键词。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
从所述文本数据中提取关键词;
确定从提取的关键词中筛选出的种子关键词;
所述从文本数据中检索与所述文本数据中的关键词匹配的语句,得到类簇中心句包括:
从所述文本数据中检索出与所述种子关键词语义接近的语句,得到类簇中心句。
4.根据权利要求1所述的方法,其特征在于,所述对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个第二类簇包括:
对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个初始类簇;
针对每个初始类簇,从所述初始类簇的多个语句中确定所述初始类簇的类簇中心句;
基于所述初始类簇中的类簇中心句和多个语句之间的距离,确定所述初始类簇的噪音语句;
按照所述噪音语句针对所述初始类簇中的语句进行过滤,得到第二类簇。
5.根据权利要求1所述的方法,其特征在于,所述对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个第二类簇包括:
对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个初始类簇;
确定各所述初始类簇的类簇密度;
基于所述类簇密度对所述至少一个初始类簇进行类簇过滤,得到过滤后剩余的第二类簇。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述基于所述第一类簇和所述第二类簇,确定所述文本数据对应的类别标签包括:
确定所述文本数据中的各类簇分别对应的类簇关键词;所述文本数据中的各类簇包括所述第一类簇和所述第二类簇;
从所述文本数据中的多个类簇中确定各类簇分别对应的相似类簇;
基于各类簇分别对应的相似类簇和类簇关键词,确定所述文本数据对应的类别标签。
7.根据权利要求6所述的方法,其特征在于,所述从所述文本数据中的多个类簇中确定各类簇分别对应的相似类簇包括:
分别确定各类簇的类簇中心句;
通过对各类簇的类簇中心句之间的相似度比对,从所述文本数据的多个类簇中确定各类簇分别对应的相似类簇。
8.一种文本分类装置,其特征在于,所述装置包括:
聚类模块,用于从文本数据中检索与所述文本数据中的关键词匹配的语句,得到类簇中心句;从所述文本数据中检索所述类簇中心句的相似句;基于所述类簇中心句和所述相似句,得到第一类簇;对所述文本数据中除所述第一类簇外的语句聚类,得到至少一个第二类簇;
确定模块,用于基于所述第一类簇和所述第二类簇,确定所述文本数据对应的类别标签。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210484210.7A CN115129864A (zh) | 2022-05-06 | 2022-05-06 | 文本分类方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210484210.7A CN115129864A (zh) | 2022-05-06 | 2022-05-06 | 文本分类方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115129864A true CN115129864A (zh) | 2022-09-30 |
Family
ID=83376483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210484210.7A Pending CN115129864A (zh) | 2022-05-06 | 2022-05-06 | 文本分类方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115129864A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115563627A (zh) * | 2022-12-06 | 2023-01-03 | 中国电子科技集团公司第三十研究所 | 一种基于人机协同的二进制程序漏洞静态分析方法 |
-
2022
- 2022-05-06 CN CN202210484210.7A patent/CN115129864A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115563627A (zh) * | 2022-12-06 | 2023-01-03 | 中国电子科技集团公司第三十研究所 | 一种基于人机协同的二进制程序漏洞静态分析方法 |
CN115563627B (zh) * | 2022-12-06 | 2023-03-14 | 中国电子科技集团公司第三十研究所 | 一种基于人机协同的二进制程序漏洞静态分析方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11403680B2 (en) | Method, apparatus for evaluating review, device and storage medium | |
CN106649818B (zh) | 应用搜索意图的识别方法、装置、应用搜索方法和服务器 | |
CN106897428B (zh) | 文本分类特征提取方法、文本分类方法及装置 | |
WO2020108608A1 (zh) | 搜索结果处理方法、装置、终端、电子设备及存储介质 | |
US20130060769A1 (en) | System and method for identifying social media interactions | |
WO2017097231A1 (zh) | 话题处理方法及装置 | |
CN111324771B (zh) | 视频标签的确定方法、装置、电子设备及存储介质 | |
WO2019217096A1 (en) | System and method for automatically responding to user requests | |
CN112347778A (zh) | 关键词抽取方法、装置、终端设备及存储介质 | |
US11023503B2 (en) | Suggesting text in an electronic document | |
CN111291177A (zh) | 一种信息处理方法、装置和计算机存储介质 | |
CN111539197A (zh) | 文本匹配方法和装置以及计算机系统和可读存储介质 | |
CN109918555A (zh) | 用于提供搜索建议的方法、装置、设备和介质 | |
CN115795030A (zh) | 文本分类方法、装置、计算机设备和存储介质 | |
CN113660541A (zh) | 新闻视频的摘要生成方法及装置 | |
CN113392218A (zh) | 文本质量评估模型的训练方法和确定文本质量的方法 | |
CN114330335A (zh) | 关键词抽取方法、装置、设备及存储介质 | |
CN110019820B (zh) | 一种病历中主诉与现病史症状时间一致性检测方法 | |
CN113988057A (zh) | 基于概念抽取的标题生成方法、装置、设备及介质 | |
US20220366138A1 (en) | Rule-based machine learning classifier creation and tracking platform for feedback text analysis | |
CN115129864A (zh) | 文本分类方法、装置、计算机设备和存储介质 | |
CN116933130A (zh) | 一种基于大数据的企业行业分类方法、系统、设备及介质 | |
CN116090450A (zh) | 一种文本处理方法及计算设备 | |
CN115080741A (zh) | 一种问卷调查分析方法、装置、存储介质及设备 | |
CN115048536A (zh) | 知识图谱生成方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |