CN111767733A - 一种基于统计分词的文献密级甄别方法 - Google Patents
一种基于统计分词的文献密级甄别方法 Download PDFInfo
- Publication number
- CN111767733A CN111767733A CN202010530243.1A CN202010530243A CN111767733A CN 111767733 A CN111767733 A CN 111767733A CN 202010530243 A CN202010530243 A CN 202010530243A CN 111767733 A CN111767733 A CN 111767733A
- Authority
- CN
- China
- Prior art keywords
- word
- segmentation
- document
- result
- name
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种基于统计分词的文献密级甄别方法,属于信息安全技术领域,包括:对电子文件中的文字内容进行提取,得到对应的文档内容;将文档内容与预先构建的敏感信息库中的敏感信息进行语义相似度计算;根据语义相似度计算电子文件的内容涉密程度,得到电子文件的密级判定结果。本发明通过提取电子文件的内容,并与敏感信息库中的敏感信息进行比对,找到文档中的疑似涉密信息,对电子文件是否涉密进行判定,以辅助人工对电子文件进行密级甄别,便于对文献实施分类管理。
Description
技术领域
本发明涉及信息安全技术领域,特别涉及一种文献密级甄别方法。
背景技术
随着办公信息化的快速发展,数据安全问题日益严重,用户一般直接在自己的计算机中进行办公,计算机不但可能受到外部网络的攻击,还会遭到内部人员无意或故意的泄密。相关人员通过对失泄密事故案件的统计分析,发现80%以上的失泄密事故案件都是和电子文档有关的。因此,对计算机中电子文件进行密级甄别,并实施分类管理就显得尤为重要。
发明内容
本发明的目的在于提供一种电子文档的密级甄别方法,提高文献密级甄别的准确率和效率。
为实现以上目的,本发明采用一种基于统计分词的文献密级甄别方法,包括如下步骤:
对电子文件中的文字内容进行提取,得到对应的文档内容;
将文档内容与预先构建的敏感信息库中的敏感信息进行语义相似度计算;
根据语义相似度计算电子文件的内容涉密程度,得到电子文件的密级判定结果。
进一步地,所述对电子文件中的文字内容进行提取,得到对应的文档内容,包括:
利用ANSI码和Unicode码读取所述电子文件的中英文内容;
设置四个缓冲区保存读取的ANSI码和Unicode码内容,其中Unicode和ANSI各用两个字符串缓冲区,两个字符串缓冲区分别存储所述电子文件的英文内容和中文内容;
向Unicode对应的缓冲区最后一个元素读入两个字节,将读到的两个字节的低位传递到ANSI对应的缓冲区,高位若为0则不处理,否则,将ANSI缓冲区左移后进行赋值;
将文档中指定长度内容分别读取到缓冲区,如果Unicode对应的缓冲区不为空,将其内容添加到结果文本。
所述第一缓冲区和第二缓冲区每次读取相应内容的两个字节,并对字节高位为0的内容进行读取和保存。
进一步地,在所述对电子文件中的文字内容进行提取,得到对应的文档内容之后,还包括:
采用多层隐马模型对所述文档内容进行预处理,得到所述文档内容对应的词法分析结果;
相应地,所述将文档内容与预先构建的敏感信息库中的敏感信息进行语义相似度计算,具体为:
将词法分析结果与预先构建的敏感信息库中的敏感信息进行语义相似度计算。
进一步地,所述采用多层隐马模型对所述文档内容进行预处理,得到所述文档内容对应的分词结果,包括:
对输入的原始字符串进行预处理,得到初步分词的二元切分词图;
利用多层隐马模型对原始字符串进行未登录词识别,以对初步分词的二元切分词图进行修正,得到修正后的二元切分词图;
利用基于词分类的隐马模型对修正后的二元切分词图进行处理,得到所述原始字符串对应的分词结果。
进一步地,所述对输入的原始字符串进行预处理,得到初步分词的二元切分词图,包括:
对所述原始字符串进行原子切分,得到所述原始字符串对应的原子分词序列;
采取N-GRAM方法对原子分词序列进行处理,得到能覆盖歧义的最佳N个分词结果;
由N个分词结果中最大概率的分词结果形成所述初步分词的二元切分词图。
进一步地,所述未登录词包括未登录词中的人名、地名、机构名和专用词,所述多层隐马模型包括人名识别隐马模型、地名识别隐马模型以及机构名和专用词识别隐马模型;
所述利用多层隐马模型对原始字符串进行未登录词识别,以对初步分词的二元切分词图进行修正,得到修正后的二元切分词图,包括:
利用所述人名识别隐马模型对所述能覆盖歧义的最佳N个分词结果进行人名识别,得到人名识别结果,并利用人名识别结果对所述初步分词的二元切分词图进行人名修正,得到人名修正后的二元切分词图;
利用所述地名识别隐马模型对人名识别结果进行地名识别,得到地名识别结果,并利用地名识别结果对人名修正后的二元切分词图进行修正,得到地名修正后的二元切分词图;
利用所述机构名和专用词识别隐马模型对地名识别结果进行识别,得到机构名及专用词识别结果,并利用机构名及专用词识别结果对所述地名修正后的二元切分词图进行修正,得到所述修正后的二元切分词图。
进一步地,所述利用基于词分类的隐马模型对修正后的二元切分词图进行处理,得到所述原始字符串对应的分词序列,包括:
对所述修正后的二元切分词图中的词进行分类,得到每个词对应的词类;
利用基于词分类的隐马模型对每个词对应的词类进行处理,得到所述原始字符串对应的分词序列,其中基于词分类的隐马模型为:
其中,W#表示分词序列,词wi作为观察值,词wi对应的词类ci作为状态值,W为观察序列,表示n词数量。
进一步地,所述分词结果由动词和名词构成,所述将分词结果与预先构建的敏感信息库中的敏感信息进行语义相似度计算,包括:
结合所述分词结果中的单词在局部和全局的上下文信息,学习单词在语境中的词义表示;
基于组合语义模型进行词义的组合,形成所述单词对应的整个文本的句意表示;
基于向量空间模型计算所述单词对应的整个文本的句意表示与敏感信息之间的相似度。
进一步地,所述结合所述分词结果中的单词在局部和全局的上下文信息,学习单词在语境中的词义表示,包括:
根据所述单词在所处的词序列计算该单词的局部上下文特征向量;
将每个语句作为语句序列中的一个元素,计算该单词的全局上下文特征向量;
利用该单词的局部上下文特征向量和该单词的全局上下文特征向量,得到该单词在语境中的词义表示。
进一步地,所述基于组合语义模型进行词义的组合,形成所述单词对应的整个文本的句意表示,包括:
基于组合语义模型将句子分析成一棵依存句法树,并使用句法分析工具进行句法分析;
将分析结果按照分析器定义的依存关系次序进行变换得到整个句子的组合关系树状层级图;
从叶子节点开始,按照树所表示的节点层次关系,从底层叶子节点开始逐层向上进行有序的组合,得到所述单词对应的整个文本的句意表示。
进一步地,所述使用余弦距离计算所述单词对应的整个文本的句意表示与敏感信息之间的相似度,具体为:
利用相似度计算公式计算所述单词对应的整个文本的句意表示与敏感信息之间的相似度sim(D1,D2),公式如下:
其中,score1k表示文本D1的各个维度的特征向量,score2k表示文本D2的各个维度的特征向量,k表示单个向量维度,n表示向量维度,D1,D2分别表示需要比较的两个文本。
进一步地,所述根据语义相似度计算电子文件的内容涉密程度,得到电子文件的密级判定结果,包括:
将所述相似度sim(D1,D2)与相似度阈值λ进行比较;
当λ≤sim(D1,D2)时,表示两个语句相似;
当λ>sim(D1,D2)时,表示两个语句不相似;
对于与敏感信息相似的语句进行密级甄别,得到电子文件的密级判定结果。
与现有技术相比,本发明存在以下技术效果:本发明通过提取电子文件的内容,并与敏感信息库中的信息库进行比对,找到文档中的疑似涉密信息,对电子文件是否涉密进行判定,以辅助人工对电子文件进行密级甄别,以便于对文献实施分类管理。
附图说明
下面结合附图,对本发明的具体实施方式进行详细描述:
图1是一种基于统计分词的文献密级甄别方法的流程示意图;
图2是多层隐马模型的工作流程图;
图3是短文本“教学科研”的N-gram模型切分路径示意图;
图4是初步分词的二元切分词图;
图5是人名修正后的二元切分词图;
图6是修正后的二元切分词图;
图7是“如何增加提现额度”得到的句子依存树;
图8是组合关系树状层级图示例。
具体实施方式
为了更进一步说明本发明的特征,请参阅以下有关本发明的详细说明与附图。所附图仅供参考与说明之用,并非用来对本发明的保护范围加以限制。
如图1所示,本实施例公开了一种基于统计分词的文献密级甄别方法,包括如下步骤S1至S3:
S1、对电子文件中的文字内容进行提取,得到对应的文档内容;
S2、将文档内容与预先构建的敏感信息库中的敏感信息进行语义相似度计算;
S3、根据语义相似度计算电子文件的内容涉密程度,得到电子文件的密级判定结果。
具体来说,上述步骤S1:对电子文件中的文字内容进行提取,得到对应的文档内容,具体包括如下细分步骤S11至S14:
S11、利用ASCII码和Unicode码分别读取所述电子文件的英文内容和中文内容;
S12、设置四个缓冲区保存读取的ANSI码和Unicode码内容,其中Unicode和ANSI各用两个字符串缓冲区,两个字符串缓冲区分别存储所述电子文件的英文内容和中文内容;
S13、向Unicode对应的缓冲区最后一个元素读入两个字节,将读到的两个字节的低位传递到ANSI对应的缓冲区,高位若为0则不处理,否则,将ANSI缓冲区左移后进行赋值;
S14、将文档中指定长度内容分别读取到缓冲区,如果Unicode对应的缓冲区不为空,将其内容添加到结果文本。
需要说明的是,本方案中在电子文件的内容都是英文的,则用ASCII码存储,内容是汉字,则用unicode码存储。提取文档内容时,同时用两个缓冲区分别保存两种编码方式读到的内容。这种采用双缓冲区方法读取Word文档内容相较于传统的采用Office提供的编程接口的方式读取Word文档,读取速度有明显提升。
具体来说,在上述步骤S1:对电子文件中的文字内容进行提取,得到对应的文档内容之后,还包括如下步骤对提取的文档内容进行预处理的步骤:采用基于统计模型的分词方法对所述文档内容进行分词处理,得到所述文档内容的分词结果;采用基于词性标注的中文分析对所述分词结果进行分析,得到文档的词法分析结果即词性标注和划分结果,包括实词和虚词。
相应地,上述步骤S2:将文档内容与预先构建的敏感信息库中的敏感信息进行语义相似度计算,具体为:将词法分析结果与预先构建的敏感信息库中的敏感信息进行语义相似度计算。
需要说明的是,本实施例通过对提取的文档内容进行分词和内容分析等预处理,缩减密级甄别处理的文本内容,提高密级甄别的效率。
具体来说,如图2所示,所述采用多层隐马模型对所述文档内容进行预处理,得到所述文档内容对应的分词结果,包括:
对输入的原始字符串进行预处理,得到初步分词的二元切分词图;
利用多层隐马模型对原始字符串进行未登录词识别,以对初步分词的二元切分词图进行修正,得到修正后的二元切分词图;
利用基于词分类的隐马模型对修正后的二元切分词图进行处理,得到所述原始字符串对应的分词结果。
进一步地,所述对输入的原始字符串进行预处理,得到初步分词的二元切分词图,包括:
对所述原始字符串进行原子切分,得到所述原始字符串对应的原子分词序列;
采取N-GRAM方法对原子分词序列进行处理,得到能覆盖歧义的最佳N个分词结果;
由N个分词结果中最大概率的分词结果形成所述初步分词的二元切分词图。
需要说明的是,本实施例中对输入的原始字符串进行原子切分,得到原始字符串对应的原子分词序列,然后对原子分词序列进行N-Gram分词处理,可以取N=2或3。N-Gram分词后会得到根据概率大小排列的能覆盖歧义的N个分词结果,取最大概率分词结果形成二元切分词图。
具体来说:原子切分就是将句子中的每个原子分词划分出来,得到句子的原子分词序列。原子分词包括单字、标点符号、数字、连续英文字母、数字和特殊符号组成的字符串等。原子切分的步骤为:
1)对原始字串进行简单的逐个字符划分,包括数字、特殊字符、字母和单字;
2)将其中的数字或英文字母和后续的数字或英文字母作为一个原子分词,如3.14作为一个原子分词,2012作为一个原子分词,NUDT作为一个原子分词等。
具体来说:N-gram模型是一种语言模型(Language Model,LM),其是一个基于概率的判别模型。其基本思想是文本中的每个词仅仅依赖于其前面的N-1个词。例如对短文本“教学科研”进行分词切分,有以下5种切分方式:
1)教学/科研
2)教/学科/研
3)教学/科/研
4)教/学/科研;
5)教/学/科/研。
将这些切法用有向无环图表示,结点为词语,边为条件概率,如图3所示。根据最大似然原理,分词的过程转为了在图3中求解最佳路径的问题,即可以利用动态规划算法进行求解一条路径在图3中的概率最大,作为最大概率的分词结果;将最大概率的分词结果送到二元切分词图,供后面的多层隐马模型进行命名实体识别,对初步分词的二元切分图进行使用和修正,如“张本华2012年毕业于安徽大学。”识别出“2012年”和“毕业于”词后初步分词的二元切分词图如图4所示。
需要说明的是,本实施例通过预处理过程找到原始字符串的多个最短路径粗分结果,先根据词典进行简单的分词划分,可进一步提高处理的效率,后面的多层隐马模型可以专注于处理命名实体。
进一步地,上述多层隐马模型识别的命名实体为人名、地名、机构名和专用词等未登录词,所述多层隐马模型包括人名识别隐马模型、地名识别隐马模型以及机构名和专用词识别隐马模型。其中,机构名和专用词识别隐马模型用于识别嵌套了简单人名和地名等未登录词的复杂机构名和专用词,包含人名未登录词的机构名、包含地名未登录词的机构名、包含人名和地名未登录词的机构名或包含人名和地名未登录词的专用词。
本实施例中的人名识别隐马模型、地名识别隐马模型以及机构名和专用词识别隐马模型均采用隐马尔可夫模型(Hidden Markov Model,HMM),且均采用N-Best策略。
需要说明的是,传统中单层隐马模型准确率有待提高,多层复杂嵌套的方式时间复杂度和空间复杂度都较大;本实施例中多层隐马模型简单嵌套,分层处理不同命名实体,时间复杂度与单层隐马模型相当,且后面的隐马模型可以不断修正前面隐马模型的输出结果,如地名识别隐马模型中可以对前面包含人名的地名进行纠正,机构名和专用词识别隐马模型可以对包含人名或地名的机构名,以及包括多个简单词的复杂专用词进行识别纠正。
进一步地,上述步骤:利用多层隐马模型对原始字符串进行未登录词识别,以对初步分词的二元切分词图进行修正,得到修正后的二元切分词图,包括如下细分步骤:
利用所述人名识别隐马模型对所述能覆盖歧义的最佳N个分词结果进行人名识别,得到人名识别结果,并利用人名识别结果对所述初步分词的二元切分词图进行人名修正,得到人名修正后的二元切分词图;
利用所述地名识别隐马模型对人名识别结果进行地名识别,得到地名识别结果,并利用地名识别结果对人名修正后的二元切分词图进行修正,得到地名修正后的二元切分词图;
利用所述机构名和专用词识别隐马模型对地名识别结果进行识别,得到机构名及专用词识别结果,并利用机构名及专用词识别结果对所述地名修正后的二元切分词图进行修正,得到所述修正后的二元切分词图。
需要说明的是,未登录词识别包括人名、地名、机构名和专用词识别,依次进行。因为地名中可能包括人名,机构名和专用词中可能包括人名或地名。这里每一层识别都是基于隐马模型进行的,是一个迭代的过程。本方法通过将人名识别、地名识别以及机构名识别等命名实体识别融合到一个模型中,不针对专门的医疗、旅游等专业,适用性广。本实施例使用多层HMM实际是若干个层次的简单HMM的组合,不再是对HMM修改后更复杂的数学模型,时间和空间的开销较小。
进一步地,上述步骤:利用所述人名识别隐马模型对所述能覆盖歧义的最佳N个分词结果进行人名识别,得到人名识别结果,具体过程如下:
1)将熟语料库中已标注的句子按照人名角色进行划分,并对人名角色信息进行统计,抽取出人名角色信息;即基于已标注的熟语料库(如已标注的人民日报语料库),将熟语料库中已标注的句子按照人名角色进行划分(包括姓氏B、名首字C、名末字D、单名E、前缀F、后缀G、人名上文K、人名下文L、无关词A等),并进行角色信息统计,完成人名角色信息自动抽取。具体过程如下:
获取熟语料库中标注好的句子,根据词性标注nf(姓氏),nl(名)或者nr(姓名)定位出中国人名,标注将中国人名以外的词的标注换成角色A;若人名前面的片断p和人名首部f成为新词pf,将pf标注为U(上文与姓成词),否则将p标为K(若p原来标注的角色是A)或M(若p原来标注的角色是L)。
若人名尾部t和人名后面的片断n成为新词tn,将tn标注为V(人名末字与下文成词),否则将n标为L;分别对姓、双名首字、双名末字、单名、前缀、后缀相应地标注为角色B、C、D、E、F、G,内部成词的情况,相应地标注为X、Y、Z;在句子的角色序列中,将角色不是A的词存入人名识别词典,统计其出现次数即所有不同角色的出现次数和相邻角色的共同出现次数,完成人名角色信息抽取。
2)使用N-Best viterbi算法对所述能覆盖歧义的最佳N个分词结果进行角色的自动标注,得到概率最大的标注结果,具体过程如下:
W=(w1,w2,…,wm)是分词后的一个词语切分序列,
T=(t1,t2,…,tm)是W的某个可能的角色标注序列,最终标注结果T#即概率最大的角色序列:
将词wi作为观察值,角色ti作为状态值,W为观察序列,T为隐藏在W后的状态序列,这是一个隐马尔科夫链,引入隐马模型计算得到:
3)利用抽取出的人名角色信息对概率最大的标注结果进行修正,得到所述人名识别结果,具体过程如下:
将角色为U(上文与姓组成词)的片断pf分裂为KB(若f为姓)、KC(若f为双名首字)或KE(若f为单名);将角色为V(人名末字与下文成词)的片断tn分裂为DL(若t为双名末字)或EL(若t为单名);对分裂处理后的角色序列在姓名识别模式集中进行模式串最大匹配,输出对应片段组成人名;通过限制规则排除错误人名,如人名中出现特殊符号等。“限制规则”人名中不允许出现特殊符号、数字、字母和汉字混合等。
利用人名识别结果对所述初步分词的二元切分词图进行人名修正,得到人名修正后的二元切分词图如图5所示。
需要说明的是,本步骤的作用是先给文本做一个粗分,将词典中已知的简单词识别出来,如常见的毕业、合肥、书籍等。粗分结果是一个词的列表,将这个列表中的所有词在词典中进行依次检索和匹配,识别出人名。
进一步地,上述步骤:利用所述地名识别隐马模型对人名识别结果进行地名识别,得到地名识别结果,具体过程如下:
1)将熟语料库中已标注的句子按照地名角色进行划分,并对地名角色信息进行统计,抽取出地名角色信息,具体为:
将熟语料库中标注后的句子中所有的词按地名角色(包括地名首字、地名中部、地名末字、前缀、后缀、地名上下文、无关词、连接词等)进行划分,完成地名角色信息自动抽取。
2)使用N-Best viterbi算法对所述人名识别结果进行角色的自动标注,得到概率最大的标注结果;
3)利用抽取出的地名角色信息对概率最大的标注结果进行修正,得到所述地名识别结果。
需要说明的是,这里的地名识别过程与人名识别过程类似,区别为角色使用地名角色。
进一步地,上述步骤:利用所述机构名和专用词识别隐马模型对地名识别结果进行识别,得到机构名及专用词识别结果,具体过程如下:
1)将熟语料库中已标注的句子按照机构名及专用词角色进行划分,并对机构名及专用词角色信息进行统计,抽取出机构名及专用词角色信息,具体为:
熟语料库中已标注的句子中所有的词按机构名角色进行划分,包括一般性前缀、地名前缀、特殊前缀、机构名前缀、上文、下文、无关词、连接词、特征词等。
2)使用N-Best viterbi算法对所述人名识别结果进行角色的自动标注,得到概率最大的标注结果;
3)利用抽取出的机构名及专用词角色信息对概率最大的标注结果进行修正,得到所述机构名及专用词识别结果。
需要说明的是,这里的机构名及专用词识别过程与人名识别过程类似,区别为角色使用机构名及专用词角色。最终得到的修正后的二元切分词图如图6所示。
进一步地,上述步骤:利用基于词分类的隐马模型对修正后的二元切分词图进行处理,得到所述原始字符串对应的分词序列,包括如下步骤:
对所述修正后的二元切分词图中的词进行分类,得到每个词对应的词类;
需要说明的是,该步骤在多层隐马模型完成人名、地名、机构名等未登录词的基础上进行。把所有词进行分类,包括登录词、未登录词中的人名、未登录词中的地名、未登录词中的机构名和专用词、未登录词中的数词、未登录词中的时间词、开始或结束标记等。其中,词典中已有的每个词对应的类即词本身,故词类总数为:|Dict|+6,|Dict|为词典的词数。
原子分词序列S的某个可能的分词结果为W=(w1,w2,…,wn),W对应的词类别序列为C=(c1,c2,…,cn),同时,取概率最大的分词结果W#作为最终的分词结果,则W#=argmaxWP(W),将词wi作为观察值,词类ci作为状态值,则W为观察序列,C为隐藏在W后的状态序列,是一个隐马尔科夫链,引入隐马模型计算得到如下:
利用基于词分类的隐马模型对每个词对应的词类进行处理,得到所述原始字符串对应的分词序列,其中基于词分类的隐马模型为:
其中,W#表示分词序列,词wi作为观察值,词wi对应的词类ci作为状态值,W为观察序列,表示n词数量。
如果词wi在词典中,则ci=wi,p(wi|ci)=1;所以主要针对未登录词wi计算p(wi|ci)。在二元切分词图中,有向边的权值为相邻类的转移概率p(ci|ci-1),最终所求的分词结果就是从初始节点到最终节点的最短路径,可采取贪心算法快速求解。
需要说明的是,使用多层隐马模型分别识别名词,并基于词分类进行切分排歧和未登录词识别多层隐马模型的各层隐马模型之间互相关联,形成一种紧密的耦合关系。各层隐马模型之间共享一个切分词图作为公共数据结构;每一层隐马模型都采用N-Best策略,将产生的最好的若干个结果送到词图中供更高层次的模型使用;低层的隐马模型在向高层的隐马模型提供数据的同时,也为这些数据的参数估计提供支持。
本实施例中在全局最优的分词结果上进行词性的隐马标注,也就是确定该词属于名词、动词、形容词或者其它词性的过程,将形容词、副词等不具有实际含义的词统广划分为虚词,将动词和名词等具有实际含义的词构成为实词,将虚词和单字的词进行剔除,从而加快涉密电子文件判定的效率。
需要说明的是,现有技术中一般使用已有的编程接口进行提取文档,速度相对较慢,且对环境有要求,预处理有基于语言学知识的规则方法和基于大规模语料库的机器学习方法等,实际中一般是多种方法的结合,但此时一般时间复杂度较高,速度较慢,且主要对词典或语料库中收录的词效果较好,对分词过程中的歧义和未登录词的识别处理还有待进一步提高,且对语料库依赖较大,训练时间较长。本实施例在处理歧义词和未登录词识别较快,时间复杂度较低,与文本的长度成线性关系,速度较快。
具体来说,上述步骤:将词法分析结果与预先构建的敏感信息库中的敏感信息进行语义相似度计算,具体为:
1-1)结合所述词法分析结果中的单词主要指名词在局部和全局的上下文信息,学习单词在语境中的词义表示;
1-2)基于组合语义模型进行词义的组合,形成所述单词对应的整个文本的句意表示;
1-3)使用余弦距离计算所述单词对应的整个文本的句意表示与敏感信息之间的相似度。
需要说明的是,语义相似度的计算是中文信息处理中关键的一步,电子文件的密级甄别准确性很大程度上取决于语句相似度计算的准确性,单纯依靠词的匹配难以反映电子文件的整体涉密程度,以中文语句为单位与敏感信息库中的内容进行相似度的计算,从中甄别出文档内容中可能涉密的部分,为电子文件涉密的准确判定提供了基础。而且本实施例中敏感信息库存储的是各个专业方向的敏感信息,这些敏感信息是依据国家标准、国家军用标准和专业规范文档中关于各专业的敏感词为基础,按敏感词根据专业分到三到四级类目得到。传统的敏感信息库构建缺乏标准依据,主要依据专家和技术人员的主观判断,本方案构建的敏感信息库与之相比更加有章可循,规范和准确;专业分类清晰,便于不同专业电子文档的涉密判定。
进一步地,上述步骤1-1)结合所述分词结果中的单词在局部和全局的上下文信息,学习单词在语境中的词义表示,具体包括如下步骤:
目标词表示的特征提取公式:
Cs,d=∑w∈Vmax(0,1-g(s,d)+g(sw,d))
其中,s表示一个分词序列,sw是s中目标词替换成词汇表V中词w后的序列,g(…)是一个神经网络模型计算公式;对于词汇表V中每一个词w,希望g(s,d)的值比g(sw,d)大,且差距控制在1以内,从而优化每一对(s,d)的排序作用。
根据所述单词在所处的分词序列s计算该单词的局部上下文特征向量scorel,局部上下文特征由目标词在所处的分词序列s计算而来,具体过程如下:
首先将分词序列s转换为一个有序向量x=(x1,x2,…,xm-1,xm),xi表示词序列中第i个词语,x是矩阵L∈Rn×|V|的一个列,|V|表示的是词汇表的大小,矩阵L中的每一列都是一个分词序列向量,在训练过程中不断变化其中的数值。
使用带有一个循环神经网络或递归网络来计算局部上下文特征结果,其中网络的输入是文档和分词序列,输出是局部上下文特征向量值:
a1=f(w1[x1;x2;…;xm-1;xm]+b1)
scorel=w2a2+b2
其中,[x1;x2;…;xm-1;xm]是组成分词序列s的m个词的向量表示,f是一个元素智能激活函数,例如双曲正切函数,a1∈Rh×1是有h个隐藏节点的隐藏层的激活函数,w1∈Rh×(mn)和w2∈R1×h是第一层和第二层神经网络的权重,b1和b2是隐藏层的平衡因子。这里的循环神经网络或递归神经网络,主要由输入层(Input Layer)、隐藏层Hidden Layer)、输出层(Output Layer)三部分组成。
需要说明的是,所有文档组成一个文档序列(集合),对每个文档进行分词可以得到包含单词序列的一个分词结果。语句序列由文本根据标点符号进行划分,语句可以作为相似度计算的基本单位。
将每个语句作为语句序列中的一个元素,计算该单词的全局上下文特征向量scoreg,全局上下文特征的提取是将所有语句作为一个语句序列,每个语句作为序列中的一个元素d=(d1,x2,…,xk),计算语句中所有分词向量的加权平均值:
其中,w(ti)是计算分词ti在语句中权重的函数,使用逆向文件频率IDF来计算权重,使用两层神经网络来计算全局上下文特征向量scoreg,计算过程与上面类似:
需要说明的是,w(ti)即计算分词权重的函数,本实施例使用的是常见的逆向文件频率计算方法,是一种用于信息检索与数据挖掘的常用加权技术。其主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。
利用该单词的局部上下文特征向量scorel和该单词的全局上下文特征向量scoreg,得到该单词在语境中的词义表示score,具体为将这两个子向量相加得到:score=scorel+scoreg。
需要说明的是,局部上下文特征scorel保留了词序信息和句法信息,而全局特征scoreg使用了类似于词袋模型的加权平均分,使得最后的结果能够捕捉到更多的句意和文档的主题信息。在实际模型训练中,使用目标词的前后各5个词作为局部上下文信息。
进一步地,上述步骤1-2)基于组合语义模型进行词义的组合,形成所述单词对应的整个文本的句意表示,具体包括如下步骤:
基于组合语义模型进行词义的组合,将句子分析成一棵依存句法树,并使用句法分析工具进行句法分析;
需要说明的是,组合语义模型即通过组合语义模型对词义表示特征进行组合。组合语义模型主要包括句法分析和语义组合构建。句法分析可以得到句子各单词之间的依存关系。
一个句子中存在一个成分称之为根(root),这个成分不依赖于其它成分,找到root根后,根据依存关系构建句子的组合关系树状层级图,并从树的叶子节点开始计算父节点的表示向量,最终得到整个句子的表示向量。
需要说明的是,本实施例中使用的句法分析工具是哈工大的LTP平台。分析得到的结果是语句的依存关系,表示为一个句法的树形结构。
将分析结果按照分析器定义的依存关系次序进行变换得到整个句子的组合关系树状层级图;
这里提到的依存关系,即组合句子的各个单词之间的关系,有一个核心,其它单词依此通过依存关系展开。通过依存关系可以更好的理解句子,找到句子的核心语义。每一个句子都可以分析成一颗依存句法树,这颗树描述了组成句子的各个词语之间的依存关系,也就是指出了词语之间在句法上的搭配,这种搭配关系是和语义相关的。比如:
“如何增加提现额度”得到的句子依存树如图7所示,其中:
HED:表示依存句法关系;ADV:表示语义角色类型语义角色类型。
句子依存树的构建方法:
第一步:找到句子的HED(核心)作为ROOT根;
第二步:找到依存于HED的其它单词作为叶子节点;
第三步:循环迭代依次展开完成树的构建。
分析得到的结果是语句的依存关系,表示为一个句法的树形结构。由于语义组合构建需要使用到语句不同成分之间的语义表达的组合关系,需要将上述工具分析得到的结果按照分析器定义的依存关系次序进行变换得到整个句子的组合关系树状层级图,如图8所示。
从叶子节点开始,按照树所表示的节点层次关系,从底层叶子节点开始逐层向上进行有序的组合,得到所述单词对应的整个文本的句意表示,具体为:利用如下公式计算父节点:
p=α×pi+β×pj
其中,p是子节点pi和pj的父节点,α和β是加权因子,整个句子的句意表示向量由上述公式迭代计算得到。
进一步地,上述步骤1-3)使用余弦距离计算所述单词对应的整个文本的句意表示与敏感信息之间的相似度,具体为使用余弦距离计算两个中文语句之间的相似度,计算公式:
其中,score1k表示文本D1的各个维度的特征向量,score2k表示文本D2的各个维度的特征向量,k表示单个向量维度,n表示向量维度,D1,D2分别表示需要比较的两个文本。
应当理解的是,文本的特征向量包括了两个维度,即局部上下文和全局上下文特征向量,与前述对应。
需要说明的是,传统的语义相似度计算有编辑距离计算、简单单词匹配(比较文本出现相同单词个数),或基于语料库和知识库的语义相似度计算等方法,编辑距离或简单单词匹配以及其改进方法在比较结果准确性上并不高,基于语料库和知识库的语义相似度计算方法主要依赖语料库和知识库,预处理要求较高,且训练时间长,时间复杂度高。本方案中的相似度计算时基于当前文本,依赖少,在保证较高准确的同时能够保持较快的速度。
进一步地,上述步骤S3:根据语义相似度计算电子文件的内容涉密程度,得到电子文件的密级判定结果,具体如下步骤S31至S34:
S31、将所述相似度sim(D1,D2)与相似度阈值λ进行比较;
S32、当λ≤sim(D1,D2)时,表示两个语句相似;
S33、当λ>sim(D1,D2)时,表示两个语句不相似;
S34、对于与敏感信息相似的语句进行密级甄别,得到电子文件的密级判定结果。
需要说明的是,这里的相似度阈值是通过多次试验,人工取值的,取值范围一般在0.3-0.6之间
进一步地,敏感度是指敏感信息库中敏感信息的敏感程度或涉密程度。敏感信息的敏感度越大,表明该敏感信息涉密程度越大,与该敏感信息相似的疑似涉密语句信息的疑似涉密程度越大。敏感度一般分为3个程度:重度、中度和轻微。通过设置节点值对敏感度进行划分。
上述步骤S34:对于与敏感信息相似的语句进行密级甄别,得到电子文件的密级判定结果,具体包括:
a)利用与敏感信息相似的语句构建涉密语句信息列表,并计算涉密语句信息列表数量;
b)初始化轻微敏感、中度敏感和重度敏感的语句数量为0;
c)对每一条疑似涉密语句信息,找到其对应敏感信息的敏感度,根据敏感度的大小记录轻微敏感信息,中度敏感信息和重度敏感信息的数量;
d)调整敏感信息的敏感度大小;
e)继续处理完所有疑似语句信息;
f)如果重度敏感数量大于0则返回结果为真;
g)如果中度敏感数量和轻微敏感数量大于用户设置的阈值,返回结果为真,否则为假。
需要说明的是,本实施例根据疑似涉密信息的数量和敏感度大小,对文献密级进行甄别,每次判定结果作为下一次判定的基础库,通过不断的训练提高判定的准确性。
为进一步加强判定准确性,通过每一次判定结果动态调整敏感信息的敏感度。调整方法为根据用户对疑似涉密语句信息的删减分别对其在敏感信息库中的敏感信息的敏感度进行调整。当用户删除疑似涉密语句信息列表中的某一条语句信息时,调整其对应的敏感信息的敏感度s=s-1;如果用户判定该疑似涉密信息涉密,则s=s+1。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种基于统计分词的文献密级甄别方法,其特征在于,包括:
对电子文件中的文字内容进行提取,得到对应的文档内容;
将文档内容与预先构建的敏感信息库中的敏感信息进行语义相似度计算;
根据语义相似度计算电子文件的内容涉密程度,得到电子文件的密级判定结果。
2.如权利要求1所述的基于统计分词的文献密级甄别方法,其特征在于,所述对电子文件中的文字内容进行提取,得到对应的文档内容,包括:
利用ANSI码和Unicode码读取所述电子文件的中英文内容;
设置四个缓冲区保存读取的ANSI码和Unicode码内容,其中Unicode和ANSI各用两个字符串缓冲区,两个字符串缓冲区分别存储所述电子文件的英文内容和中文内容;
向Unicode对应的缓冲区最后一个元素读入两个字节,将读到的两个字节的低位传递到ANSI对应的缓冲区,高位若为0则不处理,否则,将ANSI缓冲区左移后进行赋值;
将文档中指定长度内容分别读取到缓冲区,如果Unicode对应的缓冲区不为空,将其内容添加到结果文本。
3.如权利要求1所述的基于统计分词的文献密级甄别方法,其特征在于,在所述对电子文件中的文字内容进行提取,得到对应的文档内容之后,还包括:
采用多层隐马模型对所述文档内容进行预处理,得到所述文档内容对应的词法分析结果;
相应地,所述将文档内容与预先构建的敏感信息库中的敏感信息进行语义相似度计算,具体为:
将词法分析结果与预先构建的敏感信息库中的敏感信息进行语义相似度计算。
4.如权利要求3所述的基于统计分词的文献密级甄别方法,其特征在于,所述采用多层隐马模型对所述文档内容进行预处理,得到所述文档内容对应的分词结果,包括:
对输入的原始字符串进行预处理,得到初步分词的二元切分词图;
利用多层隐马模型对原始字符串进行未登录词识别,以对初步分词的二元切分词图进行修正,得到修正后的二元切分词图;
利用基于词分类的隐马模型对修正后的二元切分词图进行处理,得到所述原始字符串对应的分词结果。
5.如权利要求4所述的基于统计分词的文献密级甄别方法,其特征在于,所述对输入的原始字符串进行预处理,得到初步分词的二元切分词图,包括:
对所述原始字符串进行原子切分,得到所述原始字符串对应的原子分词序列;
采取N-GRAM方法对原子分词序列进行处理,得到能覆盖歧义的最佳N个分词结果;
由N个分词结果中最大概率的分词结果形成所述初步分词的二元切分词图。
6.如权利要求5所述的基于统计分词的文献密级甄别方法,其特征在于,所述未登录词包括未登录词中的人名、地名、机构名和专用词,所述多层隐马模型包括人名识别隐马模型、地名识别隐马模型以及机构名和专用词识别隐马模型;
所述利用多层隐马模型对原始字符串进行未登录词识别,以对初步分词的二元切分词图进行修正,得到修正后的二元切分词图,包括:
利用所述人名识别隐马模型对所述能覆盖歧义的最佳N个分词结果进行人名识别,得到人名识别结果,并利用人名识别结果对所述初步分词的二元切分词图进行人名修正,得到人名修正后的二元切分词图;
利用所述地名识别隐马模型对人名识别结果进行地名识别,得到地名识别结果,并利用地名识别结果对人名修正后的二元切分词图进行修正,得到地名修正后的二元切分词图;
利用所述机构名和专用词识别隐马模型对地名识别结果进行识别,得到机构名及专用词识别结果,并利用机构名及专用词识别结果对所述地名修正后的二元切分词图进行修正,得到所述修正后的二元切分词图。
8.如权利要求3所述的基于统计分词的文献密级甄别方法,其特征在于,所述分词结果由动词和名词构成,所述将分词结果与预先构建的敏感信息库中的敏感信息进行语义相似度计算,包括:
结合所述分词结果中的单词在局部和全局的上下文信息,学习单词在语境中的词义表示;
基于组合语义模型进行词义的组合,形成所述单词对应的整个文本的句意表示;
基于向量空间模型计算所述单词对应的整个文本的句意表示与敏感信息之间的相似度。
9.如权利要求8所述的基于统计分词的文献密级甄别方法,其特征在于,所述结合所述分词结果中的单词在局部和全局的上下文信息,学习单词在语境中的词义表示,包括:
根据所述单词在所处的词序列计算该单词的局部上下文特征向量;
将每个语句作为语句序列中的一个元素,计算该单词的全局上下文特征向量;
利用该单词的局部上下文特征向量和该单词的全局上下文特征向量,得到该单词在语境中的词义表示。
10.如权利要求8所述的基于统计分词的文献密级甄别方法,其特征在于,所述基于组合语义模型进行词义的组合,形成所述单词对应的整个文本的句意表示,包括:
基于组合语义模型将句子分析成一棵依存句法树,并使用句法分析工具进行句法分析;
将分析结果按照分析器定义的依存关系次序进行变换得到整个句子的组合关系树状层级图;
从叶子节点开始,按照树所表示的节点层次关系,从底层叶子节点开始逐层向上进行有序的组合,得到所述单词对应的整个文本的句意表示。
12.如权利要求11所述的基于统计分词的文献密级甄别方法,其特征在于,所述根据语义相似度计算电子文件的内容涉密程度,得到电子文件的密级判定结果,包括:
将所述相似度sim(D1,D2)与相似度阈值λ进行比较;
当λ≤sim(D1,D2)时,表示两个语句相似;
当λ>sim(D1,D2)时,表示两个语句不相似;
对于与敏感信息相似的语句进行密级甄别,得到电子文件的密级判定结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010530243.1A CN111767733A (zh) | 2020-06-11 | 2020-06-11 | 一种基于统计分词的文献密级甄别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010530243.1A CN111767733A (zh) | 2020-06-11 | 2020-06-11 | 一种基于统计分词的文献密级甄别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111767733A true CN111767733A (zh) | 2020-10-13 |
Family
ID=72720538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010530243.1A Pending CN111767733A (zh) | 2020-06-11 | 2020-06-11 | 一种基于统计分词的文献密级甄别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111767733A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114969348A (zh) * | 2022-07-27 | 2022-08-30 | 杭州电子科技大学 | 基于逆变调节知识库的电子文件分级分类方法及系统 |
CN116089910A (zh) * | 2023-02-16 | 2023-05-09 | 北京计算机技术及应用研究所 | 一种支持多种格式电子文档的密级检测方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003345791A (ja) * | 2002-05-24 | 2003-12-05 | Toshiba Corp | 自然言語解析装置 |
CN102314417A (zh) * | 2011-09-22 | 2012-01-11 | 西安电子科技大学 | 基于统计模型的Web命名实体识别方法 |
CN102819604A (zh) * | 2012-08-20 | 2012-12-12 | 徐亮 | 基于内容相关性的文件涉密内容检索、密级判定及标注方法 |
CN103577766A (zh) * | 2012-08-09 | 2014-02-12 | 董靖 | 电子文档的安全管理方法和系统 |
WO2015113578A1 (de) * | 2014-01-28 | 2015-08-06 | Luciano Zorzin | Verfahren zur automatischen sinnerkennung und messung der eindeutigkeit von text |
CN106845265A (zh) * | 2016-12-01 | 2017-06-13 | 北京计算机技术及应用研究所 | 一种文档密级自动识别方法 |
CN108319630A (zh) * | 2017-07-05 | 2018-07-24 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置、存储介质和计算机设备 |
CN110245349A (zh) * | 2019-05-21 | 2019-09-17 | 武汉数博科技有限责任公司 | 一种句法依存分析方法、装置及一种电子设备 |
CN111241787A (zh) * | 2020-01-13 | 2020-06-05 | 中孚安全技术有限公司 | 一种解析word二进制格式并提取文档中文字的方法及系统 |
-
2020
- 2020-06-11 CN CN202010530243.1A patent/CN111767733A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003345791A (ja) * | 2002-05-24 | 2003-12-05 | Toshiba Corp | 自然言語解析装置 |
CN102314417A (zh) * | 2011-09-22 | 2012-01-11 | 西安电子科技大学 | 基于统计模型的Web命名实体识别方法 |
CN103577766A (zh) * | 2012-08-09 | 2014-02-12 | 董靖 | 电子文档的安全管理方法和系统 |
CN102819604A (zh) * | 2012-08-20 | 2012-12-12 | 徐亮 | 基于内容相关性的文件涉密内容检索、密级判定及标注方法 |
WO2015113578A1 (de) * | 2014-01-28 | 2015-08-06 | Luciano Zorzin | Verfahren zur automatischen sinnerkennung und messung der eindeutigkeit von text |
CN106845265A (zh) * | 2016-12-01 | 2017-06-13 | 北京计算机技术及应用研究所 | 一种文档密级自动识别方法 |
CN108319630A (zh) * | 2017-07-05 | 2018-07-24 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置、存储介质和计算机设备 |
CN110245349A (zh) * | 2019-05-21 | 2019-09-17 | 武汉数博科技有限责任公司 | 一种句法依存分析方法、装置及一种电子设备 |
CN111241787A (zh) * | 2020-01-13 | 2020-06-05 | 中孚安全技术有限公司 | 一种解析word二进制格式并提取文档中文字的方法及系统 |
Non-Patent Citations (3)
Title |
---|
刘群 等: "基于层叠隐马模型的汉语词法分析", 《计算机研究与发展》, vol. 41, no. 8, pages 1421 - 1428 * |
肖和;付丽娜;姬东鸿;: "神经网络与组合语义在文本相似度中的应用", 计算机工程与应用, no. 07, pages 139 - 143 * |
舒展翔 等: "基于敏感信息语义的电子文档密级检测方法研究", 《第六届中国指挥控制大会论文集(下册)》, pages 762 - 768 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114969348A (zh) * | 2022-07-27 | 2022-08-30 | 杭州电子科技大学 | 基于逆变调节知识库的电子文件分级分类方法及系统 |
CN114969348B (zh) * | 2022-07-27 | 2023-10-27 | 杭州电子科技大学 | 基于逆变调节知识库的电子文件分级分类方法及系统 |
CN116089910A (zh) * | 2023-02-16 | 2023-05-09 | 北京计算机技术及应用研究所 | 一种支持多种格式电子文档的密级检测方法 |
CN116089910B (zh) * | 2023-02-16 | 2023-10-20 | 北京计算机技术及应用研究所 | 一种支持多种格式电子文档的密级检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106997382B (zh) | 基于大数据的创新创意标签自动标注方法及系统 | |
US8131539B2 (en) | Search-based word segmentation method and device for language without word boundary tag | |
US20100332217A1 (en) | Method for text improvement via linguistic abstractions | |
CN113632092B (zh) | 实体识别的方法和装置、建立词典的方法、设备、介质 | |
US20060015326A1 (en) | Word boundary probability estimating, probabilistic language model building, kana-kanji converting, and unknown word model building | |
US20040243408A1 (en) | Method and apparatus using source-channel models for word segmentation | |
Oudah et al. | NERA 2.0: Improving coverage and performance of rule-based named entity recognition for Arabic | |
CN114254653A (zh) | 一种科技项目文本语义抽取与表示分析方法 | |
CN110457690A (zh) | 一种专利创造性的判断方法 | |
CN115983233B (zh) | 一种基于数据流匹配的电子病历查重率估计方法 | |
Patil et al. | Issues and challenges in marathi named entity recognition | |
CN111159405A (zh) | 基于背景知识的讽刺检测方法 | |
CN111767733A (zh) | 一种基于统计分词的文献密级甄别方法 | |
CN105701086B (zh) | 一种滑动窗口文献检测方法及系统 | |
Charoenpornsawat et al. | Automatic sentence break disambiguation for Thai | |
Saini et al. | Intrinsic plagiarism detection system using stylometric features and DBSCAN | |
Mekki et al. | Tokenization of Tunisian Arabic: a comparison between three Machine Learning models | |
CN111767734A (zh) | 一种基于多层隐马模型的分词方法及系统 | |
Pokharana et al. | A Review on diverse algorithms used in the context of Plagiarism Detection | |
Jafar Tafreshi et al. | A novel approach to conditional random field-based named entity recognition using Persian specific features | |
Xie et al. | Automatic chinese spelling checking and correction based on character-based pre-trained contextual representations | |
Pinzhakova et al. | Feature Similarity-based Regression Models for Authorship Verification. | |
Ahmed et al. | Arabic/english word translation disambiguation approach based on naive bayesian classifier | |
Lazemi et al. | Persian plagirisim detection using CNN s | |
Li et al. | Combining trigram and automatic weight distribution in Chinese spelling error correction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |