热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

html考试自动评分源码,网上在线考试自动评分技术研究

摘要:本文研究了在线考试主观题的评分思路,利用模糊数学中贴近度概念设计了主观题的评分公式,并测试了应用效果。论文关键词:网上

摘要:本文研究了在线考试主观题的评分思路,利用模糊数学中贴近度概念设计了主观题的评分公式,并测试了应用效果。

论文关键词:网上考试,自动评分,健壮性,单向贴近度

选择题、判断题、填空题的评分方法较为容易实现,采用的办法就是用学生的答案与标准答案进行比较,比较结果一致,则答案正确,否则答案错误。在实现选择题、判断题、填空题的评分时,是这样设计的,那就是:当考生点击“交卷”或者当考试时间计满系统自动强制交卷时,则进行客观题的自动评判,并将这一部分的成绩立即显示给用户。

主观题包括:问答、证明、计算、设计题等多种题型。但是对于主观题,如论述题、简答题等没有统一答案的试题,由于涉及到人工智能、模式识别和自然语言理解等技术,实现起来相当复杂,目前还没有一种考试系统能很好地完成其自动阅卷,因而成为在线考试系统中的一个技术难点。本文的网上在线考试系统中,由于各项条件尚不成熟,因而没有全面地实现网上考试主观题自动评分的设计,但本人探索性地提出了一套算法,以期能抛砖引玉。

主观题评分:由于主观题在答题时一般采用自然语言叙述的方式,由于考生的个性不同,理解程度和表述方式不同,同一个问题,不同的考生有不同的回答:即使对某些知识掌握程度差不多的学生,由于语言表达能力的不同,对主观题的回答也会不一样。即使学生的答案准确,也很难与标准答案完全一致。因此若要象对客观题评分那样客观、准确地对主观题进行评分在目前的技术水平下是难以做到的。本文想通过分析人工评阅主观题时的常规思维,引入模糊理论中单向贴近度的概念,设计一套算法,模拟阅卷教师的这种思维活动,对学生答案和标准答案进行分析从而较准确地给出学生的实际得分。虽然该算法可能还不够完善,但为了开拓一条现实可行的途径,作为一种辅助手段,该算法还是很有意义的。

(1) 评分思路

教师在评阅主观题时一般是预先制定好一套评分标准,然后将每道试题的总分划分成若干部分,将分数分配到试题的求解过程中的一些关键的步骤或关键的词语上,通常称之为得分点,评阅时首先检查学生答案中有几个得分点,得分点多则分数高,然后再看学生的答案和标准答案的贴近度,贴近度高则分数高,最后再考虑学生的答案语言是否通顺,条理性是否强等因素,适当对分数进行调整。

根据上述分析,可以发现,影响评分的因素主要有两个:一个是标准答案及评分标准的组织,即得分点;另一个是学生答案和标准答案的贴近度。因此,在基于内容的主观题自动评阅系统中,可以先将标准答案分成若干个要素(即关键字),每个关键字与不同的分值相对应,阅卷系统的主要任务就是在学生答案中进行关键字的提取,分析其关键字与各标准答案关键字的贴近度,按照各标准答案关键字在整个试题得分中所占的比例,评定其小分,最后累加答案中各关键字的得分即可。学生答案和标准答案的贴近度可以采用模糊数学中的贴近度来描述,而对于语法结构则不做过多考虑,这样,一方面可以避免对句子进行复杂的句法分析,另一方面也可增加系统的健壮性,如学生答案中出现无关大局的语法错误时,只要其概念表述正确,系统仍然可以给出相应的贴近度评价,这与教师的阅卷过程是相符合的。

(2) 相关定义

为解决学生答案和标准答案的贴近度表示问题,可以把学生答案和标准答案均看成字符串,下面对单向贴近度的概念进行定义。

把一个字符串分解为单个字符并把它们构成的有序集合称为一个模糊集,U={ul , u2,……,un}称为论域,论域U上的全体模糊子集所组成的集合记作F(U)(也叫模糊幂集)。

为度量两模糊集的接近程度,引入单向贴近度的概念。

20d3403c5e318fe3568265079e17f550.png

定义1:设U={ul , u2, ……,un},A,B

eb60a63f21b3802aa6d9d00b68752fa3.pngF(U)。若映射ξ:F(U)×F(U)→[0,1],满足条件:

① ξ(A,A)=1;

② ξ(B,B)=1;

③ 若A

cfc34f52d23d17fe985ff8dbbb4287cc.pngB

2a2b410e9b2af19299e408fbb4b8a0e2.pngC或A

d998380de6db00b22b1ab3bceea6a1a0.pngB

d998380de6db00b22b1ab3bceea6a1a0.pngC,则ξ(A,B)≥ξ(A,C)。

称ξ(A,B)为A贴近于B的单向贴近度。

定义2:设A,B是字符串,A中包含n个字符,ξ(A,B)表示A贴近于B的单向贴近度,按照从左到右的顺序,集合A中的每个元素在集合B中出现的有效次数和记为m,则ξ(A,B)=m/n。容易验证,它满足单向贴近度的定义。

(3) 算法说明

为说明方便,以字符串S1和S2为例介绍计算字符串SI贴近于字符串S2的单向贴近度ξ(S1,S2),步骤如下:

①把查找字符串S1分解为单个有效字符。在分解前,首先判断左边第一个字符是双字节字符还是单字节字符,如果是双字节字符就按2个字节截取,如果是单字节字符则按1个字节截取。把字符串SI分解为若干个有效字符u1,u2,……,un

②判断S1分解后的单字符是否包含在被查询的字符串中。这里假定所要查找的字符串分解前和分解后是有顺序的,所以不能简单地使用是否包含来判断。

本文的做法是:判断第一个字符u1是否包含在字符串S2中,如果不包含则标记为0,否则标记为1,并从S2中去掉包含u1的字符,对S2进行第二个字符u2的相同处理,一直把u1, u2,……,un判断完毕。

③计算单向贴近度ξ(S1,S2)。计算SI分解后的单字符u1,u2,……,un在S2中出现的次数之和m占S1总有效字符数n的比值,并记为ξ(S1,S2)。

(4) 评分公式

根据上述分析,可以得出与主观题的评分公式。

客观题的评分公式:

S0 (A=A0)

S=

20d3403c5e318fe3568265079e17f550.png

0(A≠A0) (1-1)

主观题的评分公式:

S=(P

6d210d45e35fd4d4ddc8175c2f6bc0b8.png

507fb2fb7ff4384140b768fafe5ba2d3.png+(1-P)×ξ

3ae5d62aecc798fab9b7b4c59c61ccb9.png(A0,A))×S0 (1-2)

其中各符号的含义如下:

20d3403c5e318fe3568265079e17f550.png

S——学生的实际得分。计算后得出,保存到学生答卷库中;

Ao——学生的实际答案。学生交卷后保存在学生答卷库中;

Bo——试题的标准答案。出题时生成,从题库中读取;

P——关键词在该题目中所占分值的比例,

fed102db3fdded1b3a104c20a4694bb0.png。组卷时生成,也可在评分时修改,从试卷库中读取;

1-P——关键词以外的因素在该题目中所占分值的比例,

084ee9d99b7bde33a13fab55ce5a1cb3.png;

n——关键词的个数。根据题库中的关键词信息由程序计算得到;

Ki——第i个关键词,

b268971009a63cb5167f0ed9df5d7066.png,根据题库中的关键词信息由程序计算得到;

ξki(Ki,A)——第i个关键词与学生答案的单向贴近度,

986afee8183a191753317a4410d9aed6.png,由程序计算得到;

ξk0(K,A)——关键词与学生答案的单向贴近度阀值。组卷时生成,也可评分时修改,从试卷库中取得。其含义是:

当ξki(Ki,A)<ξk0(K,A)时,ξki(Ki,A)=0,

当ξki(Ki,A)≥ξk0(K,A)时,ξki(Ki,A)=ξk0(K,A);

ξ

ba099c97f1c78da9c232ed00cf02f619.png(A0,A) ——标准答案与学生答案的单向贴近度。



推荐阅读
  • 本文探讨如何利用人工智能算法自动区分网页是详情页还是列表页,介绍具体的实现思路和技术细节。 ... [详细]
  • 使用Numpy实现无外部库依赖的双线性插值图像缩放
    本文介绍如何仅使用Numpy库,通过双线性插值方法实现图像的高效缩放,避免了对OpenCV等图像处理库的依赖。文中详细解释了算法原理,并提供了完整的代码示例。 ... [详细]
  • 深入理解OAuth认证机制
    本文介绍了OAuth认证协议的核心概念及其工作原理。OAuth是一种开放标准,旨在为第三方应用提供安全的用户资源访问授权,同时确保用户的账户信息(如用户名和密码)不会暴露给第三方。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 机器学习中的相似度度量与模型优化
    本文探讨了机器学习中常见的相似度度量方法,包括余弦相似度、欧氏距离和马氏距离,并详细介绍了如何通过选择合适的模型复杂度和正则化来提高模型的泛化能力。此外,文章还涵盖了模型评估的各种方法和指标,以及不同分类器的工作原理和应用场景。 ... [详细]
  • MATLAB实现n条线段交点计算
    本文介绍了一种通过逐对比较线段来求解交点的简单算法。此外,还提到了一种基于排序的方法,但该方法较为复杂,尚未完全理解。文中详细描述了如何根据线段端点求交点,并判断交点是否在线段上。 ... [详细]
  • 根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ... [详细]
  • 探索电路与系统的起源与发展
    本文回顾了电路与系统的发展历程,从电的早期发现到现代电子器件的应用。文章不仅涵盖了基础理论和关键发明,还探讨了这一学科对计算机、人工智能及物联网等领域的深远影响。 ... [详细]
  • 华为智慧屏:超越屏幕尺寸的智能进化
    继全球发布后,华为智慧屏于9月26日在上海正式亮相,推出65英寸和75英寸版本。该产品不仅在屏幕尺寸上有所突破,更在性能和智能化方面实现了显著提升。 ... [详细]
  • Python 工具推荐 | PyHubWeekly 第二十一期:提升命令行体验的五大工具
    本期 PyHubWeekly 为大家精选了 GitHub 上五个优秀的 Python 工具,涵盖金融数据可视化、终端美化、国际化支持、图像增强和远程 Shell 环境配置。欢迎关注并参与项目。 ... [详细]
  • 本文探讨了卷积神经网络(CNN)中感受野的概念及其与锚框(anchor box)的关系。感受野定义了特征图上每个像素点对应的输入图像区域大小,而锚框则是在每个像素中心生成的多个不同尺寸和宽高比的边界框。两者在目标检测任务中起到关键作用。 ... [详细]
  • 本文探讨了如何在给定整数N的情况下,找到两个不同的整数a和b,使得它们的和最大,并且满足特定的数学条件。 ... [详细]
  • 本文探讨了 C++ 中普通数组和标准库类型 vector 的初始化方法。普通数组具有固定长度,而 vector 是一种可扩展的容器,允许动态调整大小。文章详细介绍了不同初始化方式及其应用场景,并提供了代码示例以加深理解。 ... [详细]
  • 本实验主要探讨了二叉排序树(BST)的基本操作,包括创建、查找和删除节点。通过具体实例和代码实现,详细介绍了如何使用递归和非递归方法进行关键字查找,并展示了删除特定节点后的树结构变化。 ... [详细]
author-avatar
阿蕓
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有