CN114462389A - 一种试卷主观题自动评分方法 - Google Patents
一种试卷主观题自动评分方法 Download PDFInfo
- Publication number
- CN114462389A CN114462389A CN202210147864.0A CN202210147864A CN114462389A CN 114462389 A CN114462389 A CN 114462389A CN 202210147864 A CN202210147864 A CN 202210147864A CN 114462389 A CN114462389 A CN 114462389A
- Authority
- CN
- China
- Prior art keywords
- similarity
- text
- word
- answer text
- sentence
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 43
- 238000013077 scoring method Methods 0.000 title claims abstract description 12
- 230000011218 segmentation Effects 0.000 claims abstract description 44
- 238000000034 method Methods 0.000 claims abstract description 34
- 238000012549 training Methods 0.000 claims abstract description 23
- 238000004364 calculation method Methods 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims abstract description 17
- 230000008569 process Effects 0.000 claims description 17
- 238000013528 artificial neural network Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 11
- 210000002569 neuron Anatomy 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 3
- 238000011156 evaluation Methods 0.000 abstract description 7
- 238000012552 review Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 5
- 230000008676 import Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000005284 excitation Effects 0.000 description 3
- 101100129496 Arabidopsis thaliana CYP711A1 gene Proteins 0.000 description 2
- 101100129499 Arabidopsis thaliana MAX2 gene Proteins 0.000 description 2
- 101100481876 Danio rerio pbk gene Proteins 0.000 description 2
- 101100083446 Danio rerio plekhh1 gene Proteins 0.000 description 2
- 101100481878 Mus musculus Pbk gene Proteins 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012258 culturing Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 238000001604 Rao's score test Methods 0.000 description 1
- 210000000481 breast Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 238000013100 final test Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
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/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/247—Thesauruses; Synonyms
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Tourism & Hospitality (AREA)
- Computing Systems (AREA)
- Educational Technology (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Biomedical Technology (AREA)
- Educational Administration (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及考试阅卷自动化领域,尤其涉及一种试卷主观题自动评分方法。用以解决计算机自动评阅的准确率很难达到人工评阅的水平的问题。方法包括:步骤1、获取考生主观题答案,并划分训练样本和测试样本;步骤2、进行分句处理;步骤3、进行分词处理;步骤4、提取关键词语;步骤5、对标准答案进行步骤2‑4后,设定得分词;步骤6、提取文本特征;步骤7、进行训练,得到评分模型;进行测试,得到评分。通过提取多个文本特征,更加详细地描述文本,对文本相似度的计算更具说服力,为后续的评分提供有力支持;以词语语义相似度为基础,赋予不同子句分句权重,统计得到文本语句相似度,提高了计算机自动评阅的准确率,提高阅卷效率,减少人工成本。
Description
技术领域
本发明涉及考试阅卷自动化领域,尤其涉及一种试卷主观题自动评分方法。
背景技术
随着计算机技术与通讯技术的飞速发展,计算机技术已经应用到人们生活的各个领域中。在教育领域,计算机不仅可以辅助教学,还可以用于辅助评测。目前,客观题的计算机阅卷技术已经趋向成熟,很多已经成熟的系统已经投入使用。但是,用计算机对学生的主观题进行评分上,还存在一些限制。由于中文的复杂性,对主观题的自动阅卷的研究还处于理论研究阶段。现在比较实用的技术是通过高速扫描仪将学生的答卷扫描到系统服务器,再由一个或者多个阅卷老师对学生的答卷进行评分。从本质上讲,这种阅卷方式的本质上还是属于人工阅卷,其花费的人工成本较大,评分容易受阅卷老师的情感状态的、知识经验、主观性的影响。
主观题自动阅卷技术主要解决的问题是计算出学生的答案与标准答案之间的相似程度。两者之间的相似度越高则评分就越高,反之相似度就越低。目前,已经有多种方法用于相似度计算,例如:吕学强等在研究句子相似度计算中综合考虑了词表面意思相似度和词序相似度两个因素,并提出了中文语句相似模型和查找最相似语句的算法。
考试中主观题具有答题特点和复杂性,目前没有一种考试系统能够很好地完成自动评分。因此,发明一种能够对考试主观题进行自动评分,且评分的准确率较好的试卷主观题自动评分方法很有必要。
发明内容
本发明的目的在于提供一种试卷主观题自动评分方法,用以解决计算机自动评阅的准确率很难达到人工评阅的水平的问题,提高计算机自动评阅的准确率,提高阅卷效率,减少人工成本,使考试更加公平公正。
为了实现上述目的,本发明采用如下技术方案:
一种试卷主观题自动评分方法,步骤如下:
步骤1、获取考生主观题答案,并划分训练样本和测试样本;
步骤2、进行分句处理;
步骤3、进行分词处理;
步骤4、提取关键词语;
步骤5、对标准答案进行步骤2-4后,设定得分词;
步骤6、提取文本特征;
步骤7、进行训练,得到评分模型;进行测试,得到评分。
进一步的,所述步骤1中,主观题是有参考答案的主观题,而非开放性答案的主观题;训练样本与测试样本的数量比为4:1。
进一步的,所述步骤2中,分句处理主要使用逗号、分号、句号等标点作为子句分句的分割符号,来对考生的主观题答案进行分割,其中分号的优先级最高,句号次之,逗号最次;若句子长度大于40个字符,则以逗号对句子进行分割。
进一步的,所述步骤3中,分词处理采用jieba分词器对句子进行分词,采用的是精确模式。
进一步的,所述步骤4中,提取关键词语采用TF-IDF算法。
进一步的,所述步骤5中具体包括:对标准答案进行分句处理、分词处理以及关键词语后,对主观题的一些得分要点进行设定,作为得分词。
如权利要求6所述的一种试卷主观题自动评分方法,其特征在于,所述步骤6中,文本特征包括:文本词性相似度、词语个数相似度、关键词语相似度、文本长度相似度、得分词相似度以及文本语句相似度,其中文本词性相似度包括:形容词相似度、数量词相似度、名词相似度、动词相似度、连词相似度、副词相似度、量词相似度、数词相似度、代词相似度以及介词相似度;文本特征的提取需要以词语语义相似度为基础,词语语义相似度采用基于知网的语义相似度计算,计算公式如下:
公式(1)中,D表示词语A、B在义原层次树中的距离,H表示层次数的高度,MA、MB分别表示一个义原,subDep(MA,MB)表示两个义原节点在同一类型树的层数差值;
其中名词相似度计算表示如下:
k=min(m,n) (3)
公式(2)和(3)中,MAXi(S)表示第i个词语的词语语义相似度最大值,m,n分别表示标准答案文本A与考生答案文本B的词数个数;其他词性的相似度同理;
词语个数相似度计算如下:
公式(4)中,CountA表示标准答案文本A中的词数个数,CountB表示标准答案文本B中的词数个数;
关键词语相似度计算如下:
n=max(a,b) (6)
公式(5)和(6)中,VA、VB表示n维特征向量,C-1表示C的协方差逆矩阵,a,b表示标准答案文本A与考生答案文本B的关键词个数;
文本长度相似度计算如下:
公式(7)中,LenA表示标准答案文本A的长度,LenB表示考生答案文本B的长度;
得分词相似度计算表示如下:
公式(8)中,ScoreA表示标准答案文本A中的得分词数,ScoreB表示考生答案文本B中的得分词数;
文本语句相似度具体包括:
WordSim(A,B)=μ1Sim(A1)+μ2Sim(A2)+…+μmSim(Am) (9)
μ1+μ2+…+μm=1 (10)
公式(9)和(10)中,Ai,i∈[1,m]表示标准答案文本A的一个子句分句,Sim(A1)表示标准答案文本A中的第一个子句分句与考生答案文本B中的任意一个子句分句的相似度的最大值,其他同理;μi,i∈[1,m]表示子句分句所占的权重;m表示标准答案文本A中子句分句的个数。
进一步的,所述步骤7中,训练选用MATLAB中的神经网络工具箱进行网络的训练,网络采用BP神经网络,其中BP神经网络由输入层、隐含层和输出层组成,输入层有15个神经元,分别对应提取到的15个特征,输出层有1个神经元,对应评分,隐含层和输出层的激活函数均为tansig函数;选取隐层神经元个数的问题上参照了以下的经验公式:
公式(11)中,n为输入层数,m为输出层数,a为[1,10]内的常数。
本发明的有益效果:
1、通过提取多个文本特征,更加详细地描述文本,对标准答案与考生答案的相似度的计算更具说服力,为后续的评分提供了有力支持。
2、提出了以词语语义相似度为基础,赋予不同子句分句权重,统计得到文本语句相似度的计算方式。
3、通过选用MATLAB中的神经网络工具箱进行网络的训练,设定网络隐层和输出层激励函数和设置网络参数,训练得到评分模型,减少计算的工作量,并且取得较好的效果。
4、本发明的试卷主观题自动评分方法,提高了计算机自动评阅的准确率,提高阅卷效率,减少人工成本,使考试更加公平公正。
附图说明
图1为本发明提供的一种试卷主观题自动评分方法流程图;
图2为本发明提供的文本特征示意图;
图3为本发明提供的子句分句匹配关系示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
如图1所示,本实施例提供了一种试卷主观题自动评分方法,包括如下步骤:
步骤1、获取考生主观题答案,并划分训练样本和测试样本;
通过高速扫描仪将考生的答卷扫描到系统服务器,对考生的答卷进行分割后,得到主观题的图像,再利用现有较为成熟的图像文字识别技术获取考生主观题答案。
要注意的是主观题是有参考答案的主观题,而非开放性答案的主观题,两者的实例如下表1所示。
编号 | 有参考答案的主观题 | 开放性答案的主观题 |
1 | 如何建立良好的师生关系 | 谈一谈你对这个故事的感受 |
2 | 教育过程的基本规律 | 你有什么建议和意见 |
3 | 班主任如何培养班集体 | 谈谈你的想法 |
4 | 如何培养学生的创造性 | 怎么做比较合适 |
表1
将获取到的考生主观题答案随机划分为训练样本和测试样本,训练样本与测试样本的数量比为4:1;
本实施例中,获取到的考生主观题答案共计200份;
步骤2、进行分句处理;
在进行分词之前应该对考生的主观题答案进行分割,分成以句子为单位的一个个语句片段。因为以逗号、分号、句号分割的语句通常能够表达完整的语句信息,因此本发明主要使用逗号、分号、句号等标点作为子句分句的分割符号,来对考生的主观题答案进行分割。其中分号的优先级最高,句号次之,逗号最次;若句子长度大于40个字符,则以逗号对句子进行分割;
步骤3、进行分词处理;
分词处理是主观题自动评分的重要内容,分词的好坏之间关系到后续对主观题自动评分的准确率。本发明采用jieba分词器对句子进行分词,jieba分词器支持三种分词模式,分别为:精确模式、全模式、搜索引擎模式,本发明采用的是精确模式,其能够最精确的将句子切开,具体如下:
例1:对“教育过程实际上也是学生接受教育的过程。”进行分词:
输入:
>>>import jieba
>>>text="教育过程实际上也是学生接受教育的过程。"
>>>seg=jieba.cut(text)
输出:
>>>print('/'.join(seg))
教育/过程/实际上/也/是/学生/接受/教育/的/过程/。
由例1可以看出,jieba分词器分词效果很好。
然而,也有一些新词、专有名词之类的,jieba分词器不能很好地进行分词,jieba分词器还有一个方便的地方是开发者可以指定自己的自定义词典,以便包含词库中没有的词,虽然jieba分词有新词识别能力,但是自行添加新词可以保证更高的正确率。
例2:对“要培养学生创造性思维,必须以培养学生发散性思维为先导。”进行分词:
输入:
>>>import jieba
>>>text="要培养学生创造性思维,必须以培养学生发散性思维为先导。"
>>>seg=jieba.cut(text)
输出:
>>>print('/'.join(seg))
要/培养/学生/创造性/思维/,/必须/以/培养/学生/发散/性/思维/为/先导/。
由例2可以看出,这时的分词效果并不理想,因此需要在自定义词典“user_dict.txt”中加入新词,在使用的时候,词典的格式和jieba分词器本身的分词器中的词典格式必须保持一致,一个词占一行,每一行分成三部分,一部分为词语,一部分为词频,最后为词性,用空格隔开。
例3:自定义词典“user_dict.txt”的部分内容如下:
创造性思维5n
发散性思维5n
使用自定义词典后的分词效果如下:
例4:对“要培养学生创造性思维,必须以培养学生发散性思维为先导。”进行分词:
输入:
>>>import jieba
>>>text="要培养学生创造性思维,必须以培养学生发散性思维为先导。"
>>>seg=jieba.cut(text)
输出:
>>>print('/'.join(seg))
要/培养/学生/创造性思维/,/必须/以/培养/学生/发散性思维/为/先导/。
单纯的分词并不能满足后续对句子的分析,还需要获取词性,每个词都有其词性,比如名词、动词、代词等,结巴分词的结果也可以带上每个词的词性,要用到jieba.posseg,分词词性对照表如表2所示。
符号 | 名称 | 符号 | 名称 | 符号 | 名称 |
a | 形容词 | mq | 数量词 | tg | 时语素 |
ad | 副形词 | n | 名词 | u | 助词 |
ag | 形语素 | ng | 例:义、乳、亭 | ud | 例:得 |
an | 名形词 | nr | 人名 | ug | 例:过 |
b | 区别词 | nrfg | 也是人名 | uj | 例:的 |
c | 连词 | nrt | 也是人名 | ul | 例:了 |
d | 副词 | ns | 地名 | uv | 例:地 |
df | 例:不要 | nt | 机构团体 | uz | 例:着 |
dg | 副语素 | nz | 其他专名 | v | 动词 |
e | 叹词 | o | 拟声词 | vd | 副动词 |
f | 方位词 | p | 介词 | vg | 动语素 |
g | 语素 | q | 量词 | vi | 不及物动词 |
h | 前接成分 | r | 代词 | vn | 名动词 |
表2分词词性对照表
例5:对“教育过程实际上也是学生接受教育的过程”进行分词及输出词性:输入:
>>>import jieba.posseg as psg
>>>text="教育过程实际上也是学生接受教育的过程。"
>>>seg=psg.cut(text)
输出:
>>>print([(x.word,x.flag)for x in seg])
[('教育','vn'),('过程','n'),('实际上','d'),('也','d'),('是','v'),('学生','n'),('接受','v'),('教育','vn'),('的','uj'),('过程','n'),('。','x')]
步骤4、提取关键词语;
提取子句分句的关键词语采用TF-IDF算法,jieba分词器的python插件已经将TF-IDF算法封装好了,因为我们直接引用就可以直接使用。
基于TF-IDF算法的关键词语抽取方法:
jieba.analyse.extract_tags(text,topK=20,withWeight=False,allowPOS=())
第一个参数为待提取的子句分句;
第二个参数为返回几个TF、IDF权重最大的关键词语,默认值为20;
第三个参数为是否返回权重值,默认false;
第四个参数为是否仅返回指定类型,默认为空;
例6:提取“要培养学生创造性思维,必须以培养学生发散性思维为先导。”中的关键词语及其权重:
输入:
>>>import jieba.analyse
>>>text="教育过程实际上也是学生接受教育的过程。"
输出:
>>>seg=jieba.analyse.extract_tags(text,topK=20,withWeight=True,allow POS=('n','nr','ns'))
>>>for item in keywords:
print(item[0],item[1])
思维2.4427983697599998
学生1.9210939406399998
先导1.547592855855
创造性1.42559502021
由例6可知,通过jieba.analyse,可以提取句子中的关键词语及其权重,且效果较好;
步骤5、对标准答案进行步骤2-4后,设定得分词;
对标准答案进行分句处理、分词处理、提取关键词语后,对主观题的一些得分要点进行设定,作为得分词;
步骤6、提取文本特征;
计算考生主观题答案与标准答案之间的相似度是主观题自动阅卷技术的重中之重,两个文本之间的相似度越高则评分就越高,反之相似度就越低。单一的特征很难准确地计算考生主观题答案与标准答案之间的相似度,因此,本文采用了多个特征相结合的方法对考生主观题答案与标准答案之间的相似度进行计算,如图2所示,本发明采用的文本特征有:文本词性相似度、词语个数相似度、关键词语相似度、文本长度相似度、得分词相似度以及文本语句相似度;
在提取文本特征前,需要了解词语语义相似度,词语语义相似度指的是两个词语在不同的上下文中可以互相替换使用而不改变文本的句法语义结构的程度,即同义词、近义词扩展以及词语的深层语义相似度,词语语义相似度的计算有两个方法,分别是基于知网的语义相似度计算和基于同义词林的语义相似度计算,本实施例中采用基于知网的语义相似度计算,具体如下:
知网中有两个主要概念:“概念”和“义原”,其中“概念”是对词汇语义的一种描述,是由词表示概念标识符,其中“义原”是用来描绘词汇语义的概念,它是知网中最基本的、不易再分割的意义的最小单位,义原相似度是[0,1]之间的实数;
计算公式表示如下:
公式(1)中,D表示词语A、B在义原层次树中的距离,H表示层次数的高度,MA、MB分别表示一个义原,subDep(MA,MB)表示两个义原节点在同一类型树的层数差值;
不同词性的词语在语言表达中发挥着不同的作用,因此使用词性相似度作为文本的一个特征,由步骤2中,对句子进行了分词和输出词性,得到了多个词语和它们的词性,又由于jieba分词器分词后词性比较多,不利于后续的处理,因此取其中10种词性作为保留词性,具体有:形容词a、数量词、名词n、动词v、连词c、副词d、量词q、数词、代词r、介词p,并将地名ns、人名nr、机构团体nt、其他专名nz归为名词n,其它词将不在考虑范围之内。
下面以名词为例,计算名词的相似度过程如下:
设标准答案文本A的名词集合为An={nAi|i∈[1,x]},其中x表示标准答案文本A中名词的个数;考生答案文本B的名词集合为Bn={nBi|i∈[1,y]},其中y表示考生答案文本B中名词的个数;
又由公式(1)可得,名词nAi和名词nBi的词语语义相似度为SAiBi,其矩阵M表示如下:
由矩阵M求得SAiBi最大值MAX1(S),删除SAiBi所在行列的值,继续计算剩下的最大值MAX2(S),再删除其所在行列的值,持续这个操作,直至矩阵为空,得到名词最大相似序列表示如下:
MAX={MAX1(S),MAX2(S),…,MAXk(S)|k=min(x,y)} (3)
公式(3)中,x表示标准答案文本A中名词的个数,y表示考生答案文本B中名词的个数;
则有标准答案文本A与考生答案文本B之间的名词相似度为:
同理,以这种方式可以计算出标准答案文本A与考生答案文本B之间的其他词性的相似度;
由步骤2中,对句子进行了分词,因此可以统计得到标准答案文本A与考生答案文本B词语的个数,则词语个数相似度计算如下:
公式(5)中,CountA表示标准答案文本A中的词数个数,CountB表示标准答案文本B中的词数个数;
由步骤4提取了考生答案文本B的关键词语及其权重,由步骤5提取了标准答案文本A的关键词语及其权重;
设标准答案文本A的关键词语的向量为VA=[A1,A2,…,Aa],a为常数;
设考生答案文本B的关键词语的向量为VB=[B1,B2,…,Bb],b为常数;
令n=max(a,b),将VA和VB转化成n维向量,维数不足的用0替代,本发明采用马氏距离来表示标准答案文本A与考生答案文本B的关键词语相似度,值越大,表示越不相似,反之越相似,则有关键词语相似度计算如下:
公式(6)中,VA、VB表示n维特征向量,C-1表示C的协方差逆矩阵;
文本长度相似度计算如下:
公式(7)中,LenA表示标准答案文本A的长度,LenB表示考生答案文本B的长度;
在主观题中,存在一些非常关键的词,这些词作为得分词,若考生答案文本B与标准答案文本A之间得分词相似度很大,则有充分理由说明考生获得该题的分值很高,计算得分词相似度,表示如下:
公式(8)中,ScoreA表示标准答案文本A中的得分词数,ScoreB表示考生答案文本B中的得分词数;
标准答案文本A和考生答案文本B往往都是由多个句子组成,设标准答案文本A={Ai|i∈[1,m]},其中m表示标准答案文本A中句子的个数;考生答案文本B={Bi|i∈[1,n]},其中n表示考生答案文本B中句子的个数;
又由于表达方式的随意性,标准答案文本A和考生答案文本B之间的句子往往不是一一对应,很可能是标准答案文本A的一个子句分句与考生答案文本B中的多个子句分句相对应,或者标准答案文本A的多个子句分句与考生答案文本B中的一个子句分句相对应,如图3所示,本发明采用的策略是:计算标准答案文本A中的第一个子句分句与考生答案文本B中的任意一个子句分句的相似度,取其最大值,再计算第二个子句分句与考生答案文本B中的任意一个子句分句的相似度,取其最大值,直至最后一个子句分句;
则子句分句A1和考生答案文本B中的任意一个子句分句的相似度的中的最大值表示如下:
Sim(A1)=max(Sim(A1,B1),…,Sim(A1,Bi),…,Sim(A1,Bn)),i∈[1,n](9)
公式(9)中,Sim(A1,B1)表示标准答案文本A中的第一个字句分句和考生答案文本B中的第一个字句分句的相似度,以此类推;
其他同理,可以计算出标准答案文本A中其他句子与考生答案文本B中的任意一个句子的相似度的中的最大值,又由于标准答案文本A中每个句子的分值未必一致,因此加权计算出标准答案文本A和考生答案文本B的文本语句相似度表示如下:
WordSim(A,B)=μ1Sim(A1)+μ2Sim(A2)+…+μmSim(Am) (10)
μ1+μ2+…+μm=1 (11)
公式(10)和(11)中,μi表示每个句子所占的权重;
步骤7、进行训练,得到评分模型;进行测试,得到评分。
由步骤6中,提取到的特征如下表所示。
特征编号 | 特征名 |
1 | 形容词相似度 |
2 | 数量词相似度 |
3 | 名词相似度 |
4 | 动词相似度 |
5 | 连词相似度 |
6 | 副词相似度 |
7 | 量词相似度 |
8 | 数词相似度 |
9 | 代词相似度 |
10 | 介词相似度 |
11 | 词语个数相似度 |
12 | 文本长度相似度 |
13 | 关键词相似度 |
14 | 得分词相似度 |
15 | 文本语句相似度 |
表3
本发明采用BP神经网络训练得到评分模型,其中BP神经网络由输入层、隐含层和输出层组成,输入层有15个神经元,分别对应提取到的15个特征,输出层有1个神经元,对应评分,隐含层和输出层的激活函数均为tansig函数;
选取隐层神经元个数的问题上参照了以下的经验公式:
公式(12)中,n为输入层数,m为输出层数,a为[1,10]内的常数;
本实施例中,隐层神经元个数选为10;
选用MATLAB中的神经网络工具箱进行网络的训练,评分模型的具体实现步骤如下:
将训练样本数据归一化后输入网络;
设定网络隐层和输出层激励函数分别为tansig函数;
网络训练函数为trainlm;
隐层神经元个数选为10;
设定网络参数:网络迭代次数epochs为5000次,期望误差goal为0.000001,学习速率lr为0.01;
进行训练,得到评分模型;
将测试数据归一化后输入评分模型;
评分模型输出数据;
将得到的数据反归一化得到考生主观题的评分。
本实施例,经过50次测试后,计算准确率,表示如下:
最终测试的结果准确率不低于90%,取得了较好的成果。
至此完成了整个方法的流程。
结合具体实施,可以得到本发明的优点是,通过提取多个文本特征,更加详细地描述文本,对标准答案与考生答案的相似度的计算更具说服力,为后续的评分提供了有力支持;通过选用MATLAB中的神经网络工具箱进行网络的训练,设定网络隐层和输出层激励函数和设置网络参数,训练得到评分模型,减少计算的工作量,并且取得较好的效果,提高了计算机自动评阅的准确率,提高阅卷效率,减少人工成本,使考试更加公平公正。
本发明未详述之处,均为本领域技术人员的公知技术。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (8)
1.一种试卷主观题自动评分方法,其特征在于,包括以下步骤:
步骤1、获取考生主观题答案,并划分训练样本和测试样本;
步骤2、进行分句处理;
步骤3、进行分词处理;
步骤4、提取关键词语;
步骤5、对标准答案进行步骤2-4后,设定得分词;
步骤6、提取文本特征;
步骤7、进行训练,得到评分模型;进行测试,得到评分。
2.如权利要求1所述的一种试卷主观题自动评分方法,其特征在于,所述步骤1中,主观题是有参考答案的主观题,而非开放性答案的主观题;训练样本与测试样本的数量比为4:1。
3.如权利要求2所述的一种试卷主观题自动评分方法,其特征在于,所述步骤2中,分句处理主要使用逗号、分号、句号等标点作为子句分句的分割符号,来对考生的主观题答案进行分割,其中分号的优先级最高,句号次之,逗号最次;若句子长度大于40个字符,则以逗号对句子进行分割。
4.如权利要求3所述的一种试卷主观题自动评分方法,其特征在于,所述步骤3中,分词处理采用jieba分词器对句子进行分词,采用的是精确模式。
5.如权利要求4所述的一种试卷主观题自动评分方法,其特征在于,所述步骤4中,提取关键词语采用TF-IDF算法。
6.如权利要求5所述的一种试卷主观题自动评分方法,其特征在于,所述步骤5中具体包括:对标准答案进行分句处理、分词处理以及关键词语后,对主观题的一些得分要点进行设定,作为得分词。
7.如权利要求6所述的一种试卷主观题自动评分方法,其特征在于,所述步骤6中,文本特征包括:文本词性相似度、词语个数相似度、关键词语相似度、文本长度相似度、得分词相似度以及文本语句相似度,其中文本词性相似度包括:形容词相似度、数量词相似度、名词相似度、动词相似度、连词相似度、副词相似度、量词相似度、数词相似度、代词相似度以及介词相似度;文本特征的提取需要以词语语义相似度为基础,词语语义相似度采用基于知网的语义相似度计算,计算公式如下:
公式(1)中,D表示词语A、B在义原层次树中的距离,H表示层次数的高度,MA、MB分别表示一个义原,subDep(MA,MB)表示两个义原节点在同一类型树的层数差值;
其中名词相似度计算表示如下:
k=min(m,n) (3)
公式(2)和(3)中,MAXi(S)表示第i个词语的词语语义相似度最大值,m,n分别表示标准答案文本A与考生答案文本B的词数个数;其他词性的相似度同理;
词语个数相似度计算如下:
公式(4)中,CountA表示标准答案文本A中的词数个数,CountB表示标准答案文本B中的词数个数;
关键词语相似度计算如下:
n=max(a,b) (6)
公式(5)和(6)中,VA、VB表示n维特征向量,C-1表示C的协方差逆矩阵,a,b表示标准答案文本A与考生答案文本B的关键词个数;
文本长度相似度计算如下:
公式(7)中,LenA表示标准答案文本A的长度,LenB表示考生答案文本B的长度;
得分词相似度计算表示如下:
公式(8)中,ScoreA表示标准答案文本A中的得分词数,ScoreB表示考生答案文本B中的得分词数;
文本语句相似度具体包括:
WordSim(A,B)=μ1Sim(A1)+μ2Sim(A2)+…+μmSim(Am) (9)
μ1+μ2+…+μm=1 (10)
公式(9)和(10)中,Ai,i∈[1,m]表示标准答案文本A的一个子句分句,Sim(A1)表示标准答案文本A中的第一个子句分句与考生答案文本B中的任意一个子句分句的相似度的最大值,其他同理;μi,i∈[1,m]表示子句分句所占的权重;m表示标准答案文本A中子句分句的个数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210147864.0A CN114462389A (zh) | 2022-02-17 | 2022-02-17 | 一种试卷主观题自动评分方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210147864.0A CN114462389A (zh) | 2022-02-17 | 2022-02-17 | 一种试卷主观题自动评分方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114462389A true CN114462389A (zh) | 2022-05-10 |
Family
ID=81416397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210147864.0A Pending CN114462389A (zh) | 2022-02-17 | 2022-02-17 | 一种试卷主观题自动评分方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114462389A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115858765A (zh) * | 2023-01-08 | 2023-03-28 | 山东谷联网络技术有限公司 | 一种基于数据对比分析的自动评分的智能考试平台 |
-
2022
- 2022-02-17 CN CN202210147864.0A patent/CN114462389A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115858765A (zh) * | 2023-01-08 | 2023-03-28 | 山东谷联网络技术有限公司 | 一种基于数据对比分析的自动评分的智能考试平台 |
CN115858765B (zh) * | 2023-01-08 | 2023-05-09 | 山东谷联网络技术有限公司 | 一种基于数据对比分析的自动评分的智能考试平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110096702B (zh) | 一种主观题评分方法及装置 | |
Sukkarieh et al. | Automarking: using computational linguistics to score short ‚free− text responses | |
CN104794169B (zh) | 一种基于序列标注模型的学科术语抽取方法及系统 | |
CN107967318A (zh) | 一种采用lstm神经网络的中文短文本主观题自动评分方法和系统 | |
KR20080021017A (ko) | 텍스트 기반의 문서 비교 | |
Islam et al. | Text readability classification of textbooks of a low-resource language | |
Divate et al. | Automatic question generation approaches and evaluation techniques | |
CN113934814B (zh) | 古诗文主观题自动评分方法 | |
CN110222344B (zh) | 一种针对小学生作文辅导的作文要素分析算法 | |
Ch et al. | Generation of multiple-choice questions from textbook contents of school-level subjects | |
Sukkarieh et al. | Auto-marking 2: An update on the UCLES-Oxford University research into using computational linguistics to score short, free text responses | |
CN114462389A (zh) | 一种试卷主观题自动评分方法 | |
Dhanya et al. | Aixam-ai assisted online MCQ generation platform using Google t5 and sense2vec | |
NEAMAH et al. | QUESTION ANSWERING SYSTEM SUPPORTING VECTOR MACHINE METHOD FOR HADITH DOMAIN. | |
Alrehily et al. | Intelligent electronic assessment for subjective exams | |
Mandge et al. | Revolutionize cosine answer matching technique for question answering system | |
Day et al. | AI customer service system with pre-trained language and response ranking models for university admissions | |
CN110059318B (zh) | 基于维基百科与WordNet的论述题自动评卷方法 | |
Lahbari et al. | A rule-based method for Arabic question classification | |
Madri et al. | A comprehensive review on MCQ generation from text | |
Pilán | Automatic proficiency level prediction for Intelligent Computer-Assisted Language Learning | |
Lee | Natural Language Processing: A Textbook with Python Implementation | |
Alobed et al. | Automated Arabic essay scoring based on hybrid stemming with WordNet | |
Lapshin | Question-answering systems: Development and prospects | |
Ringenberg | Creating, testing and implementing a method for retrieving conversational inference with ontological semantics and defaults |
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 |