当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]计算机自适应题库实现

计算机自适应测验(Computerized Adaptive Testing,简称CAT)是近年来发展起来的一种新的测验形式。计算机自适应测验不同于传统的纸笔测验,它的测验试题的呈现和被试对试题的解答都是通过计算机完成的。计算机自适应测验也不同于一般的计算机化测验,计算机在测验过程中不光是呈现题目,输入答案、自动评分、得出结果,而且根据被试对试题的不同回答,它能自动选择最适宜的试题让被试回答,最终达到对被试能力作出最恰当的估计。本文将简单介绍计算机自适应测验的原理和方法。

  1  题库的分析与实现

  1.1  原理

  计算机自适应题库要解决的关键问题是建立适合每一个应试者能力的个性化测验。

  一般将测量理论分为经典测量理论、概化理论和项目反应理论三大类,或称三种理论模型。人们将以真分数理论(True Score Theory)为核心理论假设的测量理论及其方法体系,统称为经典测验理论(Classical Test Theory,CTT),也称真分数理论。它对建立试卷、考分转换、等值等均有一套较为完整的方法。但随着测验实践的深入,此理论暴露了难以克服的弱点: (1)题目难度、区分度等严重依赖于应试者;(2)对应试者的某项能力或特质水平的估计值,只有当所有应试者使用的都是同一个或并行测验时才是可以比较的,而对于同一能力或特质的不同测验的测量效果则无法进行直接比较;(3)在应用方面,经典测量理论也表现出许多不足。

  项目反应理论(item response theory)也称潜在特质理论或潜在特质模型,是一种现代心理测量理论,其意义在于可以指导项目筛选和测验编制。项目反应理论假设被试有一种“潜在特质”,潜在特质是在观察分析测验反应基础上提出的一种统计构想,在测验中,潜在特质一般是指潜在的能力,并经常用测验总分作为这种潜力的估算。项目反应理论认为被试在测验项目的反应和成绩与他们的潜在特质有特殊的关系。但在实际考试中,存在有应试者猜题的因素,因此本题库中采用了特征函数的三参数模式。三参数模式的公式为:

  式中,D=1.702;θ是应试者能力值;a是题目的区分度;b是题目的难度;c是题目的猜测系数;P(θ)能力为θ的人答对此题目的概率。

  根据特征函数可画出题目的特征曲线,图1为典型的三参数模式的特征曲线。从该图中可以看出:

  (1)a参数,即特征曲线的斜率。它的值越大说明题目对应试者的区分程度越高。

  (2)b参数,即特征曲线在横坐标上的投影。

  (3)c参数,即特征曲线的截距。它的值越大,说明不论应试者能力高低,都容易猜对本道题目。

  项目反应理论同经典测量理论相比,最大优点就是项目参数的不变性。对项目各参数值的确定,采用了2种途径:一是经试测后进行统计分析,另一种是由专家进行评估后,再采用统计方法确定参数。这2种途径都存在着统计中使用的样本采集异常困难的问题,因此本题库设计中使用CTT采集样本,结合IRT的三参数模式,确定了试题的3个质量参数。

  1.2  题库的建立

  本题库建立过程中,首先要录入试题编号及题干等信息,其次录入参加试题参数测试人员做题情况的信息,最后进行试题的三质量参数测试,并将测试结果写入数据库。

  1.3  模块设计

  本题库中的模块及功能如下:

  (1)试题质量参数测试

  该模块包括试题的CTT参数计算和IRT参数计算等功能。

  ①试题的CTT参数计算。根据参加试题参数测试人员的做题情况,使用CTT获取标准分Z:

  式中,RH、RL分别表示高分组和低分组通过该题的人数;n为每组的人数。

  ②试题的IRT参数计算。对IRT能力参数和质量参数的估计如下:

  首先,按下列方式为能力参数、质量参数指定初值:

  IRT能力参数的初值=经典测量理论中的标准分Z;

  IRT区分度参数的初值=经典测量理论中的难度值

  +2(2是比例因子),其中难度;

  IRT猜测参数的初值=试题j的可选项数倒数。

  然后,按以下步骤进行迭代运算:

  ●把3个质量参数看作已知值,用极大似然估计法[2]估算出能力参数;

  ●将上一步中估需出的能力参数作为已知值,用极大似然估计法估算出3个质量参数;

  ●判别结束条件是否满足,若满足,则最后1次的估计值即为最终估计值;若不满足,则返回第1步继续迭代运算。结束条件可以是指定的迭代次数,也可以是趋于稳定的参数值。

  (2)试题库维护

  该模块包括试题、样本信息的录入和增添等功能。

  ①试题和样本信息的录入。该功能包括试题录入和样本信息录入,其中前者录入的是试题编号及题干等信息;后者录入的是参加试题参数测试人员做题情况的信息。

  ② 试题和样本信息的增添。试题管理员可以及时添加样本信息和试题。系统管理员可以根据情况重新计算试题的质量参数。

1.4  数据库表的结构设计

  在本系统建立的自适应试题库中,有单选题、多选题、判断题等3类题型。在单选题题型中需要用到单选表single_choice、单选分析表single_choice_analysis。单选表、单选分析表single_choice_analysis以及二表之间的主外键关系如图2所示。

  本系统涉及到的人员有教师、管理员、应试者和参加试题参数测试人员,他们的相关信息如图3所示。其中,student_info表用来存放应试者和参加试题参数测试人员的基本信息, login表用来存放所有人员的登录信息。1.5 题库的实现

 

  以经典测量理论(CTT)和项目反应理论(IRT)为基础,使用三参数模式建立了计算机自适应题库,从而能够根据题目的参数及应试者的反应情况估计应试者的能力参数,然后根据“最大信息量原则”从题库中选取符合应试者能力的题目进行测试。

  由于篇幅有限,下面只给出其中的几个实现算法。[!--empirenews.page--]

  (1) 计算一阶导数的函数

  yijiedaoshu(parameters para[ ],integer j, integer n),返回 double 类型的值。其中parameters{ double a,double b,double c,double  ability,double  u}是一个结构体,由某试题的三质量参数a、b、c、应试者当前能力值 ability和做题情况u 组成。

  该函数的功能是计算对某试题的第j次迭代的一阶导数,用于计算具备初始能力值ability的受测者的真实能力值。实现代码如下:

  double result;

  int i;

  for i=1 to n

  result +=  para[i].a * (para[i].u - calculate(para[i].  a,para[i].b,para[i].c,para[i].ability)) & * (calculate

  (para[i].a,para[i].b,para[i].c,para[i].ability) - para  [i].c)

  next i

  if (calculate(para[j].a,para[j].b,para[j].c,para[j].ability))

  * (1 - para[j].c) <> 0 then result = (1.702 *

  result) / (calculate(para[j].a,para[j].b,para[j].c,para [j].ability)) & *(1 - para[j].c);

  else

  MessageBox(“错误提示”,“错误编号:005~r~n计算错误!程序终止!”);

  halt;

  end if

  // 第j次迭代一阶导

  return result

  (2) 计算概率的函数

  calculate(double a ,double b, double c,double ability),返回double 类型的值。

  该函数的功能是计算某试题被答对的概率。实现代码如下:

  double resultnum,mid;

  mid= - 1.702*a*(ability - b);

  if (1+exp(mid)) < > 0 then

  resultnum=(1 - c)/(1+exp(mid))+c;

  else

  MessageBox(“错误提示”,“错误编号:

  006~r~n计算 错误!程序终止

  !”);

  halt;

  end if

  return resultnum;

  (3) 计算信息函数

  information(parameters para[],integer j, double  ability),返回double类型的值。

  该函数的功能是用来计算某试题的信息量,用来为具备ability初始能力值的应试者选择合适的下一道试题。实现代码如下:

  double result=0

  result = (1.702 * 1.702 * para[j].a * para[j].a) * (1 -

  para[j].c);

  if ((para[j].c + exp(1.702 * para[j].a * ((1 - (calculate

  (para[j].a,para[j].b,para[j].c,ability)) &-para[j].b))))* (1 + exp(- 1.702 * para[j].a * (1 -

  (calculate(para[j].a,para[j].b,para[j].c,ability)) & - para[j].b))) * (1 + exp(- 1.702 * para[j].a * (1 -

  (calculate(para[j].a,para[j].b,para[j].c,ability)) &- para[j].b)))) < > 0 then

  result=result/((para[j].c+exp(1.702*para[j].a*((1-(calcu- late(para[j].a,para[j].b,para[j].c,&

  ability))-para[j].b))))*(1+exp(-1.702*para[j].a*(1 - (calculate(para[j].a,para[j].b,para[j].c,&

  ability))-para[j].b)))*(1+exp(-1.702*para[j].a * (1 -  (calculate(para[j].a,para[j].b,para[j].c,&

  ability)) - para[j].b))))

  else

  MessageBox(“错误提示”,“错误编号:007~r~n计算错误!程序终止!”);

  halt;

  end if

  return result

  本计算机自适应题库以经典测量理论和项目反应理论为基础,采用Newton-Raphson迭代法,解决了基于IRT的考试系统建设中出现的系统题库建设的最大难题。
 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭