はじめに
本記事では、決定的スクリーニング計画(DSD)の具体的な作成方法と解析手法について簡単にまとめました。統計用の言語であるRを使用したやり方をご紹介します。
Rのインストールは無料なので、もしよろしければ、こちらの記事を参考にインストールしてみてくださいね。プログラムになれていなくても簡単にできます!
決定的スクリーニング計画(DSD)とは
決定的スクリーニング計画は、比較的新しい実験計画法の手法で、Definitive Screening Designの頭文字をとってDSDと呼ばれています。簡単な特徴として、
- 3水準(低・中・高)の実験であり、条件の最適化に有利。
- 効果の交絡が少ない。
- 最小の試行回数は(2×要因数+1)回。
などが挙げられます。表1に4要因DSDの計画表(デザインマトリックス)の例を示します。ここでA,B,C,Dは要因を、-1,0,1は水準を表しています。
DSDのさらに詳しい特徴に関しては、こちらの記事をご覧ください。
Rを用いたDSDの作成方法
表1のようなDSDの表の作成は、特殊なアルゴリズムが必要なため、残念ながらExcelなどで作成することはできません。
そこで、本章では統計用のRを用いたDSDの作成方法をご紹介します。
RによるDSDの作成は、パッケージのdaewrの関数DefScreenを使用するだけです。
- RとRstudioのインストール(詳しくはこちら)
- パッケージdaewrのインストール
- 関数DefScreenの実行
やることはこれだけです。下に実行結果を示します。簡単に4要因のDSDが作成できました。
> library(daewr) > DefScreen(4) A B C D 1 0 1 -1 -1 2 0 -1 1 1 3 -1 0 -1 1 4 1 0 1 -1 5 -1 -1 0 -1 6 1 1 0 1 7 -1 1 1 0 8 1 -1 -1 0 9 0 0 0 0
DSDの評価
DSDに限らず、すべての実験計画に通用することですが、計画を作成した後は、必ず評価が必要です。一般的な評価項目としては
- 交絡関係のチェック
- 検出力の評価(→記事準備中)
- 予測分散のチェック(→詳しくはこちら)
などが挙げられます。
DSDは交絡関係が少ないことが大きな特徴であるため、本記事では、相関のカラーマップを用いた交絡関係のチェックについてのみ、説明したいと思います。
DSDでは主効果(要因の一次効果)・交互作用・2乗効果を推定できるので、2次の項までの交絡関係を調べます。この交絡関係を見るには、図1のような相関のカラーマップが便利です。
上のカラーマップは2次項までの相関係数を表しています。この図からわかることは、まずDSDの特徴として主効果と交互作用および2乗効果がすべて直交しているということです。一方、交互作用と2乗効果には一部やや強い相関があるので、特定の2次の効果に注目したい場合には、重要そうな他の効果との交絡が起きないよう、要因の割り当てを考慮する必要があります。
DSDの解析手法
計画の作成と評価が完了したら、A,B,C,Dに実際の要因を割りあてて、実験をします。今、仮に実験を行って表2の結果Yが得られたとしましょう。この仮の実験結果をもとに解析方法について説明します。
ちなみに、表2のYの値は
として計算しました(適当です)。N(0,0.5)は平均0、分散0.5の正規分布に従う乱数です。
主効果残差プロット
さて、実験結果が得られたら、結果を解釈する必要があります。
ところが、DSDでは要因の可能な組合せのうち、ほんのわずかのパターンしか実験を行っていないため、ひとつひとつのYの値を単純に比較しても、どの要因の効果が大きいのか明らかではありません。
そこで、主効果残差プロットというものを使うと便利です。ここでは、グラフの読み方だけ、簡単に見てみましょう。下の図2が要因Aに対する主効果残差プロットです。
このグラフは要因A以外の要因B,C,Dに対する回帰直線の残差を、要因Aに対してプロットしたものになっています(なぜこんなことをするのかは今度、別の記事に書きます)。結論だけ言うと、このグラフによって純粋な要因Aの主効果を評価できるのです。
図2を見ると、直線の傾きがおよそ+2であることから、要因Aの主効果が+2であるということになります。
これを他の変数B,C,Dに対しても行うと図3のようになります。
図3より、AとBの主効果は明らかに大きく、CとDの主効果はあまり大きくないことが分かります。以上のように、主効果残差プロットを用いて、どの主効果が大きいのか見積もることが出来ます。
分散分析
その他の実験計画法と同様、DSDでも分散分析を行うことができます。分散分析についてはこちらの記事を参考にしていただければと思います。
モデル選択
次に、モデル選択について説明します。
モデル選択では、実験結果をよく説明するようなモデル式を選ぶことが大切です。しかし、残差を小さくしようとしてモデル式の説明変数を増やしすぎると、オーバーフィッティングとなり、将来得られるデータに対して当てはまりが悪いモデルになってしまいます。
そこで、AIC(赤池情報量基準)やBIC(ベイジアン情報量基準)といった基準を使ったモデル選択が推奨されています。
以下では、AICc(データ数が少ないためAICの補正版)を用いたモデル選択を行ってみました。Rパッケージの"StepReg"の関数stepwiseを用いています。
Update: パッケージStepRegの仕様が変わって個人的には使いにくかったので、Stepwiseができる関数を自作しました(紹介記事はこちら)。
#Model Selection library(StepReg) source("add_model_terms.R") mydata <- add_quadratic(X)#要因A,B,C,Dの2次項の水準を追加。add_model_terms.Rで定義した自作関数。 X2Y <- cbind(mydata,Y) stepwise(X2Y, y="Y", selection = "forward", select="SL", Choose="AICc", sle=0.5)
上コードの出力結果が下のようになります。
$process Step EffectEntered EffectNumber Select Choose 1 0 intercept 1 1.0000000 34.84670 2 1 B 2 -1.9751855 30.27247 3 2 A 3 -2.5773126 22.74875 4 3 BC 4 -2.4240142 18.26101 5 4 BB 5 -0.7943883 36.46633 $variate#最小AICcによるモデル選択で選ばれた項 [1] "intercept" "B" "A" "BC"
確かに、モデル選択で選ばれた有意な項がintercept(切片項)、B、A、BCとなっていて、実験値の生成に用いた式(1)(もちろん、現実にはこの式は未知であり、結果から推定すべきものです)と合致しています。実際、有意な項だけを用いた回帰分析は
となり、もとの式(1)とよく合っていますので、モデル選択が正しく行えていることが分かります。
その他の解析
DSDを行った後は、要因と特性の関係を表すコンタ―図を作成したり、最適化する特性が複数ある場合などはオーバーレイプロットなどを作成したりできます。以前、「コーヒーのおいしい淹れ方」で具体的な解析の例を紹介していますので、興味がある方は、ぜひこちらをご覧ください。
実験の拡張
最適条件が実験条件の範囲になかった場合や、2乗効果など高次の交絡関係が解消できなかった場合、追加の実験をする必要があります。
DSDの拡張の方法には以下の2種類があります。
- 新たなDSDを再度行う。
- D最適計画を利用し、回数を指定した拡張(詳しくはこちら)。
Web上でDSDを試せる無料ツールDSDApp
こちら→https://dsdtool.herokuapp.com/
説明が至らず、理解できない点も多かったかもしれませんが、上記のwebツールではとりあえずDSDを体験することが出来ます。ぜひ使ってみてください。使い方はこちらの記事に書いてます(2022/6/26追記)