面向C语言题库的相似试题辨别方法研究

2017-12-29 13:16刘全超山西农业大学信息学院
数码世界 2017年5期
关键词:词法题库布尔

刘全超 山西农业大学信息学院

面向C语言题库的相似试题辨别方法研究

刘全超 山西农业大学信息学院

按照传统的教育模式,教师的教学方式主要是面对面教学,练习和考试,其一律采用手动出题,手工阅卷的方式,这种教学方式不仅效率低下,而且限制了教学的灵活度。近年来,随着计算机技术的网路技术的高速发展,无纸化考试系统广泛的运用于远程教育系统中,这种运用主要是通过电子题库实现的。在这种电子题库中,手工录入大量的试题,一次录入就可以长期的使用,但是随之试题越来越多,越来越复杂,出现了大量重复的试题,导致在录入过程中,无法被筛选和去除,如何在一定的程度上有效的去除电子题库中重复的或者相似的试题,这个节约资源,提高考试和试卷质量的一个十分重要的问题。本文根据这个问题,以C语言试题为研究对象,逐渐的以语句的相似度为核心的电子试题去解决这个问题。

C语言题库 语句相似度 词相似度

1 试题预处理和相似模型的建立

1.1 词法标注研究

词法标注研究是对中文内容处理,分析和理解的必要条件,词法的优劣直接影响程序后面的处理的结果,通过词法标注可以得到语句中的单个词汇的词性,和词义信息。目前这种技术已经非常成熟,在许多词性标注程序可以使用,词法分析过程中采用的现有分词磁性的标注接口。这次分词词性标注接口用了题库中抽取的一系列C语言试题进行测试,这个测试结果能够对很多的词切分的很好,能够满足程序的后面一系列的操作要求。

1.2 C语言词汇提取

词法标注的词表不只是单单针对C语言,所以在这种结果下,对于一些专业词汇的切分效果不是很让人满意,像数组这种C语言中经常出现的词汇被切分成了多个词汇,而这样的词汇是一定词汇上不可分割的,如果强行分割,会给后面的程序操作带来各种各样的麻烦,所以要单独处理C语言词汇。为了对词法标注后的试题做出进一步的处理,识别其中的专业词汇,必须建立一个C语言的专业词汇表,这个词汇表必须包含这个语言的各个方面。然后,根据后续处理,需要将这个专业的领域词汇分为两类,第一类为标志性的专有名词,第二类为一般的普通的词汇。当第一类专有词汇出现在试题中时,因为是专有名词,C语言试题对这种情况的处理方式就会出现有所不同,因此,这样两个的试题相似的可能性就会比较大,那么,在计算这种试题时,就要赋予这种试题最高的权重。第二类词汇一般涉及各种程序操作的相关词汇,对于这种词汇,就赋予一个较高的权重。

2 相似度模型

相似度模型是在一定的运算程序下,找出合适的算法计算试题相似度,通过相似度来判断是否出现了重复,这个模型是研究相似度的核心问题。语言相似度是一个非常抽象的概念,因为他脱离了实际的具体的应用背景谈论相似度,导致在一定的程度上很难得到一个统一的定义。然而在一定的实际生活中,在各种各样的具体应用中,相似度的含义也有所不同。相似度模型对于不同的应用有不同的要求,虽然人们曾提出大量的相似度的设计方法,但是对与各个不同的领域最佳的,统一的计算方法并不存在。

3 相似度模型分析

3.1 布尔模型

布尔模型是一种基于集合论和布尔代数的一种简单模型。因为集合的定义是非常直观的,所以这种模型计算起来是非常简单易懂,快速的。这种模型虽然十分简单,比较容易实现,但是也有它的不足,它很粗糙的计算实体的相似度,导致结算结果和实际的要求会出现很大的偏差。

3.2 向量模型

向量模型是针对布尔模型中的一些缺点和不足,相应提出的一个适合部分匹配的框架,在布尔模型中,只有相关和不相关两种模型但是在向量模型中,不同的词汇有一个相似度值,在这种模式中,要首先把试题表示为相应的向量。

4 面向C语言的相似度模型

布尔模型是用来计算试题的相似度时虽然速度快,效率高,但是计算过程粗糙,计算结果不准确,一些意思相似的词,依然意思相似,但是写法还是有所不同,布尔模型则在计算时自动忽略了这个差异性,不能完全的反应试题的相似程度,因此不适合在这种专业的领域上使用。TF*IDF是一种运用在信息检索常用的方法,这种方法只是一种统计的方法,只有在句子包含的词有很多时,相似的词有很多时,这种方法才能体现它的价值。但是在计算C语言试题的相似度时,面对的是单个的句子,句子包含的词的数量不能够体现这种方法的效果。基于词的相似度模型主要是第一时间要计算实体之间的词汇的相似度,虽然这考虑了语句意思,但是却忽略了句法结构的信息,并没有从整个句子上考虑句子的相似度。

结语:这种相似模型实现了对C语言试题的处理和数学模型的建立。第一,对试题进行了词法标注,在这个基础上,对语言词汇进行了提取,经过预处理的试题为一系列相似度的模型的建立提供了非常重要的基础。

猜你喜欢
词法题库布尔
布尔的秘密
国家职业技能鉴定铸造工职业题库开发成果审定会在沈阳召开
“整式的乘法与因式分解”优题库
我不能欺骗自己的良心
脑力急旋风
应用于词法分析器的算法分析优化
狼狗布尔加
猿题库
词法分析程序的设计与实现研究
2010年高考英语“相似”考题例析