[DAY 25] 估计学生战力

如同前几天所说
「估计战力」是可以依照想看的不同能力去做的
例如我们把题目先依照章节进行分类
再去看看学生在不同章节下的能力
就可以用这个方法去做


学生战力资料库

可以先创建一个试算表的分页
并依喜好命名,此分页的工作就是当作学生战力的资料库

基本栏位就是
UID、学生姓名、能力栏位(对我而言,即章节名称)
如果是第一次测验
可以取初始值为0


更新学生战力

若不选择使用答对率作为题目战力的估计
可以把题目的初始值也设为0

const K = 10; // 更新Elo时的敏感参数,太小则不好收敛,太大则不够稳定

function correctProb(elo, ques_diff, choice_num){
  var guess; // 猜测度
  if (choice_num!=0){
    guess = 1/choice_num;
  } else{
    guess = 0;
  };
  return guess + (1-guess)/(1+Math.exp(-(elo - ques_diff)));
}

function refreshElo(correct, elo, ques_diff, choice_num){
  var prob = correctProb(elo, ques_diff, choice_num);
  return K*(correct - prob);
}

其中,elo : 学生战力,ques_diff : 题目难度,choice_num : 选项数
最後回传的 K*(correct - prob) 就是要更新的幅度
学生为 elo := elo + K*(correct - prob)
题目难度为 ques_diff := ques_diff + K*(correct - prob)


除了用章节当作能力外
也可以考虑用知识、了解、评监什麽的六个指标(我已经忘了哪些了~XD)
不过要用这些指标的话
同时在自己的题目中也要标签出这些指标
对我来说太麻烦所以我只对章节进行能力估计~


<<:  卡夫卡的藏书阁【Book16】- Kafka - KafkaJS 生产者 - 4

>>:  [day15]Vue实作-bootstrapVue建立导览列

18 - Traces - 观察应用程序的效能瓶颈 (2/6) - 使用 APM-Integratoin-Testing 建立 Elastic APM 的模拟环境

Traces - 观察应用程序的效能瓶颈 系列文章 (1/6) - Elastic APM 基本介绍...

OK集#27-白话文Excel-求状元、榜眼及探花的large

大家跟Large是否有点熟呀~~~就什麽大什麽大的嘛~~~ 喂~~但这里说的是Excel,作者呀~...

[iT铁人赛Day11]JAVA回圈

这次要来细讲回圈了 上次说到回圈有分成:1. for回圈,2. while回圈以及3. do whi...

Day4简单实例练习

今天要介绍透过CDN连结的方式快速运用react,简单建立一个react component。 CD...

无线网路篇(Wi-Fi)

今天内容跟我原本预期的,出入满多QQ 因为先前有买一的书,叫「黑客大揭秘 近源渗透测试」, 本来打算...