タグチメソッド?
「数パターンのテストを行うだけで、数十パターンのテストを行なった時と同等の結果を得られる魔法の手法、それがタグチメソッド!」
MVTツール界隈では、このような無責任な記述が散見されます。全否定したいわけではないですが、タグチメソッドは、少なくとも魔法のツールではありません。品質管理の分野で広く使われている手法です。
MVTで利用される「タグチメソッド」と呼ばれる手法は、「タグチメソッド」の一部である「直交表を利用した実験計画法」のみを指しています。タグチメソッドはどちらかというと、SN比を上げバラツキを抑えることに重点が置かれており、その点はMVTには全く関係ありません。
実は、「直交表を利用した実験計画法」はマーケティングリサーチの世界でも頻繁に利用されています。マーケティングリサーチでは「コンジョイント分析」と呼ばれる手法です。MVTで利用されるテストパターン削減の方法という意味では、コンジョイント分析の方が、タグチメソッドよりも近いと思います。
タグチメソッドは高いツールでしか使えない?
無料で利用できるGWOや、安価なLPOツールではタグチメソッド的な方法を提供していません。だからといって、タグチメソッド的なテストができないというわけではありません。上に書いたように、タグチメソッドと呼ばれるMVT手法は単に直交表を利用した実験計画法でしかありません。直交表を利用して、実験を計画すればいいのです。
まずは、直交表を用意します。Googleで「直交表」と検索すれば、いくつか見つかるはずです。プロラムで作ることもできると思いますが、ちょっと難しいようなので、Webから拾ってくればいいと思います。
直交表には「2水準系」、「3水準系」、「混合型」などがあります。2水準はテストのパターン数が2つの場合(A or B)、3水準は3つ、混合型は2つと3つが両方含まれているものです。
前回取り上げた総当り方式のMVTでは2水準しか扱っていなかったので、今回は3水準の「L9直交表」を利用しましょう。
*本来のタグチメソッドでは、L12、L18、L36が使われるようです。特にL18が推奨されています。
L9直交表は以下のようなものです。
L9 | A | B | C | D |
---|---|---|---|---|
テスト1 | 1 | 1 | 1 | 1 |
テスト2 | 1 | 2 | 2 | 2 |
テスト3 | 1 | 3 | 3 | 3 |
テスト4 | 2 | 1 | 2 | 3 |
テスト5 | 2 | 2 | 3 | 1 |
テスト6 | 2 | 3 | 1 | 2 |
テスト7 | 3 | 1 | 3 | 2 |
テスト8 | 3 | 2 | 1 | 3 |
テスト9 | 3 | 3 | 2 | 1 |
L9直交表では、A、B、C、Dの4つのパラメータに対して、それぞれ3つずつのテストを行います。
総当り方式でのテストパターン数は
3 * 3 * 3 * 3 = 81パターン です。
これが、9パターンのテストのみで実現できます。
テストの方法も別に難しくはありません。直交表に書かれているようにテストパターンを準備すればOKです。
例えば、テスト1では、A、B、C、Dで全て1つ目のパターンを用意。テスト2では、Aのみ1つ目のパターンで、B、C、Dは2つ目のパターン。という具合に9つのパターンを用意して、テストを行えばOKです。
自分で直交表さえ用意してしまえば、おそらくどんなツールでもタグチメソッドを実施することができます。あえて、高いツールを使う必要はありません。
分析とデータ解釈の方法
分析方法は、総当り方式で行なった方法と同じです。
CVRは以下の表と考えます。
L9 | A | B | C | D | CVR |
---|---|---|---|---|---|
パターン1 | 1 | 1 | 1 | 1 | 0.06 |
パターン2 | 1 | 2 | 2 | 2 | 0.06 |
パターン3 | 1 | 3 | 3 | 3 | 0.07 |
パターン4 | 2 | 1 | 2 | 3 | 0.05 |
パターン5 | 2 | 2 | 3 | 1 | 0.04 |
パターン6 | 2 | 3 | 1 | 2 | 0.03 |
パターン7 | 3 | 1 | 3 | 2 | 0.03 |
パターン8 | 3 | 2 | 1 | 3 | 0.05 |
パターン9 | 3 | 3 | 2 | 1 | 0.03 |
総当り方式のところで行なったように、ダミー変数を用いて集計用の表を作成します。今回は全て3水準ですので、全ての項目で1つ列を消します(消した列が基準値となります)。
L9 | a1 | a2 | b1 | b2 | c1 | c2 | d1 | d2 | CVR |
---|---|---|---|---|---|---|---|---|---|
パターン1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0.06 |
パターン2 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0.06 |
パターン3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.07 |
パターン4 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0.05 |
パターン5 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 0.04 |
パターン6 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0.03 |
パターン7 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0.03 |
パターン8 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0.05 |
パターン9 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0.03 |
次に、このデータを用いて重回帰分析を行います。
(Rで計算)
> data
a1 a2 b1 b2 c1 c2 d1 d2 CVR
1 1 0 1 0 1 0 1 0 0.06
2 1 0 0 1 0 1 0 1 0.06
3 1 0 0 0 0 0 0 0 0.07
4 0 1 1 0 0 1 0 0 0.05
5 0 1 0 1 0 0 1 0 0.04
6 0 1 0 0 1 0 0 1 0.03
7 0 0 1 0 0 0 0 1 0.03
8 0 0 0 1 1 0 0 0 0.05
9 0 0 0 0 0 1 1 0 0.03
> res <- lm(CVR~., data=data)
> summary(res)
Call:
lm(formula = CVR ~ ., data = data)
Residuals:
ALL 9 residuals are 0: no residual degrees of freedom!
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 4.333e-02 NA NA NA
a1 2.667e-02 NA NA NA
a2 3.333e-03 NA NA NA
b1 3.333e-03 NA NA NA
b2 6.667e-03 NA NA NA
c1 -6.758e-18 NA NA NA
c2 -1.804e-18 NA NA NA
d1 -1.333e-02 NA NA NA
d2 -1.667e-02 NA NA NA
Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared: 1, Adjusted R-squared: NaN
F-statistic: NaN on 8 and 0 DF, p-value: NA
偏回帰係数をまとめると、以下の表になります。
各パラメータのパターン3は基準値ですので、値は「0」となります。
A | B | C | D | |
---|---|---|---|---|
パターン1 | 0.0267 | 0.0033 | -0.0000 | -0.0133 |
パターン2 | 0.0033 | 0.0067 | -0.0000 | -0.0167 |
パターン3 | 0 | 0 | 0 | 0 |
わかりにくいので、グラフ化してみましょう。
このグラフの解釈方法ですが、まず、それぞれのパラメータの傾きを見ます。傾きが大きいものが影響力が大きいと考えられます。A(a1,a2,a3)は傾きが非常に大きいです。これはa1、a2、a3間で差が大きいことを意味します。つまり、このパラメータを変更すると、CVに対する影響が大きいと考えられます。「D」も「A」ほどではないですが、傾きが大きいです。CVに対する影響力はある程度大きいと言えます。
「B」と「C」については傾きが小さいです。つまり、パターンを変えても大きな違いがないということを意味しています。
次に、各パラメータで最も偏回帰係数が高いパターンを抽出します。
ここでは、「a1、b2、c3、d3」が、それぞれ最も偏回帰係数が大きいものです(c3は微妙ですが、数値が高くなっています)。偏回帰係数が高いということは、CVに与える影響が大きいということなので、最も効果が高いものといえます。
よって、
最適なテストパターンの組み合わせは、「a1、b2、c3、d3」
となります。実際、このパターンでのテストは行っていませんが、計算すると、このパターンで実施するのがベストだと結果になります。
これが、タグチメソッド的なテスト手法です。
*前回も少し書きましたが、本来のタグチメソッドでは数量化I類ではなく、分散分析を行います。ただ、今回はMVTの結果データが「0/1」であることと、簡略化のため、数量化I類を採用しています。
タグチメソッド的手法の重大な欠点
少ないテストで、最適なテストパターンの組み合わせがわかるなんて素晴らしい手法です。しかし、ここに落とし穴があります。
前のエントリで書いたMVTでわかることの3つを思い出してみましょう。
- どのパターンのCVRが高いのか
- どの要素(パラメータ)がCVRに影響を与えているのか
- 要素間の交互作用はどれくらい強いのか
まだ3つ目の「要素間の交互作用はどれくらい強いのか」を算出してみませんでした。算出してみましょう。。。。実はできません。なぜなら、この実験設計に交互作用を考慮に入れていないからです。総当り方式の場合、全ての種類のテストを行っているため、いくらでも交互作用を計算することができます。しかし、直交表を用いた場合、事前に設計した組み合わせの分でしか計算することができません。
つまり、タグチメソッド的手法を使うと、3つ目の「要素間の交互作用」を算出することができなくなります。それだけなら、まだ良いのですが、「要素間の交互作用が無い」ことを「前提」としています。「要素間の交互作用」があっては、モデルとして成り立たなくなり、「a1、b2、c3、d3」が最適な組み合わせだと言うことができなくなります。
MVTでは通常1ページ内に、いくつかのパラメータを用意して、各パラメータごとにパターンを用意します。このように、「1ページ内」に置いた場合、「要素間の交互作用が無い」ということが考えられるでしょうか?ページデザインで、各パラメータが独立に存在していることなど、通常は考えられません。トータルとして印象を受取ります。「要素間の交互作用が無い」という前提には無理があります。
*注:
ちなみに、本来のタグチメソッドでは、交互作用がないことを「条件」としています。交互作用があると、工業品として不適格だという考えです。だからといって、交互作用を算出することができないわけではありません。(タグチメソッドではない)実験計画法では直交表に交互作用を割り付けることで交互作用を算出するようにしています。ただし、特に3水準以上になると、交互作用の割り付けも一筋縄ではいかず、非常に難しくなります。例えば、今回のモデルでの交互作用を考えてみると、
a1との2水準の交互作用だけでも、
「a1b1」、「a1b2」、「a1b3」、「a1c1」、「a1c2」、「a1c2」
の6種類あります。これが「a2」「a3」の組み合わせもあり、さらに「a1b1c1」などの3水準もあり、、、、と考えてみると、相当数の交互作用を考慮しなくてはいけなくなります。(組み合わせを計算で出すことができると思いますけど、自信ないので止めときます)
交互作用を考慮に入れて設計するのは、非常に難しく、交互作用を考慮に入れると、結局テストパターンが減ることになるので、直交表を使うメリットも減少します。
それでもタグチメソッドを使いますか?
これが安易にタグチメソッドを使うべきではないという理由です。
たしかに、わずか9パターンのテストで、81パターン分のテストができる優れた手法です。しかし、
「交互作用がないって本当に言い切れますか?」
「そもそも、81パターンものテストをする必要が本当にありますか?」
この点を理解せずに安易にタグチメソッドを用いると、誤ったテスト結果が出てくることになります。
総当り方式のテストを行なった場合、検定さえしっかり行えば、誤った結果が出ることはありません。しかし、タグチメソッド的な手法を使うと、交互作用がある場合、誤った結果が出てきます。MVTを行う場合、交互作用が無いことは通常考えにくいです。であれば、タグチメソッドは、ほぼ確実に誤った結果を算出します。そして、パラメータ間の交互作用について説明をしているツールベンダーは知っている限り一つもありません。ツールの謳い文句に乗って、安易にタグチメソッドを使うと痛い目にあうので気を付けた方が良いと思います。
タグチメソッド的手法が何故まずいのかについては、SiteTunersのTim Ashがもっと詳しく説明しています。ホワイトペーパーを無料でダウンロードすることができるので、時間があれば読んでおくと良いと思います(登録が必要です)。
(僕は彼ほど全否定するつもりはありませんが、、、)
追記:
ノンパラメトリックな手法であれば、交互作用の問題もあんまり無いと思います。
1 reply on “MVTを本当に理解する Part3 : タグチメソッドについて”
正規分布的単純仮定の問題が今日的エンジニアを苦しめているのはまれであって、ゼロから工業を立ち上げる必要のある途上国で役にたったのはタグチメソッドの重要な特質を象徴している。この技法は、高い技術力の国を追い抜くのではなく、高い技術力の国に迫ろうとするときのみ有効で、ある意味未来への展望を失った箱庭エンジニアなのである。