文本分类方法和装置、计算机可读存储介质与流程

文档序号:16609329发布日期:2019-01-14 21:27阅读:150来源:国知局
文本分类方法和装置、计算机可读存储介质与流程
本公开涉及计算机领域,特别涉及一种文本分类方法和装置、计算机可读存储介质。
背景技术
:文本分类技术广泛应用于电子文本信息处理中。深度学习技术的发展又进一步扩展了文本分类的应用场景。基于深度学习的相关文本分类技术通常包括:确定分类标准;搜集并标注语料,形成语料库;用语料库训练分类模型;用训练好的分类模型对其他文本进行分类。技术实现要素:由于语料库以及深度学习本身的限制,分类模型的准确率并不能达到100%,而缺失的部分准确率难以通过分类模型本身的优化来有效提升。鉴于此,本公开提出了一种文本分类方案,能够进一步提高文本分类的准确性。根据本公开的一些实施例,提供了一种文本分类方法,包括:利用文本分类模型对多个标注语料进行分类,得到各个标注语料的模型分类标签;选择模型分类标签与相应的标注分类标签不一致的标注语料,作为样本语料;将各个样本语料中的文本分别转化为词语列表;按照模型分类标签对从各个词语列表中抽取的词语组合进行归类,得到各个模型分类标签下的词语组合;根据词语组合生成分类调整模板,所述分类调整模板包括原始分类标签、模板内容和调整分类标签,所述模板内容包括该词语组合,所述原始分类标签为该词语组合对应的模型分类标签,所述调整分类标签为该词语组合对应的样本语料的标注标签。在一些实施例中,所述文本分类方法还包括:删除同时出现在多个模型分类标签下的词语组合。在一些实施例中,所述文本分类方法还包括:删除在样本语料中出现次数小于阈值的词语组合。在一些实施例中,同一词语组合在一个样本语料中出现多次,仅按一次计数。在一些实施例中,所述分类调整模板还包括优先级,所述优先级反映调整分类标签是正确的可能性。在一些实施例中,所述优先级表示为a、b分别表示所述模板内容中的词语组合在原始分类标签、调整分类标签下的样本语料中出现次数。在一些实施例中,所述优先级表示为c表示在所述分类调整模板的原始分类标签下的样本语料的总数。在一些实施例中,所述文本分类方法还包括:利用所述文本分类模型对待分类文本进行分类,得到所述待分类文本的模型分类标签;将所述待分类文本转化为词语列表;将满足下述条件的分类调整模板作为匹配结果:所述待分类文本的模型分类标签与该分类调整模板的原始分类标签一致,且从所述待分类文本的词语列表中抽取的至少一个词语组合包含在该分类调整模板的模板内容中;在存在至少一个匹配结果、且优先级最高的匹配结果的对应优先级大于或等于优先级阈值的情况下,将优先级最高的匹配结果确定为匹配分类调整模板;将所述待分类文本的模型分类标签修改为所述匹配分类调整模板的调整分类标签,作为分类结果。在一些实施例中,通过对文本进行分词及去停用词处理,将文本转化为词语列表。在一些实施例中,在词语列表中词语之间的顺序与在相应文本中是相同的。根据本公开的另一些实施例,提供一种文本分类装置,包括:分类单元,被配置为利用文本分类模型对多个标注语料进行分类,得到各个标注语料的模型分类标签;选择单元,被配置为选择模型分类标签与相应的标注分类标签不一致的标注语料,作为样本语料;转化单元,被配置为将各个样本语料中的文本分别转化为词语列表;归类单元,被配置为按照模型分类标签对从各个词语列表中抽取的词语组合进行归类,得到各个模型分类标签下的词语组合;生成单元,被配置为根据词语组合生成分类调整模板,所述分类调整模板包括原始分类标签、模板内容和调整分类标签,所述模板内容包括该词语组合,所述原始分类标签为该词语组合对应的模型分类标签,所述调整分类标签为该词语组合对应的样本语料的标注标签。在一些实施例中,所述文本分类装置还包括:删除单元,被配置为删除同时出现在多个模型分类标签下的词语组合或删除在样本语料中出现次数小于阈值的词语组合。在一些实施例中,所述文本分类装置还包括:匹配单元,被配置为将满足下述条件的分类调整模板作为匹配结果:所述待分类文本的模型分类标签与该分类调整模板的原始分类标签一致,且从所述待分类文本的词语列表中抽取的至少一个词语组合包含在该分类调整模板的模板内容中;确定单元,被配置为在存在至少一个匹配结果、且优先级最高的匹配结果的对应优先级大于或等于优先级阈值的情况下,将优先级最高的匹配结果确定为匹配分类调整模板;调整单元,被配置为将所述待分类文本的模型分类标签修改为所述匹配分类调整模板的调整分类标签,作为分类结果。根据本公开的又一些实施例,提供一种文本分类装置,包括:存储器以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器装置中的指令,执行上述任一个实施例所述的文本分类方法。根据本公开的另一些实施例,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一个实施例所述的文本分类方法。在上述实施例中,通过对文本分类模型的分类结果进行再处理,生成分类调整模板,以便提高文本分类的准确性。这样生成分类调整模板不对模型训练过程以及外部调用方产生影响,可以适应不同的模型训练方式。附图说明构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:图1示出根据本公开的文本分类方法的一些实施例的流程图;图2示出根据本公开的文本分类方法的另一些实施例的流程图;图3示出根据本公开的文本分类方法的又一些实施例的流程图;图4示出根据本公开的文本分类装置的一些实施例的框图;图5示出根据本公开的文本分类装置的另一些实施例的框图;图6是示出用于实现本公开一些实施例的计算机系统的框图。具体实施方式现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。图1示出根据本公开的文本分类方法的一些实施例的流程图。如图1所示,文本分类方法包括步骤s1-s5。在步骤s1中,利用文本分类模型对多个标注语料进行分类,得到各个标注语料的模型分类标签。在一些实施例中,基于深度学习的神经网络来训练文本分类模型。标注语料可以从文本分类模型训练用的语料库中获取。标注语料中可包含文本和标注分类标签等字段。在步骤s2中,选择模型分类标签与相应的标注分类标签不一致的标注语料,作为样本语料。在一些实施例中,可以通过字段匹配来筛选模型分类标签与相应的标注分类标签不一致的标注语料。在训练文本分类模型时,也会比较标注语料的模型分类标签与相应的标注分类标签,并利用比较结果来调整文本分类模型,以使得两种标签一致的比例增加。但是,限于深度学习技术和语料库的规模,两种标签一致的比例不可能达到100%,导致文本分类模型的分类准确率无法达到期望值。本公开可以在充分训练的文本分类模型的基础上,对两种标签不一致的标注语料进一步处理,生成分类调整模板,以便对文本分类模型的分类结果进行调整,从而进一步提高文本分类的准确率。在步骤s3中,将各个样本语料中的文本分别转化为词语列表。在一些实施例中,通过对文本进行分词及去停用词处理,将文本转化为词语列表。停用词例如是对文本的语义没有影响的词语。每一个样本语料对应一个词语列表。在词语列表中,词语之间的顺序与在相应文本中是相同的。例如,对于标注标签为“天气”、文本为“能穿多少穿多少”的样本语料,分词后得到的词语列表为“能”、“穿”、“多少”、“穿”、“多少”。可以看到,一个列表中可以存在位于不同位置的相同词语,例如上面示例中的“穿”、“多少”。在步骤s4中,按照模型分类标签对从各个词语列表中抽取的词语组合进行归类,得到各个模型分类标签下的词语组合。在一些实施例中,从各个样本语料的词语列表中抽取词语组合,保持词语的顺序不变,即保持一个词语组合中各个词语的顺序不变。抽取的词语组合的长度可以根据实际需要来选择,例如长度可以为1至3。仍以标注标签为“天气”、文本为“能穿多少穿多少”的样本语料为例,假设仅取其中长度为2的词语组合,则抽取到“能穿”、“穿多少”、“多少穿”、“穿多少”等词语组合。在步骤s5中,根据词语组合生成分类调整模板。分类调整模板是一种数据集合,用于标识如何将满足条件的分模型类结果调整为另一个分类。分类调整模板包括原始分类标签、模板内容和调整分类标签。模板内容包括该词语组合,原始分类标签为该词语组合对应的模型分类标签,调整分类标签为该词语组合对应的样本语料的标注标签。下面结合表1-3来描述生成的分类调整模板。表1示出一组样本语料及其相应的模型分类标签和标注分类标签。如表1所示,对于词语组合“温度很高”可以生成2个分类调整模板,模板内容都包括“温度很高”,原始分类标签都是“天气”,但第1分类调整模板的调整分类标签为“手机”,而第2分类调整模板的调整分类标签为“宇宙”。模型分类标签标注分类标签样本语料天气天气北京温度很高天气天气明天天气如何天气手机玩游戏的时候温度很高天气手机充电温度很高,感觉烫手天气宇宙太阳表面温度很高表1分类调整模板还可以包括优先级。优先级反映调整分类标签是正确的可能性。在一些实施例中,优先级可以表示为其中,a、b分别表示模板内容中的词语组合在原始分类标签、调整分类标签下的样本语料中出现次数。根据表1示出的数据,对于第1分类调整模板有a=4,b=2,即优先级为0.5;而对于第2分类调整模板有a=4,b=1,优先级为0.25。表2和表3分别示出生成的第1分类调整模板和第2分类调整模板的示例。字段名称字段含义原始分类标签天气模板内容温度很高调整分类标签手机优先级0.5表2字段名称字段含义原始分类标签天气模板内容温度很高调整分类标签宇宙优先级0.25表3在另一些实施例中,也可以将优先级表示为其中c表示在分类调整模板的原始分类标签下的样本语料的总数。根据表1示出的数据,c=5,则第1分类调整模板的优先级改为大约0.45,而第2分类调整模板的优先级改为大约0.23。根据实际需要,也可以由人工按照分类调整模板的格式添加模板,作为自动生成分类调整模板的一种补充。人工也可以对上述实施例中生成的分类调整模板进行修改或删除,以提升分类调整模板的效果。有人工接入的分类调整模板的优先级较高,可以设置为1。图2示出根据本公开的文本分类方法的另一些实施例的流程图。图2与图1的不同在于,在归类得到各个模型分类标签下的词语组合后,文本分类方法还包括步骤s41-s42。在步骤s41中,删除同时出现在多个模型分类标签下的词语组合。不同的样本语料中可能存在同样的词语组合。同样的词语组合出现在不同的模型分类标签下,表示这样的词语组合对文本的分类结果影响不大。例如,很多样本语料中都可能出现“我”、“的”等词语,但它们对文本的语义影响不大,因此可以删除这样的词语组合。即,不针对这样的词语组合生成分类调整模板。这样可以减少生成分类调整模板的工作量,而不明显影响分类准确率的提升。在步骤s42中,删除在样本语料中出现次数小于阈值的词语组合。在一些实施例中,在统计词语组合在样本语料中的出现次数时,对于同一词语组合在一个样本语料中出现多次,仅按一次计数。例如,对于前述标注标签为“天气”、文本为“能穿多少穿多少”的样本语料,词语组合“能穿”、“穿多少”、“多少穿”、“穿多少”的统计结果为:“能穿”=1、“穿多少”=1,“多少穿”=1。词语组合在所有的样本语料中出现的次数小于阈值(例如5次)表示这样的词语组合词频太低,对于对分类调整的意义不大。例如,在所有的样本语料中,仅有4个样本语料中出现了词组组合“能穿”,在阈值设为5次的情形下,可以将该词组组合删除。即,不针对这样的词语组合生成分类调整模板。这样也可以在不明显影响分类准确率提升的情形下,减少生成分类调整模板的工作量。应当明白,也可以仅执行步骤s41-s42中的一个。并且,步骤s42也可以在步骤s41之前执行,或者与步骤s41同时执行。即,步骤s41与步骤s42之间的执行顺序对于实现本公开的文本分类方案没有影响。在上述实施例中,通过对文本分类模型的分类结果进行再处理,生成分类调整模板,以便提高文本分类的准确性。这样生成分类调整模板不对模型训练过程以及外部调用方产生影响,可以适应不同的模型训练方式。图3示出根据本公开的文本分类方法的又一些实施例的流程图。如图3所示,文本分类方法还包括步骤s6-s10。在步骤s6中,利用文本分类模型对待分类文本进行分类,得到待分类文本的模型分类标签。利用对标注语料分类的同样的文本分类模型对待分类文本进行分类,得到初步的分类结果。初步的分类结果中包含文本和模型分类标签等字段。下面将以待分类文本“充电温度很高,容易爆炸”为例来描述分类调整模板的应用。在步骤s6中,例如,对该文本分类后得到的模型分类标签为“天气”。在步骤s7中,将待分类文本转化为词语列表。类似于步骤s3,也可以通过对文本进行分词及去停用词处理,将文本转化为词语列表。例如,待分类文本“充电温度很高,容易爆炸”可以转化为“充电”、“温度”、“很高”、“容易”、“爆炸”的词语列表。在步骤s8中,将满足下述条件的分类调整模板作为匹配结果:待分类文本的模型分类标签与该分类调整模板的原始分类标签一致,且从待分类文本的词语列表中抽取的至少一个词语组合包含在该分类调整模板的模板内容中。抽取词语组合的处理类似于步骤s4中的相关处理。例如,从待分类文本的词语列表中可以抽取到“充电温度”、“温度很高”、“很高容易”、“容易爆炸”等词语组合。如前所述,第1分类调整模板和第2分类调整模板的模板内容中均包含词语组合“温度很高”,且原始分类标签均为“天气”。因此,这两个分类调整模板均满足条件,可以作为匹配结果。假设对于其他词语组合,未发现匹配的分类调整模板,则对于示例中的待分类文本,可以得到2个匹配结果。在步骤s9中,根据匹配结果确定匹配分类调整模板。在存在至少一个匹配结果的情况下,筛选出优先级最高的匹配结果。在一些实施例中,可以设置优先值阈值,仅在优先级最高的匹配结果的对应优先级大于或等于该阈值时,才将优先级最高的匹配结果确定为匹配分类调整模板。优先级阈值可以根据实际应用来设置。根据表2和表3,作为匹配结果的第1分类调整模板和第2分类调整模板的优先级分别为0.5和0.25。在优先级阈值被设置为0.5的情况下,第1分类调整模板的优先级满足条件,因此,可以将优先级最高的匹配结果,即第1分类调整模板作为匹配分类调整模板。反之,如果优先级阈值被设置为大于0.5,例如为0.6,则上述示例中的匹配结果都不满足条件,即确定匹配分类调整模板不存在,不进行分类调整,而直接将步骤s6中得到的模型分类标签作为分类结果输出。在不存在匹配结果的情况下,则确定匹配分类调整模板不存在,不进行分类调整,即直接将步骤s6中得到的模型分类标签作为分类结果输出。在步骤s10中,将待分类文本的模型分类标签修改为匹配分类调整模板的调整分类标签,作为分类结果。根据表2,作为匹配分类调整模板的第1分类调整模板的调整分类标签为“手机”,因此可以将“手机”作为文本“充电温度很高,容易爆炸”的分类结果。在上述实施例中,通过在文本分类模型后引入分类调整模板,对分类结果进行调整,可以进一步提升文本分类的准确率,还可以有目的地修正分类错误。图4示出根据本公开的文本分类装置的一些实施例的框图。如图4所示,文本分类装置4包括分类单元41、选择单元42、转化单元43、归类单元44和生成单元45。分类单元41被配置为利用文本分类模型对文本进行分类。在一些实施例中,分类单元41被配置为利用文本分类模型对多个标注语料进行分类,得到各个标注语料的模型分类标签,例如执行步骤s1。在另一些实施例中,分类单元41还可以被配置为利用文本分类模型对待分类文本进行分类,得到待分类文本的模型分类标签,例如执行步骤s6。选择单元42被配置为选择模型分类标签与相应的标注分类标签不一致的标注语料,作为样本语料,例如执行步骤s2。转化单元43被配置为将文本分别转化为词语列表。在一些实施例中,转化单元43被配置为将各个样本语料中的文本分别转化为词语列表,例如执行步骤s3。在另一些实施例中,转化单元43被配置为将待分类文本转化为词语列表,例如执行步骤s7。归类单元44被配置为按照模型分类标签对从各个词语列表中抽取的词语组合进行归类,得到各个模型分类标签下的词语组合,例如执行步骤s4。生成单元45被配置为根据词语组合生成分类调整模板,例如执行步骤s5。如前所述,生成的分类调整模板包括原始分类标签、模板内容和调整分类标签,所述模板内容包括该词语组合,所述原始分类标签为该词语组合对应的模型分类标签,所述调整分类标签为该词语组合对应的样本语料的标注标签。在一些实施例中,文本分类装置4还包括删除单元46。在一些实施例中,删除单元46被配置为删除同时出现在多个模型分类标签下的词语组合,例如执行步骤s41。在另一些实施例中,删除单元46被配置为删除在样本语料中出现次数小于阈值的词语组合,例如执行步骤s42。利用删除单元,可以减少生成分类调整模板的工作量,而不明显影响分类准确率的提升。在另一些实施例中,文本分类装置4还包括匹配单元47、确定单元48和调整单元49。匹配单元47被配置为将满足下述条件的分类调整模板作为匹配结果:待分类文本的模型分类标签与该分类调整模板的原始分类标签一致,且从待分类文本的词语列表中抽取的至少一个词语组合包含在该分类调整模板的模板内容中。例如,匹配单元47可以执行步骤s8。确定单元48被配置为根据匹配结果确定匹配分类调整模板,例如执行步骤s9。在一些实施例中,在存在至少一个匹配结果、且优先级最高的匹配结果的对应优先级大于或等于优先级阈值的情况下,将优先级最高的匹配结果确定为匹配分类调整模板。调整单元49被配置为将待分类文本的模型分类标签修改为匹配分类调整模板的调整分类标签,作为分类结果,例如执行步骤s10。图5示出根据本公开的文本分类装置的另一些实施例的框图。如图5所示,该实施例的装置5包括:存储器51以及耦接至该存储器51的处理器52。存储器51用于存储执行文本分类方法对应实施例的指令。处理器52被配置为基于存储在存储器51中的指令,执行本公开中任意一些实施例中的文本分类方法。在上述实施例中,通过文本分类装置的分类调整模板对分类结果进行调整,可以提升文本分类的准确率。除了文本分类方法、装置之外,本公开实施例还可采用在一个或多个包含有计算机程序指令的非易失性存储介质上实施的计算机程序产品的形式。因此,本公开实施例还包括一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现前述任意实施例中的文本分类方法。图6是示出用于实现本公开一些实施例的计算机系统的框图。如图6所示,计算机系统60可以通用计算设备的形式表现。计算机系统60包括存储器610、处理器620和连接不同系统组件的总线600。存储器610例如可以包括系统存储器、非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(bootloader)以及其他程序等。系统存储器可以包括易失性存储介质,例如随机存取存储器(ram)和/或高速缓存存储器。非易失性存储介质例如存储有执行文本分类方法的对应实施例的指令。非易失性存储介质包括但不限于磁盘存储器、光学存储器、闪存等。处理器620可以用通用处理器、数字信号处理器(dsp)、应用专用集成电路(asic)、现场可编程门阵列(fpga)或其它可编程逻辑设备、分立门或晶体管等分立硬件组件方式来实现。相应地,诸如判断模块和确定模块的每个模块,可以通过中央处理器(cpu)运行存储器中执行相应步骤的指令来实现,也可以通过执行相应步骤的专用电路来实现。总线600可以使用多种总线结构中的任意总线结构。例如,总线结构包括但不限于工业标准体系结构(isa)总线、微通道体系结构(mca)总线、外围组件互连(pci)总线。计算机系统60还可以包括输入输出接口630、网络接口640、存储接口650等。这些接口630、640、650以及存储器610和处理器620之间可以通过总线600连接。输入输出接口630可以为显示器、鼠标、键盘等输入输出设备提供连接接口。网络接口640为各种联网设备提供连接接口。存储接口640为软盘、u盘、sd卡等外部存储设备提供连接接口。这里,参照根据本公开实施例的方法、装置和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个框以及各框的组合,都可以由计算机可读程序指令实现。这些计算机可读程序指令可提供到通用计算机、专用计算机或其他可编程文本分类装置的处理器,以产生一个机器,使得通过处理器执行指令产生实现在流程图和/或框图中一个或多个框中指定的功能的装置。这些计算机可读程序指令也可存储在计算机可读存储器中,这些指令使得计算机以特定方式工作,从而产生一个制造品,包括实现在流程图和/或框图中一个或多个框中指定的功能的指令。本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。至此,已经通过示例对本公开的一些实施例进行了详细说明。应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员可以对以上实施例进行变化、修改、替换、变型、组合,而不脱离本公开的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1