ベルリンのJMPサミットでの私のプレゼンテーションについてお話しするためにここに来ました。タイトルは「学習の実践の1年:過去の失敗事例に基づいた実験の設計と分析方法」です。実は、ドン、これは昨年マンチェスターで行われたあなたのプレゼンテーションへの返答のようなもので、そのプレゼンテーションのタイトルは「過去の失敗事例に基づいた実験の設計と分析方法」でした。あの録画は何度も何度も見返しているので、誰かが私の録画を、私があなたの録画を見つけたのと同じように、普通だと感じてくれることを心から願っています。
このデザインが何でできているか少しご説明しましょう。実はチューブシーラーでできています。チューブシーラーって、ほとんどの人は知らないと思います。実は、科学的なヘアアイロンなんです。ワクチンを通したシリコンチューブをヘアアイロンで密封するんです。これは医薬品製造なので、もう少し科学的な話になりますが、原理的には、2つの加熱体がチューブを押さえて密封するだけです。
問題は、ポリマーチューブ用の新しいサーマルシーラーの購入を検討しているということです。[inaudible 00:01:21] シーラーを装着したら、それがしっかりと密封された状態を保つことが何よりも重要です。なぜなら、そこに有効成分が注入されるからです。もし破れてしまったら、有効成分が床に散らばってしまいます。これには様々な問題があります。患者へのリスクは全くありませんが、ワクチンのバッチを紛失するリスクがあり、それはもちろん望ましくありません。
新しいシーラーを生産開始する前に、この設計実験を行うというアイデアを思いつきました。まず、成功の定義は何でしょうか?実際にチューブを密封できたのはいつでしょうか?今日は目視検査なので、ツールを確認します。前のスライドにシールの写真をいくつか載せていますが、これはその通りです。目視でチューブを評価し、合否を判定します。実際にはそれだけです。
何か他に方法はないだろうか、と真剣に考えてみた。どうにかしてこれを連続的に試験できるだろうか? いや、無理だった。でも、圧力試験という別の合否判定は可能だった。チューブに圧力をかけ、水中に沈めた。もし気泡が出てきたら、密閉度が低いということだ。自転車のタイヤと同じように。
連続応答を見つけようと真剣に試みました。なぜなら、その方がずっと簡単だからです。しかし、その時、マンチェスターで聴いたプレゼンテーションを思い出しました。まさにこのテーマでした。それから、設計の準備に取り掛かりました。新しいチューブを用意して新しい試験を行うのは比較的簡単だと分かっていたので、このDOEを作成しました。ぜひ試してみたかったのですが…まず第一に、オペレーターの時間を考慮し、必要以上に設計や実験を行わないようにしました。
私はまさに、逐次的なDOEのようなものを念頭に置いていました。まずはできる限り小さな規模で始め、必要に応じて実験を重ね、規模をどんどん大きくしていき、最終的にDOEが私の問題、つまり多くの要因について、毎回シールが成功する、あるいは少なくとも失敗の成功率が非常に低いプロセス範囲を定義するという問題を説明し、あるいは答えを与えてくれることを期待していました。統計学者なら誰でも知っているように、ゼロになることは決してありませんが、私たちはゼロに近づけたいと考えていました。
設計を練っていた時、このシーラーに関するあらゆる知識をDOEに注ぎ込もうと真剣に考えました。というのも、私よりもはるかに詳しい人、オペレーター、そしてその分野の専門家がいることに気づいたからです。念のため言っておきますが、私は実際にシーラーに触れたことはなく、今も触れていません。
私の言っていることが本当に意味を成しているかどうか、誰かに判断してもらえる必要があります。もしかしたら、そうでない可能性もあるからです。私はその知識をDOEに本当に取り入れたいと思っていました。この点については後ほど改めてお話ししますが、どのようにそれを実現したのか、そしてその知識を私のデザインに取り入れることが実際に何を意味するのか、お話しします。
計画を策定する際に、因子の組み合わせが一部不可能という問題がありました。JMPでは、計画空間の一部を切り離すのは比較的簡単です。ここでは、冷却温度と冷却タイプが示されています。一方は連続変数、もう一方は2水準カテゴリカル変数です。
このような科学的なヘアアイロンやチューブシーラーには、外部冷却装置を取り付けることが可能です。内部冷却システムも備えていますが、ご想像の通り、外部コンプレッサーの方が比較的小型なので、内部コンプレッサーよりもはるかに効果的です。外部コンプレッサーを使用すると、冷却温度を下げることができます。チューブを密封した後、その密閉状態を維持するためには、チューブが冷える必要があることはご想像のとおりです。そのため、冷却プロセスが開始されます。
追加のメリットとして、最終的に、この外部冷却システムを導入すると、天井時間が大幅に短縮されることが分かりました。これは全く考慮していなかったのですが、この作業を進める中で、外部冷却システムは非常に優れているため、常に外部冷却システムを使用するべきだということに気づきました。しかし、内部冷却システムを使用する場合は、65度を下回る温度には設定できません。
設定は思ったより簡単です。実は、その方法を説明したYouTube動画も作成しました。この動画をご覧になっている方は、QRコードをスキャンして、このようなデザインスペースの作り方をご覧ください。
最終的な設計は24通りの組み合わせで、組み合わせごとに3回の繰り返し、合計72回の溶接になりました。お礼は後ほどお伝えしますので、早速見てみましょう。実際には3つのステップで行われました。最初のDOE(実験計画)がありました。その後、最初の拡張として12回の実験を追加し、さらに3回目の拡張として8回または6回の実験を追加しました。この手順を踏んだ理由と、そこから得られた知見については、後ほど詳しく説明します。
こちらは元の計画で、24回の実行結果を示しています。3回失敗しているのが分かります。合計3回です。そして、視覚的に失敗した回数と圧力で失敗した回数が示されています。この実行では、どのような設定で実行されたかが分かります。視覚的に失敗した回数と圧力で失敗した回数が0回の実行が3回ありました。では、なぜ最終的に24回になったのでしょうか?お伝えし忘れていましたが、このDOEには2水準のカテゴリ因子が5つ、6つ、連続変数因子が4つ、そして3水準のカテゴリ因子が1つあります。つまり、非常に多くの因子が関係しているということです。最終的に24回の実行となりました。なぜこのような結果になったのでしょうか?
これがどのように実現したかをお見せしましょう。ここで、DOEを注入するというアイデアに戻ります。私が行ったことは、キャンセルできます。まだDOEが残っているかどうか確認してみましょう。ここにすべての因子が表示されています。これはかなり良い因子リストです。これはカスタムDOEで実行されます。応答曲面モデルを選択すると、主効果など、因子ごとの効果がすべて表示されます。すべての連続因子とその曲率効果も表示されます。可能であれば、これら4つの因子も曲線として表示します。そうすることで、因子間のすべての交互作用が表示されます。
さて、このデザインを作るには最低でも82回の試行が必要でした。3回の繰り返しで82回も試行して、200回とか、えっと…246回とか、笑いものになるような真似はしたくありませんでした。計算はここまでにしておきます。それで、このリストを確認していくのですが、これには時間がかかりました。毎回、製品とシーリング時間について「いや、それは必要ない」と言われました。このモデルにたどり着くまでこれを繰り返し、最終的にこのモデルになりました。これで…「戻る」ボタンを押さなければなりません。
ご覧の通り、交互作用はどれも[聞き取れず 00:09:59]、実際には存在しない可能性が高いと言えるため、大幅に削減できました。その後、実験を追加して特定できるように、デザインを設定しました。最終的に、主効果とその他の効果だけを求め、その結果、最低24という結果が得られました。
後でもっと実験を追加できると分かっていたので、もう一度その最小値で行こうと勇気を出したんです。それで24という数字にたどり着いたんです。次のステップは、このデータを入手し、科学的に検証したかったので、Generateプラットフォームでモデルを作成することでした。このモデルには本当に満足しています。その素晴らしい結果をお見せします。
これはトムのビデオを見ながら、トムがやっていたことをそのままやって作ったものです。ビデオを見ながらトムがやっていたことをそのままやりました。ここに写っているのはシーラーヘッドです。古いシーラーヘッドと新しいシーラーヘッドがあります。ガメルは古いもので、新しいものは新しいものです。新しいものは新しいものです。そして、追加できるメディアが2種類あります。チューブの材質も2種類あります。1つはアバンタフレックス、もう1つはC-Flexです。
次に、寸法よりも切断温度について見てみましょう。特に注目していただきたいのは、このチューブ材質、つまりC-FlexとAvantaflexの違いです。ご覧の通り、この設定では温度は165℃、シーリングタイムは100℃です。これは通常の設定ですが、C-Flexの場合、不良確率は0.00ですが、実際には0.04℃まで上昇する可能性があります。
しかし、Avantaflexの場合、不確実性が非常に高いことがわかります。また、Avantaflexに切り替えた際に他の不確実性帯域が急激に変化したことも分かります。Avantaflexを使用していて、古いシーラーヘッドを使用している場合、不確実性はほぼ完全にばらつきます。
最初に気づいたのは、何が起こっているのかよくわからないカスタムの組み合わせがあるということです。つまり、ここで何が起こっているのかを完全に理解できていないということです。しかし、私が気づいたのは、不確実性が高いレベルではどれほど美しいかということです。では、これを180度回転させれば、すべてうまくいくのではないでしょうか。
ご覧の通り、これらはすべて完全にフラットになっています。これが私の最初の結論でした。ネタバレ注意ですが、私は間違っていました。プロファイラーを見ただけで、それが最初の結論でした。おそらく、データ分析における最初のミスを犯したと思います。このデータを十分に視覚化していなかったのです。では、それが何を意味するのかお見せしましょう。
私は彼らのところに戻って、「いいですか?これを180度まで上げれば大丈夫ですよ」と言いました。彼らは「ええ、クリスチャン、それはいいですね。それでテストしたいんです」と言いました。これが最初のDOEの結果でした。私は自信過剰になって、「180度なら大丈夫だ」と言いました。それで、何が起こったか見てみましょう。実際に何が起こったか見てみましょう。これが私が彼らに見せたグラフです。ここにあるのは、天井温度と天井時間です。
先ほど申し上げたように、このグラフから私たちが本当に得ようとしているのは、良好なシールが確保できる範囲です。青い点は3回の繰り返しがすべて成功した部分です。もし1回でも失敗した場合は赤に変わります。私たちは本当に、青色だけになる領域を目指しています。私はこのグラフを会議に持参し、飛び上がって「さあ、一緒に新しいプロセス範囲を定義しましょう」と言いました。
140℃にはなりたくないので、それを削除しましょう。見た目は良くなりました。200℃は高すぎます。問題ないケースもありますが、赤いケースもあるので、その温度を下げましょう。すると赤い点は1つだけ残り、その上限時間はとんでもなく短いです。もしそうしないのであれば、この範囲が適切であることを証明できるデータはあまり残っていないと判断します。モデルの予測を信頼しつつ、この範囲を拡大してみると、良さそうです。この範囲にはまだデータがありませんが、有望そうです。これが次の設計です。
見てみましょう。オリジナルのデューイと、あと12個あります。先ほどと同じプロットを見てください。いや、あれは違います。こちらには12個の点があり、そのうちの1つが赤く出ています。本当は全部青だったらいいなと思っていました。楽観的な設計空間だったので、赤でも問題ないのですが、もし赤くできたらすごくクールになるだろう、と思ったのです。ところが、1つ赤く出てしまいました。
その会議中に、グラフビルダーを使っていろいろ試してみた結果、このグラフを作成しました。このグラフからわかるのは、実際にはほとんどの… 先ほどと同じように温度と時間を確認していますが、材質と寸法に分けたということです。C-FlexとAvantaflex、そしてチューブの寸法が0.5インチ、3インチ×3インチ、そして3×9インチ×16インチと表示されています。
私たちが見たのは、ちょっと待ってください。この組み合わせで成功したことは一度もないんじゃないか? でも、クリスチャン、180度以上なら大丈夫だって言ってましたよね? ええ、大丈夫でした。でも実際は、たとえ私の予測が「大丈夫」だと言っていたとしても、断言はできません。実際にそんなのを見たことがないんです。それが起こったんです。
少し誇らしいのは、失敗の予測についてです。ここにある新しい予測を全部見ても、どれほど明確か分からないかもしれませんが、2つを除いてほぼ全てが0.00です。もし1つだけ挙げるとすれば、これです。失敗の確率はわずか13%だとは分かっていますが、それでもまだ比較的小さなデータセットです。
私は正確に特定することができ、実際にそうしました。「もし分野があるなら、それはあの分野だ」と私は言いました。そして、それが失敗した分野でした。それは私に、私の予測が全く外れていないことを教えてくれました。
3回目の拡張です。3回目の拡張、というか3回目の実行ですが、2回目の拡張です。そして、この新しいデータセットを追加しました。これでオリジナル、拡張1、拡張2ができました。同じ空間をもう一度見てみると、面白いことが起こります。お気づきでしょうか。モデルを作るという作業から完全に離れて、このグラフだけを見ています。青いダストが出ているのが、良い状態だと分かります。
本当は戻ってモデルを作るべきだったのですが、元の24個のデータポイントを見ると、24個のドットがあり、最初にこのプロットを作成していたら、180度以上ではすべてが良好とは言えないことがわかるのに、視覚的に分かりにくかったのです。これは今まで気づかなかったことです。例えば、これらのドットは両方とも180度を超えていますが、どちらも不良品です。しかし、このドットを追加した時に、あることに気づきました。ご覧の通り、すべて青で、1つだけが赤です。
次に3つ目のものを加えました。これは、ベントを製造したメーカーが「この温度はまさに彼らが言うべき温度だと思う」と言った範囲内です。そして、残りはブルーのみです。つまり、缶詰です。これら5つは比較的簡単に密封できます。極端に低い温度を使わなければ、極端に低い時間を除いて、実際には2つの点しかありません。これを全て実行すると、多くの組み合わせ、多くの繰り返しになりますが、良い結果しか得られません。
唯一奇妙なのはこの組み合わせです。ここでのポイントは、これを使わないようにできないかということです。というのも、みんなから「これは本当に使いにくい」と言われていたからです。もしこれを使うことができればそれが一番良いのですが、まだそこまでには至っていません。でも、これが私の… ドン、君にバトンタッチしますが、これがこの設計の方向性でした。純粋に目視検査だったものをデータ化し、そのデータを視覚化してデータベースの判断材料にすることができるようになりました。さて、共有はこれで終わりにします。君にバトンタッチします。
ありがとう、クリスチャン。少し話題を変えましょう。どのように…念のため確認させてください。皆さんが見ているのは私の画面、つまり私の日記だと思います。素晴らしいですね。少し話題を変えましょう。私が実際に重要だと考え、あるいは実質的に有意だと考え、それが有意に有意かどうかを判断できるように、十分な実行、実験、試行を行えるようにするために、最初からどのように設定するかについてお話しします。
私たちの目標は、実験を設計することです。繰り返しますが、実験を十分に大規模にし、十分な実行回数と試行回数を確保することで、実質的に有意な結果が得られるかどうかを判断できるようにしたいと考えています。
さて、始める前にいくつか定義しておきます。ここで2つの定義についてお話ししますが、分けて考えたいと思います。「試験」と「実行」です。「処理条件」や「実行」と言う場合、実際には実験計画データテーブル内の1行、つまりこれから実行する処理の組み合わせや因子設定の固有のセットについて話していることになります。
試験とは、反復実験と考えてください。ここでは反復実験とは呼んでいません。数学的には少し扱いが異なるからです。分析を始めると、反復実験は1行にしか表示されません。通常、反復実験を扱う場合は、データテーブルでは別々の行に表示します。反復回数、つまり試験回数だけでなく、処理の組み合わせ数、つまり実験の実行回数も把握したいので、これら2つを区別する必要があります。
目標を達成できるものをどうやって設計するのか?最初の部分は、皆さんも既にご存知でしょう。まずは優れた設計から始めます。クリスチャンの例を見ればそれが分かります。彼は各分野の専門家と集まり、因子の数、どの因子が重要だと思うか、二因子相互作用をいくつ含める必要があるか、二次効果などについて議論しました。これは常に始まりであり、応答が連続的である場合の扱い方と変わりません。
さて、ここから少し状況が変わります。計画とJMPが作成したデータ(例えばカスタム設計ツール)に基づいて、処理条件がベースラインとの差を判断できるかどうかを判断するのに十分な試行回数があるかどうかを知りたいとします。つまり、「ベースラインが目標値と統計的に異なるかどうかを判断できるだろうか?」ということです。
そのためには、まずベースラインを計算する必要があります。ベースラインにおける失敗率やイベント発生率を把握し、何が重要な変化なのかを計算、あるいは判断できるようにする必要があります。例えば、ベースラインでは失敗率が75%程度だとします。しかし、実際には、失敗率が50%か20%に上昇する変化があった場合にのみ、その変化を区別する必要があるため、これを事前に判断する必要があります。
これら2つの情報を入手し、JMPで実験を設計すれば、実験の規模を適正化するために必要なツールがすべて揃っています。これから行うのは、シミュレーションを用いて「現在の状態(ベースライン)から、目指す状態(ターゲット)に到達できるのか?」という問いを立てることです。
では、私がどのように行うかを説明しましょう。ここでも、DOEから始めます。Christianが作成したものと同様の因子が1つここにあります。この場合、因子は10個あり、そのうち6つはカテゴリ因子です。すべてCAで始まります。6つのカテゴリ因子のうち5つは2水準です。1つは3水準のカテゴリ因子です。連続因子は4つあります。
モデルを見ると、全ての主効果、二因子相互作用のサブセット、そして二次効果のサブセットが分かります。これもクリスチャンが設計したものと似ています。まず、各分野の専門家と話し合いながら、デザインに何を求めるかを決めます。デザイン評価には、多くの同じツールを使用します。実験を設計する際には、カラーマップを見て、「効果間の相関ができるだけ小さいものが欲しい」と考えるかもしれません。
ただし、ここには行かないでください。これは正しい電力解析ではありません。これから、正しい電力解析の設定方法を説明します。合否判定実験で電力解析を行う唯一の方法は、シミュレーションを行うことです。
設計の準備が整い、完成したものに満足のいく結果が得られたので、テーブルを生成する前にもう一つやっておきたいことがあります。ホットスポットを開いて、「応答のシミュレーション」をオンにします。これは、皆さんが気づいていないかもしれない、裏で機能しているツールの一つで、シミュレーションに役立ちます。
これは既にオンになっています。デザインテーブルを生成してみましょう。すると、2つのものが表示されます。エフェクトのサイズ、またはエフェクトのサイズを指定できるボックスと、デザインテーブルです。
始める前に、いくつかやってみましょう。右にスクロールして、ここで何が起こるか見てみましょう。係数をゼロにリセットします。分布の項目まで移動して、「二項分布」と書かれているところをクリックします。
まず最初に、シミュレーションをしてみましょう。ここでもクリスチャンのやり方に従います。3回の試行とします。「適用」をクリックすると、2つの異なる列が生成されます。1つは数式列で、この数式列については後ほど詳しく説明し、シミュレーションを実行するためにどのように設定したかを見ていきます。もう1つは、試行回数のみを示す固定列です。
ちなみに、もし何らかの理由で、例えばこれを閉じてしまったり、開き忘れてしまったりした場合でも、DOEを生成する際に、そのボタンは常に「DOEシミュレート」の下に表示されます。テーブルスクリプトを削除しない限り、いつでもアクセスできます。
さて、問題は、設計が完了し、設定も完了し、各列と2値変数も入力したので、どうやって推定値を求めるかということです。数学的な詳細は、この発見の講演資料に添付する予定の資料に割くことにしますので、ここでは割愛しますが、分かりやすくするために表を作成しました。
これから行うのは、ベースラインエラー率、ベースラインイベント率の推定値を指定することです。今回の場合、0.9ではなく、例えば0.75としましょう。私のベースラインエラー率は0.75で、達成したい目標値は0.2だとします。これでベースラインの推定値、つまり目標値の推定値が得られます。
これからこのベースラインをコピーして貼り付けます。これを0にリセットします。これを切片として貼り付けます。つまり、ベースラインが切片になります。ターゲットをコピーします。
ドン、ちょっと質問してもいいですか?
間違いない。
超速ですね。私の理解では、現在は75ですが、0.2まで下がれば大きな変化とみなされるということですね。
そうです。私が見たいのは、そのくらい大きな変化です。
それ以下なら気にしない。でも行くなら…
そうです。まさにその通りです。
ありがとう。
目標推定値をコピーしました。早速、連続変数の応答から始めます。連続変数の応答を貼り付けます。カテゴリ変数の応答については、もう少し細かく制御したいので、ここでは保留します。その前に、ここでの仮定を明確にしておきます。DOEを実行する際、ベースライン条件が設定されている場合、連続変数が計画の中心となり、カテゴリ変数は指定された水準にあると仮定しています。
連続因子については、ここに貼り付けるだけで取得できます。さあ、これを貼り付けてみましょう。これらは4つの連続因子、それらの連続因子に関連する二次効果、そして2つの連続因子に関連する2因子交互作用です。二項分布が設定されていることを確認し、二項分布を再び3に設定して、「適用」をクリックします。「Yシミュレーション」列が変化することを確認しているところです。実際に変化しています。
では、これらのカテゴリ因子にいくつか変更を加えてみましょう。カテゴリ因子のベースライン水準としてどの水準を用いるかを特定します。JMPが作成した計算式を開きます。この計算式ではランダムな二項変数が生成され、実行するたびに異なる値のセットが得られるようになっていることに注目してください。
細かいことにこだわりすぎないでください。重要なのは、ここに因子効果があるということです。この場合、これは因子、つまりカテゴリ因子1から6です。例えば、カテゴリ因子1では、ベースラインがどこにあるかを指定する必要があります。ベースライン値が0であることを確認したいのです。例えば、ベースラインが0だとします。
効果量を貼り付けます。繰り返しますが、上がベースラインなので、それを下に貼り付けます。この場合、CA3には3つのレベルがあるので、1をベースラインとして残し、他の2つに効果(例えば、小さいと大きい)を割り当てます。カテゴリ因子すべてについて、ベースラインレベルと、カテゴリ効果を含む2因子交互作用を選択します。
繰り返しますが、これは3つのレベルなので、2つのレベルを選択し、3つ目のレベルを基準として残しておきます。終了する前に、「適用」ボタンをクリックして、関数、つまり式が評価されることを確認します。これで準備完了です。これで、シミュレーションを実行できるように設計アプリを設定しました。これから行うことは、まず分析を1回実行し、その後、JMP Proのワンクリックシミュレーションツールを使用してシミュレーションを実行するというものです。
「分析」→「モデルの適合」に進みます。クリスチャンが何度か言及していた昨年の発見的な講演では、分析の設定方法や利用可能なオプションについてもう少し詳しく説明しました。これから提供する資料でもう少し詳しく説明しますが、今は省略します。まずは計画の設定だけを行います。今回は、JMPが入力したものを削除する必要があります。シミュレーション結果の列と試行回数の2つの列を入力する必要があります。
一般化回帰を選択し、二項分布を使用します。後で戻らなければならない場合に備えて、ダイアログは開いたままにしておきます。「実行」をクリックします。この時点で、JMPがデフォルトですべての効果を入力するように設定する必要があります。何らかのモデル縮約を行いましょう。ここでも、Christianが行ったことと同じく、Lassoを選択します。遺伝を強制すると、Lassoが少し早く終了してしまうことがあるので、これをオフにして「実行」をクリックします。
1回の反復実行が行われていることがわかります。これを1000回、あるいは1万回実行し、それぞれの効果が有意であった回数を収集し、有意であると正しく識別された頻度を調べたい場合はどうすればよいでしょうか。JMP Proでは、確率列、つまりp値列にマウスポインタを置くだけでそれができます。右クリックして、画面下部に「シミュレーション」オプションがあります。
ハイライト表示されているのは、計算式の列です。2,500回の実行は数分かかるのでやめて、250回に減らしましょう。実行回数は2,500回でも10,000回でも構いません。時間に余裕があれば、好きな回数を選んで「OK」をクリックします。JMPは計算式を再実行し、Lasso効果の遺伝をオフにして、選択した設定で分析をやり直します。
素晴らしいのは、これらすべてが単一のデータテーブルに集められていることです。検出力分析はテーブルに埋め込まれたスクリプトで実行でき、私の検出力分析結果もここにあります。この分析では、「アルファを0.01、アルファを0.05、アルファを0.1とした場合、シミュレーションによる検出力はどうなるか?」といったことが分かります。
ここでアルファ0.05を見ると、シミュレーションによるパワーは33%から45%の間と、やや低めの値になっています。これを1つのテーブルにまとめたい場合も、非常に簡単です。右クリックして「結合データテーブルを作成」を選択すると、すべてのパワー設定と、様々なエフェクトのシミュレーションによるパワー値が1つのテーブルにまとめられます。
ちょっとしたワークフローを作成しました。現在JMPバージョン16または17をお使いでない場合は、ワークフローを作成できます。私が使っているワークフローも用意しましたので、こちらもご提供いたします。このワークフローを使って表を整理しているので、Alpha 0.05だけを見れば済みます。ご覧の通り、私のパワーのようです。全体的に見ると、パワーが中程度、0.5程度のケースがいくつかありますが、特に素晴らしいものはありません。0.8以上のものはありません。
繰り返しますが、これは2,500回実行したものです。実は、次にお話ししたいこと、つまり得られる検出力に影響を与える要因を示すために、いくつかの異なる条件でこれを繰り返しました。当然ですが、検出力が高いほど良いです。検出力とは、実際に存在する効果を判別する能力のことです。
それを終了させてください。デスクトップを少し整理してから、結果を収集しました。今回のケースでは、シミュレーションを2,500回実行したと書きました。これは、皆さんに感じていただけるようにしています。これがベースラインです。これが調べた結果です。これは1回のシミュレーション実行です。これをもう一度実行すると、結果は少し変わります。私の実験設計では24回の実行、3回の試行、クリスチャンと同じように、すべての効果が有意でした。すべてが有意であると仮定します。ここでの比較は…ベースラインは0.75、目標値は0.2です。
切片が有意になっていることにお気づきでしょうか。これはあまり重要視されないものですが、実際には有意です。点Aに向かって上昇する効果が1つありますが、それ以外はすべて下がっています。もし3回の試行を5回に変更したらどうなるでしょうか?どのような影響があるでしょうか?3回から5回に変更することで、有意性が向上することがわかります。
完全なモデルから、すべての効果が有意であると結論付けた上で、サブセットモデルに移行したらどうなるでしょうか?もちろん、これらすべてを設計に組み込みます。これらを推定できるようにしたいのですが、サブセットのみとします。今回の場合は、連続因子2つとカテゴリ因子1つのサブセットを選択しました。こうすることで、状況はさらに改善されます。
これらは、シミュレーションを実行することで実現できる「もし~だったら」というシナリオです。もう一つ試してみましょう。最初の設計で、24回実行する代わりに36回実行すると、さらに良くなります。差を見たい場合、ベースラインが0.75ではなく0.90だったとしましょう。ちなみに、これらのアスタリスクは、モデルで有意であると指定した効果です。
繰り返しますが、これらはすべてJMPを使ってシミュレートできる「もし~だったら」シナリオであり、「よし、これは良さそうだ。この実行回数、この試行回数で十分だ」と判断できます。あるいは、もう少し実行回数を増やす必要があるかもしれません。検出力が低すぎるので、試行回数を増やす必要があるかもしれません。あるいは、現状のままで十分かもしれません。
まとめましょう。検出力に影響を与えるものは何でしょうか?言うまでもなく、実験の実行回数が増えるほど、検出力は高まります。試行回数が増えるほど、検出力は高まります。ベースラインと開始点の差が、検出力に影響を与えます。当然のことながら、両者が離れているほど区別しやすくなり、端に近づくほど区別しやすくなります。有意な効果が減少するほど、検出力は高まります。さて、これらが検出力に影響を与える要因です。
もう一度、まとめさせてください。皆さんには既に専門家がいて、デザインについて既に検討を始めています。これらのデザインを適切な規模にするには、まず優れたデザインから始めることが重要です。優れたデザインから始め、何に注目したいかを決め、効果間の相関関係などを最小限に抑えるようにしてください。そうすることで、検出力が向上します。
2つ目は、ベースラインを決めることです。ベースライン値、目指すべき方向性、そしてどの程度の変化が実質的に有意なのかを決定します。これらの値を入力し、応答をシミュレーションします。分布は二項分布に設定し、重要な効果の大きさを特定できる式を設定します。そして、JMPを実行し、ワンクリックシミュレーションを実行して検出力を推定します。
期待通りに結果が出ない場合、つまり検出力が低い場合は、実行回数や試行回数、有意と思われる効果などを変更してみましょう。「もし~だったら」という仮定の仮説を立ててみましょう。素晴らしいのは、何もせずに何かを得られることはないとよく言われることですが、これはまさに「何もせずに何かを得られる」ということです。これらの実験は、JMPに既にツールが組み込まれているため、時間も費用もほとんどかからず、無料で利用できます。
分かりました。まさに私が言いたかったのはこれです。Christianさんには、実際にこれらのデザインを実行してくれたことに感謝したいと思います。成功した実験が実際にどのように行われたかを見るのはいつも嬉しいものです。もしご覧くださった方がいらっしゃいましたら、ありがとうございました。何かお役に立てたなら幸いです。ご質問がありましたら、Discovery Talkの該当ページまたはJMPコミュニティに投稿してください。皆様とさらに議論を深め、ご質問にお答えできれば幸いです。ありがとうございました。
ありがとう、ドン。