文本分类模型的优化方法及装置与流程

文档序号:14950693发布日期:2018-07-17 22:29阅读:262来源:国知局
本申请涉及计算机
技术领域
,尤其涉及一种文本分类模型的优化方法及装置。
背景技术
:传统技术中,通常通过如下两种方法来对文本进行分类:第一种方法是,基于规则的方法,即预先收集一些常用的类别关键词,这些类别关键词所对应的类别是已知的,当待分类的文本与某个类别关键词相匹配时,将该文本分类为该类别关键词所对应的类别。然而该方法有很大的局限性,当某个文本与任一类别关键词均不匹配时,无法对该文本进行分类。此外,该方法通常不能对文本进行准确分类。举例来说,假设预先收集的类别关键词为:“天猫”,其对应的类别为互联网行业。由于文本“天猫服务站”包含“天猫”,也即该文本与“天猫”匹配,因此,该文本会被分类为互联网行业,但实际上该文本的分类为便利店。第二种方法是,基于文本分类模型的方法,此处的文本分类模型包括朴素贝叶斯模型,k最近邻(k-nearestneighbor,knn)模型以及最大熵模型等。在该方法中,首先会计算待分类的文本中各个词语的词频(termfrequency,tf)和逆文档频率(inversedocumentfrequency,idf),之后根据各个词语的权重值(如,tf*idf),来对待分类的文本进行分类。然而该方法通常只适用于对长文本进行分类,因为长文本中,部分词语才会出现多次,也即tf才能起到相应的作用。对于短文本(该文本中通常只包括了较少的词语),大部分的词语在文本中只出现了一次,tf没有任何意义,从而根据上述文本分类模型,不能准确地对短文本进行分类。因此,就有了对该文本分类模型进行优化的需求。技术实现要素:本申请描述了一种文本分类模型的优化方法及装置,可以获得对文本进行准确分类的文本分类模型。第一方面,提供了一种文本分类模型的优化方法,包括:获取文本集,所述文本集包括至少一个文本;对所述文本集中的各个文本进行预处理,得到所述各个文本对应的词语集合;将所述词语集合中的词语与预设的特征词集合中的各个类别特征词进行匹配;根据匹配结果,确定所述词语集合中的词语的类别;根据所述词语的类别,对所述预设的特征词集合进行扩充;根据扩充后的预设的特征词集合,对所述词语集合中的词语进行过滤;根据所述文本集以及所述词语的类别,确定过滤后的词语集合中的词语的权重值;根据所述过滤后的词语集合中的词语以及对应的权重值,对预设的文本分类模型进行优化。第二方面,提供了一种文本分类模型的优化装置,包括:获取单元,用于获取文本集,所述文本集包括至少一个文本;预处理单元,用于对所述获取单元获取的所述文本集中的各个文本进行预处理,得到所述各个文本对应的词语集合;匹配单元,用于将所述词语集合中的词语与预设的特征词集合中的各个类别特征词进行匹配;确定单元,用于根据所述匹配单元的匹配结果,确定所述词语集合中的词语的类别;扩充单元,用于根据所述确定单元确定的所述词语的类别,对所述预设的特征词集合进行扩充;过滤单元,用于根据所述扩充单元扩充后的预设的特征词集合,对所述词语集合中的词语进行过滤;所述确定单元,还用于根据所述文本集以及所述词语的类别,确定过滤后的词语集合中的词语的权重值;优化单元,用于根据所述确定单元确定的所述过滤后的词语集合中的词语以及对应的权重值,对预设的文本分类模型进行优化。本申请提供的文本分类模型的优化方法及装置,首先获取文本集,并对文本集中的各个文本进行预处理,得到各个文本对应的词语集合。将词语集合中的词语与预设的特征词集合中的各个类别特征词进行匹配,根据匹配结果,确定所述词语集合中的词语的类别。根据词语的类别,对预设的特征词集合进行扩充。根据扩充后的预设的特征词集合,对词语集合中的词语进行过滤。确定过滤后的词语集合中的词语的权重值,根据过滤后的词语集合中的词语以及对应的权重值,对预设的文本分类模型进行优化。由此,可以获得对文本进行准确分类的文本分类模型。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本申请一种实施例提供的文本分类模型的优化方法流程图;图2为本申请提供的文本分类模型的优化过程示意图;图3为本申请提供的文本分类方法流程图;图4为本申请一种实施例提供的文本分类模型的优化装置示意图。具体实施方式下面结合附图,对本申请的实施例进行描述。本申请实施例提供的文本分类模型的优化方法及装置适用于根据预先收集的文本,来对文本分类模型进行自动优化的场景,此处的文本分类模型包括:朴素贝叶斯模型,knn模型以及最大熵模型等。优化后的文本分类模型适用于对地址文本进行分类。此处的地址文本具有如下特点:a,内容简短,即文本中的一个词语只出现一次;b,重要的词语在文本的尾部。举例来说,上述地址文本可以为用户的收货地址。图1为本申请一种实施例提供的文本分类模型的优化方法流程图。所述方法的执行主体可以为具有处理能力的设备:服务器或者系统或者装置,如图1所示,所述方法具体包括:步骤110,获取文本集。其中,该文本集包括至少一个文本。该文本集中的文本可以是由服务器预先收集的,也可以是由人工预先整理的。在此说明书中,上述文本可以是指地址文本。当上述文本为地址文本时,该文本可以包括用户的收货地址。步骤120,对文本集中的各个文本进行预处理,得到各个文本对应的词语集合。此处的预处理包括:筛选目标文本和/或筛选文本中的重要内容和/或分词处理等。以文本为地址文本为例来说,筛选目标文本可以包括:去掉非用户本人的地址文本以及已经不用的地址文本,而保留用户的最常用的地址文本。筛选文本中的重要内容包括:删除地址文本中的没有意义的内容。如,删除“xx省xx市xx路xx号”等内容。分词包括:将地址文本划分为一个以上的词语。举例来说,文本集中的文本以及文本对应的词语集合可以如表1所示。表1文本词语集合支付宝信息技术有限公司支付宝、信息、技术、有限、公司网易信息网易、信息腾讯科技腾讯、科技......在本申请中,可以将各个文本对应的词语集合表示为d1,且d1={d1,d2,…,dn},其中,n代表词语集合中词语的个数。以表1为例来说,d1={“支付宝”、“信息”、“技术”、“有限”、“公司”、“网易”、“信息”、“腾讯”、“科技”}。步骤130,将词语集合中的词语与预设的特征词集合中的各个类别特征词进行匹配。此处的预设的特征词集合中的各个类别特征词可以是由人为预先收集的能代表某个类别的词语。本申请中的类别可以是指用户的行业类型,包括:“互联网”、“律师”、“记者”、“监管机构”、“政府机关”以及“明星”等。以类别为:“互联网”为例来说,类别特征词可以包括:“支付宝”、“淘宝”以及“天猫”等。本申请可以将预设的特征词集合表示为t1,t1={t1,t2,...,tm},其中,m为预设的特征词集合中的类别特征词的个数。可以理解的是,t1,t2,...,tm对应的类别是确定的。上述步骤130即为:将d1,d2,…,dn分别与t1,t2,...,tm进行匹配。步骤140,根据匹配结果,确定词语集合中的词语的类别。以n=5,m=3为例来说,也即d1={d1,d2,d3,d4,d5},t1={t1,t2,t3}。假设t1和t2的类别为:类别a,t3的类别为:类别b,且假设匹配结果为:d1,d4以及d5分别与t1相匹配,d2与t2相匹配,d3与t3相匹配。需要说明的是,本申请中的相匹配可以包括:相一致或者包含等情况,其中,相一致是指两个词语完全相同,如,假设d1为:“支付宝”,t1为:“支付宝”,则d1与t1相一致。包含是指一个词语包含另一个词语,如,假设d1为“支付”,t1为:“支付宝”,则t1包含d1。根据上述匹配结果可以确定d1,d4以及d5的类别为:类别a。同理,d2的类别为:类别a,d3的类别为:类别b。步骤150,根据词语的类别,对预设的特征词集合进行扩充。在确定词语集合中词语的类别之后,可以根据wordtovector方法,从预设的数据库(如,支付宝系统的后台数据库)中查找与该类别相关度较高的类别特征词,并对t1进行扩充。如前述例子,可以查找与类别a和类别b相关度较高的类别特征词,假设查找到的类别特征词为:tx,…,ty。则可以对t1进行扩充,假设扩充后的t1可以表示为t2,则t2={t1,t2,...,tm,tx,…,ty}。步骤160,根据扩充后的预设的特征词集合,对词语集合中的词语进行过滤。可选地,在执行步骤160之前,可以先对扩充后的预设的特征词集合进行优化,其优化步骤包括:根据预设的信息熵计算方法,计算扩充后的预设的特征词集合中的各个类别特征词的信息熵。根据各个类别特征词的信息熵,对扩充后的预设的特征词集合中的类别特征词进行过滤,得到第二特征词集合。如前述例子,可以计算分别计算t1,t2,...,tm,tx,…,ty的信息熵,假设tm-1,…,tm的信息熵不超过预设阈值,则可以将tm-1,…,tm过滤(也即删除),从而t2可以更新为t3,也即t3={t1,t2,...,tm-2,tx,…,ty}。需要说明的是,上述信息熵不超过预设阈值的类别特征词即为对类别区别度比较低的词语,将对类别区别度比较低的词语从扩充后的预设的特征词集合中删除,可以减少类别特征词的个数,从而可以提高匹配的效率,从而进一步可以提高文本分类模型优化的效率。回到步骤160中,步骤160即为:将t1,t2,...,tm,tx,…,ty与d1,d2,…,dn进行匹配。或者,当t2被更新为t3时,步骤160即为:将t1,t2,...,tm-2,tx,…,ty与d1,d2,…,dn进行匹配。若d1,d2,…,dn中的某一词语与t2或者t3中的各个类别特征词均不匹配,则从d1中删除该词语,从而得到过滤后的词语集合。以d1中的dn-1,…,dn与t2或者t3中的各个类别特征词均不匹配为例来说,过滤后的词语集合可以表示为d2,且d2={d1,d2,…,dn-2}。需要说明的是,本申请通过过滤词语集合d1中的词语,可以减少不相关地址文本的干扰,从而可以提高本申请的文本分类模型的优化方法的准确性。此外,在得到过滤后的词语集合d2之后,还可以人工修正d2中分类不准确的词语,从而进一步可以修正文本集中各文本的分类。步骤170,根据文本集以及词语的类别,确定过滤后的词语集合中的词语的权重值。如前述例子,即确定d1,d2,…,dn-2的权重值。在一种实现方式中,可以通过如下步骤来确定过滤后的词语集合中的词语的权重值:步骤a:根据词语的类别,确定文本集中各个文本的类别。以确定一个文本的类别为例来说,假设该文本为:“支付宝信息技术有限公司”,该文本对应的词语集合={“支付宝”、“信息”、“技术”、“有限”、“公司”},假设该词语集合中的词语“支付宝”、“信息”、“技术”的类别为:“互联网”,而“有限”、“公司”的类别为:“金融”,则本申请可以预先设定优先级规则,如,该优先级规则可以为:在先的词语优先级高,因此可以确定上述文本的类别为:“互联网”。当然,在实际应用中,上述优先级规则也可以设置为其它内容,如,在后的词语优先级高等,本申请对此不作限定。可以理解的是,当根据优先级规则,无法确定词语集合中各个词语的优先级,且各个词语对应的类别为多个时,则文本对应的类别也可以由多个。按照上述例子中文本的类别的确定方法,可以确定文本集中每个文本的类别。步骤b:从文本集中筛选至少一个待选文本,其中,待选文本的类别与词语的类别相一致;并从至少一个待选文本中选取包含该词语的目标文本。以表1为例来说,假设表1中文本:“支付宝信息技术有限公司”、“网易信息”以及“腾讯科技”的类别均为:“互联网”,且假设当前待确定权重值的词语为:“信息”,该词语的类别也为:“互联网”。则因为表1中三个文本的类别均与当前待确定权重值的词语的类别相一致,所以筛选的待选文本为上述三个文本。而因为该三个文本中前两个文本中包含了当前待确定权重值的词语,所以选取的目标文本为前两个文本。步骤c:根据待选文本的数目以及目标文本的数目,确定第一数值。此处,可以将第一数值表示为df。在一种实现方式中,df可以根据目标文本的个数与待选文本的个数的比值来确定。如前述例子,目标文本的个数为:2,待选文本的个数为3,也即df=2/3。需要说明的是,df值越大,则词语在对应的类别中越分散,反之越不分散。步骤d:从文本集中筛选包含词语的至少一个临时文本。如前述例子,因为表1中,前两个文本中包含了当前待确定权重值的词语,所以筛选的临时文本即为表1中的前两个文本。需要说明的是,此处并不要求临时文本与词语的类别相一致,只需临时文本中包含词语即可。步骤e:根据临时文本的类别的数目以及文本集中各个文本的类别的数目,确定第二数值。此处,可以将第二数值表示为cf。在一种实现方式中,cf可以根据临时文本的类别的数目与各个文本的类别的数目的比值来确定。如前述例子,因为表1中前两个文本的类别均为:“互联网”,因此,临时文本的类别的数目为1。假设表1中总共包括n个文本,且剩下的n-3个文本的类别的数目为m,则cf可以为:1/1+m。此处,cf越小,则词语在文本集中越集中,反之越不集中。步骤f:确定词语在所对应文本中的位置信息。在文本为地址文本时,因为地址文本的特点是:重要的词语往往会最后出现,因此,上述位置信息可以是指词语在所对应文本中从后往前的位置信息。以表1为例来说,假设词语为:“技术”,其所对应的文本为“支付宝信息技术有限公司”,也即该词语在所对应文本中从后往前的位置信息为:3。步骤g:根据位置信息以及所对应文本中词语的个数,确定第三数值。如前述例子,词语:“技术”所对应文本:“支付宝信息技术有限公司”中词语的个数为:5。在一种实现方式中,可以根据公式1确定第三数值:其中,p_index为第三数值,p为位置信息,d为所对应文本,length(d)为所对应文本中词语的个数。则前述例子中,p_index=1-3/5*5。需要说明的是,本申请在确定词语的权重值时,同时考虑该词语在文本中的位置信息,可以避免现有技术中当文本中同时包括多个类别的词语时,不能准确地对文本进行分类的问题。举例来说,假设文本为:“民政局南50米xx医院”,该文本中的词语“民政局”与表示政府机构的类别特征词相匹配,而“医院”与表示医院的类别特征词相匹配,当不考虑词语的位置信息,则该文本可能会被分类为“政府机构”而非“医院”。步骤h:根据第一数值、第二数值以及第三数值,确定词语的权重值。在一种实现方式中,可以根据公式2确定词语的权重值:其中,w为词语的权重值,df为第一数值,cf为第二数值,p_index为第三数值,w1以及w2为预设的权重值。在一个例子中,可以通过主成分分析(principalcomponentanalysis,pca)算法来确定w1以及w2的值。需要说明的是,根据上述步骤b-步骤h就可以确定过滤后的词语集合中每个词语的权重值,也即可以确定词语d1,d2,…,dn-2的权重值。步骤180,根据滤后的词语集合中的词语以及对应的权重值,对预设的文本分类模型进行优化。在确定词语d1,d2,…,dn-2的权重值之后,就可以根据词语d1,d2,…,dn-2以及对应的权重值,对预设的文本分类模型进行优化。具体地,将词语d1,d2,…,dn-2以及对应的权重值输入朴素贝叶斯模型,knn模型或者最大熵模型等文本分类模型,输出分类结果。之后根据分类结果,来对上述文本分类模型的模型参数进行优化,从而可以获得优化后的模型参数。根据优化后的模型参数,就可以建立优化后的文本分类模型。需要说明的是,上述对文本分类模型优化的过程也可以如图2所示,即,首先获取文本集,将文本集进行预处理之后,得到词语集合d1。之后可以根据预设的特征词集合t1对d1中的词语进行预分类,也即确定d1中的词语的类别。根据d1中的词语的类别,对t1进行扩充得到t2。对t2中的类别特征词进行过滤,得到第二特征词集合t3。根据t3对d1中的词语进行过滤,得到d2。最后,确定d2中各个词语的权重值,并根据各个词语以及词语的权重值对预设的文本分类模型进行优化。在对预设的文本分类模型优化之后,就可以根据优化的文本分类模型来对待分类的文本进行分类。图3为本申请提供的文本分类方法流程图,如图3所示,该方法具体可以包括:步骤310,获取待分类文本。此处待分类文本可以包括用户的收货地址。步骤320,对获取的待分类文本进行预处理,获得该待分类文本对应的词语集合。此处的预处理过程与上述步骤120中的预处理类似,在此不复赘述。步骤330,将词语集合中的词语与第二特征词集合中的各个特征词进行匹配。此处的第二特征词集合即为对上述预设的特征词集合中的特征词进行扩充并过滤之后获得的。步骤340,根据匹配结果,确定词语集合中的词语的类别。步骤350,根据文本集以及词语的类别,确定词语集合中的词语的权重值。如,可以通过步骤b-步骤h,来确定词语集合中词语的权重值。步骤360,将词语集合中的词语以及对应的权重值输入优化后的文本分类模型。步骤370,输出待分类文本的类别。此处的类别可以是指用户的行业类型,包括:“互联网”、“律师”、“记者”、“监管机构”、“政府机关”以及“明星”等。可以理解的是,当对用户的多个常用收货地址分类之后,可以进一步根据该多个常用收获地址的类别,确定用户的行业类型。具体地,当该多个收货地址的类别相同时,用户的行业类型即为该多个收货地址对应的类别;当该多个收货地址的类别不同时,则可以根据预设的优先级规则,确定用户的行业类型。在确定用户的不同行业类型之后,就可以对一些目标行业类型(如,“明星”等)的用户进行监控了。与上述文本分类模型的优化方法对应地,本申请实施例还提供的一种文本分类模型的优化装置,如图4所示,包括:获取单元401,用于获取文本集,该文本集包括至少一个文本。预处理单元402,用于对获取单元401获取的文本集中的各个文本进行预处理,得到各个文本对应的词语集合。匹配单元403,用于将词语集合中的词语与预设的特征词集合中的各个类别特征词进行匹配。确定单元404,用于根据匹配单元403的匹配结果,确定词语集合中的词语的类别。扩充单元405,用于根据确定单元404确定的词语的类别,对预设的特征词集合进行扩充。过滤单元406,用于根据扩充单元405扩充后的预设的特征词集合,对词语集合中的词语进行过滤。确定单元404,还用于根据文本集以及词语的类别,确定过滤后的词语集合中的词语的权重值。优化单元407,用于根据确定单元404确定的过滤后的词语集合中的词语以及对应的权重值,对预设的文本分类模型进行优化。可选地,该装置还可以包括:计算单元408,用于根据预设的信息熵计算方法,计算扩充后的预设的特征词集合中的各个类别特征词的信息熵。过滤单元406,还用于根据计算单元408计算的各个类别特征词的信息熵,对扩充后的预设的特征词集合中的类别特征词进行过滤,得到第二特征词集合。过滤单元406具体用于:根据第二特征词集合,对词语集合中的词语进行过滤。可选地,确定单元404具体用于:根据词语的类别,确定文本集中各个文本的类别。从文本集中筛选至少一个待选文本,其中,待选文本的类别与词语的类别相一致;并从至少一个待选文本中选取包含词语的目标文本。根据待选文本的数目以及目标文本的数目,确定第一数值。从文本集中筛选包含词语的至少一个临时文本。根据临时文本的类别的数目以及文本集中各个文本的类别的数目,确定第二数值。确定词语在所对应文本中的位置信息。根据位置信息以及所对应文本中词语的个数,确定第三数值。根据第一数值、第二数值以及第三数值,确定词语的权重值。可选地,确定单元404还具体用于:根据如下公式确定第三数值:其中,p_index为第三数值,p为位置信息,d为所对应文本,length(d)为所对应文本中词语的个数。可选地,确定单元404还具体用于:根据如下公式确定词语的权重值:其中,w为词语的权重值,df为第一数值,cf为第二数值,p_index为第三数值,w1以及w2为预设的权重值。本申请实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本申请提供的装置的具体工作过程,在此不复赘述。本申请提供的文本分类模型的优化装置,获取单元401获取文本集。预处理单元402对文本集中的各个文本进行预处理,得到各个文本对应的词语集合。匹配单元403将词语集合中的词语与预设的特征词集合中的各个类别特征词进行匹配。确定单元404根据匹配结果,确定词语集合中的词语的类别。扩充单元405根据词语的类别,对预设的特征词集合进行扩充。过滤单元406根据扩充后的预设的特征词集合,对词语集合中的词语进行过滤。确定单元404根据文本集以及词语的类别,确定过滤后的词语集合中的词语的权重值。优化单元407根据过滤后的词语集合中的词语以及对应的权重值,对预设的文本分类模型进行优化。由此,可以获得对文本进行准确分类的文本分类模型。本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1