DINA模型解析

1 引言
2 DINA模型
3 DINA模型参数的边缘极大似然估计
reference
1 引言

近年来随着在线教育中试题资源数量爆炸式的增长,学生很难在海量的试题资源中找到合适的试题,因此面向学生的试题推荐方法应运而生。一些现代推荐系统采用基于模型协同过滤的推荐方法中矩阵分解技术进行推荐,但是可解释性较差,因此大多与认知诊断模型相结合。在认知心理学中,认知诊断模型可以较好地从知识点层面对学生的认知状态进行建模。现有的认知诊断模型包括连续型和离散型。其中,项目反应理论 ( Item Response Theory,IRT) 是一种典型的连续型认知诊断模型。它根据学生答题情况,通过对试题和学生进行联合建模,来推出试题参数以及学生潜在能力。DINA 模 型 ( Deterministic Inputs,Noisy“And”gate model) 是一种典型的离散型认知诊断模型。该模型将学生描述成一个多维的知识点掌握向量,从学生实际作答结果入手进行诊断。由于 DINA 模型简单,参数的可解释性较好,且 DINA 模型的复杂性不受属性个数的影响。

2 DINA模型

这里要讨论的DINA(deterministic input,noisy “and” gate)模型是属于认知诊断模型中的潜在分类模型。DINA模型适用于对二值计分项目测验进行认知诊断。在这里我们用 DINA模型 - 图1来表示第DINA模型 - 图2 个学生对第道题的回答情况。当 DINA模型 - 图3时表示回答正确,表示回答错误。表示在正确回答第 道题时是否需要知识点,表示需要,DINA模型 - 图4表示不需要。DINA模型 - 图5表示第DINA模型 - 图6个学生所具备的知识点向量,这里的表示所有有关的属性个数,当这个向量中的第个元素为1时表示第个被试者掌握了第个属性,当这个向量中的第DINA模型 - 图7个元素为0时表示第个被试者没有掌握第 个属性,即 DINA模型 - 图8%22%20aria-hidden%3D%22true%22%3E%0A%20%3Cuse%20xlink%3Ahref%3D%22%23E1-MJMATHI-3B1%22%20x%3D%220%22%20y%3D%220%22%3E%3C%2Fuse%3E%0A%3Cg%20transform%3D%22translate(640%2C-150)%22%3E%0A%20%3Cuse%20transform%3D%22scale(0.707)%22%20xlink%3Ahref%3D%22%23E1-MJMATHI-69%22%20x%3D%220%22%20y%3D%220%22%3E%3C%2Fuse%3E%0A%20%3Cuse%20transform%3D%22scale(0.707)%22%20xlink%3Ahref%3D%22%23E1-MJMATHI-6B%22%20x%3D%22345%22%20y%3D%220%22%3E%3C%2Fuse%3E%0A%3C%2Fg%3E%0A%20%3Cuse%20xlink%3Ahref%3D%22%23E1-MJMAIN-3D%22%20x%3D%221631%22%20y%3D%220%22%3E%3C%2Fuse%3E%0A%20%3Cuse%20xlink%3Ahref%3D%22%23E1-MJMAIN-31%22%20x%3D%222687%22%20y%3D%220%22%3E%3C%2Fuse%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E#card=math&code=%7B%5Calpha%20%7Bik%7D%7D%20%3D%201&id=FRzxc)表示学生掌握知识点,![](https://cdn.nlark.com/yuque/__latex/c8320945f22f87f9b346151f790687b5.svg#card=math&code=%7B%5Calpha%20%7Bik%7D%7D%20%3D%200&id=mw335)表示未掌握。这里的属性可以包括技能、或是表达又或是认知过程。大多数认知诊断模型的执行都需要建立一个DINA模型 - 图9 行列的DINA模型 - 图10矩阵,在矩阵中每一个元素是1或者是0.我们把DINA模型 - 图11矩阵中的 j j j行 k k k列元素表示成DINA模型 - 图12,表示在正确回答第DINA模型 - 图13个项目时是否需要属性DINA模型 - 图14,当 DINA模型 - 图15时表示需要,当DINA模型 - 图16是表示不需要。由此可见矩阵是十分重要的,它可以被看做是一个认知设计阵,它明确地给出了每个项目关于认知的详细信息。为方便推导,更多的符号描述参考下表。

符号表示

符号 描述
X 学生试题得分矩阵
X_{ij} 学生i在试题j上的得分
Q 知识点考察矩阵
q_{jk} 试题j对知识点k的考察情况
\alpha _i 学生i的知识点掌握情况
\alpha _{ik} 学生i对知识点k的掌握情况
\eta _{ij} 学生i在试题j的潜在作答情况

学生i在试题j的潜在作答情况:
DINA模型 - 图17


学生 i在试题 j 的潜在作答情况:
(2.1) η i j = ∏ k = 1 K α i k q j k {\eta {ij}} = \prod\limits{k = 1}^K {\alpha {ik}^{{q{jk}}}} {\rm{ }} \tag{2.1}
η
ij

k=1

K

α
ik
q
jk

  1. <br />(2.1)

η i j = 1 {\eta_{ij}=1} η
ij

=1 表示学生 i i i答对试题 j j j,从公式(2.1)得出学生 i i i已掌握试题 j j j包含的全知识点;为0表示答错,学生 i i i对于试题 j j j中的知识点至少有一个没有掌握。
DINA模型联合试题知识点关联矩阵- Q Q Q矩阵和学生答题情况 X X X矩阵对学生进行建模,引入试题参数(slip、guess):

s j {sj} s
j

:学生在掌握了试题 j j j所考察的所有知识点的情况下做错的概率;
g j {g_j} g
j

:学生在并不完全掌握试题 j j j所考察的所有知识点下猜对的概率。
在已知学生 i i i的知识点掌握情况 α i {\alpha
{i}} α
i

的条件下,答对试题 j j j的概率:
(2.2) P j ( α i ) = P ( X i j = 1 ∣ α i ) = g j 1 − η i j ( 1 − s j ) η i j {Pj}({\alpha _i}) = P({X{ij}} = 1|{\alpha i}) = g_j^{1 - {\eta {ij}}}{(1 - {sj})^{{\eta {ij}}} } \tag{2.2}
P
j


i

)=P(X
ij

=1∣α
i

)=g
j
1−η
ij

  1. <br />(1−s<br />j<br /> <br />)<br />η<br />ij<br />

(2.2)

3 DINA模型参数的边缘极大似然估计

DINA模型是在给定了学生的知识点掌握向量 α i {\alpha{i}} α
i

(也称之为属性向量)下的反应数据 X i j {X
{ij}} X
ij

的条件分布。在这里假设给定属性向量的条件下学生对每道题的反应是独立的,因此得 X i {X{i}} X
i

的条件分布:
(2.3) L ( X i ∣ α i ) = ∏ j = 1 J P j ( α i ) X i j [ 1 − P j ( α i ) ] 1 − X i j L({X_i}|{\alpha _i}) = \prod\limits
{j = 1}^J {{Pj}{{({\alpha _i})}^{{X{ij}}}}} {[1 - {Pj}({\alpha _i})]^{1 - {X{ij}}}} \tag{2.3}
L(X
i

∣α
i

)=
j=1

J

P
j


i

)
X
ij

[1−P
j


i

)]
1−X
ij

(2.3)

对于 I I I个学生,反应数据 X X X的条件分布:
(2.4) L ( X ∣ α ) = ∏ i = 1 I L ( X i ∣ α i ) = ∏ i = 1 I ∏ j = 1 J P j ( α i ) X i j [ 1 − P j ( α i ) ] 1 − X i j L(X|\alpha ) = \prod\limits{i = 1}^I {L({X_i}|{\alpha _i})} = \prod\limits{i = 1}^I {\prod\limits{j = 1}^J {{P_j}{{({\alpha _i})}^{{X{ij}}}}{{[1 - {Pj}({\alpha _i})]}^{1 - {X{ij}}}}} } \tag{2.4}
L(X∣α)=
i=1

I

L(X
i

∣α
i

)=
i=1

I

j=1

J

P
j


i

)
X
ij

[1−P
j


i

)]
1−X
ij

(2.4)

接下来为了获得 β ^ = ( s ^ 1 , g ^ 1 , ⋯   , s ^ J , g ^ J ) \hat \beta = ({\hat s_1},{\hat g_1},\cdots,{\hat s_J},{\hat g_J})
β
^

=(
s
^

1

,
g
^

1

,⋯,
s
^

J

,
g
^

J

),我们给出反应数据的边际似然如下:
(2.5) L ( X ) = ∏ i = 1 I L ( X i ) = ∏ i = 1 I ∑ l = 1 L ( X i ∣ α l ) P ( α l ) L(X) = \prod\limits{i = 1}^I {L({X_i})} = \prod\limits{i = 1}^I {\sum\limits_{l = 1}^L {({X_i}|{\alpha _l})P({\alpha _l})} } \tag{2.5}
L(X)=
i=1

I

L(X
i

)=
i=1

I

l=1

L

(X
i

∣α
l

)P(α
l

)(2.5)

上式中的 L ( X i ) L({X_i}) L(X
i

)是第 i i i个学生的反应向量 X i {X_i} X
i

的边际似然, P ( α l ) P({\alpha _l}) P(α
l

)是属性向量的先验概率,并且 L = 2 k L = {2^k} L=2
k
。通过使用EM算法以边缘似然为基础进行参数估计。接下来DINA模型的参数估计的详细算法被给出。
在(2.2)中式中正确的反应概率 P j ( α i ) {P_j}({\alpha _i}) P
j


i

)可以被重新表示为:
(2.6) P j ( α l ) = { g j i f α l , q j ≠ q j , q j 1 − s j i f α l , q j = q j , q j {P_j}({\alpha _l})=
{gj1−sjamp;ifα,lqj≠q,jqjamp;ifα,lqj=q,jqj
{
g
j
amp;if
α
l
,
q
j

q
j
,
q
j
1

s
j
amp;if
α
l
,
q
j

q
j
,
q
j

\tag{2.6}
P
j


l

)={
g
j

1−s
j

ifα
l
,

q
j

  1. <br />=q<br />j<br />,<br /> <br />q<br />j<br />

ifα
l
,

q
j

=q
j
,

q
j

  1. <br />(2.6)

上式中 q j q_j q
j

是矩阵中的第 j j j行。当 α l , q j = q j , q j {\alpha_l,{q_j}=q_j,q_j} α
l
,

q
j

=q
j
,

q
j

时, η i j = 1 {\eta_ij=1} η
i

j=1。当 α l , q j ≠ q j , q j {\alpha_l^,{q_j}\ne q_j^,q_j} α
l
,

q
j

  1. <br />=q<br />j<br />,<br /> <br />q<br />j<br /> <br />, η i j = 0 {\eta_ij=0} η<br />i<br /> <br />j=0。为了方便,我们令 β j 0 = g j {\beta _{j0}} = {g_j} β<br />j0<br /> <br />=g<br />j<br /> <br />, β j 1 = s j {\beta _{j1}} = {s_j} β<br />j1<br /> <br />=s<br />j<br /> <br />,为了获得的极大似然估计,我们写出对数似然函数:

(2.7) l ( X ) = log ⁡ ∏ i = 1 I L ( X i ) = ∑ i = 1 I log ⁡ L ( X i ) l(X)=\log \prod{i=1}{I}{L(X_i)}=\sum{i=1}{I}\log{L(X_i)}\tag{2.7}
l(X)=log
i=1

I

L(X
i

)=
i=1

I

logL(X
i

)(2.7)

进而
(2.8) ∂ l ( X ) ∂ β j η = ∑ i = 1 I ∂ L ( X i ) ∂ β j η / L ( X i ) = ∑ i = 1 I 1 L ( X i ) ∑ l = 1 L P ( α l ) ∂ L ( X i ∣ α l ) ∂ β j η
∂l(X)∂βjηamp;=∑i=1I∂L(Xi)∂βjη/L(Xi)amp;=∑i=1I1L(Xi)∑l=1LP(αl)∂L(Xi|αl)∂βjη

l
(
X
)

β
j
η
amp;=

i

1
I

L
(
X
i
)

β
j
η
/
L(
X
i
) amp;=

i

1
I
1
L
(
X
i
)

l

1
L
P
(
α
l
)

L
(
X
i
|
α
l
)

β
j
η

\tag{2.8}
∂β

∂l(X)

=
i=1

I

∂β

∂L(X
i

)

/L(X
i

)

i=1

I

L(X
i

)
1

l=1

L

P(α
l

)
∂β

∂L(X
i

∣α
l

)

  1. <br />(2.8)

现在
(2.9) ∂ L ( X i ∣ α l ) ∂ β j η = ∏ j , ≠ j P j , ( α l ) X i j , [ 1 − P j , ( α l ) ] 1 − X i j , ∂ P j ( α l ) X i j [ 1 − P j ( α l ) ] 1 − X i j ∂ β j η \frac{\partial L(Xi|\alpha_l)}{\partial\beta{j\eta}}=\prod{j^,\ne j}{{P{{j^,}}}{{({\alpha l})}{{X{i{j,}}}}}{{[1 - {P{{j^,}}}({\alpha _l})]}^{1 - {X{i{j^,}}}}}}{\frac{{\partial {Pj}{{({\alpha _l})}^{{X{ij}}}}{{[1 - {Pj}({\alpha _l})]}^{1 - {X{ij}}}}}}{{\partial {\beta _{j\eta }}}}} \tag{2.9}
∂β

∂L(X
i

∣α
l

)

j
,

  1. <br />=j<br /><br /> <br />P<br />j<br />,
  2. <br /><br />l<br /> <br />)<br />X<br />ij<br />,

[1−P
j
,

  1. <br /><br />l<br /> <br />)]<br />1−X<br />ij<br />,

∂β

∂P
j


l

)
X
ij

[1−P
j


l

)]
1−X
ij

  1. <br />(2.9)

对于(2.9)式等号右边的分式等于
(2.10) [ 1 − P j ( α l ) ] 1 − X i j X i j P j ( α l ) X i j − 1 ∂ P j ( α l ) ∂ β j η + P j ( α l ) X i j ( 1 − X i j ) [ 1 − P j ( α l ) ] 1 − X i j − 1 − ∂ P j ( α l ) ∂ β j η = P j ( α l ) X i j [ 1 − P j ( α l ) ] 1 − X i j ∂ P j ( α l ) ∂ β j η [ X i j P j ( α l ) − 1 − X i j 1 − P j ( α l ) ] = P j ( α l ) X i j [ 1 − P j ( α l ) ] 1 − X i j ∂ P j ( α l ) ∂ β j η [ X i j − P j ( α l ) P j ( α l ) ( 1 − P j ( α l ) ) ] {[1 - {Pj}({\alpha _l})]^{1 - {X{ij}}}}{X{ij}}{P_j}{({\alpha _l})^{{X{ij}} - 1}}\frac{{\partial {Pj}({\alpha _l})}}{{\partial {\beta {j\eta }}}} + {Pj}{({\alpha _l})^{{X{ij}}}}(1 - {X{ij}}){[1 - {P_j}({\alpha _l})]^{1 - {X{ij}} - 1}}\frac{{ - \partial {Pj}({\alpha _l})}}{{\partial {\beta {j\eta }}}} \ = {Pj}{({\alpha _l})^{{X{ij}}}}{[1 - {Pj}({\alpha _l})]^{1 - {X{ij}}}}\frac{{\partial {Pj}({\alpha _l})}}{{\partial {\beta {j\eta }}}}\left[ {\frac{{{X{ij}}}}{{{P_j}({\alpha _l})}} - \frac{{1 - {X{ij}}}}{{1 - {Pj}({\alpha _l})}}} \right] \ = {P_j}{({\alpha _l})^{{X{ij}}}}{[1 - {Pj}({\alpha _l})]^{1 - {X{ij}}}}\frac{{\partial {Pj}({\alpha _l})}}{{\partial {\beta {j\eta }}}}\left[ {\frac{{{X_{ij}}{\rm{ - }}{P_j}({\alpha _l})}}{{{P_j}({\alpha _l})(1 - {P_j}({\alpha _l}))}}} \right]{\rm{ }} \tag{2.10}
[1−P
j


l

)]
1−X
ij

X
ij

P
j


l

)
X
ij

−1

∂β

∂P
j


l

)

+P
j


l

)
X
ij

(1−X
ij

)[1−P
j


l

)]
1−X
ij

−1

∂β

−∂P
j


l

)

=P
j


l

)
X
ij

[1−P
j


l

)]
1−X
ij

∂β

∂P
j


l

)

[
P
j


l

)
X
ij

  1. <br /><br />1−P<br />j<br /> <br /><br />l<br /> <br />)<br />1−X<br />ij<br />
  2. <br />]<br />=P<br />j<br /> <br /><br />l<br /> <br />)<br />X<br />ij<br />

[1−P
j


l

)]
1−X
ij

∂β

∂P
j


l

)

[
P
j


l

)(1−P
j


l

))
X
ij

−P
j


l

)

](2.10)

在把(2.10)式代入(2.9)有
(2.11) ∂ L ( X i ∣ α l ) ∂ β j η = [ ∏ j = 1 J P j ( α l ) X i j [ 1 − P j ( α l ) ] 1 − X i j ] ∂ P j ( α l ) ∂ β j η [ X i j − P j ( α l ) P j ( α l ) ( 1 − P j ( α l ) ) ] = L ( X i ∣ α l ) ∂ P j ( α l ) ∂ β j η [ X i j − P j ( α l ) P j ( α l ) ( 1 − P j ( α l ) ) ] \frac{{\partial L({Xi}|{\alpha _l})}}{{\partial {\beta {j\eta }}}} = \left[ {\prod\limits{j = 1}^J {{P_j}{{({\alpha _l})}^{{X{ij}}}}{{[1 - {Pj}({\alpha _l})]}^{1 - {X{ij}}}}} } \right]\frac{{\partial {Pj}({\alpha _l})}}{{\partial {\beta {j\eta }}}}\left[ {\frac{{{X{ij}} - {P_j}({\alpha _l})}}{{{P_j}({\alpha _l})(1 - {P_j}({\alpha _l}))}}} \right] \ {\rm{ }} = L({X_i}|{\alpha _l})\frac{{\partial {P_j}({\alpha _l})}}{{\partial {\beta {j\eta }}}}\left[ {\frac{{{X_{ij}} - {P_j}({\alpha _l})}}{{{P_j}({\alpha _l})(1 - {P_j}({\alpha _l}))}}} \right]{\rm{ }} \tag{2.11}
∂β

∂L(X
i

∣α
l

)

=[
j=1

J

P
j


l

)
X
ij

[1−P
j


l

)]
1−X
ij

]
∂β

∂P
j


l

)

[
P
j


l

)(1−P
j


l

))
X
ij

−P
j


l

)

]
=L(X
i

∣α
l

)
∂β

∂P
j


l

)

[
P
j


l

)(1−P
j


l

))
X
ij

−P
j


l

)

](2.11)

在把(2.11)代入(2.8)得到
(2.12) ∂ l ( X ) ∂ β j η = ∑ l = 1 L ∂ P j ( α l ) ∂ β j η [ 1 P j ( α l ) ( 1 − P j ( α l ) ) ] ∑ i = 1 I L ( X i ∣ α l ) P ( α l ) L ( X i ) [ X i j − P j ( α l ) ] = ∑ l = 1 L ∂ P j ( α l ) ∂ β j η [ 1 P j ( α l ) ( 1 − P j ( α l ) ) ] ∑ i = 1 I P ( α l ∣ X i ) [ X i j − P j ( α l ) ] = ∑ l = 1 L ∂ P j ( α l ) ∂ β j η [ 1 P j ( α l ) ( 1 − P j ( α l ) ) ] [ ∑ i = 1 I P ( α l ∣ X i ) X i j − P j ( α l ) ∑ i = 1 I P ( α l ∣ X i ) ] = ∑ l = 1 L ∂ P j ( α l ) ∂ β j η [ 1 P j ( α l ) ( 1 − P j ( α l ) ) ] [ R j l − P j ( α l ) I l ]
∂l(X)∂βjηamp;=∑l=1L∂Pj(αl)∂βjη[1Pj(αl)(1−Pj(αl))]∑i=1IL(Xi|αl)P(αl)L(Xi)[Xij−Pj(αl)]amp;=∑l=1L∂Pj(αl)∂βjη[1Pj(αl)(1−Pj(αl))]∑i=1IP(αl|Xi)[Xij−Pj(αl)]amp;=∑l=1L∂Pj(αl)∂βjη[1Pj(αl)(1−Pj(αl))][∑i=1IP(αl|Xi)Xij−Pj(αl)∑i=1IP(αl|Xi)]amp;=∑l=1L∂Pj(αl)∂βjη[1Pj(αl)(1−Pj(αl))][Rjl−Pj(αl)Il]

l
(
X
)

β
j
η
amp;=

l

1
L

P
j
(
α
l
)

β
j
η
[
1
P
j
(
α
l
)
(
1

P
j
(
α
l
)
)
]

i

1
I
L
(
X
i
|
α
l
)
P
(
α
l
)
L
(
X
i
)
[
X
i
j

P
j
(
α
l
)] amp;=

l

1
L

P
j
(
α
l
)

β
j
η
[
1
P
j
(
α
l
)
(
1

P
j
(
α
l
)
)
]

i

1
I
P
(
α
l
|
X
i
)
[
X
i
j

P
j
(
α
l
)] amp;=

l

1
L

P
j
(
α
l
)

β
j
η
[
1
P
j
(
α
l
)
(
1

P
j
(
α
l
)
)
]
[

i

1
I
P
(
α
l
|
X
i
)
X
i
j

P
j
(
α
l
)

i

1
I
P
(
α
l
|
X
i
)
]
amp;=

l

1
L

P
j
(
α
l
)

β
j
η
[
1
P
j
(
α
l
)
(
1

P
j
(
α
l
)
)
]
[
R
j
l

P
j
(
α
l
)
I
l
]

{\tag{2.12}}
∂β

∂l(X)

=
l=1

L

∂β

∂P
j


l

)

[
P
j


l

)(1−P
j


l

))
1

]
i=1

I

L(X
i

)
L(X
i

∣α
l

)P(α
l

)

[X
ij

−P
j


l

)]

l=1

L

∂β

∂P
j


l

)

[
P
j


l

)(1−P
j


l

))
1

]
i=1

I

P(α
l

∣X
i

)[X
ij

−P
j


l

)]

l=1

L

∂β

∂P
j


l

)

[
P
j


l

)(1−P
j


l

))
1

][
i=1

I

P(α
l

∣X
i

)X
ij

−P
j


l

)
i=1

I

P(α
l

∣X
i

)]

l=1

L

∂β

∂P
j


l

)

[
P
j


l

)(1−P
j


l

))
1

][R
jl

−P
j


l

)I
l

]

(2.12)

这里的 P ( α l ∣ X i ) P({\alpha l}|{X_i}) P(α
l

∣X
i

)是第 i i i个学生拥有的第 l l l个属性向量的后验概率, I l = ∑ i = 1 I P ( α l ∣ X i ) I_l=\sum
{i=1}^{I}P(\alphal|X_i) I
l

=∑
i=1
I

P(α
l

∣X
i

)是学生拥有属性的期望, R j l = ∑ i = 1 I P ( α l ∣ X i ) X i j {R
{jl}} = \sum\limits{i = 1}^I {P({\alpha _l}|{X_i})} {X{ij}} R
jl

i=1

I

P(α
l

∣X
i

)X
ij

是正确回答第 j j j个题目的学生拥有属性 α l \alpha_l α
l

的期望。
对于试题 j j j,等式(2.12)可以被写作
(2.13) ∂ l ( X ) ∂ β j η = ∑ { α l : α l , q j ≠ q j , q j } ∂ P j ( α l ) ∂ β j η [ 1 P j ( α l ) ( 1 − P j ( α l ) ) ] [ R j l − P j ( α l ) I l ] + ∑ { α l : α l , q j = q j , q j } ∂ P j ( α l ) ∂ β j η [ 1 P j ( α l ) ( 1 − P j ( α l ) ) ] [ R j l − P j ( α l ) I l ] = ∂ g j ∂ β j η [ 1 g j [ 1 − g j ] ] ∑ { α l : α l , q j ≠ q j , q j } [ R j l − g j I l ] + ∂ ( 1 − s j ) ∂ β j η [ 1 ( 1 − s j ) s j ] ∑ { α l : α l , q j = q j , q j } [ R j l − ( 1 − s j ) I l ] = ∂ g j ∂ β j η [ 1 g j [ 1 − g j ] ] [ R j l ( 0 ) − g j I j l ( 0 ) ] + ∂ ( 1 − s j ) ∂ β j η [ 1 ( 1 − s j ) s j ] [ R j l ( 1 ) − ( 1 − s j ) I j l ( 1 ) ]
∂l(X)∂βjηamp;=∑{αl:α,lqj≠q,jqj}∂Pj(αl)∂βjη[1Pj(αl)(1−Pj(αl))][Rjl−Pj(αl)Il]amp;+∑{αl:α,lqj=q,jqj}∂Pj(αl)∂βjη[1Pj(αl)(1−Pj(αl))][Rjl−Pj(αl)Il]amp;=∂gj∂βjη[1gj[1−gj]]∑{αl:α,lqj≠q,jqj}[Rjl−gjIl]amp;+∂(1−sj)∂βjη[1(1−sj)sj]∑{αl:α,lqj=q,jqj}[Rjl−(1−sj)Il]amp;=∂gj∂βjη[1gj[1−gj]][R(0)jl−gjI(0)jl]+∂(1−sj)∂βjη[1(1−sj)sj][R(1)jl−(1−sj)I(1)jl]

l
(
X
)

β
j
η
amp;=

{
α
l
:
α
l
,
q
j

q
j
,
q
j
}

P
j
(
α
l
)

β
j
η
[
1
P
j
(
α
l
)
(
1

P
j
(
α
l
)
)
]
[
R
j
l

P
j
(
α
l
)
I
l
] amp;+

{
α
l
:
α
l
,
q
j

q
j
,
q
j
}

P
j
(
α
l
)

β
j
η
[
1
P
j
(
α
l
)
(
1

P
j
(
α
l
)
)
]
[
R
j
l

P
j
(
α
l
)
I
l
] amp;=

g
j

β
j
η
[
1
g
j
[
1

g
j
]
]

{
α
l
:
α
l
,
q
j

q
j
,
q
j
}
[
R
j
l

g
j
I
l
]
amp;+

(
1

s
j
)

β
j
η
[
1
(
1

s
j
)
s
j
]

{
α
l
:
α
l
,
q
j

q
j
,
q
j
}
[
R
j
l

(
1

s
j
)
I
l
]
amp;=

g
j

β
j
η
[
1
g
j
[
1

g
j
]
]
[
R
j
l
(
0
)

g
j
I
j
l
(
0
)
]
+

(
1

s
j
)

β
j
η
[
1
(
1

s
j
)
s
j
]
[
R
j
l
(
1
)

(
1

s
j
)
I
j
l
(
1
)
]

\tag{2.13}
∂β

∂l(X)

=

l


l
,

q
j

  1. <br />=q<br />j<br />,<br /> <br />q<br />j<br /> <br />}<br /><br />

∂β

∂P
j


l

)

[
P
j


l

)(1−P
j


l

))
1

][R
jl

−P
j


l

)I
l

]
+

l


l
,

q
j

=q
j
,

q
j

}

∂β

∂P
j


l

)

[
P
j


l

)(1−P
j


l

))
1

][R
jl

−P
j


l

)I
l

]

∂β

∂g
j

  1. <br />[<br />g<br />j<br /> <br />[1−g<br />j<br /> <br />]<br />1<br /> <br />]<br /><br />l<br /> <br /><br />l<br />,<br /> <br />q<br />j<br />
  2. <br />=q<br />j<br />,<br /> <br />q<br />j<br /> <br />}<br /><br /> <br />[R<br />jl<br /> <br />−g<br />j<br /> <br />I<br />l<br /> <br />]<br />+<br />∂β<br /><br />

∂(1−s
j

)

[
(1−s
j

)s
j

1

]

l


l
,

q
j

=q
j
,

q
j

}


[R
jl

−(1−s
j

)I
l

]

∂β

∂g
j

  1. <br />[<br />g<br />j<br /> <br />[1−g<br />j<br /> <br />]<br />1<br /> <br />][R<br />jl<br />(0)<br /> <br />−g<br />j<br /> <br />I<br />jl<br />(0)<br /> <br />]+<br />∂β<br /><br />

∂(1−s
j

)

[
(1−s
j

)s
j

1

][R
jl
(1)

−(1−s
j

)I
jl
(1)

]

(2.13)

当 η = 0 ( β j 0 = g j ) \eta = 0({\beta {j0}} = {g_j}) η=0(β
j0

=g
j

)时,对于(2.13)式等号左边的加的前一项中的 ∂ P j ( α l ) ∂ β j η = 1 \frac{{\partial {P_j}({\alpha _l})}}{{\partial {\beta
{j\eta }}}} = 1
∂β

∂P
j


l

)

=1,而加号后面的 ∂ P j ( α l ) ∂ β j η = 0 \frac{{\partial {Pj}({\alpha _l})}}{{\partial {\beta {j\eta }}}} = 0
∂β

∂P
j


l

)

=0,此时令式(2.13)为0,求得第 j j j个题目的猜测参数的估值。
(2.14) 1 g j ( 1 − g j ) [ R j l ( 0 ) − g j I j l ( 0 ) ] = 0 \frac{1}{{{gj}(1 - {g_j})}}\left[ {R{jl}^{(0)} - {gj}I{jl}^{(0)}} \right] = 0 \tag{2.14}
g
j

(1−g
j

)
1

[R
jl
(0)

−g
j

I
jl
(0)

]=0(2.14)

因为 1 g j ( 1 − g j ) ≠ 0 \frac{1}{{{g_j}(1 - {g_j})}} \ne 0
g
j

(1−g
j

)
1

  1. <br />=0,所以通过上式有<br />(2.15) g ^ j = R j l ( 0 ) / I j l ( 0 ) {\hat g_j} = R_{jl}{(0)}/I_{jl}{(0)} \tag{2.15}<br />g<br />^<br />

j

=R
jl
(0)

/I
jl
(0)

(2.15)

同理,当 η = 1 ( β j 1 = s j ) \eta = 1({\beta {j1}} = {s_j}) η=1(β
j1

=s
j

),对于(2.13)式等号左边的加的前一项中的 ∂ P j ( α l ) ∂ β j η = 0 \frac{{\partial {P_j}({\alpha _l})}}{{\partial {\beta
{j\eta }}}} = 0
∂β

∂P
j


l

)

=0,而加号后面的 ∂ P j ( α l ) ∂ β j η = 1 \frac{{\partial {Pj}({\alpha _l})}}{{\partial {\beta {j\eta }}}} = 1
∂β

∂P
j


l

)

=1,此时令式(2.13)为0,求得第 j j j个题目的失误参数的估值。
(2.16) − 1 ( 1 − s j ) s j [ R j l ( 1 ) − ( 1 − s j ) I j l ( 1 ) ] = 0 - \frac{1}{{(1 - {sj}){s_j}}}\left[ {R{jl}^{(1)} - (1 - {sj})I{jl}^{(1)}} \right] = 0 \tag{2.16}

(1−s
j

)s
j

1

[R
jl
(1)

−(1−s
j

)I
jl
(1)

]=0(2.16)

因为 1 ( 1 − s j ) s j ≠ 0 \frac{1}{{(1 - {s_j}){s_j}}} \ne 0
(1−s
j

)s
j

1

  1. <br />=0,所以通过上式有<br />(2.17) s ^ j = [ I j l ( 1 ) − R j l ( 1 ) ] / I j l ( 1 ) {\hat s_j} = [I_{jl}^{(1)} - R_{jl}{(1)}]/I_{jl}{(1)} \tag{2.17}<br />s<br />^

j

=[I
jl
(1)

−R
jl
(1)

]/I
jl
(1)

(2.17)

详细的算法流程将在下一部分介绍。
第一步: 给定 β = { s 1 , g 1 , . . . , s J , g J } \beta= { {s1},{g_1},…,{s_J},{g_J}} β={s
1

,g
1

,…,s
J

,g
J

}一组初值;
第二步: 根据已有的 β \beta β以及下列公式计算 I j l ( 0 ) , R j l ( 0 ) , I j l ( 1 ) , R j l ( 1 ) I
{jl}{(0)},R{jl}{(0)},I{jl}{(1)},R{jl}{(1)} I
jl
(0)

,R
jl
(0)

,I
jl
(1)

,R
jl
(1)


P ( α l ∣ X i ) = P ( X i ∣ α l ) P ( α l ) ∑ l = 1 L P ( X i ∣ α l ) P ( α l ) P({\alpha _l}|{X_i}) = \frac{{P({X_i}|{\alpha _l})P({\alpha _l})}}{{\sum\limits
{l = 1}^L {P({X_i}|{\alpha _l})P({\alpha _l})} }}
P(α
l

∣X
i

)=
l=1

L

P(X
i

∣α
l

)P(α
l

)
P(X
i

∣α
l

)P(α
l

)

R j l = ∑ i = 1 I P ( α l ∣ X i ) X i j I l = ∑ i = 1 I P ( α l ∣ X i ) R j l ( 0 ) = ∑ { α l : α l , q j < q j , q j } R j l I j l ( 0 ) = ∑ { α l : α l , q j < q j , q j } I l R j l ( 1 ) = ∑ { α l : α l , q j = q j , q j } R j l I j l ( 1 ) = ∑ { α l : α l , q j = q j , q j } I l {R{jl}} = \sum\limits{i = 1}^I {P({\alpha l}|{X_i})} {X{ij}} \quad{Il} = \sum\limits{i = 1}^I {P({\alpha l}|{X_i})} \ R{jl}^{(0)} = \sum\limits{{ {\alpha _l}:\alpha _l^,{q_j} < q_j^,{q_j}} } {{R{jl}}} \quad I{jl}^{(0)} = \sum\limits{{ {\alpha l}:\alpha _l^,{q_j} < q_j^,{q_j}} } {{I_l}} \ R{jl}^{(1)} = \sum\limits{{ {\alpha _l}:\alpha _l^,{q_j} = q_j^,{q_j}} } {{R{jl}}} \quad I{jl}^{(1)} = \sum\limits{{ {\alpha _l}:\alpha _l^,{q_j} = q_j^,{q_j}} } {{I_l}}
R
jl

i=1

I

P(α
l

∣X
i

)X
ij

I
l

i=1

I

P(α
l

∣X
i

)
R
jl
(0)


l


l
,

q
j

j
,

q
j

}


R
jl

I
jl
(0)


l


l
,

q
j

j
,

q
j

}


I
l

R
jl
(1)


l


l
,

q
j

=q
j
,

q
j

}


R
jl

I
jl
(1)


l


l
,

q
j

=q
j
,

q
j

}


I
l

第三步:用第二步计算得到的 I j l ( 0 ) , R j l ( 0 ) , I j l ( 1 ) , R j l ( 1 ) I{jl}{(0)},R{jl}{(0)},I{jl}{(1)},R{jl}{(1)} I
jl
(0)

,R
jl
(0)

,I
jl
(1)

,R
jl
(1)

值依据下列公式计算新的 β \beta β值:
s ^ j = [ I j l ( 1 ) − R j l ( 1 ) ] / I j l ( 1 ) g ^ j = R j l ( 0 ) / I j l ( 0 ) {\hat sj} = [I{jl}^{(1)} - R{jl}{(1)}]/I{jl}{(1)} \ {\hat gj} = R{jl}{(0)}/I_{jl}{(0)}
s
^

j

=[I
jl
(1)

−R
jl
(1)

]/I
jl
(1)

g
^

j

=R
jl
(0)

/I
jl
(0)

第四步: 重复第二、三步,直到的每个 β \beta β分量都收敛。
该算法c版本的实现后续发布。

reference

De La Torre, Jimmy. “DINA model and parameter estimation: A didactic.” Journal of educational and behavioral statistics 34.1 (2009): 115-130.
————————————————
版权声明:本文为CSDN博主「orangesuan」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/orangesuan/article/details/85789903