一种产业自动分类方法及系统
技术领域
本发明涉及文献分析的技术领域,特别是一种产业自动分类方法及系统。
背景技术
科学技术的飞速发展带来专利文本的激增和新行业的不断涌现。为了分析行业背景下的技术发展,需要给专利打上行业标签。人工标注的方法速度慢、成本高,但准确率高。因此需要一种标注量较小、计算效率较高、更充分挖掘标注信息的自动分类方法。
现有方法要么需要较大量的人工标注,要么完全不用人工标注从而不能直接建立起与目标行业的对应关系。现有方法一般使用专利文本进行自然语言处理,计算量大且遗漏了ipc维度的重要信息。现有方法使用的自然语言处理方法一般从单个词的角度进行挖掘,丢失了词序关系方面的信息。现有方法使用的自然语言处理方法一般对标题、摘要、权利要求和说明书中的一种或几种进行挖掘,但没有使用摘要、权利要求和说明书生成的层次化向量,遗漏了专利文本蕴含的深入信息。
公开号为CN105808524A的发明专利公开了一种基于专利文献摘要的专利自动分类方法,该方法包括词典构建、IPC各层次类别特征向量的生成、专利文本特征选择、专利文本的向量化、基于SVM的分类模型构建、待分类专利的分类。该方法的缺点是使用的自然语言处理方法丢失了词序关系方面的信息,没有使用摘要、权利要求和说明书生成的层次化向量,遗漏了专利文本蕴含的深入信息。
发明内容
为了解决上述的技术问题,本发明提出的产业自动分类方法及系统,使用了直推学习的方法,以实现对小标注量信息的充分挖掘;使用了IPC的信息,丰富了信息维度、降低了计算量;使用了摘要、权利要求和说明书生成的层次化向量,保留了词序关系方面的信息,对专利文本进行了更为深入地挖掘。
本发明的第一目的是提供了一种产业自动分类方法,包包括确定目标专利范围,还包括以下步骤:
步骤1:定义目标行业树;
步骤2:在所述目标行业树上生成标记;
步骤3:使用所述标记进行目标专利粗分类;
步骤4:根据所述粗分类结果目标专利细分类。
优选的是,所述步骤1包括根据需要定义行业树:I={i1,…,ij,…,in},其中,ij∈I为一级行业,j为一级行业编号,1≤j≤n,n为I下所有叶节点的个数。
在上述任一方案中优选的是,所述步骤1还包括设定I的任一非叶节点ijkl…={ijkl…1,…,ijkl…t},叶节点外的其它节点的度≥2,其中,k为二级行业编号,l为三级行业编号,t为倒数第二级行业编号。
在上述任一方案中优选的是,所述确定目标专利范围步骤为根据需要人工确定待划分的专利范围。
在上述任一方案中优选的是,所述步骤2包括根据资源约束确定能够标记的专利数量p,p≥N,行业树内每个叶节点至少标记一个属于该节点的专利,其中,N为最末一级行业个数。
在上述任一方案中优选的是,所述步骤3为确定所述叶节点之上的节点。
在上述任一方案中优选的是,所述步骤3包括以下子步骤:
步骤31:生成图的节点集V;
步骤32:整理标记;
步骤33:生成图的边集E;
步骤34:生成邻接矩阵;
步骤35:进行节点划分。
在上述任一方案中优选的是,所述步骤31包括定义每个目标专利的IPC分类号为一个IPC组合IPCv={ipc1,…,iqcq},目标专利的所有不同的IPC组合构成节点集V。
在上述任一方案中优选的是,所述步骤32包括取已标记专利对应的叶节点之上的行业作为对应节点的分类
设已标记节点l个,调整节点顺序,将已标记节点都调整到前面,则1≤i≤l。
在上述任一方案中优选的是,所述步骤32还包括验证是否满足l<<未标记节点数量u,不满足则调整标记专利,满足则V={IPC1,…,IPCl,IPCl+1…,IPCl+u}。
在上述任一方案中优选的是,所述边集E为矩阵,两个顶点间的边的权重eij为每两个顶点的ipc的并集IPCi∪IPCj的专利个数,其中,eij为矩阵E中的数值。
一方案中优选的是,所述步骤34包括以下子步骤:
步骤341:生成距离矩阵S;
步骤342:利用所述距离矩阵S生成邻接矩阵W。
在上述任一方案中优选的是,所述距离矩阵S的计算公式为sij=||ei-ej||2,其中,ei和ej分别为边集E的第i行和第j行。
上述任一方案中优选的是,所述步骤35包括以下子步骤:
步骤351:生成度矩阵,D=diag(d
1,d
2,…,d
l+u),其对角元素
其中,u为未标注节点的数量,W
ij为邻接矩阵W中的元素;
步骤352:生成标记矩阵,
的非负标记矩阵
其第i行元素
为节点集中IPC
i的标记向量,分类规则为
其中,
为行业组成的集合,T代表矩阵的转置;
步骤353:初始化所述标记矩阵F,对i=1,2,…,m和
步骤355:生成迭代计算式,F(t+1)=αBF(t)+(1-α)Y,其中α∈(0,1)为参数,F(t)为第t次的迭代结果,Y为初始矩阵;
步骤356:迭代所述计算式至收敛,得到收敛时的状态F*=limt→∞F(t)=(1-α)(M-αB)-1Y,其中,M为单位矩阵;
步骤357:进行未标记节点的预测
其中,l+1≤i≤l+u。
在上述任一方案中优选的是,所述步骤4包括以下子步骤:
步骤41:设定分类对象;
步骤42:提取专利文本信息;
步骤43:生成待训练文本集;
步骤44:进行文本向量化;
步骤45:进行专利划分;
步骤46:在所述步骤45的划分出的任何叶节点内识别不属于树中任何叶节点行业的专利。
在上述任一方案中优选的是,所述步骤41包括将所述步骤3分出的每一类别的专利节点视为一组,即标记为
的节点对应的专利为一组,共
组。
在上述任一方案中优选的是,所述步骤42包括每组内提取每件专利的摘要、权利要求和说明书,用现有工具对专利文本信息进行分词,生成文本集G={g1,…,gn},其中gi=(pi1,pi2,pi3),pi1、pi2、pi3分别为第i件专利的摘要、权利要求和说明书分分词所得序列。
在上述任一方案中优选的是,所述待训练文本集包括文本集G、G1={p11,…,pn1}、G2={p12,…,pn2}和G3={p13,…,pn3},分别由组内专利的全部文本、摘要、权利要求、说明书内的分词结果构成。
在上述任一方案中优选的是,所述步骤44包括以下子步骤:
步骤441:向量化所述待训练文本集内的文本;
步骤442:生成文本矩阵。
在上述任一方案中优选的是,所述步骤441包括在每个待训练文本集内,任一元素P=(t1,…,tm)为一个m元分词序列,ti∈P由其前后的w个词ti,context={ti-w,…,ti-2,ti-1,ti+1,ti+2,…,ti+w}决定,通过最大化
其中,pid为t
i在p中的段落序号,
U和b为softmax的参数,通过随机梯度下降训练训练数据,得到P对应的向量。
在上述任一方案中优选的是,所述步骤442包括设G={d1,…,dn}、G1={p11,…,pn1}、G2={p12,…,pn2}、G3={p13,…,pn3}向量化的结果分别为H1={h11,…,hn1}、H2={h12,…,hn2}、H3={h13,…,hn3}、H4={h14,…,hn4},则生成的目标专利文本的矩阵集为H={h1,…,hn},其中hi=(hi1,hj2,hi3,hi4)。
在上述任一方案中优选的是,所述步骤45包括设标记专利为
其中
为隶属于第j个行业树叶节点的标记专利,用标记专利初始化k均值算法的j个聚类中心,并且在聚类簇迭代更新过程中不改变标记专利的簇隶属关系。
在上述任一方案中优选的是,所述步骤46包括以下子步骤:
步骤461:计算专利p的k距离,设专利p的第k距离为k-distance(o),在划分到行业树某个叶节点专利中,存在专利o,它与专利p之间的距离为d(p,o);
步骤462:计算专利p的第k距离领域:与专利p之间距离≤k-distance(o)的专利集合称为专利p的第k距离领域Nk(p);
步骤463:计算专利p相对于专利o的可达距离reachdist(p,o)=max{k-distance(o),‖p-o‖};
步骤466:当LOF(p)大于阈值,则判断p为离群点,不属于该叶节点。
在上述任一方案中优选的是,当满足以下两个条件,则k-distance(o)=d(p,o):
①在该叶节点中,至少存在k个专利q,使得d(p,q)≤d(p,o);
②在该叶节点中,至多存在k-1个专利q,使得d(p,q)<d(p,o)。
本发明的第二目的是提供了一种产业自动分类系统,包括用于确定目标专利范围的确认模块,还包括以下模块:
行业树生成模块:用于定义目标行业树;
标记生成模块:用于在所述目标行业树上生成标记;
粗分类模块:用于使用所述标记进行目标专利粗分类;
细分类模块:用于根据所述粗分类结果目标专利细分类;
所述系统通过执行如第一目的所述的方法对产业进行自动分类。
本发明提出了一种产业自动分类方法及系统,在降低标注量的同时,提高计算效率和分类准确率。
附图说明
图1为按照本发明的产业自动分类方法的一优选实施例的流程图。
图1A为按照本发明的产业自动分类方法的如图1所示实施例的目标专利粗分类方法流程图。
图1B为按照本发明的产业自动分类方法的如图1所示实施例的邻接矩阵的生成方法流程图。
图1C为按照本发明的产业自动分类方法的如图1所示实施例的节点划分方法流程图。
图1D为按照本发明的产业自动分类方法的如图1所示实施例的目标专利细分类方法流程图。
图1E为按照本发明的产业自动分类方法的如图1所示实施例的文本向量化方法流程图。
图1F为按照本发明的产业自动分类方法的如图1所示实施例的专利划分方法流程图。
图2为按照本发明的产业自动分类系统的一优选实施例的模块图。
具体实施方式
下面结合附图和具体的实施例对本发明做进一步的阐述。
实施例一
如图1、2所示,执行步骤1000,使用行业树生成模块200定义目标行业树,根据需要人工确定待划分的专利范围。
执行步骤1100,使用确认模块210确定目标专利范围。根据需要定义行业树:I={i1,…,ij,…,in},其中,ij∈I为一级行业j为一级行业编号,1≤j≤n,n为I下所有叶节点的个数。设定I的任一非叶节点ijkl…={ijkl…1,…,ijkl…t},叶节点外的其它节点的度≥2,其中,k为二级行业编号,l为三级行业编号,t为倒数第二级行业编号。
执行步骤1200,使用标记生成模块220在所述目标行业树上生成标记,根据资源约束确定能够标记的专利数量p,p≥N,行业树内每个叶节点至少标记一个属于该节点的专利,其中,N为最末一级行业个数。
执行步骤1300,使用粗分类模块230使用标记进行目标专利粗分类,确定所述叶节点之上的节点。如图1A所示,执行步骤1310,生成图的节点集V。定义每个目标专利的IPC分类号为一个IPC组合IPCv={ipc1,…,ipcq},目标专利的所有不同的IPC组合构成节点集V。
执行步骤1320,整理标记。取已标记专利对应的叶节点之上的行业作为对应节点的分类
设已标记节点l个,调整节点顺序,将已标记节点都调整到前面,则1≤i≤l。验证是否满足l<<未标记节点数量u,不满足则调整标记专利,满足则V={IPC
1,…,IPC
l,IPCl+1…,IPCl+u}。
执行步骤1330,生成图的边集E。边集E为矩阵,两个顶点间的边的权重eij为每两个顶点的ipc的并集IPCi∪IPCj的专利个数,其中,eij为矩阵E中的数值。
执行步骤1340,生成邻接矩阵。如图1B所示,执行步骤1341,生成距离矩阵S,距离矩阵S的计算公式为sij=||ei-ej||2,其中,ei和ej分别为边集E的第i行和第j行。
执行步骤1342,利用所述距离矩阵S生成邻接矩阵W。
执行步骤1350,进行节点划分。如图1C所示,执行步骤1351,生成度矩阵,D=diag(d
1,d
2,…,d
l+u),其对角元素
其中,u为未标注节点的数量,W
ij为邻接矩阵。
执行步骤1352,生成标记矩阵,
的非负标记矩阵
其第i行元素
为节点集中IPC
i的标记向量,分类规则为
其中,
为行业组成的集合,T代表矩阵的转置。
执行步骤1353,初始化所述标记矩阵F,对i=1,2,…,m和
执行步骤1354,构造传播矩阵
其中,
d为度矩阵D的对角元素。
执行步骤1355,成迭代计算式,F(t+1)=αBF(t)+(1-α)Y,其中α∈(0,1)为参数,F(t)为第t次的迭代结果,Y为初始矩阵。
执行步骤1356,迭代所述计算式至收敛,得到收敛时的状态F*=limt→∞F(t)=(1-α)(M-αB)-1Y,其中,M为单位矩阵。
执行步骤1357,进行未标记节点的预测
其中,l+1≤i≤l+u。
执行步骤1400,使用细分类模块240根据所述粗分类结果进行目标专利细分类。如图1D所示,执行步骤1410,设定分类对象。将所述步骤1300分出的每一类别的专利节点视为一组,即标记为
的节点对应的专利为一组,共
组。
执行步骤1420,提取专利文本信息。每组内提取每件专利的摘要、权利要求和说明书,用现有工具对专利文本信息进行分词,生成文本集G={g1,…,gn},其中gi=(pi1,pi2,pi3),pi1、pi2、pi3分别为第i件专利的摘要、权利要求和说明书分分词所得序列。
执行步骤1430,生成待训练文本集。待训练文本集包括文本集G、G1={p11,…,pn1}、G2={p12,…,pn2}和G3={p13,…,pn3},分别由组内专利的全部文本、摘要、权利要求、说明书内的分词结果构成。
执行步骤1440,进行文本向量化。如图1E所示,执行步骤1441,向量化所述待训练文本集内的文本。在每个待训练文本集内,任一元素P=(t1,…,tm)为一个m元分词序列,ti∈P由其前后的w个词ti,context={ti-w,…,ti-2,ti-1,ti+1,ti+2,…,ti+w}决定,通过最大化
U和b为softmax的参数,通过随机梯度下降训练训练数据,得到P对应的向量,其中,Φ为映射运算。
执行步骤1442,生成文本矩阵。设G={d1,…,dn}、G1={p11,…,pn1}、G2={p12,…,pn2}、G3={p13,…,pn3}向量化的结果分别为H1={h11,…,hn1}、H2={h12,…,hn2}、H3={h13,…,hn3}、H4={h14,…,hn4},则生成的目标专利文本的矩阵集为H={h1,…,hn},其中hi=(hi1,hi2,hi3,hi4)。
执行步骤1450,进行专利划分。设标记专利为
其中
为隶属于第j个行业树叶节点的标记专利,用标记专利初始化k均值算法的j个聚类中心,并且在聚类簇迭代更新过程中不改变标记专利的簇隶属关系。
执行步骤1460,在所述步骤45的划分出的任何叶节点内识别不属于树中任何叶节点行业的专利。如图1F所示,执行步骤1461,计算专利p的k距离,设专利p的第k距离为k-distance(o),在划分到行业树某个叶节点专利中,存在专利o,它与专利p之间的距离为d(p,o)。
执行步骤1462,计算专利p的第k距离领域:与专利p之间距离≤k-distance(o)的专利集合称为专利p的第k距离领域Nk(p)。
执行步骤1463,计算专利p相对于专利o的可达距离reachdist(p,o)=max{k-distance(o),‖p-o‖}。当满足以下两个条件,则k-distance(o)=d(p,o):①在该叶节点中,至少存在k个专利q,使得d(p,q)≤d(p,o);②在该叶节点中,至多存在k-1个专利q,使得d(p,q)<d(p,o)。
执行步骤1466,当LOF(p)大于阈值,则判断p为离群点,不属于该叶节点。
实施例二
一种产业自动分类的方法,包括以下步骤:
1、定义目标行业树。根据需要定义行业树:I={i1,…,in},其中ij∈I为一级行业,可以继续分为二级行业,ij={ij1,…,ijm},以此类推,I的任一非叶节点ijkl…={ijkl…1,…,ijkl…t}。根据行业划分的一般做法,叶节点外的其它节点的度≥2。设N为I下所有叶节点的个数。
2、确定目标专利范围。根据需要人工确定待划分的专利范围,比如在某个国家申请或在某些年份申请。
3、生成标记。根据资源约束确定能够标记的专利数量p,p≥N,行业树内每个叶节点至少标记一个属于该节点的专利。
4、目标专利粗分类——确定所述叶节点之上的节点。
(1)生成图的节点集V:定义每个目标专利的ipc(可能为多个)为一个ipc组合IPCv={ipc1,…,ipcq},目标专利的所有不同的ipc组合构成节点集V,
(2)整理标记:取已标记专利对应的叶节点之上的行业作为对应节点的分类
设已标记节点l个,调整节点顺序,将已标记节点都调整到前面,则1≤i≤l,验证是否满足l《未标记节点数量u,否则调整标记专利,直至满足。则V={IPC
1,…,IPC
l,IPC
l+1…,IPC
l+u};
(3)生成图的边集E:E可以表示为矩阵,每两个顶点的ipc的并集为IPCi∪IPCj,则这两个顶点间的边的权重,即eij=目标专利中ipc为IPCi∪IPCj的专利个数。
(4)生成邻接矩阵:
(4.1)生成距离矩阵S,sij=||ei-ej||2,如使用欧式距离;
(4.2)利用距离矩阵S生成邻接矩阵W,如使用高斯核函数的全连接法。
(5)节点划分
(5.1)生成度矩阵:
D=diag(d
1,d
2,…,d
l+u),其对角元素
(5.2)生成标记矩阵:
的非负标记矩阵
其第i行元素
为节点集中IPC
i的标记向量,分类规则为
(5.3)F初始化:
(5.5)生成迭代计算式F(t+1)=αBF(t)+(1-α)Y,其中α∈(0,1)为参数
(5.6)迭代(9)中计算式至收敛,得
(5.7)未标记节点的类别预测
其中l+1≤i≤l+u
5、目标专利细分类——确定所述叶节点
(1)分类对象:每组专利,步骤4分出的每一个类别的节点对应的专利视为一组,即标记为
的节点对应的专利为一组,共
组。
(2)专利文本信息提取:每组内提取每件专利的摘要、权利要求和说明书(以下简称“全部文本”),用现有工具对专利文本信息进行分词,生成文本集G={d1,…,dn},其中di=(pi1,pi2,pi3),pi1,pi2,pi3分别为第i件专利的摘要、权利要求、说明书分分词所得序列。
(3)由此可生成4个待训练文本集:G、G1={p11,…,pn1}、G2={p12,…,pn2}、G3={p13,…,pn3},分别由组内专利的全部文本、摘要、权利要求、说明书内的分词结果构成。
(4)文本向量化:
(4.1)4个训练集内文本向量化:在每个待训练文本集内,任一元素P=(t1,…,tm)为一个m元分词序列,ti∈P由其前后的w个词ti,context={ti-w,…,ti-2,ti-1,ti+1,ti+2,…,ti+w}决定,通过最大化
其中,pid为t
i在p中的段落序号,又
又
U和b为softmax的参数,通过随机梯度下降训练训练数据,得到P对应的向量。
(4.2)生成文本矩阵:设G={d1,…,dn}、G1={p11,…,pn1}、G2={p12,…,pn2}、G3={p13,…,pn3}向量化的结果分别为H1={h11,…,hn1}、H2={h12,…,hn2}、H3={h13,…,hn3}、H4={h14,…,hn4},则生成的目标专利文本的矩阵集为H={h1,…,hn},其中hi=(hi1,hi2,hi3,hi4)。
(5)专利划分:设标记专利为
其中
为隶属于第j个行业树叶节点的标记专利,用标记专利初始化k均值算法的j个聚类中心,并且在聚类簇迭代更新过程中不改变标记专利的簇隶属关系。
(6)识别不属于树中任何叶节点行业的专利,在(5)划分出的任何叶节点内
(6.1)专利p的k距离:
对于正整数k,设专利p的第k距离为k-distance(o),在划分到行业树某个叶节点专利中,存在专利o,它与专利p之间的距离为d(p,o);。如果满足以下两个条件,则k-distance(o)=d(p,o):
①在该叶节点中,至少存在k个专利q,使得d(p,q)≤d(p,o);
②在该叶节点中,至多存在k-1个专利q,使得d(p,q)<d(p,o)。
(6.2)专利p的第k距离领域:
与专利p之间距离≤k-distance(p)的专利集合称为专利p的第k距离领域,记作:Nk(p);
(6.3)专利p相对于专利o的可达距离:reachdsit(p,o)=max{k-distance(o),‖p-o‖};
(6.6)LOF(p)大于阈值,则判断p为离群点,不属于该叶节点。
为了更好地理解本发明,以上结合本发明的具体实施例做了详细描述,但并非是对本发明的限制。凡是依据本发明的技术实质对以上实施例所做的任何简单修改,均仍属于本发明技术方案的范围。本说明书中每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。