具体实施方式
为对本申请进行进一步说明,提供下列实施例:
请参考图1,图1示出了根据本申请的一示例性实施例的信息分类方法,该方法可以包括下述步骤:
步骤102,根据预设的特征提取算法,提取待分类文本信息中的文本特征;
在本实施例中,文本特征是指构成文本信息的基本文字,比如单个字、词或短语,而文本信息由若干个文本特征组成,因而可以通过对文本特征的分析,确定相应的文本信息的类别。相对的,基于组合方式的差异而导致文本信息的种类繁多,并且即便是相同的多个文本特征也可能由于排列顺序、表达方式等的差异而形成不同的文本信息,因而通过对文本特征的提取和分析,可以避免直接采用文本信息进行分析时,由于文本信息的多样性可能造成的:1)信息量过大,处理效率低;2)相似的文本信息无法被准确识别和分析等问题。
步骤104,在权重信息库中查找所述文本特征对应的权重值,所述权重信息库中包含根据预设的权重算法计算的训练样本文本特征对应的权重值,其中所述训练样本文本特征是根据所述特征提取算法从训练样本文本信息中提取得到;
在本实施例中,通过将文本特征转换为对应的权重值,实现了对文本特征的数值化,便于计算机的直接处理,解决了文本特征中的文字不能够被计算机直接处理的问题。作为一示例性实施例,权重值可以表示相应的文本特征在所有文本特征中的区分度,比如具体可以为该文本特征的词频。
在本实施例中,通过采用相同的特征提取算法,使得对文本特征和训练样本文本特征的提取方式相同,从而能够在权重信息库中顺利查找到文本特征对应的权重值。通过扩大训练样本文本特征的数量,有助于增大权重信息库的数据量,从而避免无法查找到对应于文本特征的权重值。
步骤106,调用预配置的信息分类器,并由所述信息分类器根据所述文本特征对应的权重值确定所述待分类文本信息的类别,其中所述信息分类器由所述训练样本文本信息的实际类别和所述权重信息库生成。
由上述实施例可知,本申请通过在样本训练过程中,提取文本特征、计算文本特征对应的权重值并基于权重值生成信息分类器,且对待分类文本信息采用同样的特征提取算法,并在同样的权重信息库中确定文本特征的权重值,使得信息分类器能够根据该权重值进行分析处理,准确判断出待分类文本信息的类别。
请参考图2,图2示出了根据本申请的另一示例性实施例的信息分类方法,该方法可以包括下述步骤:
1)训练阶段
步骤202,提取训练样本;
在本实施例中,用户可以事先收集感兴趣的各类别的信息,并建立对应的POI(PointofInterest,兴趣点)库,则该POI库中的每条POI信息即可作为一条训练样本。
步骤204,根据N-Gram算法提取训练样本的文本特征;
在本实施例中,由于用户感兴趣的POI信息往往是地名、建筑名、商铺名等文字量较短的内容,因而对于这些训练样本文本信息的文字量小于或等于预设数值的情况下,可以采用N-Gram算法进行文本特征的提取。通过对训练样本的特征提取,使得特征集中于字符数量更少的单个字或词中,从而提高了对待分类文本信息的覆盖率,即使训练样本与待分类文本信息均不相同,该待分类文本信息也有很大可能命中若干个文本特征,从而据此确定待分类文本信息的类别。
具体地,图3示出了基于N-Gram算法提取文本特征的示意图,假定训练样本为“时代科技大厦”,则基于N-Gram算法可以对其进行特征提取,得到相应的Unigram特征、Bigram特征、Trigram特征等,其中每个Unigram特征包含一个字、每个Bigram特征包含两个字、每个Trigram特征包含三个字。比如图3中,提取出的Unigram特征分别为特征1“时”、特征2“代”、特征3“科”、特征4“技”、特征5“大”、特征6“厦”,而Bigram特征分别为特征1’“时代”、特征2’“科技”、特征3’“大厦”。
当然,如果训练样本的文字量大于预设数值,也可以通过其他算法来实现文本特征的提取,比如采用分词处理的方式,此处不再赘述。
步骤206,计算训练样本的文本特征对应的权重值;
在本实施例中,通过计算训练样本的文本特征对应的权重值,实际上是对文本特征的量化处理,从而便于计算机基于该权重值进行计算和分析,而避免了计算机无法对文本特征直接处理的问题。其中,权重值可以用于表示相应的文本特征在所有文本特征中的区分度,比如词频等。
作为一示例性实施方式,可以通过TF-IDF(TermFrequency–InverseDocumentFrequency,词频-逆向文件频率)算法计算权重值。具体地,可以通过下述公式(1)计算每个文本特征的特征区分度:
其中,idffeature_i表示特征i在训练样本中的区分度,sumtraining表示训练样本总数,sumfeature_i表示训练样本中包含特征i的训练样本数。
进一步地,还可以对上述公式(1)计算得到的特征区分度,通过下述公式(2)进行归一化处理,以便于数值的统一处理:
其中,Ti,j表示训练样本j中特征i的权重,j表示当前选取的所有训练样本。
步骤208,生成相应的信息分类器;
在本实施例中,假设步骤202中提取了90万训练样本,而步骤204中提取了40万文本特征,则步骤206中计算得到相应的40万权重值,该40万权重值可以与90万训练样本构成90万×40万的特征向量矩阵。因此,基于上述特征向量矩阵和每个训练样本的实际类别(可以映射至该训练样本提取出的文本特征),即可训练得到相应的信息分类器。
其中,由于90万的训练样本即用户希望区分的所有类别的训练样本,而40万权重值也对应于所有类别的训练样本,则90万×40万的特征向量矩阵实际上是考虑到90万训练样本与40万权重值(对应于40万文本特征)之间的任意组合(其中,如果训练样本A中未包含文本特征b,则特征向量矩阵中相应的数值为0),因而据此训练得到的信息分类器能够适用于任意类型(90万训练样本中应当包含该类型)的待分类文本信息的类别分析。
作为一示例性实施方式,可以采用Libsvm(ALibraryforSupportVectorMachines)算法或Liblinear(ALibraryforLargeLinearClassification)算法训练信息分类器。其中,由于本申请中的信息分类器的维数很高(比如上述实施例中为40万)、数据量大(比如上述实施例中的特征向量矩阵为90万×40万),因而可以通过采用Liblinear算法,提升信息分类器的训练效率。
2)使用阶段
步骤210,获取待分类文本信息;
在本实施例中,用户可以对任意待分类文本信息进行获取和类别预测,但在步骤202中应当提取了与该待分类文本信息的实际类别相同的训练样本,才能够确保对待分类文本信息的类别进行准确识别。因此,通过增加每类训练样本的数量,有助于提升对待分类文本信息的准确识别。
步骤212,对待分类文本信息进行预处理;
在本实施例中,当待分类文本信息中包含与类型识别无关的信息时,可以通过对待分类文本信息的预处理,避免影响类型识别过程。具体地,如图4所示,当完整的待分类文本信息为“XX省XX市XX路15号时代科技大厦B栋22楼103室”的地址信息时,实际上可能只有“时代科技大厦”是有效信息,因而需要对其余信息进行过滤。因此,可以对完整文本信息进行结构化解析,分离出其中的“XX省”、“XX市”等无用信息,并将剩余的“时代科技大厦”作为预处理后的文本信息。
步骤214,提取待分类文本信息的文本特征;
在本实施例中,提取文本特征的算法应当与步骤204相同,比如均采用N-Gram算法,则提取的文本特征也可以参考图3所示。
步骤216,基于步骤206中计算出的训练样本的文本特征对应的权重值,查找步骤214提取出的待分类文本信息的文本特征对应的权重值;
在本实施例中,由于在1)训练阶段中,信息分类器是基于训练样本的文本特征对应的权重值进行训练生成的,因而在2)使用阶段中,通过查找的方式使得相同的文本特征对应于相同的权重值,即可由信息分类器准确识别出相应的类别信息。
步骤218,利用步骤208中得到的信息分类器,根据步骤216中查找到的权重值,确定待分类文本信息的类别。
作为一示例性实施例,上述两个阶段的处理过程可以在不同的设备上实现。请参考图5,对于1)训练阶段,其训练过程可以在单台服务器上实现,以生成权重信息库和训练信息分类器,其中权重信息库中包含所有文本特征对应的权重值;对于2)使用阶段,其处理过程可以在分布式平台中的各台计算设备上实现,比如在设备1、设备2……设备n中,每台计算设备均可以通过从单台服务器中获取权重信息库和信息分类器(存储在本地,或者实时信息交互),独立预测信息的类别。
需要说明的是:本申请的技术方案可以应用于各种场景下的信息分类,下面结合一典型应用场景进行说明,但本领域技术人员应该理解的是,本申请并不对此进行限制。
作为一示例性实施例,本申请的技术方案可以应用于物流地址的分类,比如居住地址、工作地址、学校地址等,则根据物流地址所属的分类,可以对相应的物流货物进行区分处理,比如在节假日期间,物流地址为工作地址和学校地址的物流货物应当暂缓发货,而物流地址为居住地址的物流货物应当正常发货;进一步地,学校地址还可以分为办公楼地址和宿舍楼地址,则同样针对节假日期间,物流地址为办公楼地址和学校地址的物流货物应当暂缓发货,而物流地址为宿舍楼地址的物流货物应当正常发货。
具体地,可以采用如图1或图2所示的处理流程,实现下述两个阶段的处理:1)训练阶段。针对所有可能类别的物流地址,提取相应的训练样本文本信息,以“居住地址、工作地址和学校地址”为例,则分别从属于这三个类别的物流地址中提取训练样本(即已滤除“XX省”、“X栋”等与类别无关的信息),即每个物流地址的实际类别已知;通过N-Gram算法对提取的物流地址进行文本特征的提取,并采用TF-IDF算法计算文本特征的权重值,建立权重信息库;基于计算得到的权重值,以及每个物流地址的实际类别,采用Liblinear算法训练生成信息分类器。2)使用阶段。针对每个需要预测类别的物流地址,滤除“XX省”、“X栋”等与类别无关的信息后,通过N-Gram算法提取文本特征,并在权重信息库中查找对应于这些文本特征的权重值,从而由信息分类器针对查找到的权重值,确定对应的类别。
请参考图6,图6示出了根据本申请的一示例性实施例的电子设备的示意结构图。请参考图6,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成信息分类装置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图7,在软件实施方式中,该信息分类装置可以包括提取单元、查找单元和调用单元。其中:
提取单元,根据预设的特征提取算法,提取待分类文本信息中的文本特征;
查找单元,在权重信息库中查找所述文本特征对应的权重值,所述权重信息库中包含根据预设的权重算法计算的训练样本文本特征对应的权重值,其中所述训练样本文本特征是根据所述特征提取算法从训练样本文本信息中提取得到;
调用单元,调用预配置的信息分类器,并由所述信息分类器根据所述文本特征对应的权重值确定所述待分类文本信息的类别,其中所述信息分类器由所述训练样本文本信息的实际类别和所述权重信息库生成。
可选的,当所述待分类文本信息和所述训练样本文本信息的文字量小于或等于预设数值时,所述特征提取算法为N-Gram算法。
可选的,所述权重算法为词频-逆向文件频率算法。
可选的,还包括:
处理单元,对所述词频-逆向文件频率算法的计算结果执行数值归一化处理。
可选的,所述信息分类器由Liblinear算法对所述训练样本文本信息的实际类别和所述权重信息库进行训练生成。
可选的,所述提取单元具体用于:
滤除所述待分类文本信息中的预设文本信息,并从剩余的文本信息中提取所述文本特征。
因此,本申请通过样本训练得到信息分类器,并将样本训练时的算法应用于提取待分类文本信息的文本特征以及确定相应的权重值,从而基于信息分类器进行分类处理时,能够确保信息分类的高效性和准确性。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。