CN113254655B - 文本分类方法、电子设备及计算机存储介质 - Google Patents
文本分类方法、电子设备及计算机存储介质 Download PDFInfo
- Publication number
- CN113254655B CN113254655B CN202110757754.1A CN202110757754A CN113254655B CN 113254655 B CN113254655 B CN 113254655B CN 202110757754 A CN202110757754 A CN 202110757754A CN 113254655 B CN113254655 B CN 113254655B
- Authority
- CN
- China
- Prior art keywords
- category
- topic
- word
- text
- document
- 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.)
- Active
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
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种文本分类方法、电子设备及计算机存储介质,其中,该方法包括:获取多个话题类别及其对应的多个词和多个文档;统计每个话题类别的所有文档中包含该话题类别对应的每个词的第一文档数量和所有话题类别的所有文档中包含每个话题类别的每个词的第二文档数量;计算每个话题类别的每个词的第一文档数量与第二文档数量的比值,作为词对话题覆盖率;若词的词对话题覆盖率大于设定阈值,将该词选作相应话题类别的特征词,得到相应类别特征词袋;对待分类文档分词,以得到待分类文档的词袋模型;计算待分类文档的词袋模型与各类别特征词袋的相似度;根据各相似度确定该待分类文档的类别。通过上述方案能够利用较少标注完成文本分类任务。
Description
技术领域
本发明涉及自然语言处理技术领域,尤其涉及一种文本分类方法、电子设备及计算机存储介质。
背景技术
文本分类是一个传统的自然语言处理问题,具有很大的实用价值,是实现垃圾信息过滤、新闻自动归档、文本数据挖掘等多种任务的支撑技术。经典的文本分类问题是根据高质量的有标注文本进行学习后,对新文本赋予合理类别标签的过程。传统的文本分类方法关注文本的统计特征、浅层语义特征,如TF-IDF、n-gram模型、词嵌入等方式,并建立文本特征向量,结合分类算法实现文本分类任务,分类算法包括朴素贝叶斯、逻辑回归、支持向量机、决策树等等。近年来,随着深度学习的快速发展,由于其对特征的自动提取和端到端解决问题的优势,越来越多的深度学习模型应用于文本分类领域,包括卷积神经网络(CNN)、循环神经网络(RNN)、图卷积神经网络(GCN)、胶囊网络等等。然而这些方法和模型都需要大量的高质量的标注语料,另外还需要高性能硬件的支持,这些支持包括强大的CPU、GPU计算资源和大容量的内存。对于缺乏标注或缺少高性能机器的支持的情况,这些模型难以实现任务目标。
对于缺少标注的情况,大量半监督或无监督的方法也被提出。这些方法一般需要利用外部知识的帮助,例如使用Wikipedia作为背景知识,以及使用WordNet中的同义词信息,这些方法往往利用这些外部知识,同时结合主题建模实现文本分类任务。适合缺乏标注的场景,但分类性能较差。
传统文本分类模型,通过如词频向量、TF-IDF(词频-逆文档频率)向量等特征表示方法,经过文本特征工程,文本特征降维,将文本特征向量输入传统的分类模型中。此外,常见的基于深度学习技术进行文本分类的方法,利用深度卷积神经网络、循环神经网络或图卷积神经网络等模型提取文本的深度语义特征,端到端的解决文本分类问题。该些方法需要在人工提取特征的基础上进行大量的工作,或者通过深度神经网络进行深度特征提取。然而,传统的文本分类方法或基于深度学习的方法非常依赖于训练数据,难以应对缺乏标注的场景。并且,该类方法也需要高性能机器的支持,深度语言模型尤其依赖CPU和GPU计算资源,以及大容量的内存,难以应用于对时空复杂度敏感的任务中。
利用外部知识以及专家知识,例如Wikipedia作为外部背景知识,FAC-ALLKeyword算法使用专家知识提供类别关键词,使用WordNet提供同义词或近义词信息,使用Word Embedding技术寻找相似的词,通过构建类别词库以及使用主题模型LDA(LinearDiscriminant Analysis,线性判别分析)建模的方法,实现文本分类。
该些主要应用于缺乏标注的场景,需要大量的人工特征工程成本,依赖外部知识库、专家知识、同近义词知识等,自动化、智能化水平相对较低,在诸如精确率、召回率、f1分数等多个评价指标上,表现较差。
发明内容
有鉴于此,本发明提供了一种文本分类方法、电子设备及计算机存储介质,以利用较少标注完成文本分类任务。
为了达到上述目的,本发明采用以下方案实现:
根据本发明实施例的一个方面,提供了一种文本分类方法,包括:
获取多个话题类别和每个话题类别对应的多个词和多个文档;
统计每个话题类别对应的所有文档中包含该话题类别对应的每个词的第一文档数量,以及所有话题类别对应的所有文档中包含每个话题类别对应的每个词的第二文档数量;
计算每个话题类别对应的每个词的第一文档数量与该话题类别对应的该词的第二文档数量的比值,作为该话题类别对应的该词的词对话题覆盖率;
在每个话题类别对应的词的词对话题覆盖率大于设定阈值的情况下,将该话题类别对应的该词选作该话题类别的特征词,并由该话题类别的所有特征词构建为该话题类别的类别特征词袋;
获取待分类文本的文档,对该待分类文本的文档进行分词处理,以得到该待分类文本的文档的词袋模型;
计算该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度;
根据各话题类别对应的相似度确定该待分类文本的文档所属的话题类别。
在一些实施例中,根据各话题类别对应的相似度确定该待分类文本的文档所属的话题类别,包括:
选择所有话题类别对应的相似度中最大的相似度对应的话题类别作为该待分类文本的文档所属的话题类别。
在一些实施例中,根据各话题类别对应的相似度确定该待分类文本的文档所属的话题类别,包括:
以每个话题类别对应的相似度作为一个向量分量,构建向量,作为该待分类文本的文档对应于所有话题类别的相似度向量;
利用向量分类模型对该相似度向量进行分类处理,得到该待分类文本的文档所属的话题类别。
在一些实施例中,向量分类模型为逻辑回归模型、SVM模型或决策树模型。
在一些实施例中,向量分类模型是利用按该待分类文本的文档对应于所有话题类别的相似度向量的构建方式构建的训练样本预先训练得到。
在一些实施例中,由该话题类别的所有特征词构建为该话题类别的类别特征词袋,包括:
利用设定哈希函数对该话题类别的所有特征词进行哈希存储,得到该话题类别的类别特征词袋;
计算该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度,包括:
遍历该待分类文本的文档的词袋模型中的词,并利用设定哈希函数计算遍历得到的词的哈希值,并利用遍历得到的词的哈希值在每个话题类别的类别特征词袋进行查找,以根据查找结果得到该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度。
在一些实施例中,计算该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度,包括:
遍历该待分类文本的文档的词袋模型中的词,并查找每个话题类别的类别特征词袋是否存在遍历的词,得到该待分类文本的文档的词袋模型在每个话题类别的类别特征词袋中出现的词的数量,作为该待分类文本的文档的词袋模型与相应话题类别的类别特征词袋的相似度。
在一些实施例中,获取多个话题类别和每个话题类别对应的多个词和多个文档,包括:
获取多个话题类别和每个话题类别对应的多个文档;
对每个话题类别对应的各文档进行分词,去除设定的缺乏类别特征的词和设定的无意义的词,得到该话题类别对应的多个词。
根据本发明实施例的另一个方面,还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述方法的步骤。
根据本发明实施例的另一个方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一实施例所述方法的步骤。
本发明实施例的文本分类方法、电子设备及计算机可读存储介质,通过设计的词对话题覆盖率,能够筛选出可以很好地反映话题类别特征的词,从而形成话题的类别特征词袋,进而可以根据待分类文本文档的词袋和话题的类别特征词袋的相似度确定待分类文本文档的类别。由于该分类方法基于话题的类别特征词实现分类任务,而类别特征词就能够较好地反映话题类别信息,所以利用较少的标注信息就能较好地完成文本分类任务。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明一实施例的文本分类方法的流程示意图;
图2是本发明一实施例的文本分类方法的总体框架结构示意图;
图3是本发明一实施例中一个话题下的词与文档之间的关系示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
需要预先说明的是,下述实施例或示例的描述或其中所提及的特征可以以相同或类似的方式,与其他实施例或示例中的特征组合,或替换其他实施例或示例中的特征,以形成可能的实施方式。另外,本文所使用的术语“包括/包含”是指特征、要素、步骤或组件的存在,但并不排除还存在一个或多个其他特征、要素、步骤或组件。
针对传统算法需要大量高质量标注作为学习语料,同时需要高性能机器提供能计算能力导致的高成本问题。本发明提出一种基于分析类别特征词的文本分类方法,通过对每个类别下的已有文本进行分词、过滤,得到能充分表征对应类别的特征词袋,并通过计算文本-词袋相似度为新文本分类。本发明的目的旨在应对标注数据小的场景,以及在低成本、低计算资源的场景下处理高效、高性能的文本分类任务。
对本说明可能涉及的术语进行说明:“类别特征词袋”是一个由单词构成的集合,包括了对其所属类别具有表征能力的词语,是本发明提出的概念。例如,财经类别的特征词袋主要包含基金、股票、易方达、净值等词语,而星座类别的特征词袋主要包含射手座、金牛座、天蝎座、运势等词语。文本分类是一项自然语言处理任务,目标是将待分类的新文档分配到一组预先定义的标签中。根据标签数量,还可以分为文本二分类,文本多类别分类和文本多标签分类(一篇可以属于多个类别)。
图1是本发明一实施例的文本分类方法的流程示意图,参见图1,该实施例的文本分类方法,可包括以下步骤S110~步骤S160。
下面将对步骤S110至步骤S160的具体实施方式进行详细说明。
步骤S110:获取多个话题类别和每个话题类别对应的多个词和多个文档。
该步骤S110中,该话题类别例如可以是体育类别、财经类别等。某一话题类别对应的文档,可以是该话题类别下的文档。某一话题类别对应的词可以是从该话题类别下的文档中提取的词。通常情况下,提取的词可能会同时在多个话题类别下出现,所以无法用来作为判断出话题类别的依据。
具体实时,话题类别的该些词可以从其对应的文档中提取或筛选得到。示例性地,上述步骤S110,即,获取多个话题类别和每个话题类别对应的多个词和多个文档,具体可包括步骤:S111,获取多个话题类别和每个话题类别对应的多个文档;S112,对每个话题类别对应的各文档进行分词,去除设定的缺乏类别特征的词和设定的无意义的词,得到该话题类别对应的多个词。
其中,该步骤S112中,分词后可以进行去停用词等处理。缺乏类别特征的词、无意义的词可以是人工标注的需要去除的词。利用此处话题类别对应的文档得到相应词,可以充分利用已有数据。通过去除设定的缺乏类别特征的词和设定的无意义的词可以预先筛除一些很可能不能体现话题类别特征的词。
步骤S120:统计每个话题类别对应的所有文档中包含该话题类别对应的每个词的第一文档数量,以及所有话题类别对应的所有文档中包含每个话题类别对应的每个词的第二文档数量。
步骤S130:计算每个话题类别对应的每个词的第一文档数量与该话题类别对应的该词的第二文档数量的比值,作为该话题类别对应的该词的词对话题覆盖率。
如果希望找到能够代表某一话题类别的词,一方面,该词在该话题类别下出现较多,另一方面,该词不应出现或不应经常出现在其他话题下,所以通过上述步骤S120和步骤S130,一方面通过第一文档数量可以反映一个词在某一话题下出现的情况,另一方通过第二文档数量能够反映该词在所有话题下出现的情况。通过两个数量的比值,可以用来衡量一个词尽量出现在一个话题下且尽量不要出现在其他话题下的情况。
步骤S140:在每个话题类别对应的词的词对话题覆盖率大于设定阈值的情况下,将该话题类别对应的该词选作该话题类别的特征词,并由该话题类别的所有特征词构建为该话题类别的类别特征词袋。
该步骤S140中,该设定阈值可以根据实际情况进行设置,对于特殊情况,如一个词的词对话题覆盖率等于1,则说明该词只出现于一个话题下。每个话题类别下的类别特征词袋中包含多个认为能够反映话题类别特征的词。
步骤S150:获取待分类文本的文档,对该待分类文本的文档进行分词处理,以得到该待分类文本的文档的词袋模型。
该步骤S150中,可以利用常规的分词处理的方式对待分类文档进行分词处理、去停用词处理等,得到一系列单词后,构建词袋模型,该词袋模型中包含多个该待分类文本文档的词。
步骤S160:计算该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度。
该步骤S160中,通过计算两个词袋的相似度,可以判断一个待分类文本文档可能属于某一话题类别的情况。
具体实施时,可以通过计算词袋之间的共现词数量来计算相似度。示例性地,上述步骤S160,即,计算该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度,具体可包括步骤:S1611,遍历该待分类文本的文档的词袋模型中的词,并查找每个话题类别的类别特征词袋是否存在遍历的词,得到该待分类文本的文档的词袋模型在每个话题类别的类别特征词袋中出现的词的数量,作为该待分类文本的文档的词袋模型与相应话题类别的类别特征词袋的相似度。
进一步地,可以利用哈希表存储话题类别的类别特征词袋。
示例性地,上述步骤S140中,由该话题类别的所有特征词构建为该话题类别的类别特征词袋,具体可包括步骤:S141,利用设定哈希函数对该话题类别的所有特征词进行哈希存储,得到该话题类别的类别特征词袋。在此情况下,上述步骤S160,即,计算该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度,具体可包括步骤:S1621,遍历该待分类文本的文档的词袋模型中的词,并利用设定哈希函数计算遍历得到的词的哈希值,并利用遍历得到的词的哈希值在每个话题类别的类别特征词袋进行查找,以根据查找结果得到该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度。
该实施例中,通过哈希存储及哈希查找,能够降低查找的时间复杂度,更快速的得到词袋间的相似度。
步骤S170:根据各话题类别对应的相似度确定该待分类文本的文档所属的话题类别。
在一些实施例中,可以选择相似度最大的话题类别作为待识别文本文档的话题类别。示例性地,上述步骤S170,即,根据各话题类别对应的相似度确定该待分类文本的文档所属的话题类别,具体可包括步骤:S1711,选择所有话题类别对应的相似度中最大的相似度对应的话题类别作为该待分类文本的文档所属的话题类别。
在另一些实施例中,理想情况是,能够明显确定可以将哪个话题类别确定为待分类文本文档的类别,但由于类别特征词袋的准确定等问题,各话题类别对应的相似度可能都具有一定大小,难以确定哪个话题类别作为文本文档的话题类别,可以根据所有话题类别对应的相似度进一步分类。示例性地,上述步骤S170,即,根据各话题类别对应的相似度确定该待分类文本的文档所属的话题类别,具体可包括步骤:S1721,以每个话题类别对应的相似度作为一个向量分量,构建向量,作为该待分类文本的文档对应于所有话题类别的相似度向量;S1722,利用向量分类模型对该相似度向量进行分类处理,得到该待分类文本的文档所属的话题类别。如此一来,得到的相似度向量可以包含待分类文本文档属于各话题类别的可能信息。
上述步骤S1722中,向量分类模型例如可以为逻辑回归模型、SVM模型(支持向量机模型)或决策树模型。向量分类模型可以是利用按该待分类文本的文档对应于所有话题类别的相似度向量的构建方式构建的训练样本预先训练得到。简言之可以利用类似于本实施例方式得到的相似度向量而形成的训练样本,对现有的初始的分类模型(可以是预训练的)进行训练得到。
另外,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述的文本分类方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一实施例所述的文本分类方法的步骤。
本发明实施例中,通过设计的词对话题覆盖率,能够筛选出可以很好地反映话题类别特征的词,从而形成话题的类别特征词袋,进而可以根据待分类文本文档的词袋和话题的类别特征词袋的相似度确定待分类文本文档的类别。由于该分类方法基于话题的类别特征词实现分类任务,而类别特征词就能够较好地反映话题类别信息,所以利用较少的标注信息就能较好地完成文本分类任务。
模拟了人类处理文档分类的直觉,不需要外部的知识库或庞大的预训练语言模型,通过分析每个类别的类别特征词,构建表征每个类别的特征词袋,对于新文本,通过计算文本与每个类别特征词袋的相似度为其分类。
下面结合一个具体实施例对上述方法进行说明,然而,值得注意的是,该具体实施例仅是为了更好地说明本申请,并不构成对本申请的不当限定。
图2是本发明一实施例的文本分类方法的总体框架结构示意图,参见图2,
本实施例的方法可以分为以下三个部分:
1. 提出对每个词计算话题文本覆盖率(tcr),通过控制tcr的值,对每个话题下的词进行过滤,去除缺乏类别特征或无意义的词,得到有话题表征能力的词构成类别特征词袋。
2.对待分类文档,通过分词算法转化为文档词袋,与每个类别特征词袋进行相似度计算,将文档分到相似度最高的类别中。
3.向量化模块,此模块为可选模块,非必需。将待分类文档与每个类别特征词袋的相似度强度作为向量分量,构成文档—话题相似度向量。显然,向量的维度可以等同于话题的数量,在对文档向量化后,结合以后的分类模型,如SVM、决策树等进行文本分类。
以下参照图2对本实例做进一步的详细说明,但所举实例不作为对本发明的限定。本实施例的方法的具体实现包括以下步骤S1~ S3。
S1,类别特征词袋的构建:
在该步骤S1中,使用后续有标注数据作为启动数据,构造每个类别的特征词袋。该步骤的目标是让每个词都能很好的表征对应的话题类别,不同的词袋之间应该有清晰的不同。例如,体育类别词袋中应该有:NBA、英超、世锦赛、足球等等,而财经类别词袋中应该有:大盘、指数、易方达、基金、净值等。为了实现该目标,本实施例提出词对话题的覆盖率(tcr,topic coverage rate of words),其公式如下:
图3是本发明一实施例中一个话题下的词与文档之间的关系示意图,图3示出了词word 1、word 2、word 3、…、word n和文档doc 1、doc 2、doc 3、…、doc m之间的关系,参见图3,tcr值具有良好的可解释性,在第i个话题中共有n个词和m篇文档,从文档的方向看,这是一个投票模型,每篇文档给其包含的词语投票,显然,如果一个词语在某个话题下得到了大量的投票,则说明这个词语可以很好的表征这个话题;从单词的方向看,这是一个覆盖率模型,一个单词被某个话题下越多的文档包含,则这个单词对此话题下的文档的覆盖率越高,例如体育类中会有很多文档包含“足球”,但基本不会有文档包含“谷歌”,这说明“足球”比谷歌对体育话题更有表征能力。
另外,需要注意,一些无意义的词,如语气词、停用词在每个话题下的覆盖率都很高,但并没有实际的表征能力,因此需要进行去除处理。上述公式中,分子代表词w对话题的覆盖度,分母表示词w对全体文档的覆盖度,二者的比值即为tcr值。显然tcr的值可以是0到1之间的实数,一个词的tcr值越大,则代表这个词对当前话题的表征能力越强,当tcr为1时,说明这个词只在当前话题的文档中出现,而不在其他话题中出现;当tcr越小时,单词对当前话题的表征能力下降,因为这代表单词在其他类别的出现频率也很高,缺乏此类别特点。tcr 的阈值设定的过大或多小都会影响分类效果,过大的tcr值会使过滤标准太严格,失去过多信息;而太小的tcr值则会引入太多噪音。
S2,文档—词袋相似度计算:
对于待分类的新文档,首先将文档分词,转化为词袋模型,然后计算与每个话题类别词袋的相似度,并将文档加入到相似度最高的类别中。对于文档词袋中的任一词w和话题T i ,有公式:
其中,如果词w能在第i个话题类别词袋BoW中查到(if w in the BoW of the i-th calss),则函数f(T i ,w)的取值为1,否则,取值为0。
其中,f(w j , T i )表示第j个词w j 在第i个话题类别词袋中查找后的函数值。
简单而言,假设有n个话题类别词袋以及一篇新文档d。首先利用分词算法包对文档d进行分词,将文档d也转化为词袋模型,然后计算文档词袋和话题类别词袋的相似度,两个词袋之间的相似度即为它们共现单词的数量。
一般情况下,文档会在正确的类别下有很高的相似强度,而与其他类别的相似强度为0或较低。此外,还需要处理两种特殊情况:1)撞空:待分类文档和所有的话题词袋的相似度都为零;2)碰撞:待分类文档和超过一个的话题类别词袋的相似度相同。由于实验结果表明这两种特殊情况的占比极小,所以对于这两种特殊情况,我们使用随机化技术,将话题随机分类到可能的类别下。
进一步地,构建类别特征词袋可以使用哈希技术,并且使用哈希表存储词袋。哈希技术可以将命中查询操作的时间复杂度降至O(1)。
S3,文档向量化:
该步骤S3是可选的。在上一步骤S2中,提到在遇到两种特殊情况时,使用随机化技术,将待分类文档随机分到一个可能类别中。实验结果证明,由于特殊情况的占比很小,随机化技术对方法分类性能影响较小。但在话题类别具有很强相关度的场景,特殊情况的比例会明显上升,简单的随机化处理会降低模型的分类性能。例如,数据中同时包含财经和彩票或者体彩和体育类别,显然这些类别之间具有很强的相关性,即使我们通过控制tcr阈值严格过滤类别词,也无法很好的解决这类问题,因为这些话题之间的单词共现关系很强,而且过于严格的特征词过滤标准也会损失过多的信息。
在这种场景下,会出现较多的碰撞情况。例如,一篇文本在彩票和财经两个类别具有相同的相似度,那么难以确定应该将其分到哪里,本实施例使用向量化技术可以解决这个问题,其核心在于利用已有的数据学习出每个类别的特征权重(默认情况下每个类别的权重相同)。例如,彩票话题更类似与财经话题的子话题,因此当新文本和彩票话题的相似度很高时,即使其和财经的相似度同样高甚至更高,我们仍然将文本分到彩票话题,也即我们给彩票话题分配了更高的权重。
进一步地,提出了一种简便的向量化方法。对于一篇新文档,将其和每个话题类别的相似度作为对应位置的分量,则向量的维度等于话题类别的数量,向量第i个分量的数值为文本和第i个话题的相似强度。在文本向量化后,使用传统的向量分类模型即可,如逻辑回归、SVM、决策树模型等。
上述实施例中,提出词的话题覆盖率 tcr,通过计算每个词的tcr值,对词按表征能力过滤,得到能够表征话题类别的类别特征词袋。通过计算文档—词袋相似度进行分类,其特征在于,将待分类文档分词转化为词袋后,计算与每个词袋的相似强度,并对具有多个相同相似度的情况使用随机化技术。对于数据的话题类别之间具有显著的相似关系的场景,使用文档–类别向量化技术,将文档转为向量表示,并结合使用向量分类模型进行文本分类。
本实施例的基于类别特征词分析的文本分类方法能够带来以下有益技术效果:通过对词的类别分类,以及文档与词袋的相似度计算,可以在缺乏大量标注或缺乏高性能硬件支持的场景下,以良好的时间复杂度和空间复杂度完成文本分类任务,速度快、占用小,同时在多个分类评价指标中有着良好的表现。
在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本发明的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种文本分类方法,其特征在于,包括:
获取多个话题类别和每个话题类别对应的多个词和多个文档;
统计每个话题类别对应的所有文档中包含该话题类别对应的每个词的第一文档数量,以及所有话题类别对应的所有文档中包含每个话题类别对应的每个词的第二文档数量;
计算每个话题类别对应的每个词的第一文档数量与该话题类别对应的该词的第二文档数量的比值,作为该话题类别对应的该词的词对话题覆盖率;
在每个话题类别对应的词的词对话题覆盖率大于设定阈值的情况下,将该话题类别对应的该词选作该话题类别的特征词,并由该话题类别的所有特征词构建为该话题类别的类别特征词袋;
获取待分类文本的文档,对该待分类文本的文档进行分词处理,以得到该待分类文本的文档的词袋模型;
计算该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度;
根据各话题类别对应的相似度确定该待分类文本的文档所属的话题类别。
2.如权利要求1所述的文本分类方法,其特征在于,根据各话题类别对应的相似度确定该待分类文本的文档所属的话题类别,包括:
选择所有话题类别对应的相似度中最大的相似度对应的话题类别作为该待分类文本的文档所属的话题类别。
3.如权利要求1所述的文本分类方法,其特征在于,根据各话题类别对应的相似度确定该待分类文本的文档所属的话题类别,包括:
以每个话题类别对应的相似度作为一个向量分量,构建向量,作为该待分类文本的文档对应于所有话题类别的相似度向量;
利用向量分类模型对该相似度向量进行分类处理,得到该待分类文本的文档所属的话题类别。
4.如权利要求3所述的文本分类方法,其特征在于,向量分类模型为逻辑回归模型、SVM模型或决策树模型。
5.如权利要求3所述的文本分类方法,其特征在于,向量分类模型是利用按该待分类文本的文档对应于所有话题类别的相似度向量的构建方式构建的训练样本预先训练得到。
6.如权利要求1所述的文本分类方法,其特征在于,
由该话题类别的所有特征词构建为该话题类别的类别特征词袋,包括:
利用设定哈希函数对该话题类别的所有特征词进行哈希存储,得到该话题类别的类别特征词袋;
计算该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度,包括:
遍历该待分类文本的文档的词袋模型中的词,并利用设定哈希函数计算遍历得到的词的哈希值,并利用遍历得到的词的哈希值在每个话题类别的类别特征词袋进行查找,以根据查找结果得到该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度。
7.如权利要求1所述的文本分类方法,其特征在于,计算该待分类文本的文档的词袋模型与各话题类别的类别特征词袋的相似度,包括:
遍历该待分类文本的文档的词袋模型中的词,并查找每个话题类别的类别特征词袋是否存在遍历的词,得到该待分类文本的文档的词袋模型在每个话题类别的类别特征词袋中出现的词的数量,作为该待分类文本的文档的词袋模型与相应话题类别的类别特征词袋的相似度。
8.如权利要求1所述的文本分类方法,其特征在于,获取多个话题类别和每个话题类别对应的多个词和多个文档,包括:
获取多个话题类别和每个话题类别对应的多个文档;
对每个话题类别对应的各文档进行分词,去除设定的缺乏类别特征的词和设定的无意义的词,得到该话题类别对应的多个词。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110757754.1A CN113254655B (zh) | 2021-07-05 | 2021-07-05 | 文本分类方法、电子设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110757754.1A CN113254655B (zh) | 2021-07-05 | 2021-07-05 | 文本分类方法、电子设备及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113254655A CN113254655A (zh) | 2021-08-13 |
CN113254655B true CN113254655B (zh) | 2021-09-17 |
Family
ID=77190914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110757754.1A Active CN113254655B (zh) | 2021-07-05 | 2021-07-05 | 文本分类方法、电子设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113254655B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109754000A (zh) * | 2018-12-21 | 2019-05-14 | 昆明理工大学 | 一种基于依赖度的半监督多标签分类方法 |
CN114781348B (zh) * | 2022-04-11 | 2023-06-02 | 中国电子科技集团公司第十研究所 | 一种基于词袋模型的文本相似度计算方法及系统 |
CN115759072B (zh) * | 2022-11-21 | 2024-03-12 | 时趣互动(北京)科技有限公司 | 一种特征词分类方法、装置、电子设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110019785B (zh) * | 2017-09-29 | 2022-03-01 | 北京国双科技有限公司 | 一种文本分类方法及装置 |
CN111339290A (zh) * | 2018-11-30 | 2020-06-26 | 北京嘀嘀无限科技发展有限公司 | 一种文本分类方法和系统 |
CN111522942B (zh) * | 2020-03-18 | 2023-09-22 | 大箴(杭州)科技有限公司 | 文本分类模型的训练方法、装置、存储介质及计算机设备 |
CN111597423B (zh) * | 2020-05-22 | 2021-03-19 | 吉林大学 | 一种文本分类模型可解释性方法的性能评价方法及装置 |
CN111723208B (zh) * | 2020-06-28 | 2023-04-18 | 西南财经大学 | 基于条件分类树的法律判决文书多分类方法、装置和终端 |
CN112541082A (zh) * | 2020-12-21 | 2021-03-23 | 重庆兆光科技股份有限公司 | 一种文本情感分类方法及系统 |
-
2021
- 2021-07-05 CN CN202110757754.1A patent/CN113254655B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113254655A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hassan et al. | Deep learning approach for sentiment analysis of short texts | |
RU2678716C1 (ru) | Использование автоэнкодеров для обучения классификаторов текстов на естественном языке | |
CN113254655B (zh) | 文本分类方法、电子设备及计算机存储介质 | |
CN111221944B (zh) | 文本意图识别方法、装置、设备和存储介质 | |
CN111522908A (zh) | 一种基于BiGRU和注意力机制的多标签文本分类方法 | |
Grzegorczyk | Vector representations of text data in deep learning | |
Alghamdi et al. | Arabic Web page clustering: A review | |
CN110728135B (zh) | 文本主题标引方法、装置、电子设备及计算机存储介质 | |
Jayady et al. | Theme Identification using Machine Learning Techniques | |
Shahbazi et al. | Toward representing automatic knowledge discovery from social media contents based on document classification | |
Mutanga et al. | Detecting hate speech on Twitter network using ensemble machine learning | |
CN113408282B (zh) | 主题模型训练和主题预测方法、装置、设备及存储介质 | |
Ueno et al. | A spoiler detection method for japanese-written reviews of stories | |
Holla et al. | An Improved Fake News Detection Model Using Hybrid Time Frequency-Inverse Document Frequency for Feature Extraction and AdaBoost Ensemble Model as a Classifier | |
Kostkina et al. | Document categorization based on usage of features reduction with synonyms clustering in weak semantic map | |
Mehta et al. | Low rank factorization for compact multi-head self-attention | |
Kowsher et al. | Bangla topic classification using supervised learning | |
Lim et al. | Comparing Machine Learning and Deep Learning Based Approaches to Detect Customer Sentiment from Product Reviews | |
Sarkar et al. | Text Summarization | |
Sharma et al. | Automated Document Summarization and Classification Using Deep Learning | |
Khan et al. | Fake News Classification using Machine Learning: Count Vectorizer and Support Vector Machine | |
Banovic et al. | How Soon Can We Detect Depression? | |
Perumal et al. | An effective sentiment classification by using machine learning algorithms and deep convolution neural network | |
Imad et al. | Automated Arabic News Classification using the Convolutional Neural Network. | |
Mukherjee et al. | Immigration document classification and automated response generation |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |