動機を定量する:法廷用ベイジアンネットワーク

  • 犯行の動機には色々ありえる
  • 旧知の関係なら、仲良しかもしれないけれど、憎悪のきっかけも多いと思われる
  • ベイジアンネットワークでは、カテゴリ変数の扱いが楽なので、「強い動機」「弱い動機」「偶発(動機なし)だけれど犯行につながった」のようなカテゴリ分けをしてみる
  • 見ず知らずの関係の場合には、もともと存在する動機は無いが、「出会ったときに何かしらの因縁が生じる」ことはあり得る
  • 犯行と動機とを分離するべく、「現場」に居ない状態で存在した動機、「現場」に存在したことで生じた「エキストラの動機」と考えることとする
# 動機
# 旧知のp1は強い動機もあり弱い動機もあるが、現場に居合わせて強い動機づけが発生する可能性がある
# 見ず知らずのp2は動機が弱い。現場に居合わせて動機が発生する可能性があり、現場に居合わせずに動機を持っている可能性は非常に低い
Ms <- list()
Ms[[1]] <- cptable(~M1|L1,values=c(0.25,0.6,0.15,0.2,0.4,0.4),levels=c("2","1","0"))
Ms[[2]] <- cptable(~M2|L2,values=c(0.02,0.04,0.94,0.002,0.004,0.994),levels=c("2","1","0"))
plist <- compileCPT(list(ps[[1]],ps[[2]],Ls[[1]],Ls[[2]],Ms[[1]],Ms[[2]]))
net3 <- grain(plist)
querygrain(net3,nodes=c("M1","M2"))
  • 容疑者Xの方が動機付けがあることを数値化した
> querygrain(net3,nodes=c("M1","M2"))
$M1
M1
       2        1        0 
0.200005 0.400020 0.399975 

$M2
M2
     2      1      0 
0.0038 0.0076 0.9886