- こちらのDNA多型学会のネタの整理をする
- 思いつくままに雑多に
- 情報を使って、判断する枠組みは、意識的にせよ無意識的にせよ、事前確率と事後確率とその計算関数(これに個人差があるだろう)とを使っているとする
- ただし、事前確率+情報→事後確率、のパターンは実は「完全に同じ」ではない、のだろうというのをメインテーマにしたいのだが、いったいそれはどれくらい違うのかについて??なので、それについていろいろとあげつらうことにする。なぜなら、原理的には「同じ」ではないけれど、『間違って』別の場合に使うべき判断の枠組みを、使うべきではない枠組みに使いまわしていたり、複数の枠組みにまずまずのパフォーマンスをするような画一的なパターンを使い続けていたりするかもしれないから
- 「そうだ」と判断することに関するいろいろ
- DNA鑑定の場合
- 疾患の診断を下す場合
- 「(その)疾患の患者」の人数は0人から全員までの可能性がある
- 多数の候補者の遠近関係について
- 原則として、ランダム
- DNA鑑定の場合
- 『遺伝的に近い』関係にある人というのが「必ずいる」(生物学的な前提条件)ので、「おおまかには独立」だが、「近い人が必ずいる」という条件が入り、これは、確率・尤度の計算に影響する
- 集団の構造化とかもその大規模版として考慮されるべき場合がある
- 「容疑者」に近い人がいると、犯人と判断するべき程度は下がる
- 疾患の診断を下す場合
- 家族歴が診断に影響することはなくはない
- それには「遺伝的」な理由と「環境的」な理由とがある
- 「被診察者」に近い人がすでに「診断」されていると、「被診察者」を「そうだ」と診察するべき程度は上がる
- 「そうだ」「そうではない」「どちらとも言えない」の3分類で行動を起こせるか、そうではないか?
- DNA鑑定の場合
- "Guilty or not guilty" は「どちらとも言えない」を含んでいない(疑わしきは…と言うように、「どちらとも言えない」をどちらに入れるべきかについては、「理性的なルール」があるが、それを『墨守』することは、難しいのが実は現実だとすると、それはどれくらい難しく、どれくらい守れないのか、などを数値化できるかどうかが問題となる
- 診断の場合
- 常に、100% はなく「臨床的行動」を決められる程度に確かである(と信じられる)ならばよい
- 間違っていても、取り返しがつく場合も多く、その余裕があるから、臨床行為が成り立っている、という側面もある
- では、その「不確か度」「余裕」を数字にするとどれくらいなのかが問題となる
- DNA多型情報が「高確率・高尤度」をもたらさないときのこと
- 遺伝子多型をDNA鑑定に用いる場合と遺伝子多型を形質発現リスク評価に用いる場合(〜診断に援用する場合も)との異同
- その他
- 「あり得ないほど低確率・低尤度」という問題を「集団全員の中に1人いる確率・尤度がどれだけか」「集団全員の中に1人以上いる確率・尤度がどれだけか」という設問に切り替えて考えることがあるが、これの是非(もちろん、切り替えるだけならOK)や、心理的影響は?その数値の意味は?とか
- DNA多型情報の安定性(1細胞ごとの全ゲノムシークエンスができてしまったとき、DNA鑑定はどれほど安定か(おそらく安定だが、今よりも不確か度は高くなるはず。不確かさを認めた上でのDNA鑑定の重要性がもう一度高くなる?)
- DNA鑑定に興味がある人・DNA多型情報を用いて疫学や医学応用をする人・DNA多型情報を用いて生物学研究をする人、のすべてのパターンの人に興味のあるトーク構成にするには、「生物学研究をする人」に対するレンジを広げる必要がある…
- 尤度比が同じで尤度の絶対値が違うときの判断の異同
- 「絶対」ってどのくらいなのか…
- マルチプルテスティングに照らすのも一法
N<-1:100
M<-10000
minP<-matrix(0,length(N),M)
for(i in 1:length(N)){
Ps<-matrix(runif(M*N[i]),nrow=M)
minP[i,]<-sort(apply(Ps,1,min))
}
matplot(t(minP),type="l")
means<-apply(minP,1,mean)
plot(N,means,type="l")
plot(minP[100,])
abline(h=means[100])
- DNA実験の話
- ヘテロ接合体のとき
- 取れる細胞数
- そこから取れるDNA分子数
- そこから実験に供するDNA分子数
- 増幅するとしてその選ばれ方
n.rep<-1000
freq<-rep(0,n.rep)
N<-10^1
k<-10^3
n.cycle<-10
for(j in 1:n.rep){
Glist<-matrix(0,n.cycle+1,2)
Glist[1,1]<-length(which(sample(1:2,N,replace=TRUE)==1))
Glist[1,2]<-N-Glist[1,1]
for(i in 1:n.cycle){
selected<-sample(c(rep(1,Glist[i,1]),rep(2,Glist[i,2])),min(sum(Glist[i,]),k),replace=TRUE)
Glist[i+1,]<-c(Glist[i,1]+length(which(selected==1)),Glist[i,2]+length(which(selected==2)))
}
freq[j]<-Glist[n.cycle+1,1]/sum(Glist[n.cycle+1,])
}
plot(sort(freq))