中文比较句分类器模型生成、中文比较句识别方法及装置 【技术领域】
本发明涉及智能信息处理技术领域,尤指一种中文比较句分类器模型生成、中文比较句自动识别方法及装置。
背景技术
随着互联网的迅速发展,中文信息也呈现出爆炸性的增长。其中,许多信息涉及到多种事物的比较,例如同类商品的比较推荐等。自动识别这些比较信息具有很大的实用价值。通过自动检测文章中的比较句,为准确地提取出比较的实体及各实体之间的关系提供了前提。
传统汉语语言学研究领域对比较句的研究起步较早。关于比较句的定义,马建忠提出“同一静字,以所肖者浅深不能一律,而律其不一,所谓比也”(《马氏文通》,商务印书馆)。吕叔湘认为比较句是表示事之间异同或高下比较关系的句子(《中国文法要略》,商务印书馆)。车竞提出比较句是指位于中含有比较词语或比较格式的句子,并给出其基本结构形式“X+比较词+Y+W”(“现代汉语比较句论略”,湖北师范学院学报,25卷第3期)。但这些研究限定在语言学领域,需要人工判断一个句子是否是比较句,并没有提供可用计算机自动检测的方法。
文本自动分类是利用计算机系统对文本集按照一定的分类体系或标准进行自动类别标记的一类技术,主要可分为基于知识的方法和基于距离的方法。基于知识的方法按照分类专家的经验知识,构建规则库作为分类器进行分类。基于距离的方法按照文本之间的相似程度进行划分,常用的包括朴素贝叶斯、支持向量机、神经网络和k近邻法等。传统的文本分类器把文本表示为词的集合,不考虑词之间的位置和依赖关系,在应用到将句子分为“比较”和“非比较”的问题上,效果不佳。因此,需要有一种更有效的识别汉语比较句的方法。
【发明内容】
本发明实施例提供一种中文比较句分类器模型生成、中文比较句识别方法及装置,能够正确、有效地识别中文文本中的比较句。
一种中文比较句分类器模型生成方法,包括:
将数据集各句子中每一个包含设定的比较关键词的分句转化成一个序列,并为所述序列建立与其对应分句所属句子相同的类别标记,所述序列包含按照对应分句中各非关键词和关键词在所述对应分句中的顺序排列的所述非关键词的词性标识项和所述关键词及其词性标识的组合项;以及由所述序列组成序列集;
采用序列模式挖掘算法从所述序列集中挖掘出比较模式,由所述比较模式组成比较模式集;
用每一个所述序列逐一匹配所述比较模式集中的各比较模式,根据匹配结果及所述比较模式总数量,得到与每一个所述序列对应的一组特征向量;
根据所述特征向量及与其对应的所述序列的类别标记,生成分类器模型。
一种中文比较句分类器模型生成装置,包括:第一转化模块、模式挖掘模块、第一匹配模块和模型生成模块;
所述第一转化模块,用于将数据集各句子中每一个包含设定的比较关键词的分句转化成一个序列,并为所述序列建立与其对应分句所属句子相同的类别标记,所述序列包含按照对应分句中各非关键词和关键词在所述对应分句中的顺序排列的所述非关键词的词性标识项和所述关键词及其词性标识的组合项;以及由所述序列组成序列集;
所述模式挖掘模块,用于采用序列模式挖掘算法从所述序列集中挖掘出比较模式,由所述比较模式组成比较模式集;
所述第一匹配模块,用于用每一个所述序列逐一匹配所述比较模式集中的各比较模式,根据匹配结果及所述比较模式总数量,得到与每一个所述序列对应的一组特征向量;
所述模型生成模块,用于根据所述特征向量及与其对应的所述序列的类别标记,生成分类器模型。
一种中文文本中比较句识别方法,包括:
将读入的句子中的每一个包含设定的比较关键词的分句转化为一个序列;所述序列包含按照对应分句中各非关键词和关键词在所述对应分句中的顺序排列的所述非关键词的词性标识项和所述关键词及其词性标识的组合项;
用每一个所述序列逐一匹配存储地比较模式集中的所有比较模式,得到与每一个所述序列对应的特征向量;
通过存储的分类器模型,确定所述特征向量对应的类别标记;当任一个所述特征向量对应的类别标记被确定为比较时,确定读入的句子为比较句;否则,确定读入的句子为非比较句。
一种中文比较句识别装置,包括:第二转化模块、第二匹配模块、类别确定模块和比较句确定模块;
所述第二转化模块,用于将读入的句子中的每一个包含设定的比较关键词的分句转化为一个序列;所述序列包含按照对应分句中各非关键词和关键词在所述对应分句中的顺序排列的所述非关键词的词性标识项和所述关键词及其词性标识的组合项;
所述第二匹配模块,用于用每一个所述序列逐一匹配存储的比较模式集中的所有比较模式,得到与每一个所述序列对应的特征向量;
所述类别确定模块,用于通过存储的分类器模型,确定所述特征向量对应的类别标记;
所述比较句确定模块,用于当任一个所述特征向量对应的类别标记被确定为为比较时,确定读入的句子为比较句;否则,确定读入的句子为非比较句。
本发明实施例提供的中文比较句分类器模型生成方法及装置,通过将数据集中已标注类别的句子中的各分句转化成一个序列,并为所述序列建立与所属句子的类别对应的类别标记,得到序列集;采用序列模式挖掘算法从所述序列集中挖掘出若干比较模式,得到比较模式集;用每一所述序列逐一匹配所述比较模式集中的所有比较模式,得到与所述序列对应的一组特征向量;根据所述特征向量及与其对应的所述序列的类别标记,生成分类器模型;该方法综合利用了比较句的关键词和句式的模式特征,通过机器学习的方法,得到分类器模型,为识别比较句提供了前提和工具。
本发明实施例提供的中文比较句识别方法及装置,通过将读入句子中的每个分句转化为序列;用每个所述序列匹配存储的比较模式集中的所有比较模式,得到与每个所述序列对应的特征向量;通过存储的分类器模型,确定所述特征向量对应的类别标记;当任一个所述特征向量对应的类别标记被确定为比较C,确定读入的句子为比较句;否则,确定读入的句子为非比较句。该方法采用自动生成的分类器模型,自动识别文本中的比较句,有效的提高了识别效果。
【附图说明】
图1为本发明实施例中中文比较句分类器模型生成方法的流程图;
图2为本发明实施例中将分句转化为序列的流程图;
图3为本发明实施例中将序列集中的序列转化为一组特征向量的流程图;
图4为本发明实施例中一个序列转化为对应的特征向量的具体流程图;
图5为本发明实施例中决策树的结构示例图;
图6为本发明实施例中中文比较句识别方法的流程图;
图7为本发明实施例中中文比较句分类器模型生成装置的结构示意图。
图8本发明实施例中中文比较句识别装置的结构示意图。
【具体实施方式】
本发明实施例提供一种中文比较句分类器模型生成方法,通过对包含若干已标注类别的中文句子的数据集进行处理,得到比较模式集和中文比较句分类器模型。其流程图如图1所示,其执行步骤如下:
步骤S10:按顺序从数据集中读入一个句子。
数据集中所有的句子已经人工标注出其类别。
步骤S11:使用自动分词和词性标注技术/方法,将读入的句子切分为若干个词,并为每一个词添加词性标识。
例如:采用现有的中文分词软件,就可以实现将每一个分句切分为若干个词,并为每一个词添加词性标识。
以句子“INTEL比AMD更有价格优势”为例,切分出的词及对应的词性标识包括:INTEL/nt、比/p、AMD/nt、更/d、有/v、价格/n、优势n。
以“国外品牌比国内品牌更贵”为例,切分出的词及对应的词性标识包括:国外/a、品牌/n、比/p、国内/a、品牌/n、更/d、贵/a。
其中,n、nt、p、d、v、a等为词性标识,分别表示名词、专有名词、介词、副词、动词和形容词。
步骤S12:确定出句子包含的一个或多个分句。
一般根据分句标识确定读入的句子包含有一个或多个个分句。
其中,分句标识可以包括:逗号(,)、冒号(:)、分号(;)等标点符号。
沿用上边的例子,句子“INTEL比AMD更有价格优势”和“国外品牌比国内品牌更贵”均只有一个分句。
步骤S13:将句子中的每一个包含设定的比较关键词的分句转化为一个序列,为每个序列添加与句子的类别对应的类别标记。
当读入的句子只包含一个分句时,将包含的一个分句转化为一个序列,当读入的句子包含多个分句时,依次将每一个分句转化为的一个序列。
转化得到的序列中包括:非关键词的词性标识项和包含关键词及其词性标识的组合项。其中,所包括的非关键词的词性标识项和上述组合项是按照对应词在句子中的顺序排列的。
将一个分句转化为一个序列的过程,如图2所示,包括下列步骤:
步骤S131:从分句中按顺序取出一个词。
步骤S132:判断取出的词是否是关键词。
通过查找关键词库中存储的比较关键词是否包含所取出的词,确定所取出的词是否是关键词。
其中,关键词库中保存的比较关键词可以包括以下词汇,如表1所示:
表1
超 超过 同 像 相同 不同 一样 一模一样 差不多 似 似的 相似 近 相近 而 都 也 最 顶 更 差 差别 区别 有 没有 没 不如 不及 如 和 跟 与 较 相提并论 逊色 那样 那么 什么 减少 天渊之别
若是,执行步骤S133;若否,执行步骤S134。
步骤S133:保留该关键词及其词性标识,并将该关键词及其词性标识合为一个组合项,加入序列中。
步骤S134:只保留该非关键词的词性标识,单独作为一项加入序列中。
步骤S135:判断是否已处理完分句中所有的词。
若是,执行步骤S136,若否,返回执行步骤S131。
步骤S136:将得到的包含有比较关键词的序列加入到序列集中,或丢弃不包含任何比较关键词的序列。
沿用上边的例子,句子“INTEL比AMD更有价格优势”中“比”、“更”、“有”是关键词,因此,将每个关键词及其词性标识合为一个组合项,并保留;其他的词“INTEL”、“AMD”、“价格”、“优势”都是非关键词,因此只保留其对应的非关键词的词性标识。按照对应词在句子中的顺序排列后,得到的序列为:“nt比/p nt更/d有/v n n”。
沿用上边的例子,句子“国外品牌比国内品牌更贵”,中“比”、“更”是关键词,因此,将每个关键词及其词性标识合为一个组合项,并保留;其他的词“国外”、“品牌”、“国内”、“品牌”、“贵”都是非关键词,因此只保留其对应的词性标识。按照对应词在句子中的顺序排列后,得到的序列为:“a n比/pa n更/d a”。
为每个序列添加与句子的类别对应的类别标记。由于已知这两个句子都是比较句,所以为这两个序列添加的类别标记为“比较(C)”;对于非比较句则添加的类别标记为“非比较(NC)”。
步骤S14:判断是否已处理完数据集中所有的句子。
处理完数据集中的所有句子后,得到一个包含若干序列的序列集。
若是,执行步骤15;若否,返回步骤S10。
步骤S15:对得到的序列集应用序列模式挖掘算法,挖掘出若干比较模式,得到比较模式集。
常用的序列模式挖掘算法包括:GSP算法、PrefixSpan算法、FreeSpan算法、AprioriAll算法等。
例如:可以采用PrefixSpan算法对得到的序列集进行挖掘,得到若干比较模式。其中,支持度阈值可以设置为比较模式集中具有最小频率的比较模式的出现频率的10%,置信度阈值可以设置为65%。
将满足设定的支持度阈值和置信度阈值条件、且包含至少一个关键词的模式挖掘出来,作为比较模式加入比较模式集中。
沿用上边的例子,序列“nt比/p nt更/d有/v n n”与序列“a n比/pa n更/d a”均包含有子序列“比/p更/d”,则这个子序列可能作为一个比较序列被挖掘出来。
例如:对得到的序列集进行挖掘后,挖掘出的比较模式集可以如表2所示。
表2
与/p天渊之别/a(C) 同/a相同/a(C) 没有/d区别/n(C) 跟/p一模一样/a(C) */q相同/a(C) */nt不及/v(C) 和/p相近/a(C) 不及/v*/a(C) */n不及/v(C) 与/p相近/a(C) 不及/v*/n(C) 和/p比/v(C) */n相似/a(C) */u不及/v(C) */n比/p(C) */r差别/n(C) 和/p区别/n(C) 比/p*/d(C)
与/p天渊之别/a(C) 同/a相同/a(C) 没有/d区别/n(C) 和/p差别/n(C) */d超过/v(C) 比/p*/a(C) */n差不多/a(C) 像/p*/a(C) */n比/n(NC) 和/p差不多/a(C) 不/d像/p(C) 比/p减少/v(C)
表2中,*/n表示任意的名词,*/d表示任意的副词,......,其他带*的表示的含义可以依此类推。
步骤S16:依次用每一序列匹配比较模式集中的所有比较模式,得到与上述各序列对应的一组特征向量。具体流程如图3所示,包括下列步骤:
步骤S161:从序列集中获取一个序列。
步骤S162:依次与比较模式集中的每一个比较模式进行,得到该序列对应的特征向量。其中,得到的特征向量的维数等于比较模式集中比较模式的总数量。如图4所示,具体包括下列步骤:
步骤S1621:初始化一个N维向量。
将N维向量初始化为一个N维零向量。其中,N为比较模式集中包含的比较模式的数量。
步骤S1622:获取第i个比较模式,将步骤S161中获取的序列,与比较模式集中的第i个比较模式进行匹配。
其中,i∈[1,N]。
步骤S1623:判断该第i个比较模式是否为所获取到的序列的子序列。
若是,则执行步骤S1624;若否,则执行步骤S1625。
步骤S1624:将N维零向量的第i个元素更新为1。
步骤S1625:N维零向量的第i个元素的值保持不变,仍取值为0。
步骤S1626:比较i与N的大小,若i<N,则使i←i+1,并返回执行步骤S1622;若i≥N,则执行步骤S1627。
步骤S1627:将更新后的N维向量作为该序列对应的特征向量。
步骤S163:建立得到的特征向量与所获取序列的序列标记之间的对应关系,并输出。
步骤S164:判断是否处理完序列集中的所有序列。
若是,则执行步骤S165;若否,则返回执行步骤S161。
步骤S165:结束。
沿用上边的例子,序列“nt比/p nt更/d有/v n n”与序列“a n比/p a n更/d a”与比较模式集中的比较模式进行匹配。
表2所示的比较模式集中包含N=27个比较模式,比较发现,比较模式集中的第18个比较模式比/p*/d(C)为序列“nt比/p nt更/d有/v n n”与序列“a n比/p a n更/d a”的子序列,则N维向量的第18个元素更新为1。
由于其他的比较模式均不是这两个序列的子序列,因此这两个序列与比较模式集中的比较模式匹配得到的特征向量均为:
y=(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0)
步骤S17:根据得到的特征向量及与特征向量对应的序列的类别标记,生成分类器模型。
其中,分类器可以采用常用的二类分类器,包括:朴素贝叶斯分类器、支持向量机(Support Vector Machine,SVM)分类器、决策树分类器等。
下面分别以生成线性核函数的SVM分类器模型和生成基于C4.5学习算法的决策树分类器模型为例,详细说明。
(1)生成线性核函数SVM分类器模型。
可以采用支持向量机算法的具体实现:SVMlight分类器,对得到的特征向量及特征向量对应的类别标记进行处理,生成SVM分类器模型。
生成的SVM分类器模型包括:一个N维实数向量w和实数b。
其中N为步骤S15中得到的比较模式集中包含的比较模式的数量。
(2)生成基于C4.5学习算法的决策树分类器模型。
可以采用罗斯·昆兰(Ross Quinlan)提供的C4.5算法的具体实现:C4.5分类器第8版(C4.5 release 8),将得到的特征向量及特征向量对应的类别标记生成基于C4.5学习算法的决策树分类器模型。
生成的基于C4.5学习算法的分类器模型是一棵决策树。其中,决策树包括根节点、若干内部节点和若干叶节点。
从决策树的根节点开始,每个节点m(包括根节点和内部节点)均表示特征向量中的一个元素Fim(1≤im≤N,N为比较模式的数量),从每个节点延伸出的边表示对应元素的取值(例如:取值为1时,延伸至下层的一个节点,取值为0时,延伸至下层的另一个节点);每个叶节点均表示到达该叶节点的路径所对应的类别。
例如:生成的决策树可以如图5所示。根节点表示特征向量中第i0个元素的取值,当第i0个元素为0时,延伸至内部节点1;当第i0个元素为1时,延伸至内部节点2;......;依此类推,一直延伸到叶节点。叶节点上1、2、3、......、M+1、M+2均带有类别标记,分别标记有到达每个叶节点的路径所对应的类别。
本发明实施例提供一种中文比较句识别方法,通过上述得到的比较模式集及生成的中文比较句分类器模型,识别出读入的句子是否是比较句。其流程图如图6所示,其执行步骤如下:
步骤S20:从数据源读入一个句子。
特别的,若读入的是一篇文档或一段文字,根据断句标识将其切分为若干个句子,然后依次处理每一个句子。
其中,断句标识包括:句号(。)、问号(?)、感叹号(!)、省略号(......)等。
步骤S21:使用自动分词和词性标注技术,将读入的句子切分为若干个词,并为每一个词添加词性标识。
具体同步骤S11,此处不再赘述。
步骤S22:确定出句子包含的一个或多个分句。
具体同步骤S12,此处不再赘述。
步骤S23:取出一个分句,将取出的分句转化为一个序列。
将一个分句转化为一个序列的过程,如图2所示,具体执行步骤参见步骤S131-步骤S135,当执行步骤S135判断出已处理完分句中所有的词时,结束流程,得到该分句对应的序列。
步骤S24:将转化出的序列与比较模式集中的所有比较模式进行匹配,得到一个特征向量。
具体过程同步骤S1621-步骤S1627,此处不再赘述。
步骤S25:用存储的分类器模型确定得到的特征向量所对应的类别标记,包括:比较(C)或非比较(NC),实现对得到的特征向量进行分类。
例如:可以采用步骤S17中生成的线性核函数的SVM分类器模型或基于C4.5学习算法的决策树分类器模型。
采用SVM分类器模型确定特征向量对应的类别标记,具体为:
将得到的特征向量带入下列公式:
c=w·x+b
其中,w为步骤S17中得到的N维实数向量;
b为步骤S17中得到的实数b;
x为步骤S24中得到的特征向量;
w·x表示N维实数向量w与特征向量x的内积。
当计算得到的c为正数时,确定该特征向量对应的类别标记为“比较C”,否则确定该特征向量对应的类别标记为“非比较NC”。
采用决策树分类器模型确定特征向量对应的类别标记,具体为:
从决策树的根节点出发,依据各节点所表征的元素对应的取值,沿决策树的边前进,直到到达一个叶结点,并按照叶结点的类别标记确定将特征向量对应的类别标记为“比较C”或“非比较NC”。
步骤S26:判断确定出的类别标记是否是“比较C”。
若确定出的类别标记为“比较C”,则执行步骤S27;若确定出的类别标记为“非比较NC”,则执行步骤S28。
步骤S27:判定该句为比较句。
步骤S28:判断是否已处理完该句包含的所有的分句。
若是,则执行步骤S29;若否,则返回执行步骤S23。
步骤S29:判定该句为非比较句。
采用上述方法,若一个句子中的任一分句被判定为比较,则该句子被判定为比较句,否则该句子被判定为非比较句。
特别的,当一个句子中不含关键词库中存储的任何一个关键词时,这个句子也会被判定为非比较句。
根据本发明实施例提供上述中文比较句分类器模型生成方法,可以构建一种中文比较句分类器模型生成装置,其结构如图7所示,包括:第一转化模块101、模式挖掘模块102、第一匹配模块103和模型生成模块104。
第一转化模块101,用于将数据集各句子中每一个包含设定的比较关键词的分句转化成一个序列,并为转化得到的序列建立其对应分句所属句子相同的类别标记,其中,得到的序列包含按照对应分句中各非关键词和关键词在对应分句中的顺序排列的非关键词的词性标识项和关键词及其词性标识的组合项;以及由得到的序列组成序列集。
较佳的,第一转化模块101,进一步可以包括:读取单元1011、分词及标注单元1012、确定单元1013和转化单元1014。
读取单元1011,用于依次从数据集中读入已标注类别的句子。
分词及标注单元1012,用于使用自动分词和词性标注方法,将读入的句子切分为若干个词,并为切分出的每一个词添加词性标识。
所述确定单元1013,用于确定出读取单元1011读入的句子包含的一个或多个分句。
转化单元1014,用于将每个包含设定的比较关键词的分句,转化为一个包括按照对应词在分句中的顺序排列的关键词及其词性标识的组合项和非关键词的词性标识项的一个序列,并为所述序列建立其对应分句所属句子相同的类别标记。
模式挖掘模块102,用于采用序列模式挖掘算法从第一转化模块101得到的序列集中挖掘出若干比较模式,由挖掘出的比较模式组成比较模式集。
第一匹配模块103,用于用第一转化模块101得到每一个序列逐一匹配模式挖掘模块102得到的比较模式集中的各比较模式,根据匹配结果及比较模式集中的比较模式总数量,得到与每一个所述序列对应的一组特征向量。
较佳的,第一匹配模块103,进一步可以包括:获取单元1031、匹配单元1032和输出单元1033。
获取单元1031,用于从序列集中获取序列。
匹配单元1032,用于将获取的序列与比较模式集中的每一个比较模式进行匹配,根据匹配结果,得到与获取单元1031获取的序列对应的维数等于所述比较模式总数量的特征向量。
输出单元1033,用于将获取单元1031获取的序列的类别标记赋予匹配单元1032得到的特征向量,并输出该特征向量。
模型生成模块104,用于根据第一匹配模块103得到的特征向量及与其对应序列的类别标记,生成分类器模型。
较佳的,模型生成模块104,进一步可以包括:第一模型生成单元1041和/或第二模型生成单元1042。
第一模型生成单元1041,用于使用支持向量机分类器SVMlight处理第一匹配模块103得到的特征向量及与其对应的所述序列的类别标记,生成包括一个与特征向量维数相同的实数向量和一个实数的线性核函数SVM分类器模型。
第二模型生成单元1042,用于使用C4.5工具处理第一匹配模块103特征向量及与其对应序列的类别标记,生成基于C4.5学习算法的决策树分类器模型;其中,决策树包括根节点、若干内部节点和若干叶节点,根节点和内部节点分别表示特征向量的一个元素,从根节点或内部节点延伸出的边表示对应元素的取值,每个叶节点上标记有从根节点到达该叶节点的路径所表征的特征向量的类别标记。
根据本发明实施例提供上述中文比较句识别方法,可以构建一种中文比较句识别装置,其结构如图8所示,包括:第二转化模块201、第二匹配模块202、类别确定模块203和比较句确定模块204。
第二转化模块201,用于将读入的句子中的每一个包含设定的比较关键词的分句转化为一个序列;其中,转化得到的序列包含有按照对应分句中各非关键词和关键词在所述对应分句中的顺序排列的所述非关键词的词性标识项和所述关键词及其词性标识的组合项。
较佳的,第二转化模块201,进一步可以包括:分词及标注单元2011、确定单元2012和转化单元2013。
分词及标注单元2011,用于使用自动分词和词性标注方法,将读入的句子切分为若干个词,并为切分出的每一个词的添加词性标识。
确定单元2012,用于确定出读入的句子包含的一个或多个分句。
转化单元2013,用于将每个包含设定的比较关键词的分句,转化为一个包括按照对应词在分句中的顺序排列的关键词及其词性标识的组合项和非关键词的词性标识的一个序列。
第二匹配模块202,用于用第二转化模块201得到的每一个序列逐一匹配存储的比较模式集中的所有比较模式,得到与每一个序列对应的特征向量。
类别确定模块203,用于通过存储的分类器模型,确定第二匹配模块202得到的特征向量对应的类别标记。
较佳的,类别确定模块203,包括:第一类别确定单元2031和/或第二类别确定单元2032。
第一类别确定单元2031,用于通过存储的SVM分类器模型确定第二匹配模块202得到的特征向量所对应的类别标记;具体为:计算特征向量和SVM分类器模型中存储的实数向量的内积,并计算得到的内积与SVM分类器模型中存储的实数的和;当计算出的和为正数时,确定该特征向量对应的类别标记为比较C;否则,确定该特征向量对应的类别标记为非比较NC;
第二类别确定单元2032,用于通过决策树分类器模型确定第二匹配模块202得到的特征向量所对应的类别标记;具体为:从决策树的根节点出发,根据特征向量中各个元素的取值,沿与取值对应的边延伸至一个叶节点,将叶节点上的类别标记确定为该特征向量对应的类别标记。
比较句确定模块204,用于当任一个特征向量对应的类别标记被确定为比较C时,确定读入的句子为比较句;否则,确定读入的句子为非比较句。
比较句确定模块204,还用于读入的句子中不包含关键词库中存储的比较关键词时,确定该句子为非比较句。
上述中文比较句识别装置,还包括:断句模块205,用于根据断句标识将读入的一篇文档或一段文字切分为若干个句子。
本发明提供的中文比较句分类器模型生成、中文比较句识别方法及装置,通过对已标注类别的数据集的学习、提炼,将数据集中的句子转化为一组序列,并从转化得到的序列中挖掘出若干比较模式,组成比较模式集,通过将序列与比较模式集中的模式匹配得到序列所对应的特征向量,根据特征向量即其对应的类别标记生成分类器模型。综合利用了比较句的关键词和句式的模式特征,通过自动学习比较句的模式特征,得到分类器模型,为识别比较句提供了前提和工具。
通过将读入的未知类型的句子的每一分句转化为序列,与上述得到的比较模式集中的比较模式进行匹配,得到该序列对应的特征向量,使用生成的分类器模型确定得到的特征向量所对应的类别标记,当由任何一个分句所得到的特征向量所对应的类别标记为比较时,确定句子的类别为比较句,否则,确定句子为非比较句。采用自动生成的分类器模型,自动识别文本中的比较句,有效的提高了识别的速度和识别效果。
为了验证本发明实施例提供的中文比较句分类器模型生成方法及装置、中文比较句识别方法及装置的有效性,从互联网上采集了关于笔记本电脑的用户评论信息,共1816句,其中比较句424句。
在具体测试时,选取其中4/5的数据作为已知数据,通过对该部分数据的学习生成中文比较句分类器模型;剩余1/5的数据作为待识别的数据,使用生成的中文比较句分类器模型进行识别。其中,使用SVM分类器和使用决策树分类器各自得到的结果,与使用传统的文本分类器(词袋模型SVM)所得到的结果作了比较,比较结果如表3所示:
表3
准确率 召回率 F测度 基于词袋模型的SVM分类器 96.7% 64.2% 0.77 本发明方法(SVM分类器) 91.4% 79.6% 0.85 本发明方法(C4.5分类器) 90.5% 79.0% 0.84
测试结果表明,本发明实施例提供的方法及装置,尽管在准确率上略有降低,但在召回率上有大幅提升,综合性能指标F测度比传统方法提高了10%左右,充分证明了本发明所提供方法及装置的有效性。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化、替换或应用到其他类似的装置,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。