技术领域
[0001] 本发明一般地涉及文本处理领域。具体而言,本发明涉及一种能够高效地、高准确度地、鲁棒地、自动地进行文本分类的方法和设备。
相关背景技术
[0002] 文本数据的处理存在多种方式。以人工处理文本数据,存在成本高、低效率、标准不一致等问题。以计算设备基于规则的方式处理文本数据则存在灵活性低、适用面不广、准确度不够高的问题。以计算设备基于人工智能的方式处理文本数据需要大量的标记好的训练数据进行训练。
[0003] 例如,在自动测试领域,对软件和/或硬件的测试往往是自动化的,这将导致海量的测试日志,从而催生出自动分析测试日志的需求,例如,将测试日志分类为“通过”、“失败”等类型,或者针对“失败”类型的测试日志,识别错误的类型,按错误的种类进行分类等。目前的测试日志处理包括从失败日志合成错误消息、失败日志中根源相关行定位、错误识别等处理。其中,从失败日志合成错误消息、失败日志中根源相关行定位仍然需要人工,而错误识别基于规则,因此,存在上述提到的人工和基于规则的相应不足。
[0004] 因此,需要一种能够高效地、高准确度地、鲁棒地、自动地进行文本分类的方法和设备。
具体实施方式
[0020] 在下文中将结合附图对本发明的示范性实施例进行详细描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施方式的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与系统及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。此外,还应该了解,虽然开发工作有可能是非常复杂和费时的,但对得益于本公开内容的本领域技术人员来说,这种开发工作仅仅是例行的任务。
[0021] 在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的装置结构和/或处理步骤,而省略了与本发明关系不大的其他细节。另外,还需要指出的是,在本发明的一个附图或一种实施方式中描述的元素和特征可以与一个或更多个其它附图或实施方式中示出的元素和特征相结合。
[0022] 下面将参照图1描述根据本发明的实施例的文本分类方法的流程。
[0023] 图1示出了根据本发明的实施例的文本分类方法100的流程图。如图1所示,该方法包括如下步骤:接收文本数据,所述文本数据包括一个或多个文本语义单元(步骤S1);基于文本语义单元与文本关键词之间的对应关系,将文本语义单元替换为对应的文本关键词(步骤S2);利用语义模型,提取文本关键词的语义特征(步骤S3);以及至少基于语义特征,利用分类模型,对文本关键词进行分类,作为文本数据的分类结果(步骤S4)。
[0024] 本发明可以处理的文本数据包括各种类别、各种语言的文本数据,例如英文测试日志。下文中,仅以英文测试日志作为文本数据的示例,但不限于此。
[0025] 文本数据在步骤S1或步骤S2之前,需要经过数据预处理。
[0026] 数据预处理包括,但不限于以下至少之一:分词、数据清洗、将文本转换为特定格式等。
[0027] 在所述文本数据是中文的情况下,进行分词。由于英文自带空格作为分词,因此,不需要对全英文的文本数据进行分词。其它语言的文本数据类似地视需要进行分词。
[0028] 数据清洗的目的是为了去除与文本数据的语义无关的词。例如,对于测试日志来说,需要清洗的对象包括,但不限于以下参数:ID(identification,标识)、日期、IP(Internet protocol,互联网协议)地址、文件路径等。
[0029] 在步骤S1中,接收文本数据,所述文本数据包括一个或多个文本语义单元。
[0030] 传统的自然语言处理通常以字/词为单位,而本发明的文本处理以文本语义单元为单位。文本语义单元是待处理文本的基本语义单元,例如是词组、单个句子、多个句子、文本行(包括整句,不断句)、段落等。在文本数据是英文测试日志的场景下,文本语义单元例如是日志行,即测试日志中的一行,所述日志行包括一个或多个句子。日志行包括的句子都是完整的句子,不包括部分的句子,也即,不存在一个句子分布在多个日志行的情况。选择日志行作为处理单位是因为:1)测试者在对日志进行分析的时候以日志行为基本单位;2)日志行能够反映出完整的事件信息。因此,对于其它类型的文本数据,可以灵活设计文本语义单元。通过使用文本语义单元为基本处理单位,而不是以字、词为处理单位,使得可以更好地在语义上处理文本数据,避免割裂语义地分析字、词,同时也为后续步骤S2中的替换处理打好基础。
[0031] 在步骤S2中,基于文本语义单元与文本关键词之间的对应关系,将文本语义单元替换为对应的文本关键词。
[0032] 文本关键词是预先获得的、能够反映文本语义单元语义的关键词。一个文本关键词可以包括中文的一个或多个词、一个或多个词组、英文的一个或多个单词、一个或多个词组、其它语言的一个或多个词、一个或多个词组等。
[0033] 预先通过聚类,获得具有共同语义的多个文本语义单元以及其对应的文本关键词,并记录彼此的对应关系,例如记录于映射表、码本、词典、或其它适合的形式中。下文以映射表为例。获取映射关系的方法在下文中参照图2详细介绍。
[0034] 在预先得到的具有对应文本关键词的文本语义单元对于文本分类方法100针对的文本数据足够多的情况下,可以基于匹配关系,找到与步骤S1中接收的文本数据中的文本语义单元相同的、映射表中的文本语义单元。如果无法基于匹配关系,从映射表中找到相同的文本语义单元,则可以基于步骤S1中接收的文本数据中的文本语义单元与映射表中的文本语义单元之间的相似度,找到与文本数据中的文本语义单元相似度最大的、映射表中的文本语义单元,作为与之对应的文本语义单元。文本语义单元是文本,文本之间的相似度计算可以采用现有技术中的所有实现方式,例如基于特征向量的余弦夹角的相似度计算方法。
[0035] 在根据匹配关系或相似度,为步骤S1中接收的文本数据中的文本语义单元找到与之对应的、映射表中的文本语义单元时,将步骤S1中接收的文本数据中的文本语义单元替换为与映射表中的文本语义单元在映射表中对应的文本关键词。这样,文本数据从包括文本语义单元变换为包括文本关键词。通过这层泛化,将大量的文本语义单元转化为有限数量的文本关键词,在语义上抽象化,可以提高文本分类的准确度,提高分类速度,降低语义模型和分类模型的复杂度。
[0036] 在图2中描述的聚类方法中可以看出,映射表中的文本语义单元与文本关键词之间对应关系的获得是无监督的,因此,减少了对标记训练数据的数量要求,本发明的文本分类方法100所能处理的文本数据中的文本语义单元不需要有标记的同一文本语义单元作为训练数据训练过本发明的语义模型、分类模型。因此,本发明的适用性广,对训练数据的要求低。
[0037] 在步骤S3中,利用语义模型,提取文本关键词的语义特征。
[0038] 语义模型可以提取处理对象的语义特征,包括主题模型。主题模型可以从主题的角度对处理对象提取主题,输出表征处理对象的主题的分布的主题向量。主题模型的示例包括LDA(Latent Dirichlet allocation)模型。主题模型可以在利用无标记的训练用文本数据的无监督训练过程中生成,只需提前设定主题的数目。利用训练好的主题模型,可以从文本关键词构成的文本数据中提取语义特征。
[0039] 在步骤S4中,至少基于语义特征,利用分类模型,对文本关键词进行分类,作为文本数据的分类结果。
[0040] 分类模型在下述训练过程中训练好,可直接用于步骤S4中的分类。分类模型在应用时基于的特征与其在训练时基于的特征保持一致。
[0041] 分类模型可以是现有技术中的任何分类模型,如支持向量机(Support Vector Machine,SVM)、最近邻(kNN,k-Nearest Neighbor)、逻辑回归(logistic regression)等。
[0042] 作为一种实施方式,分类模型基于步骤S3中提取的语义特征,对文本数据中的文本关键词进行分类,其分类结果即为步骤S1中输入的文本数据的分类结果。
[0043] 作为另一种实施方式,分类模型除了基于语义特征,还可以基于与文本语义单元相关联的时间特征。例如,在文本数据是测试日志的场景中,时间特征包括测试例的执行时间长度。
[0044] 分类模型所基于的特征还可以包括其它特征,根据需求和本领域技术人员灵活设计。
[0045] 分类模型所利用的特征都经过特征标准化器的标准化。特征标准化器将输入特征标准化,例如规范:值的大小、特征的格式等,以利于后续处理。
[0046] 在下文的训练过程中可以看出,分类模型所针对的训练数据是带标记的,标记了训练数据应被分类的结果,但是分类模型处理的对象同样是文本关键词,而非文本语义单元,因此,仅需要有限数量的带标记的训练数据来训练好分类模型。但分类模型在应用时处理的对象还可以包括无标记文本数据(即训练中未处理过的文本语义单元)转化而来的文本关键词,因此,分类模型在应用时的可处理范围扩大到无标记文本数据,但其分类准确度不受影响。其原因在于,分类模型基于文本关键词训练,而文本关键词在映射表中既可能对应于训练时出现过的文本语义单元,也可能对应于训练时未出现过的文本语义单元。
[0047] 根据本发明的文本分类方法100能够高效地、高准确度地、鲁棒地、自动地进行文本分类。相对于人工分类的方法,更高效、更准确、更自动化;相对于基于规则分类的方法,更准确、更鲁棒、适用面更广;相对于其它人工智能分类的方法,对训练数据的标记需求更低。在文本数据为测试日志的场景下,根据本发明的文本分类方法可以根据需求和相应的训练数据的标记,将测试日志行准确标记为“通过”、“失败”等类型,或者将测试日志行准确分类为各种错误类型。因此,可以容易地进行错误识别、从失败日志合成错误消息、在失败日志中定位错误日志行、特定种类的错误的日志行、根源相关行等。
[0048] 在图2中,示出了根据本发明的文本语义单元与文本关键词之间的映射关系的获取方法200。
[0049] 在步骤S21中,接收训练用文本数据,所述训练用文本数据包括多个文本语义单元。
[0050] 这里的训练用文本数据无需标记,因为并不用于分类模型的训练,只需通过无监督的学习来从文本语义单元中提取语义上的共性。该训练用文本数据包括多个文本语义单元。该训练用文本数据已经过如上所述的分词(如需要)、数据清洗等预处理。
[0051] 在步骤S22中,对所述多个文本语义单元进行聚类,以获得多个簇,每个簇包括具有相同或类似语义的文本语义单元。
[0052] 聚类的目的是将语义相同或类似的文本语义单元抽象为共同的文本关键词,从而将文本语义单元以文本关键词代替。聚类可以采用现有技术中的任何适当的聚类方法来实现。下面参照图3介绍一种优选的聚类方法。
[0053] 在步骤S23中,针对每个簇,提取该簇中包括的文本语义单元中共有的词,作为与该簇中包括的文本语义单元对应的文本关键词。
[0054] 由于在步骤S22中已经将具有相同或类似语义的文本语义单元聚成簇,因此,在步骤S23中,从这些语义上存在共性的文本语义单元中提取表现共性的共有词,作为文本关键词。因此,文本关键词体现了与之对应的文本语义单元之间的共性。将文本关键词与对应的簇中的所有文本语义单元保存到映射表中,以用于彼此之间的替换。
[0055] 传统的聚类方式往往会以聚类中心作为后续处理的基础,然而,本发明以共有的词作为后续处理的基础,能够确保提取出来的共有的词,即文本关键词,具有可读性,语义上有意义。当步骤S1接收的文本数据被文本关键词替换后,替换后的内容仍是有意义的、用户可读的。这有利于更好的分类,也有利于后续提供给用户进行进一步的分析。
[0056] 如果一个簇中只有一个文本语义单元,则共有词就是文本语义单元的全部,即该文本语义单元对应的文本关键词是该文本语义单元本身。
[0057] 如果一个簇中包括的所有文本语义单元中没有共有的词,则分割该簇为多个子簇,直至所述子簇中包括的文本语义单元具有共有词;以及提取该共有词,作为与该子簇中包括的文本语义单元对应的文本关键词。
[0058] 具体的分割方式例如是对于该簇中的每一个文本语义单元,遍历剩下的文本语义单元,找到与其有共有词的文本语义单元,然后把这些文本语义单元形成一个新的子簇。对剩下的文本语义单元进行相同的处理,直到遍历完所有文本语义单元。
[0059] 在图3中,示出了一种优选的对多个文本语义单元进行语义聚类的方法。
[0060] 如图3所示,在步骤S31中,将待聚类的多个文本语义单元中的每个文本语义单元转换为特征向量。
[0061] 例如,用word2vec将文本语义单元中的每个词转换为向量,通过加权向量求和得到整个文本语义单元的特征向量。
[0062] 具体地,针对每个文本语义单元,将构成该文本语义单元的每个词转换为词特征向量;计算每个词的逆文档频率IDF(Inverse Document Frequency),作为该词的权重,即将每个词在不同文本语义单元中出现的次数的倒数作为该词在这个文本语义单元中的权重;并针对该文本语义单元归一化其中每个词的权重;基于归一化的每个词的权重,对该文本语义单元的所有词特征向量加权求向量和,以得到与该文本语义单元对应的特征向量。
[0063] 在步骤S32中,对每个文本语义单元的特征向量进行主成分分析,以得到特征值最大的预定数量的特征向量。
[0064] 主成分分析PCA(Principal Component Analysis)把可能具有相关性的高维变量合成线性无关的低维变量,称为主成分(principal components)。PCA本质上是将方差最大的方向作为主要特征,并且在各个正交方向上将数据“离相关”,也就是让它们在不同正交方向上没有相关性。SVD奇异值分解可以作为PCA实现的示例。这里使用PCA可以去除数据中的一些噪声。
[0065] 预定数量可以由本领域技术人员根据需要指定。
[0066] 在步骤S33中,从每个特征向量减去其在所述预定数量的特征向量上的投影分量,以得到语义特征向量。
[0067] 特征值最大的前几个主成分通常与数据的本质属性无关,移除它们会很大程度上提升算法精度。例如,在文本数据是测试数据的场景中,特征值最大的几个主成分通常只与停用词(stop words)、语法等相关,而与测试日志行本身的语义关系不大,移除它们对于保留并突出测试日志行本身的含义很有帮助,去伪存真,有助于提升算法精度。
[0068] 在步骤S34中,在特征空间中,对语义特征向量进行聚类,以获得所述多个簇。
[0069] 通过将文本语义单元转换为特征向量,并通过主成分分析去除噪声,得到的语义特征向量就反映了文本语义单元的语义属性。因此,在特征空间中,对其进行聚类,从而获得多个由具有相同或类似语义的文本语义单元构成的簇。
[0070] 在图4中,示出了分类模型的训练方法。
[0071] 如图4所示,在步骤S41中,接收训练用文本数据,所述训练用文本数据包括多个文本语义单元及其类型标记。
[0072] 注意,此处训练分类模型的训练数据是标记的,其标记有对应的文本语义单元应被分类的类型。例如,在文本数据是测试日志的场景下,可将测试日志分类为“通过”、“失败”等类型,或者在文本数据是“失败”的测试日志的情况下,按错误的种类进行分类等。
[0073] 在步骤S42中,基于文本语义单元与文本关键词之间的对应关系,将文本语义单元替换为对应的文本关键词。
[0074] 该步骤与上述步骤S2相似,因此不再赘述。
[0075] 在步骤S43中,利用语义模型,提取文本关键词的语义特征。
[0076] 该步骤与上述步骤S3相似,因此不再赘述。
[0077] 在步骤S44中,至少基于语义特征、类型标记,对分类模型进行训练。
[0078] 如上所述,还可以基于语义特征和与训练用文本数据相关联的时间特征,对分类模型进行训练。也可以基于语义特征和其它适当的特征,对分类模型进行训练。
[0079] 训练分类模型的特征同样经过特征标准化器标准化。
[0080] 下面,将参照图5描述根据本发明的实施例的文本分类设备500。
[0081] 图5示出了根据本发明的实施例的文本分类设备500的结构方框图。如图5所示,根据本发明的文本分类设备500包括:存储器501,其上存储有指令;以及处理器502,其耦接到存储器501,当处理器502执行存储器501上存储的指令时使得所述处理器502能够:接收文本数据,所述文本数据包括一个或多个文本语义单元;基于文本语义单元与文本关键词之间的对应关系,将文本语义单元替换为对应的文本关键词;利用语义模型,提取文本关键词的语义特征;以及至少基于语义特征,利用分类模型,对文本关键词进行分类,作为文本数据的分类结果。
[0082] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够:还基于与文本语义单元相关联的时间特征进行所述分类。
[0083] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够:对所述分类所利用的特征进行标准化。
[0084] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够通过如下步骤训练所述分类模型:接收训练用文本数据,所述训练用文本数据包括多个文本语义单元及其类型标记;基于文本语义单元与文本关键词之间的对应关系,将文本语义单元替换为对应的文本关键词;利用语义模型,提取文本关键词的语义特征;至少基于语义特征、类型标记,对分类模型进行训练。
[0085] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够:基于与训练用文本数据相关联的时间特征,对分类模型进行训练。
[0086] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够:对所述训练所利用的特征进行标准化。
[0087] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够:通过如下步骤获得所述文本语义单元与文本关键词之间的对应关系:接收训练用文本数据,所述训练用文本数据包括多个文本语义单元;对所述多个文本语义单元进行聚类,以获得多个簇,每个簇包括具有相同或类似语义的文本语义单元;针对每个簇,提取该簇中包括的文本语义单元中共有的词,作为与该簇中包括的文本语义单元对应的文本关键词。
[0088] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够:在该簇中包括的文本语义单元中没有共有的词的情况下,通过如下步骤获得所述文本语义单元与文本关键词之间的对应关系:分割该簇为多个子簇,直至所述子簇中包括的文本语义单元具有共有词;提取该共有词,作为与该子簇中包括的文本语义单元对应的文本关键词。
[0089] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够:通过如下步骤对所述多个文本语义单元进行语义聚类:将每个文本语义单元转换为特征向量;对特征向量进行主成分分析,以得到特征值最大的预定数量的特征向量;从每个特征向量减去其在所述预定数量的特征向量上的投影分量,以得到语义特征向量;在特征空间中,对语义特征向量进行聚类,以获得所述多个簇。
[0090] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够:通过如下步骤将每个文本语义单元转换为特征向量:针对每个文本语义单元,将构成该文本语义单元的每个词转换为词特征向量;计算每个词的逆文档频率IDF,作为该词的权重并针对该文本语义单元归一化其中每个词的权重;基于归一化的每个词的权重,对该文本语义单元的所有词特征向量加权求和,以得到与该文本语义单元对应的特征向量。
[0091] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够:对所述文本数据进行数据清洗,以去除与文本数据的语义无关的词。
[0092] 在一个实施例中,所述文本包括测试日志,所述文本语义单元包括日志行,所述日志行包括一个或多个句子。
[0093] 在一个实施例中,所述指令在由所述处理器执行时还使得所述处理器能够:在所述文本数据是中文的情况下,在所述数据清洗之前还进行分词。
[0094] 本发明可实现在如图6所示的系统600中。如图6所示,系统600包括网络入口(web portal)601、能够实现文本分类方法100的指令602、中间件(middleware)603以及大数据平台604。
[0095] 网络入口601可以是图形界面,用于可视化显示数据,如文本数据、标签数据、分类结果等,也可以用于对数据打标签。
[0096] 指令602在大数据平台604上运行,以实现根据本发明的文本分类方法100。
[0097] 中间件603以软件形式实现,用于例如:获取、预处理、存储文本数据(如测试日志),触发执行指令602,返回分类结果等。
[0098] 大数据平台604是用于分布式文件存储和分布式计算的可伸缩平台。大数据平台604可以实现为包括分布式文件系统如HDFS(Hadoop Distributed File System,Hadoop分布式文件系统)、分布式计算框架如spark、数据库如HBase等。
[0099] 图7示出了系统600的信令图。
[0100] 系统600包括主节点801、从节点1至从节点n。其中,n为大于1的自然数。此处仅示出从节点1和从节点n作为示例,系统600可以包括更多的从节点。文本服务器806用于存储和提供待分类的文本。
[0101] 信令流程例如是:
[0102] 1.主节点801向从节点1至n中的至少一个发起请求;
[0103] 2.每个接收请求的从节点从文本服务器806取得待分类的文本;
[0104] 3.每个接收请求的从节点对所取得的文本进行预处理,包括但不限于中文分词、数据清洗、将文本转换为特定格式等。
[0105] 4.每个接收请求的从节点将预处理后的文本写入数据库,如HBase。
[0106] 5.主节点801执行本发明的文本分类方法100。
[0107] 6.主节点801将文本分类方法100的输出结果存储到数据库,如HBase。
[0108] 此外,这里尚需指出的是,从存储介质或网络向具有专用硬件结构的计算机(例如图8所示的通用计算机700)安装构成根据本发明的文本分类方法100的软件的程序,该计算机在安装有各种程序时,能够执行各种功能,如文本分类方法100。
[0109] 图8示出了可用于实施根据本发明的实施例的方法和设备的计算机的示意性框图。
[0110] 在图8中,中央处理单元(CPU)701根据只读存储器(ROM)702中存储的程序或从存储部分708加载到随机存取存储器(RAM)703的程序执行各种处理。在RAM 703中,还根据需要存储当CPU 701执行各种处理等等时所需的数据。CPU 701、ROM 702和RAM 703经由总线704彼此连接。输入/输出接口705也连接到总线704。
[0111] 下述部件连接到输入/输出接口705:输入部分706(包括键盘、鼠标等等)、输出部分707(包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等,和扬声器等)、存储部分708(包括硬盘等)、通信部分709(包括网络接口卡比如LAN卡、调制解调器等)。通信部分709经由网络比如因特网执行通信处理。根据需要,驱动器710也可连接到输入/输出接口705。
可拆卸介质711比如磁盘、光盘、磁光盘、半导体存储器等等可以根据需要被安装在驱动器
710上,使得从中读出的计算机程序根据需要被安装到存储部分708中。
[0112] 在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质711安装构成软件的程序。
[0113] 本领域的技术人员应当理解,这种存储介质不局限于图8所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质711。可拆卸介质711的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)(注册商标))和半导体存储器。或者,存储介质可以是ROM 702、存储部分708中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。
[0114] 本发明还提出一种存储有机器可读取的指令代码的程序产品。所述指令代码由机器读取并执行时,可执行上述根据本发明的实施例的方法。
[0115] 相应地,用于承载上述存储有机器可读取的指令代码的程序产品的存储介质也包括在本发明的公开中。所述存储介质包括但不限于软盘、光盘、磁光盘、存储卡、存储棒等等。
[0116] 在上面对本发明具体实施例的描述中,针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。
[0117] 应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
[0118] 此外,本发明的方法不限于按照说明书中描述的时间顺序来执行,也可以按照其他的时间顺序地、并行地或独立地执行。因此,本说明书中描述的方法的执行顺序不对本发明的技术范围构成限制。
[0119] 尽管上面已经通过对本发明的具体实施例的描述对本发明进行了披露,但是,应该理解,上述的所有实施例和示例均是示例性的,而非限制性的。本领域的技术人员可在所附权利要求的精神和范围内设计对本发明的各种修改、改进或者等同物。这些修改、改进或者等同物也应当被认为包括在本发明的保护范围内。