CN111694927A - 一种基于改进词移距离算法的文档自动评阅方法 - Google Patents

一种基于改进词移距离算法的文档自动评阅方法 Download PDF

Info

Publication number
CN111694927A
CN111694927A CN202010441411.XA CN202010441411A CN111694927A CN 111694927 A CN111694927 A CN 111694927A CN 202010441411 A CN202010441411 A CN 202010441411A CN 111694927 A CN111694927 A CN 111694927A
Authority
CN
China
Prior art keywords
document
word
evaluated
words
phrase
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.)
Granted
Application number
CN202010441411.XA
Other languages
English (en)
Other versions
CN111694927B (zh
Inventor
陆鑫
程琳琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202010441411.XA priority Critical patent/CN111694927B/zh
Publication of CN111694927A publication Critical patent/CN111694927A/zh
Application granted granted Critical
Publication of CN111694927B publication Critical patent/CN111694927B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3334Selection or weighting of terms from queries, including natural language queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3335Syntactic pre-processing, e.g. stopword elimination, stemming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于改进词移距离算法的文档自动评阅方法,该方法通过计算被评阅文档与参考答案文档之间的相似度来实现文档自动评阅,所采用的KWMD算法不需要大量训练评测样本即可达到不错的评分效果;通过改进的Rake算法抽取最能代表文档语义的若干关键词,KWMD算法将改进的Rake算法计算出的词语得分作为权重来实现最小词移距离的计算,从而计算文档比对的相似度。基于参考答案文档与被评阅文档的相似度计算得到评阅文档的得分,实现文档自动评阅。该方法可有效提升文档自动评阅的准确度,同时通过提取的若干关键词使得需要计算词移距离的词语大量减少,计算时间得到了降低,从而也可提高文档评阅效率。

Description

一种基于改进词移距离算法的文档自动评阅方法
技术领域
本发明涉及计算机人工智能的自然语言处理领域,具体涉及一种基于改进词移距离算法的文档自动评阅方法。
背景技术
“互联网+教育”是当前教育改革与实践中的热点话题。随着以人工智能为代表的新技术的不断发展,一种更加高效、智能的教育新形式将会逐渐形成。人工智能在教育领域的应用主要有以下几个方面:一是使学习更加个性化,二是改变教与学之间的关系,三是辅助教师的教学工作。本发明着眼于第三点,通过实现学生答卷文档的自动评阅,将教师从繁重机械的工作中解放出来,减轻教师的负担,提高教师的工作效率和工作质量。
为实现答卷文档的自动评阅,不仅仅只是将被评阅的答卷文档与参考答案文档进行简单的匹配,重点在于对答卷文档进行语义分析以及相似度的计算,这些都属于人工智能的自然语言处理领域。
自然语言处理的目标是让计算机理解人类的语言,为了达到这个目标,自然语言处理被分为两大核心任务:自然语言理解和自然语言生成。在此基础上,自然语言处理又细分了很多任务:词性标注、命名实体识别、信息抽取、文本分类、信息检索、机器翻译、文本生成、语义文本相似性等等。本发明实现的答卷文档自动评阅方法主要属于自然语言处理的语义文本相似性任务,通过对文档进行语义分析实现。
语义分析是人工智能的一个分支,语义分析指通过各种方法学习和理解一篇文章所代表的语义内容。任何对语言的理解都可以被归类为语义分析。文章通常由词、句子和段落组成。使用不同的语言单位来划分,语义分析又可分为词汇级语义分析、句子级语义分析和篇章级语义分析。本发明主要涉及词汇级语义分析。
为实现词汇级的语义分析,首先需要对文档进行分词。分词就是将一篇文档或一个句子分成一个一个的词语。英文分词由于基本组成单位就是词,所以根据空格就能很简单的划分。而中文是以字为基本的书写单位,词语之间没有明显的区分标记,所以中文分词要困难得多。中文分词算法主要分为两类:基于词典的分词算法和基于统计的机器学习算法。常用的中文分词算法有:正向最大匹配法、逆向最大匹配法、双向匹配分词法、隐马尔可夫模型、条件随机场算法等。目前市面上已有很多成熟的中文分词工具,如结巴分词工具、哈工大的LTP分词器、清华大学THULAC、斯坦福分词器、Hanlp分词等。
分好词后,需要通过分好的词进行文档相似度的计算。常见的文档相似度模型主要分为基于字面匹配的模型和基于语义匹配的模型,如TF-IDF、BM25、simhash、LSA等。本发明通过一种改进的词移距离算法KWMD实现文档相似度的计算。
词移距离算法(WMD,Word Mover's Distance)是一种基于词移动距离的文档相似度计算的经典算法。其算法思想是利用词嵌入语义向量(word2Vec)技术,通过计算一篇文档中的所有词语完全转移到另一篇文档中所需要的最小转移距离,也就是词移距离来衡量两篇文档间的差异性。因此,两篇文档间的相似度计算步骤如下:首先需要计算出两篇文档所有词语两两间的转移距离,然后构建线性规划问题计算出其中一篇文档中所有词转移到另一篇文档中词的最小总距离,该最小总距离就可以用来衡量两篇文档的相似度,距离越小,则代表两篇文档越相似。
发明内容
针对主观题答卷文档难以用机器快速评阅的问题,本发明通过改进的词移距离算法和改进的关键词提取算法,实现具有参考答案的主观题答卷文档自动评阅。
本发明针对具有参考答案的答卷文档进行自动评阅提出一种技术方法。该方法通过对比答卷文档与参考答案文档,计算它们之间的相似度来实现文档自动评阅。国外针对文档评阅技术起步早,目前已经有研究成果投入应用。国内虽然在中文文档自动评阅上有了一定的研究性工作,但由于中文的复杂性以及特殊性,导致研究工作进展缓慢。本发明针对经典的词移距离算法WMD进行改进,提高文档对比的相似度计算精度,并将它应用到答卷文档自动评阅。
现有WMD词移距离算法在进行文档相似性计算中存在着一些不足。它在计算文档整体的词移距离时需要为每个词分配一个权重,而词语的权重通过计算词语的词频得到。这样的权重度量方法较为单一,尤其对于一个长文档来说,那些能体现文档含义,属于关键得分点词语的词频会因为大量无关冗余信息而降低,导致权重较小,在整体计算中吃亏。同时,由于其使用全部词语来表示整个文档,在计算的时候因为要计算所有词语两两间的转移代价,其时间复杂度和空间复杂度将会提升,特别是当两篇文档中包含有大量的多维独立不相干词语的时候,计算将会特别耗时,不适合长文档评阅场景中。
针对上述问题,本发明对传统WMD算法进行改进,提出一种新的基于关键词的词移距离算法——KWMD算法,相比传统WMD算法,该算法不再通过词频计算权重,也不再计算两篇文档所有词语间的词移距离,而是通过改进的关键词提取算法Rake,计算得到各个词语及短语的权重,并通过权重将这些短语进行排序,选取排名前K的短语,再将这些短语进一步分词作为关键词来计算文档的词移距离,同时将词移距离转化为文档的相似度,再转化为文档的评分,实现文档的自动评阅。
本发明对词移距离(WMD)算法进行改进,并与改进的关键词提取(Rake)算法结合起来,提出一种新的基于关键词的词移距离算法——KWMD算法,进一步提高两篇文档相似度计算的精度。
本发明提出的基于KWMD算法的文档自动评阅方法工作原理如下:在对某个具有参考答案文档进行自动评阅时,首先对参考答案文档以及被评阅文档进行预处理。预处理包括分句、分词、去停用词、去除标点符号、乱码以及词性标注等步骤。然后划分出候选关键短语,通过改进的关键词提取算法Rake分别计算词语及短语的权重,提取出权重排名前K的关键短语。再将短语进一步细分为关键词用于文档的词移距离计算。由于Rake算法主要用于英文文档的关键词提取,其在分词时主要通过空格和停用词来组成短语,而中文用此方法组合的短语会造成短语过长,存在词语几乎粘连在一起的问题,因此改进的Rake算法通过中文分词、停用词以及词语词性来划分出候选关键短语。同时,每个短语的得分也不再直接通过累加求和得到,而是取了所有词语的平均值。根据权重提取出关键词后,使用这些关键词及其权重,通过KWMD算法计算得到文档的词移距离,在此之前,还需要通过Word2Vec训练得到词向量模型,基础语料来自百度百科和中文维基百科,然后可根据文档所处领域自行增加专业领域的语料。最后将文档的词移距离转化到度量区间为[0,1]的文档相似度,再根据文档总分转化成文档的最后得分,实现具有参考答案文档的自动评阅。
本发明提出的方法通过计算被评阅文档与参考答案文档之间的相似度来实现文档自动评阅,所采用的KWMD算法属于无监督算法,不需要大量训练评测样本即可达到不错的评分效果。本发明对WMD算法进行了改进,不再使用两篇文档的所有词语来计算词移距离,而是通过改进的Rake算法抽取最能代表文档语义的若干关键词,通过计算两篇文档关键词之间的词移距离来计算文档总体词移距离。原有的WMD算法使用词频作为权重,改进的KWMD算法将改进的Rake算法计算出的词语得分作为权重来实现最小词移距离的计算,从而计算文档比对的相似度。基于参考答案文档与被评阅文档的相似度计算得到评阅文档的得分,实现文档自动评阅。该方法可有效提升文档自动评阅的准确度。同时,通过提取的若干关键词使得需要计算词移距离的词语大量减少,计算时间得到了降低,从而也可提高文档评阅效率。
本发明提出的基于关键词KWMD算法的文档自动评阅方法能根据参考答案文档对被评阅文档进行自动评分,提高了评阅的效率,减轻了教师的负担。本发明改进了传统WMD算法,并通过改进的关键词提取算法Rake优化了其原始的权重计算方法,相比原始WMD算法使用词频计算权重造成的关键得分点词语权重过低的问题。KWMD算法使用改进的Rake算法计算文档词语权重,将注意力进一步集中到了更能代表文档含义的关键词上面,可有效提高文档自动评阅的准确率。除此之外,通过筛选关键词来代表整篇文档,不仅可以去除很多无关信息,同时,相比传统WMD算法以及其他有监督的自动评阅算法,时间复杂度也得到了降低。
附图说明
图1是本发明的文档自动评阅模型架构图;
图2是本发明的文档自动评阅流程图;
图3是本发明的文档上传流程图;
图4是本发明的文档预处理流程图;
图5是本发明的关键词提取算法流程图;
图6是本发明的改进的文档词移距离算法流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明,所述是对本发明的解释而不是限定。
本发明对传统词移距离WMD算法与关键词提取算法Rake分别进行改进,将改进后的WMD算法与Rake算法结合起来,提出了一种基于关键词的文档自动评阅方法,即一种基于改进词移距离算法KWMD的文档自动评阅方法,该方法的系统模型架构图与流程图分别见图1与图2所示。
图1为本发明设计的文档自动评阅方法的模型图,可以看到,该模型由文档上传模块、文档预处理模块、词向量模型生成模块、关键词提取模块、文档相似度计算/文档评阅模块以及评阅结果展示模块组成。在该模型中,通过计算被评阅文档以及参考答案文档的相似度,再根据文档总分将相似度转换为对应评分,就可以实现文档的自动评阅。同时本发明也改进了关键词提取算法Rake和文档词移距离相似度计算算法WMD。
文档上传模块:该模块实现被评阅文档以及对应的参考答案文档的上传系统处理。
文档预处理模块:该模块需要对参考答案文档和被评阅文档分别进行预处理,包括去除标点符号、去除乱码信息、去停用词、文档分句、文档分词、词性标注这几个步骤。一般来说,文档中存在着许多无用部分,比如乱码信息、标点符号等,这些部分会干扰文档的语义理解,因此需要将这些部分都去除。同时,文档中还存在着一些没有实际意义的词,比如一些功能词,因此需要建立一个停用词表,根据停用词表将这些词过滤掉。除此之外,需要将文档分词,分词之前首先通过标点符号将文档分句,然后再分词,对于英文可以通过空格分词,而对于中文则使用分词算法或分词工具进行分词,本发明使用成熟的分词工具来分词。分完词后,还需要为分好的词语进行词性标注,主要是确定每个词是属于哪个词性,比如动词、名词、形容词等等,不同的词性对理解文档语义的重要程度不一样,通过词性标注为后续的文档语义分析,包括关键词提取和相似度计算打下基础。
词向量模型生成模块:本发明实现的文档自动评阅方法依据词语级别的语义分析,因此生成一个好的词向量模型对后续的文档相似度计算十分重要。该模块主要包括准备语料库、处理语料、训练词向量、构建词向量字典四个步骤。本发明使用网络爬取工具从百度百科、中文维基百科获取语料。除此之外,还可根据需要添加专业领域语料。由于网络爬取的语料通常不符合要求,存在一些乱码、无效信息,所以需要对这些语料进行处理。具体的处理方法同文档预处理模块。然后使用词向量训练模型进行训练,本发明采用的词向量训练模型是Word2Vec的genism,然后再将训练好的词向量模型保存下来构建词向量字典,方便后续使用。
关键词提取模块:该模块是文档相似度计算模块的前置模块,它需要计算候选关键词的权重,以及提取出能代表整篇文档核心语义的前K个关键词。该模块通过改进的Rake算法实现,首先根据文档预处理模块分好的词和标好的词性划分出候选关键短语,然后使用Rake算法计算各个词语及候选关键短语的权重,最后根据权重进行排序,选取前K个的候选关键短语,并将短语进一步划分为词语作为文档的关键词。这些关键词及其权重将作为文档相似度计算的基础。
文档相似度计算模块:该模块是文档自动评阅方法的核心部分,通过KWMD算法实现文档相似度计算处理。KWMD算法通过计算关键词提取模块中提取的被评阅文档的若干关键词与参考答案文档的若干关键词之间的词移距离,得到两篇文档之间的相似度。
文档评阅模块:根据文档相似度计算值与文档评价总分进行乘法计算得到文档评分,实现文档的自动评阅。
评阅结果展示模块:该模块将文档自动评阅产生得到的得分值在界面中进行输出展示。
图2为本发明设计的文档自动评阅的评阅流程,具体步骤如下:
步骤一:上传被评阅文档,上传成功则进行下一步,失败则继续上传,直到上传成功。
步骤二:被评阅文档上传成功后,点击自动评阅,寻找是否存在与被评阅文档对应的参考答案文档,如果存在则进行下一步,否则上传相应的参考答案文档。
步骤三:被评阅文档及与被评阅文档对应的参考答案文档都上传成功后,读取这两个文档,并分别对两个文档进行预处理,包括去除乱码信息、去除标点符号、去停用词、分词、词性标注等步骤。
步骤四:对预处理后的被评阅文档及与被评阅文档对应的参考答案文档提取关键短语,首先根据分词结果和标注的词性划分出候选关键短语,然后计算各个词语及短语的权重,根据权重选取前K个关键短语。
步骤五:第四步已经提取出了K个能基本代表文档语义的短语作为关键短语,由于之后计算词移距离需要的是词语,因此通过分词工具将提取出的每个关键短语进一步划分为若干个词语作为文档的关键词用于后续词移距离和相似度计算,它们的权重为第四步计算得到的词语权重。
步骤六:提取完被评阅文档及与被评阅文档对应的参考答案文档的关键词及其权重后,根据改进词移距离算法KWMD计算出被评阅文档及与被评阅文档对应的参考答案文档各关键词之间的词移距离来代表被评阅文档及与被评阅文档对应的参考答案文档的词移距离。
步骤七:将第六步计算得到的词移距离转换成区间[0,1]的相似度,并根据文档总分(文档总分×文档相似度)算出文档评阅得分。
在本发明的实施例中,本发明提出基于改进词移距离算法的文档自动评阅方法具体实施如下:
1.文档上传实现
系统文档上传功能模块实现文档上传,其中包括被评阅文档与参考答案文档。首先点击上传按钮,选择需要上传的类型,然后选择需要上传的文档,点击确定即可上传,上传成功返回上传成功信息。具体上传流程如图3所示。
服务端新建文档由文档的存储路径+文档名组成,然后将原文档的数据传入新建的文档中,将对应的文档信息,路径信息等存入数据库,方便接下来的自动评阅流程读取。
2.文档预处理实现
在提取文档的关键词之前,首先需要对文档进行预处理,包括去除标点符号、去除乱码信息、去停用词、文档分句分词、词性标注这几个步骤,具体流程如图4所示。
图4所示的文档预处理主要流程如下:
步骤一:根据文档的存储路径+文档名,读取被评阅文档以及参考答案文档的内容,并将读取的内容组成一整段文字内容。
步骤二:对于整理好的一整段文字内容,通过正则表达式,去除其中的标点符号以及乱码信息。
步骤三:判断文档的语言,如果文档是英文,则只进行分词操作,如果文档是中文的,则在分词之后,还要标注每个词的词性。由于英文的最小单位就是词,所以英文的分词通过空格就可以直接分好,而中文的分词相对英文更为复杂,直接使用成熟的分词工具ltp分词包分好,首先需要加载好ltp的分词模型,然后通过segment方法分好词,词性标注也通过ltp的postag方法实现,除了ltp自己提供的词典以外,为了更好的分词效果,可以通过load_wi th_lexicon方法加载需要的外部词典。
步骤四:将经过预处理之后的文档进行保存处理。
3.关键词提取算法Rake改进与实现
通过Rake算法对文档划分关键短语,计算关键短语权重,提取关键词。本发明对其划分关键短语的方法及短语权重的计算方法都作了改进,流程图如图5所示。
图5所示的关键词算法提取流程如下所示:
步骤一:在文档预处理中已经判断了文档的语言,由于语言特性,英文与中文划分候选关键短语的方法不同。
步骤二:对于英文文档,加载英文的停用词表,然后根据停用词表构建停用词正则表达式,最后以此停用词正则表达式为分隔符,将再文档预处理中分好的词组合成新的短语,作为候选关键短语。
步骤三:对于中文文档,由于使用停用词划分会使得短语过长,所以加上词性来划分。同样,首先加载中文的停用词表,好的停用词表可以使划分更合理,使用哈工大的中文停用词表。首先加载好该停用词表,然后将该停用词表构建成停用词列表,除此之外,还需要对分好的词标注词性,在中文12种词性中,有7类词性在并列复合词中存在,它们分别是:动词、形容词、名词、副词、介词、连词以及叹词,而能标识文档的语义特性的词性往往是文档中的实词,主要是动词、形容词以及名词,因此将除这三种词性以外的其他词性构建一个词性列表。然后以停用词列表和词性列表为分隔符,将分隔符前面的词语组成短语并添加到列表中,划分出中文文档的候选关键短语。
步骤四:在计算每个短语的得分前,需要计算组成短语的每个词的得分,因此需要将短语进一步细分成N个词。
步骤五:计算每个短语中每个词的得分,词的得分由公式1计算得到:
Figure BDA0002504133880000081
其中,wordFrequency为词的词频,代表的是该词语在本篇文档中出现的总次数,当该词语每出现一次,wordFrequency则增加1。wordDegree为词语的度,这是一个网络中的概念,代表该词语每与一个词语共现在一个短语中,度就加1,考虑该词语本身,也就是如果一个短语中包含该词语,那么将该短语的长度减1(Len(wordlist))-1)得到word_list_degree,将该词的所有word_list_degree加起来再加上词语本身的词频,就得到了词语的度wordDegree,见公式2。
wordDegree=∑word_list_degree+wordFrequency (公式2)
其中,∑word_list_degree表示该词语和每一个短语里的词语共现总次数,word_list_degr ee表示该词语和包含该词语的短语中的每个词语的共现次数,因此,word_list_degree=(Len(wordlist)-1),Len(wordlist)表示该短语的长度,wordlist是组成这个短语的词列表,因此词语得分由该词语的度除以该词语的词频得到。最后,每个词的得分由词语的度除以词语的词频,该得分也是该词语的权重。
步骤六:得到词语的得分后,计算每个短语的得分,原始Rake算法直接将组成该短语的所有词语的得分累加求和得到短语的得分,改进后的Rake算法则将短语长度也考虑了进去,通过公式3计算得到:
Figure BDA0002504133880000082
公式2中,分子是组成该短语的所有词语的得分,分母是短语的长度,短语的得分则是取了所有词语得分的平均值,该得分也算短语的权重。
步骤七:短语的权重越高,则该短语在该文档中越重要,越能体现文档含义,因此我们根据短语权重对短语进行排序,然后提取出排名前K的候选短语作为关键短语,需要根据不同应用确定K值的大小。
步骤八:第七步已经提取了K个能基本代表文档语义的关键短语,但由于词移距离算法主要是基于词向量的,因此需要通过分词工具将提取出的每一个关键短语都进一步划分为若干词语,作为提取出的关键词用于后续词移距离和相似度计算。
4.文档词移距离算法改进与实现
这是本发明的核心部分,实现的算法流程图如图6所示:
图6所示的被评阅文档与参考答案文档词移距离计算算法流程如下:
步骤一:在计算相似度之前,需要准备好词向量模型。首先需要准备好语料,语料是从网上爬取的百度百科和中文维基百科语料,由于是从网上爬取的语料,需要对语料进行清洗和预处理,包括去除乱码、特殊符号、标点符号、无用信息等步骤。然后为处理好的语料分词,最后训练语料,建立词向量模型。本发明采用genism包的Word2Vec训练词向量,通过gensim.models.Word2Vec(sentences)建立词向量模型,该构造函数一共有三步:(1)执行mod el=gensim.models.Word2Vec()建立空模型对象;(2)执行model.build_vocab(sentences)遍历一次语料库建立词典;(3)执行model.train(sentences)遍历语料库建立神经网络模型,最后执行model.save_Word2Vec_format(fname)保存训练好的模型。
步骤二:加载在第一步中训练好的词向量模型,然后构建词向量字典,方便以后以字典方式快速读取词向量。
步骤三:利用第二步构建的词向量字典分别获取参考答案文档和被评阅文档所有关键词的词向量。
步骤四:分别获取参考答案文档和被评阅文档关键词的权重,权重来自关键词提取算法中得到的每个词的得分,根据所有关键词得分总和以及每个关键词的得分计算出每个词的权重作为关键词的权重。
步骤五:本发明使用关键词代表整篇文档,因此只用计算参考答案文档关键词与被评阅文档关键词两两之间的转移代价,需要根据第三步和第四步得到的关键词的词向量和权重求解出最小的词移距离组合。首先需要计算出参考答案文档和被评阅文档这两篇文档中任意两个关键词的词向量转移距离,记参考答案文档D的关键词为Ki,记被评阅文档D′中的关键词为Kj,转移距离通过计算两个词的欧氏距离得到,见公式4:
C(Ki,Kj)=‖Ki-Kj2 (公式4)
然后需要计算出这些词向量距离的最小词移距离,通过构建一个线性规划问题求解,求解公式见公式5:
Figure BDA0002504133880000091
其中,
Figure BDA0002504133880000101
是一个稀疏矩阵,用它作为关键词的转移矩阵,用来表示参考答案文档中的关键词Ki有多少转移到被评阅文档中的关键词Kj,C(Ki,Kj)表示了两个关键词之间的词移距离。
约束条件则如公式6所示,保证关键词Ki的权重等于从Ki转移出的总和,同理,保证关键词Kj的权重等于转移到Kj的总和,D代表参考答案文档,D′代表被评阅文档,
Figure BDA0002504133880000102
表示参考答案文档D中关键词Ki的权重,
Figure BDA0002504133880000103
表示被评阅文档D′中关键词Kj的权重。
Figure BDA0002504133880000104
Figure BDA0002504133880000105
5.文档评阅处理
要实现文档的自动评阅,还需要将词移距离算法求出的最小词移距离转换为最后得分,其步骤如下。
步骤一:将求出两个文档的最小词移距离转换为相似度,因为KWMD距离与相似度具有相反的关系,且相似度的常用度量区间为[0,1],因此对其作归一化处理,如公式7所示。
Figure BDA0002504133880000106
其中,δ是调节因子,常用取值为1,KWMD(D,D′)表示由公式5改进词移距离算法求得的词移距离。
步骤二:根据文档总分以及文档相似度计算得到最后得分,如公式8所示。
score=totalScore×sim(D,D′) (公式8)
其中,totoalScore是文档总分,sim(D,D')是公式7计算得到的文档相似度。
步骤三:通过评阅结果展示模块展示最后得分。
本发明的设计关键点包括:
1.设计一种基于关键词的文档自动评阅方法。
2.设计一种基于改进词移距离算法(KWMD)的文档相似度计算方法,用于计算两篇文档的相似度。
3.设计一种基于改进Rake算法的关键词提取方法,用于计算词语权重并提取若干关键词代表整篇文档语义。
针对关键点1,具体包括如下内容:
1.改进传统词移距离算法,去除冗余词语,基于关键词描述文档语义,提高文档语义描述精度。
2.基于参考答案文档的若干关键词与答卷文档的若干关键词进行文档相似度计算。
3.根据答卷文档总分和该文档与参考答案文档的相似度值计算出答卷文档的最终得分。
针对关键点2,具体包括如下内容:
1.分别提取出答卷文档和参考答案文档的若干关键词来代表整篇文档计算词移距离。
2.通过改进的关键词提取Rake算法获得文档关键词。
3.在词移距离算法中,不再使用词频计算权重,而是通过改进的关键词提取Rake算法中计算的词语得分,由所有关键词的总得分和每个关键词的得分得到。
4.根据关键词的词向量和权重构建线性规划问题计算得到词移距离,词向量通过预训练好的词向量字典获得,词向量字典的语料来源百度百科,维基百科以及专业领域语料。
针对关键点3,具体包括如下内容:
1.在对文档进行预处理的基础上,根据不同语言使用不同分隔符划分候选关键短语。对于英文文档使用停用词作为分隔符,对于中文文档使用停用词和词性作为分隔符。
2.分别计算词语得分和短语得分。短语得分不使用累加和,而是通过组成短语的所有词语的平均得分求得。根据得分排序,提取前K个关键短语,再进一步将关键短语细分为若干词语作为关键词提取出来。
以上所述,仅为本发明的具体实施方式,本说明书中所公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换;所公开的所有特征、或所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以任何方式组合;本领域的技术人员根据本发明技术方案的技术特征所做出的任何非本质的添加、替换,均属于本发明的保护范围。

Claims (8)

1.一种基于改进词移距离算法的文档自动评阅方法,其特征在于,该方法包括以下步骤:
步骤1:上传被评阅文档,上传成功则进行下一步,失败则继续上传,直到上传成功;
步骤2:被评阅文档上传成功后,点击自动评阅,寻找是否存在与被评阅文档对应的参考答案文档,如果存在则进行下一步,否则上传相应的参考答案文档;
步骤3:被评阅文档及与被评阅文档对应的参考答案文档都上传成功后,分别读取这两个文档,并分别对两个文档进行预处理,包括去除乱码信息、去除标点符号、去停用词、分词、词性标注的步骤;
步骤4:对预处理后的被评阅文档及与被评阅文档对应的参考答案文档分别提取关键短语,首先根据分词结果和标注的词性划分出候选关键短语,然后计算各个词语及短语的权重,根据权重选取前K个关键短语;
步骤5:步骤4已经提取出了K个能代表文档语义的短语作为关键短语,由于之后计算词移距离需要的是词语,因此通过分词工具将提取出的每个关键短语进一步划分为若干个词语作为文档的关键词用于后续词移距离和相似度计算,所述文档的关键词的权重为步骤4计算得到的词语权重;
步骤6:提取完被评阅文档及与被评阅文档对应的参考答案文档的关键词及其权重后,根据改进词移距离算法KWMD计算出被评阅文档及与被评阅文档对应的参考答案文档各关键词之间的词移距离;
步骤7:将步骤6计算得到的被评阅文档及与被评阅文档对应的参考答案文档的各关键词之间的词移距离转换成区间[0,1]的相似度,并根据文档总分×文档相似度计算出文档评阅得分。
2.根据权利要求1所述的基于改进词移距离算法的文档自动评阅方法,其特征在于,所述文档自动评阅方法采用文档自动评阅方法模型实现,该模型包括文档上传模块、文档预处理模块、词向量模型生成模块、关键词提取模块、文档相似度计算/文档评阅模块以及评阅结果展示模块组成。
3.根据权利要求1所述的基于改进词移距离算法的文档自动评阅方法,其特征在于,所述文档上传由文档上传模块实现,其中包括被评阅文档与参考答案文档,首先点击上传按钮,选择需要上传的类型,然后选择需要上传的文档,点击确定即可上传,上传成功返回上传成功信息;服务端新建文档由文档的存储路径+文档名组成,然后将原文档的数据传入新建的文档中,将对应的文档信息,路径信息等存入数据库,方便接下来的自动评阅流程读取。
4.根据权利要求1所述的基于改进词移距离算法的文档自动评阅方法,其特征在于,所述文档预处理由文档预处理模块实现,在提取文档的关键词之前,首先需要对文档进行预处理,包括去除标点符号、去除乱码信息、去停用词、文档分句分词、词性标注这几个步骤,具体包括如下步骤:
步骤2.1:根据文档的存储路径+文档名,分别读取被评阅文档以及被评阅文档对应的参考答案文档的内容,并将读取的内容组成一整段文字内容;
步骤2.2:对于整理好的一整段文字内容,通过正则表达式,去除其中的标点符号以及乱码信息;
步骤2.3:判断文档的语言,如果文档是英文,则只进行分词操作;如果文档是中文的,则在分词之后,还要标注每个词的词性;由于英文的最小单位就是词,所以英文的分词通过空格就可以直接分好,而中文的分词相对英文更为复杂,直接使用分词工具ltp分词包分好,首先需要加载好ltp的分词模型,然后通过segment方法分好词,词性标注也通过ltp的po stag方法实现,除了ltp自己提供的词典以外,为了更好的分词效果,通过load_with_lex icon方法加载需要的外部词典;
步骤2.4:将经过预处理之后的文档进行保存处理。
5.根据权利要求1所述的基于改进词移距离算法的文档自动评阅方法,其特征在于,所述关键词提取由改进的关键词提取算法Rake实现,通过改进的关键词提取算法Rake对文档划分关键短语,计算关键短语权重,提取关键词,具体步骤包括:
步骤3.1:在文档预处理中已经判断了文档的语言,由于语言特性,英文与中文划分候选关键短语的方法不同;
步骤3.2:对于英文文档,加载英文的停用词表,然后根据停用词表构建停用词正则表达式,最后以此停用词正则表达式为分隔符,将再文档预处理中分好的词组合成新的短语,作为候选关键短语;
步骤3.3:对于中文文档,由于使用停用词划分会使得短语过长,所以加上词性来划分,同样,首先加载中文的停用词表,使用哈工大的中文停用词表,首先加载好该停用词表,然后将该停用词表构建成停用词列表,除此之外,还需要对分好的词标注词性,在中文12种词性中,有7类词性在并列复合词中存在,它们分别是:动词、形容词、名词、副词、介词、连词以及叹词,而能标识文档的语义特性的词性是文档中的实词,即动词、形容词以及名词,因此将除这三种词性以外的其他词性构建一个词性列表,然后以停用词列表和词性列表为分隔符,将分隔符前面的词语组成短语并添加到列表中,划分出中文文档的候选关键短语;
步骤3.4:在计算每个短语的得分前,需要计算组成短语的每个词的得分,因此需要将短语进一步细分成N个词;
步骤3.5:计算每个短语中每个词的得分,词的得分由公式1计算得到:
Figure FDA0002504133870000031
其中,wordFrequency为词语的词频,代表的是该词语在本篇文档中出现的总次数,当该词语每出现一次,wordFrequency则增加1;wordDegree为词语的度,代表该词语每与一个词语共现在一个短语中,度就加1,考虑该词语本身,也就是如果一个短语中包含该词语,那么将该短语的长度减1,即Len(wordlist)-1得到word_list_degree,将该词的所有word_list_d egree加起来再加上词语本身的词频,就得到了词语的度wordDegree;最后,每个词的得分由词语的度除以词语的词频,该得分也是该词语的权重;
步骤3.6:得到词语的得分后,计算每个短语的得分,改进后的Rake算法将短语长度也考虑了进去,通过公式2计算得到:
Figure FDA0002504133870000032
公式2中,分子是组成该短语的所有词语的得分,分母是短语的长度,短语的得分则是取了所有词语得分的平均值,该得分也算短语的权重;
步骤3.7:短语的权重越高,则该短语在该文档中越重要,越能体现文档含义,因此我们根据短语权重对短语进行排序,然后提取出排名前K的候选短语作为关键短语;
步骤3.8:步骤3.7已经提取了K个代表文档语义的关键短语,但由于词移距离算法主要是基于词向量的,因此需要通过分词工具将提取出的每一个关键短语都进一步划分为若干词语,作为提取出的关键词用于后续词移距离和相似度计算。
6.根据权利要求1所述的基于改进词移距离算法的文档自动评阅方法,其特征在于,所述文档的词移距离由改进的文档词移距离算法实现,被评阅文档与被评阅文档对应的参考答案文档词移距离计算算法流程如下:
步骤4.1:在计算相似度之前,准备好词向量模型,首先准备好语料,语料是从网上爬取的百度百科和中文维基百科语料,由于是从网上爬取的语料,对语料进行清洗和预处理,包括去除乱码、特殊符号、标点符号、无用信息的步骤;然后为处理好的语料分词,最后训练语料,建立词向量模型;采用genism包的Word2Vec训练词向量,通过gensim.models.Word2Vec(sentences)建立词向量模型,该构造函数一共有三步:(1)执行model=gensim.models.Word2Vec()建立空模型对象;(2)执行model.build_vocab(sentences)遍历一次语料库建立词典;(3)执行model.train(sentences)遍历语料库建立神经网络模型,最后执行model.save_Wo rd2Vec_format(fname)保存训练好的词向量模型;
步骤4.2:加载在步骤4.1中训练好的词向量模型,然后构建词向量字典,方便以后以字典方式快速读取词向量;
步骤4.3:利用步骤4.2构建的词向量字典分别获取被评阅文档对应的参考答案文档和被评阅文档所有关键词的词向量;
步骤4.4:分别获取参考答案文档和被评阅文档关键词的权重,权重来自改进的关键词提取算法Rake中得到的每个词的得分,根据所有关键词得分总和以及每个关键词的得分计算出每个词的权重作为关键词的权重;
步骤4.5:使用关键词代表整篇文档,因此只用计算参考答案文档关键词与被评阅文档关键词两两之间的转移代价,需要根据步骤4.3和步骤4.4得到的关键词的词向量和权重求解出最小的词移距离组合,首先需要计算出被评阅文档对应的参考答案文档和被评阅文档这两篇文档中任意两个关键词的词向量转移距离,记被评阅文档对应的参考答案文档D关键词为Ki,记被评阅文档D′中关键词为Kj,转移距离通过计算两个词的欧氏距离得到,见公式3:
C(Ki,Kj)=‖Ki-Kj2 (公式3)
然后需要计算出这些词向量距离的最小词移距离,通过构建一个线性规划问题求解,求解公式见公式4:
Figure FDA0002504133870000041
其中,
Figure FDA0002504133870000042
是一个稀疏矩阵,用它作为关键词的转移矩阵,用来表示参考答案文档中的关键词Ki有多少转移到被评阅文档中的关键词Kj,C(Ki,Kj)表示了两个关键词之间的词移距离;
约束条件则如公式5所示,保证关键词Ki的权重等于从Ki转移出的总和,同理,保证关键词Kj的权重等于转移到Kj的总和,D代表参考答案文档,D′代表被评阅文档,
Figure FDA0002504133870000043
表示参考答案文档D中关键词Ki的权重,
Figure FDA0002504133870000044
表示被评阅文档D′中关键词Kj的权重,
Figure FDA0002504133870000045
Figure FDA0002504133870000046
Figure FDA0002504133870000051
7.根据权利要求5所述的基于改进词移距离算法的文档自动评阅方法,其特征在于,所述文档评阅得分将词移距离算法求出的最小词移距离转换为最后得分,具体包括如下步骤:
步骤5.1:将求出两个文档的最小词移距离转换为相似度,因为KWMD距离与相似度具有相反的关系,且相似度的常用度量区间为[0,1],因此对其作归一化处理,如公式6所示;
Figure FDA0002504133870000052
其中,δ是调节因子,常用取值为1,KWMD(D,D′)表示由公式4改进词移距离算法求得的词移距离;
步骤5.2:根据文档总分以及文档相似度计算得到最后得分,如公式7所示,
score=totalScore×sim(D,D′) (公式7)其中,totoalScore是文档总分,sim(D,D’)是公式6计算得到的文档相似度;
步骤5.3:通过评阅结果展示模块展示最后得分。
8.根据权利要求5任意一项所述的基于改进词移距离算法的文档自动评阅方法,其特征在于,根据不同应用确定K值的大小。
CN202010441411.XA 2020-05-22 2020-05-22 一种基于改进词移距离算法的文档自动评阅方法 Active CN111694927B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010441411.XA CN111694927B (zh) 2020-05-22 2020-05-22 一种基于改进词移距离算法的文档自动评阅方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010441411.XA CN111694927B (zh) 2020-05-22 2020-05-22 一种基于改进词移距离算法的文档自动评阅方法

Publications (2)

Publication Number Publication Date
CN111694927A true CN111694927A (zh) 2020-09-22
CN111694927B CN111694927B (zh) 2023-07-21

Family

ID=72476817

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010441411.XA Active CN111694927B (zh) 2020-05-22 2020-05-22 一种基于改进词移距离算法的文档自动评阅方法

Country Status (1)

Country Link
CN (1) CN111694927B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112287083A (zh) * 2020-10-29 2021-01-29 北京乐学帮网络技术有限公司 一种评阅方法、装置、计算机设备及存储装置
CN112634689A (zh) * 2020-12-24 2021-04-09 广州奇大教育科技有限公司 正则表达式在计算机教学中主观题自动改题的应用方法
CN112860898A (zh) * 2021-03-16 2021-05-28 哈尔滨工业大学(威海) 一种短文本框聚类方法、系统、设备及存储介质
CN113221559A (zh) * 2021-05-31 2021-08-06 浙江大学 利用语义特征的科技创新领域中文关键短语抽取方法及系统
WO2023185715A1 (zh) * 2022-03-31 2023-10-05 华为技术有限公司 一种评分方法及相关装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110004610A1 (en) * 2009-07-02 2011-01-06 Battelle Memorial Institute Automatic Generation of Stop Word Lists for Information Retrieval and Analysis
CN106407113A (zh) * 2016-09-09 2017-02-15 扬州大学 一种基于Stack Overflow和commit库的bug定位方法
US20170139899A1 (en) * 2015-11-18 2017-05-18 Le Holdings (Beijing) Co., Ltd. Keyword extraction method and electronic device
US20180040035A1 (en) * 2016-08-02 2018-02-08 Facebook, Inc. Automated Audience Selection Using Labeled Content Campaign Characteristics
CN109614626A (zh) * 2018-12-21 2019-04-12 北京信息科技大学 基于万有引力模型的关键词自动抽取方法
CN109766544A (zh) * 2018-12-24 2019-05-17 中国科学院合肥物质科学研究院 基于lda和词向量的文档关键词抽取方法和装置
US20190188271A1 (en) * 2017-12-15 2019-06-20 International Business Machines Corporation Supporting evidence retrieval for complex answers
CN111027306A (zh) * 2019-12-23 2020-04-17 园宝科技(武汉)有限公司 一种基于关键词抽取和词移距离的知识产权匹配技术

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110004610A1 (en) * 2009-07-02 2011-01-06 Battelle Memorial Institute Automatic Generation of Stop Word Lists for Information Retrieval and Analysis
US20170139899A1 (en) * 2015-11-18 2017-05-18 Le Holdings (Beijing) Co., Ltd. Keyword extraction method and electronic device
US20180040035A1 (en) * 2016-08-02 2018-02-08 Facebook, Inc. Automated Audience Selection Using Labeled Content Campaign Characteristics
CN106407113A (zh) * 2016-09-09 2017-02-15 扬州大学 一种基于Stack Overflow和commit库的bug定位方法
US20190188271A1 (en) * 2017-12-15 2019-06-20 International Business Machines Corporation Supporting evidence retrieval for complex answers
CN109614626A (zh) * 2018-12-21 2019-04-12 北京信息科技大学 基于万有引力模型的关键词自动抽取方法
CN109766544A (zh) * 2018-12-24 2019-05-17 中国科学院合肥物质科学研究院 基于lda和词向量的文档关键词抽取方法和装置
CN111027306A (zh) * 2019-12-23 2020-04-17 园宝科技(武汉)有限公司 一种基于关键词抽取和词移距离的知识产权匹配技术

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
S. ANJALI等: ""A Graph based Approach for Keyword Extraction from Documents"" *
S. ROSE等: ""Automatic Keyword Extraction from Individual Documents"" *
王鹏等: ""基于关键词距离模型的XML文档检索方法"" *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112287083A (zh) * 2020-10-29 2021-01-29 北京乐学帮网络技术有限公司 一种评阅方法、装置、计算机设备及存储装置
CN112634689A (zh) * 2020-12-24 2021-04-09 广州奇大教育科技有限公司 正则表达式在计算机教学中主观题自动改题的应用方法
CN112860898A (zh) * 2021-03-16 2021-05-28 哈尔滨工业大学(威海) 一种短文本框聚类方法、系统、设备及存储介质
CN113221559A (zh) * 2021-05-31 2021-08-06 浙江大学 利用语义特征的科技创新领域中文关键短语抽取方法及系统
CN113221559B (zh) * 2021-05-31 2023-11-03 浙江大学 利用语义特征的科技创新领域中文关键短语抽取方法及系统
WO2023185715A1 (zh) * 2022-03-31 2023-10-05 华为技术有限公司 一种评分方法及相关装置

Also Published As

Publication number Publication date
CN111694927B (zh) 2023-07-21

Similar Documents

Publication Publication Date Title
CN110442760B (zh) 一种问答检索系统的同义词挖掘方法及装置
CN106997382B (zh) 基于大数据的创新创意标签自动标注方法及系统
CN110059311B (zh) 一种面向司法文本数据的关键词提取方法及系统
CN111694927B (zh) 一种基于改进词移距离算法的文档自动评阅方法
CN109190117B (zh) 一种基于词向量的短文本语义相似度计算方法
CN108628828B (zh) 一种基于自注意力的观点及其持有者的联合抽取方法
RU2487403C1 (ru) Способ построения семантической модели документа
CN106970910B (zh) 一种基于图模型的关键词提取方法及装置
CN109960786A (zh) 基于融合策略的中文词语相似度计算方法
CN110543639A (zh) 一种基于预训练Transformer语言模型的英文句子简化算法
JP2009521029A (ja) 非構造的データから多言語電子コンテンツを自動的に生成する方法およびシステム
WO2008107305A2 (en) Search-based word segmentation method and device for language without word boundary tag
Sarwadnya et al. Marathi extractive text summarizer using graph based model
CN111309891B (zh) 一种阅读机器人进行自动问答的系统及其应用方法
CN114065758A (zh) 一种基于超图随机游走的文档关键词抽取方法
CN113221559B (zh) 利用语义特征的科技创新领域中文关键短语抽取方法及系统
CN114428850B (zh) 一种文本检索匹配方法和系统
CN114706972A (zh) 一种基于多句压缩的无监督科技情报摘要自动生成方法
Jayasiriwardene et al. Keyword extraction from Tweets using NLP tools for collecting relevant news
CN117251524A (zh) 一种基于多策略融合的短文本分类方法
CN112711666B (zh) 期货标签抽取方法及装置
Ajallouda et al. Kp-use: an unsupervised approach for key-phrases extraction from documents
Emami et al. Designing a deep neural network model for finding semantic similarity between short persian texts using a parallel corpus
Shaikh et al. An intelligent framework for e-recruitment system based on text categorization and semantic analysis
CN114490938A (zh) 基于主题挖掘的水利领域文本的检索方法与系统

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
GR01 Patent grant
GR01 Patent grant