文本特征选择的方法、装置和系统转让专利

申请号 : CN201610539892.1

文献号 : CN107590163B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 车天博

申请人 : 北京京东尚科信息技术有限公司北京京东世纪贸易有限公司

摘要 :

本发明提供一种文本特征选择的方法、装置和系统,利用类间词分布和类内词相关性的文本特征选择方法,解决了文本选择时部分错词或与主题无关的词无法过滤的问题。该方法包括:获取分类后的文本数据,对文本数据进行分词以获得词,根据词得到特征,组成特征集合;根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征;根据类内词相关性算法计算词的相关性,并根据相关性小于相关性阈值的词去除相应的特征;输出特征集合。

权利要求 :

1.一种文本特征选择的方法,其特征在于,包括:获取分类后的文本数据,对文本数据进行分词以获得词,将词作为特征;和/或,根据信息检索的需求对词进行词对组合,将组合的词对作为特征,组成特征集合;

根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征;

根据类内词相关性算法计算词的相关性,并去除包含相关性小于相关性阈值的词的特征;

输出特征集合。

2.根据权利要求1所述的方法,其特征在于,所述根据信息检索的需求对词进行词对组合包括:基于N-Gram模型对词进行词对组合。

3.根据权利要求1所述的方法,其特征在于,根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征包括:基于卡方检验法计算特征的卡方值,去除卡方值小于卡方阈值的特征;或基于最大熵原理计算特征的熵值,去除熵值大于熵阈值的特征。

4.根据权利要求1所述的方法,其特征在于,根据类内词相关性算法计算词的相关性,并去除包含相关性小于相关性阈值的词的特征包括:基于TextRank算法计算词的权重,去除包含权重小于权重阈值的词的特征。

5.一种文本特征选择的装置,其特征在于,包括:分词模块,用于获取分类后的文本数据,对文本数据进行分词以获得词,将词作为特征;和/或,根据信息检索的需求对词进行词对组合,将组合的词对作为特征,组成特征集合;

类间词分布差异计算模块,用于根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征;

类内词相关性计算模块,用于根据类内词相关性算法计算词的相关性,并去除包含相关性小于相关性阈值的词的特征;

输出模块,用于输出特征集合。

6.根据权利要求5所述的装置,其特征在于,所述分词模块还用于:基于N-Gram模型对词进行词对组合。

7.根据权利要求5所述的装置,其特征在于,所述类间词分布差异计算模块还用于:基于卡方检验法计算特征的卡方值,去除卡方值小于卡方阈值的特征;或基于最大熵原理计算特征的熵值,去除熵值大于熵阈值的特征。

8.根据权利要求5所述的装置,其特征在于,所述类内词相关性计算模块还用于:基于TextRank算法计算词的权重,去除包含权重小于权重阈值的词的特征。

9.一种文本特征选择的系统,其特征在于,包括:存储器和处理器,其中:

所述存储器存储指令;

所述处理器被配置为根据指令执行下列步骤:

获取分类后的文本数据,对文本数据进行分词以获得词,将词作为特征;和/或,根据信息检索的需求对词进行词对组合,将组合的词对作为特征,组成特征集合;

根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征;

根据类内词相关性算法计算词的相关性,并去除包含相关性小于相关性阈值的词的特征;

输出特征集合。

10.一种电子设备,其特征在于,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的方法。

11.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-4中任一所述的方法。

说明书 :

文本特征选择的方法、装置和系统

技术领域

[0001] 本发明涉及计算机技术及软件领域,尤其涉及一种文本特征选择的方法、装置和系统。

背景技术

[0002] 互联网上信息资源的迅猛增加,以及人们对能够从网络上快速、有效地获取信息的迫切需求,极大的促进了信息检索技术的发展。文本的特征选择是信息检索的一个基本问题,它把从文本中抽取出的特征词进行量化来表示文本信息。文本特征选择广泛的应用于文本分类、自动文摘、情感分析等领域。
[0003] 常用的文本特征选择方法容错能力较低,在一些没有经过严格编辑(如电商领域用户的商品评论)的文本中,文本特征选择的效果并不理想。究其原因:常用文本特征选择算法的思想是比较类别间词分布的差异,选择差异性较大的作为文本特征。然而部分词(错词或与主题无关的词)出现较随机且词频很小,进而导致词间分布差异较大,从而使得选择出的文本特征无法过滤,影响信息检索结果的准确性。

发明内容

[0004] 有鉴于此,本发明提供一种文本特征选择的方法、装置和系统,利用类间词分布和类内词相关性的文本特征选择方法,解决了文本特征选择时部分错词或与主题无关的词无法过滤的问题。
[0005] 为实现上述目的,根据本发明的一个方面,提供了一种文本特征选择的方法。
[0006] 本发明的一种文本特征选择的方法包括:获取分类后的文本数据,对文本数据进行分词以获得词,根据词得到特征,组成特征集合;根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征;根据类内词相关性算法计算词的相关性,并根据相关性小于相关性阈值的词去除相应的特征;输出特征集合。
[0007] 可选地,根据词得到特征包括:将词作为特征;和/或根据信息检索的需求对词进行词对组合,将组合的词对作为特征。
[0008] 可选地,所述根据信息检索的需求对词进行词对组合包括:基于N-Gram模型对词进行词对组合。
[0009] 可选地,根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征包括:基于卡方检验法计算特征的卡方值,去除卡方值小于卡方阈值的特征;或基于最大熵原理计算特征的熵值,去除熵值大于熵阈值的特征。
[0010] 可选地,根据类内词相关性算法计算词的相关性,并根据相关性小于相关性阈值的词去除相应的特征包括:基于TextRank算法计算词的权重,根据权重小于权重阈值的词去除相应的特征。
[0011] 为实现上述目的,根据本发明的另一方面,提供了一种文本特征选择的装置。
[0012] 本发明的一种文本特征选择的装置包括:分词模块,用于获取分类后的文本数据,对文本数据进行分词以获得词,根据词得到特征,组成特征集合;类间词分布差异计算模块,用于根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征;类内词相关性计算模块,用于根据类内词相关性算法计算词的相关性,并根据相关性小于相关性阈值的词去除相应的特征;输出模块,用于输出特征集合。
[0013] 可选地,所述分词模块还用于:将词作为特征;和/或根据信息检索的需求对词进行词对组合,将组合的词对作为特征。
[0014] 可选地,所述分词模块还用于:基于N-Gram模型对词进行词对组合。
[0015] 可选地,所述类间词分布差异计算模块还用于:基于卡方检验法计算特征的卡方值,去除卡方值小于卡方阈值的特征;或基于最大熵原理计算特征的熵值,去除熵值大于熵阈值的特征。
[0016] 可选地,所述类内词相关性计算模块还用于:基于TextRank算法计算词的权重,根据权重小于权重阈值的词去除相应的特征。
[0017] 为实现上述目的,根据本发明的一个方面,提供了一种文本特征选择的系统。
[0018] 本发明的一种文本特征选择的系统包括:存储器和处理器,其中:
[0019] 所述存储器存储指令;所述处理器被配置为根据指令执行下列步骤:获取分类后的文本数据,对文本数据进行分词以获得词,根据词得到特征,组成特征集合;根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征;根据类内词相关性算法计算词的相关性,并根据相关性小于相关性阈值的词去除相应的特征;输出特征集合。
[0020] 为实现上述目的,根据本发明实施例的再一方面,提供了一种电子设备。
[0021] 本发明实施例的一种电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例的文本特征选择的方法。
[0022] 为实现上述目的,根据本发明实施例的又一方面,提供了一种计算机可读介质。
[0023] 本发明实施例的一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例的文本特征选择的方法。
[0024] 根据本发明的技术方案,通过利用类间词分布差异算法和类内词相关性计算算法的结合,从而可以有效地进行文本特征的选择,并且高效地过滤了文本特征中存在的错词以及与主题无关的词,提高文本特征选择的准确性;通过直接将词作为文本特征和/或将根据词组成的词对作为文本特征,从而可以满足不同的文本特征选择的需求,使得到的结果更符合信息检索的场景计算需求。

附图说明

[0025] 附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
[0026] 图1是根据本发明实施例的文本特征选择的方法的主要步骤的示意图;
[0027] 图2是根据本发明实施例的文本特征选择的装置的主要模块的示意图;
[0028] 图3是根据本发明实施例的文本特征选择的系统的主要部分的示意图。

具体实施方式

[0029] 以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0030] 文本的特征选择是信息检索的一个基本问题,它把从文本中抽取出的特征词进行量化来表示文本信息。本文的特征选择广泛的应用于文本分类、自动文摘、情感分析等领域。常用的文本特征选择算法容错能力比较低,在一些没有经过严格编辑(如电商用户的商品评论)的文本中效果不理想。本发明实施例提出了一种利用类间词分布差异和类内词相关性结合的文本特征选择方案。以下以对电商用户的商品评价进行特征选择为例对本发明实施例的文本特征选择的方法、装置及系统进行详细说明。
[0031] 图1是根据本发明实施例的文本特征选择的方法的主要步骤的示意图。
[0032] 如图1所示,本发明实施例的文本特征选择的方法主要包括如下步骤:
[0033] 步骤S11:获取分类后的文本数据,对文本数据进行分词以获得词,根据词得到特征,组成特征集合。
[0034] 其中,根据词得到特征包括:将词作为特征;和/或根据信息检索的需求对词进行词对组合,将组合的词对作为特征。
[0035] 本步骤的目的在于获得待处理的文本数据,根据分词的方法,将文本数据分成各个词,并根据信息检索或文本分类的需求将词组成特征进行特征的选择。
[0036] 以电商领域手机品类相关商品的用户评论数据为例作为文本输入,对评论预先打好类别标签,继而利用分词工具,对文本进行分词。其中,分词可以采用多种分词工具,本发明实施例中可以采用NLPIR汉语分词系统进行分词,得到的词与词之间可以用符号(例如可以但不限于“#”)分隔开。
[0037] 在得到词之后,可以利用词作为特征,进行文本特征的选择或过滤。但是为了提高文本选择的准确性,例如:在文本分类过程中,不仅希望得到文本的主题,也希望得到关于主题的情感倾向。例如评论‘手机不错’中,我们不仅希望得到文本的主题‘手机’,也希望得到关于主题‘手机’的情感倾向‘不错’。因此,本发明实施例利用词对作为文本特征进行选择。
[0038] 具体而言,本发明实施例中,根据信息检索或文本分类的需求对词进行词对组合包括:基于N-Gram模型对词进行词对组合。N-Gram模型认为某个词出现在i位置的概率与其前后的n个词有关。
[0039] 以i表示词的位置(i=1,…,m。m表示句子中的词个数),词对特征的选择的流程可描述如下:从句子的第一个词开始至句子最后一个词,对于每个词选择该词(i-n+1,i+n-1)/i(即从i-n+1到i+n-1范围内去掉位置i的词)范围内的词与该词组成词对(其中,i-n+1>=1,i+n-1<=m),并将词对加入到特征集合。
[0040] 对于前述的分词结果,可采用n=3的词对模型进行特征选择,得到特征集合。
[0041] 在本步骤得到特征集合后,从步骤S12开始特征的选择和过滤。
[0042] 步骤S12:根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征。其中,包括:基于卡方检验法计算特征的卡方值,去除卡方值小于卡方阈值的特征;或基于最大熵原理计算特征的熵值,去除熵值大于熵阈值的特征。
[0043] 其中,基于卡方检验的类间词分布差异计算的主要思想是:计算某一类别下词分布与总体样本词分布的差异。类别下某一词的分布与总体分布差异越大,则该词与类别的相关性程度越大,即该词更可能作为此类别的特征。
[0044] 在给定词汇t(即特征集合中的某一特征)和类别标签为c的条件下,特征卡方值的公式简化成如下形式:
[0045]
[0046] 其中,A表示包含词汇t且属于分类c的评论数目,B表示包含词汇t但不属于分类c的评论数目,C表示不包含词汇t且属于分类c的评论数目,D表示不包含词汇t且不属于分类c的评论数目。
[0047] 而后,对于得到的特征卡方值按降序排列。其中,卡方值越大,表示该特征对分类越重要。根据文本选择的需求和准确性要求,设定一卡方阈值,对特征进行过滤,仅保留卡方值排名较前的部分特征。
[0048] 除了利用卡方检验之外,还可以利用最大熵原理进行类间词分布差异计算。熵是信息论中的概念,熵越大,分布不确定程度越大。对于文本特征选择,可理解为求p(y|x)的分布,其中Y表示类别标签,X表示词(在本发明实施例中为特征集合中的特征)。其中,p(y|x)的分布的熵越小,分布的不确定程度越小,因此X属于类别Y的可能性越大。
[0049] 上述类间词分布差异算法,例如卡方检验,是通过比较单个类别词分布与总体词分布的差异而得到文本特征,然而部分错词或与主题无关的词在某个品类中随机出现且占总体的比率很低(通常只出现一次),从而导致在单个类别中词分布与总体词分布差异较大,进而导致卡方检验无法过滤。即类间词分布差异算法仅计算类间词分布,部分词无法被过滤。因此,本发明实施例中还将计算词的类内相关性来解决这一问题。
[0050] 步骤S13:根据类内词相关性算法计算词的相关性,并根据相关性小于相关性阈值的词去除相应的特征。
[0051] 类内相关性计算采用主题词抽取算法,如TextRank、LDA等。TestRank算法可以选取主题下的主题词,LDA可以实现文档的主题的确定。主题词抽取算法能够计算出某一主题下与主题最相关的词。本发明以每个评论所属的类别作为主题,以类别下所有评论作为主题的内容进行主题词抽取。
[0052] 接下来主要以TextRank算法为例,介绍主题词的抽取过程。
[0053] 前述根据类内词相关性算法计算词的相关性,并根据相关性小于相关性阈值的词去除相应的特征,利用TextRank算法,即是要计算词的权重,根据权重小于权重阈值的词去除相应的特征。TextRank算法能够实现对某一主题下的词进行抽取,选出最能代表主题的词。TextRank算法来源于谷歌的PageRank算法,PageRank算法以网页作为图的顶点,网页间的链接作为图的边,迭代计算得到网页的权重值,从而实现对网页排序。
[0054] TextRank算法修改了PageRank的顶点和边的选取,以文本中的词作为图的顶点,以归一化的词出现次数作为图的边,通过迭代计算,得到词的权重。
[0055] 以Vk表示当前词,Vj表示除Vk外的任意词,则TextRank词权重迭代公式可表示如下:
[0056]
[0057] 其中,S(Vk)为顶点k的得分,可以理解为顶点(词)k的权重值,d为阻尼系数,默认为:0.85,In(Vk)表示所有指向顶点k的词(入度),Out(Vj)表示所有单词j指向的词(出度)。
[0058] 将类别标签作为主题,类别标签下的评论作为内容,对每个类别标签分别运行TextRank算法计算出类别下的归一化的词权重。
[0059] 因为词权重已经归一化(所有词的权重和为一)。因此,根据文本选择的准确性需求,保留部分词,例如保留前百分之九十的权重的词,剩下的词作为停用词。
[0060] 然后根据停用词过滤前述利用类间词分布差异算法得到的特征集合中的特征,得到最终的特征集合。
[0061] 步骤S14:输出特征集合。
[0062] 为验证特征选择的效果,可以利用得到的特征进行训练。对于获取的带标签的评论数据,利用得到的特征训练分类器。分类器训练可采用LibLinear中的线性分类器。并利用训练好的分类器输出类别标签,从而实现对评论分类。最后得到得结果显示,加入类内词相关性算法后,对召回率几乎没有影响,而准确率得到了明显提升。这表明,加入类内词相关性算法的类间词分布差异算法的效果优于单纯采用类间词分布差异算法选取的文本分类特征。
[0063] 根据本发明实施例的文本特征选择的方法可以看出,通过利用类间词分布差异算法和类内词相关性计算算法的结合,从而可以有效地进行文本特征的选择,并且高效地过滤了文本特征中存在的错词以及与主题无关的词,提高文本特征选择的准确性;通过直接将词作为文本特征和/或将根据词组成的词对作为文本特征,从而可以满足不同的文本特征选择的需求,使得到的结果更符合信息检索的场景计算需求。
[0064] 图2是根据本发明实施例的文本特征选择的装置的主要模块的示意图。
[0065] 如图2所示,本发明实施例的文本特征选择的装置20主要包括如下模块:分词模块201、类间词分布差异计算模块202、类内词相关性计算模块203以及输出模块204,其中,[0066] 分词模块201用于获取分类后的文本数据,对文本数据进行分词以获得词,根据词得到特征,组成特征集合;类间词分布差异计算模块202用于根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征;类内词相关性计算模块203用于根据类内词相关性算法计算词的相关性,并根据相关性小于相关性阈值的词去除相应的特征;输出模块204用于输出特征集合。
[0067] 本发明实施例中,分词模块201还可用于:将词作为特征;和/或根据信息检索的需求对词进行词对组合,将组合的词对作为特征。
[0068] 其中,分词模块201还可用于:基于N-Gram模型对词进行词对组合。
[0069] 此外,类间词分布差异计算模块202还可用于:基于卡方检验法计算特征的卡方值,去除卡方值小于卡方阈值的特征;或基于最大熵原理计算特征的熵值,去除熵值大于熵阈值的特征。
[0070] 类内词相关性计算模块203还可用于:基于TextRank算法计算词的权重,根据权重小于权重阈值的词去除相应的特征。
[0071] 图3是根据本发明实施例的文本特征选择的系统的主要部分的示意图。
[0072] 如图3所示,本发明实施例的文本特征选择的系统30主要包括如下部分:存储器301和处理器302,其中:
[0073] 存储器301存储指令;
[0074] 处理器302被配置为根据指令执行下列步骤:
[0075] 获取分类后的文本数据,对文本数据进行分词以获得词,根据词得到特征,组成特征集合;
[0076] 根据类间词分布差异算法计算特征集合中特征的差异,去除差异不满足差异阈值的特征;
[0077] 根据类内词相关性算法计算词的相关性,并根据相关性小于相关性阈值的词去除相应的特征;
[0078] 输出特征集合。
[0079] 从以上描述可以看出,通过利用类间词分布差异算法和类内词相关性计算算法的结合,从而可以有效地进行文本特征的选择,并且高效地过滤了文本特征中存在的错词以及与主题无关的词,提高文本特征选择的准确性;通过直接将词作为文本特征和/或将根据词组成的词对作为文本特征,从而可以满足不同的文本特征选择的需求,使得到的结果更符合信息检索的场景计算需求。
[0080] 上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。