資源簡介
python實現的自適應cat的數學模型-項目反應理論 1.初始能力值確定 2.最大信息量計算 3.解極大似然函數-牛頓迭代法
代碼片段和文件信息
import?math
#?作答反應模式,非0即1
uList=[1111111111111111111111111111111111111111]
#?能力,初始得能力值θ由不計入自適應算法得前四道題計算得到
abList=[2]
#?難度,對應每個題的難度系數,從第五題開始
diffList=[-2.9]
#?牛頓迭代法求解能力值
def?calculate_ability(uListabListdiffList):
????i=0
????x1=0
????x2=0
????while?i?????????p=calculate_p(diffList[i]abList[i])
????????x1+=(uList[i]-p)
????????x2+=(p*(p-1))
????????ab_new=abList[-1]-(x1/x2)
????????diffList.append(diffList[i]+0.1)
????????abList.append(ab_new)
????????i?+=?1
????return?abList
#?求解題目正確作答概率(單參數模型)
def?calculate_p(
- 上一篇:隨機生成50000個不重復的手機號碼
- 下一篇:黃金分割法(python)
評論
共有 條評論