UA-115498173-1

2018年03月03日

p82の列の寄与について

p82に示した,エクセルでやるようなクロス集計法との比較はオフトピックで,原稿段階でもこの部分は削除対象だったということもあってこの部分の手順説明は省略しています.p82一番上のグラフの描き方については少し前にお話していますが,今度はその下にある「列の寄与」のグラフが描けないとの質問をいただきました.統子ちゃんのセリフ「この結果を「パーティション」による「赤三角>列の寄与」と比較すればいいのね.」,その次のJMPくんのセリフ「これは装置#を除外してk分割交差検証によって自動分割した結果だよ.」をそのまま実行してもp82のグラフは得られません.ヒントは除外されている行の扱いです.以下に書くことはJMP経験者であればご存知だと思うのですが,本書をもとに新たにJMPを勉強してくださっている方もいるようなのでこの場でもう少し丁寧に説明します.詳細なJMPの操作を示すことまでは本書の守備範囲と考えていませんが,このブログでは可能な限りJMP操作もサポートしていこうと思っています.
さて,以下に手順を示します.まず,データは同じ「5_概観結果.jmp」を用意してください.ファイルを開いたら,すべての非表示かつ除外になっている行が選択されていることを確認して,もしも選択が解除されているならば,「装置No.」列と1行目を選択してから,右クリックで「一致するセルを選択」を実行します.これですべての非表示かつ除外になっている行(装置No.が#4)が選択されるので,この状態で「行>行の削除」です.(ここがポイント)
ここで「パーティション」を実行するわけですが,このとき装置#を「X」に入れないでください.パーティション プラットフォームが出てきたら,赤三角から「k分割交差検証」を実行するとkの値を入力するように聞いてきますので,デフォルトの5のままにして『OK』です.この操作で『分岐』『剪定』の隣に『実行』ボタンが出てきますので,それを押せばp82のグラフが描けます.
因みに,このデータでは「k分割交差検証」を実行しなくても最初から『実行』ボタンが出ています.それはなぜかという理由は,なぜ非表示かつ除外のままではいけないかという理由と同じなのです.JMPではモデリングの際のオーバーフィッティング対策として検証という機能が実装されています.データを学習セットと検証セットとに分けて,前者でモデルを作成し,後者でそのモデルを評価します.検証セットの指定方法にはいくつかあって,JMP Proでは検証列を指定することも可能ですが,JMP Stdで最も簡単なのが「k分割交差検証」を使うことです.デフォルトのk=5であれば,データを5分割してそのうちの一つが検証セットに割り当てられます.(kの選び方は観測データの性質によって選ばれるべきですが,今のデータサイズであればデフォルトのままでよいでしょう.)k個のデータセットそれぞれを検証セットとしたすべての結果が比較され,最終的にこれらの中で最もR二乗の大きいモデルが採用されます.ここで問題となるのは,「除外」された行があるとこれらが(頼みもしないのに)検証セットとして扱われてしまうという仕様があるのです.このためデータに除外された行があると本それは異常値としてモデル作成には使いたくないデータですから,「k分割交差検証」を実施してもおかしな結果になってしまうのです.このため,実質的に「k分割交差検証」をかけるデータでは一部を除外するという機能が使えないのでとても不便です.
厳密には装置#4以外にも除外されているデータが二つあるわけですが,この二つは削除しなくても「k分割交差検証」の結果には大きな違いはありません.すべての除外された行を削除して「k分割交差検証」を実施した結果を示しておきます.(p82の結果とは微妙に違います.)
列の寄与.png

今週は別のお話をしようと思っていたのですが,それはまた来週ということで.それではまた.
タグ:Q&A JMP
posted by Tad at 13:53| Comment(0) | TrackBack(0) | Q&A

2018年01月27日

Q&Aのカテゴリーを作成しました

先週の続きです.お答えをアップしようと思っていたのですが,雪が降ったりして(あまり関係ありませんが)つい週末になってしまいました.ちょうど別の質問も頂いたので,少し前にの新規に作成したQ&Aカテゴリーにまとめて掲載します.
最初の質問ですが,P227でJMPくんが「てこ比プロット」が一番下の「効果の詳細」に隠れていると言っているけど,「効果の詳細」が見当たらないというものです.
その直前の応答の赤三角から「行ごとの診断統計量>効果てこ比のプロット」を実行してというJMPくんのメッセージをおそらく見落とされているのだと思います.この後の縮約モデルを作る処理はp148以降で説明している操作と同じですので,ここを読み返してみてください.
一つtipsを書いておきますと,この応答の赤三角にあるコマンドのように選択することでレポートの表示項目を切り替えるものが多数ある場合,Altキーを押しながら赤三角をクリックして見てください.この図のようなウィンドウが開きますので,表示させたい項目にチャックをいれることで,赤三角それぞれのコマンドにチャックを入れることができます.
image001.png
このほうが,複数同時にチェックを入れたり,何にチェックがついているかを一瞥できるのでとても便利です.

次に頂いた質問は,P215でJMPくんが「スクリーニング計画のデータ分析は一瞬だよ」といっているところに関するものです.ここでは具体的には緑三角をクリックするわけですけど,これを自分のデータでやるのはどうしたらよいのかという質問です.自分のデータといえども,スクリーニング計画のテーブルに入力すれば良いのですが,おそらくご質問の真意はJMPでなく例えばエクセルでスクリーニング計画のテーブルを作成した場合のようなことでしょうか.この場合でもJMPでスクリーニング計画を作り直して自分のデータを入力するのが間違いがありませんのでオススメです.
ご質問を緑三角ボタンでなく通常のJMPコマンドでスクリーニングを処理するのはどうしたらよいかという意味と解釈しますと,これは良い質問です.スクリプトで実際にどういう処理が走っているのかを知ることは有益です.
「スクリーニング」のスクリプトはスクリーニング計画のための特殊なものなので内部処理の詳細は定かではありませんので厳密に同じという保証はできませんが,一般的なスクリーニング処理としては「モデルのあてはめ」から手法として「ステップワイズ法」を選んで実行します.このとき,Yに収率しか入っていないはずですので,「副生成物」も追加してください.書籍では「スクリーニング」のスクリプトを修正かけるように記述しましたが,「モデル」のスクリプトに修正かければ,この場合でも「副生成物」がYに追加されることになります.ステップワイズはとりあえずデフォルト設定で『実行』します.このときCtrlキーを押しながら『実行』すれば二つの応答(Y)に対して同時に処理されます.この後,それぞれの応答について「ステップワイズ回帰の設定」のところにある『モデルの実行』をクリックすると「スクリーニング」スクリプトによるのと同様な結果が得られます.(「効果の要約」にはそれぞれの要因ごとに対数価値が棒グラフで示されていたりと厳密には同じ表記にはなっていませせん.)応答の赤三角から「要因のスクリーニング>尺度化した推定値」を実行すると尺度化した推定値でグラフが描かれますので,スクリーニングの目的には見やすいでしょう.同じところに「正規プロット」もあります.半正規プロットは正規プロットの右上にあるプルダウンから指定することで描けます.この場合,Y軸は「推定値」になり「スクリーニング」スクリプトのところの「対比の絶対値」と見た目は同じグラフになります.ちなみに,ややこしいのですがX軸は「正規分位点」のままになっていますが,これは「半正規分位点」の間違いであろうと思います.英語版でも「Normal Quantile」となっているので訳の間違いではなさそうです.
というわけでご質問いただいたTさん,Sさんこれで回答になっていますでしょうか.もしまだ何かありましたら,コメントいただければと思います.
(見た目は寂しいですが,コメントされるかたもそのほうが安心だろうとの配慮から基本的にコメントは公開していません.)
それではまた.
タグ:問題解決 Q&A JMP
posted by Tad at 11:36| Comment(0) | TrackBack(0) | Q&A

2017年11月25日

階層型クラスター分析で面内分布を分類する

先日のサミットでの発表では,階層型クラスター分析を用いて特性の面内分布のクラスタリングをデモしました.懇親会の場でまさにこういうことがやりたかったという方に声をかけていただきまして,どうやるのかという質問に後日このブログに掲載しますとお答えしました.もともと出版記念セミナーとサミットとでデモした内容は本書の編集時点ででカットしたものですが,応用範囲は広いのでしまっておくのは残念に思っていました.ともに実験計画の外側のデータを有効に使うために考案した手法です.「統計的問題解決入門」第5講の例題はデータ取得前に通常は外側に配置する因子を内側に配置してカスタム計画に強引に持っていくという手法ですが,今回のデモでは既に取得されたデータを外側直交に配置して,統計モデルを作成しています.このデータ構造故に面内分布のクラスタリングが可能であることに注意してください.以下に手順を示しますので,ぜひ自分のデータで実習してみて下さい.
まずデータ構造として列名で「因子1」「因子2」「因子3」...という特性の設計因子に続いて「特性@測定点1」「特性@測定点2」「特性@測定点3」のようなものを考えてみます.このデータに測定点の座標「X」「Y」という新たな量的因子を導入して積み重ねの構造にします.そうすると,「因子1」「因子2」「因子3」...「X」「Y」「特性」というような列の並びになります.これらに加えて通常は「Lot」とか「パーツ番号」あるいは「製品名」とかのその列名も加わっていることが多いはずです.
 
このデータに対して,「分析>クラスター分析>階層型クラスター分析」を実施します.設定パネルで左下のプルダウンで「通常のデータ」となっているのを「積み重ねたデータ」に変更して,ここが重要ですが「空間的な指標の計算」にチェックを入れます.「Y,列」には「特性」を「属性のID」には「X」「Y」を指定し,「対象のID」にはその面内分布をユニークに指定するために必要な列をいれます.例えば,「Lot」ですとか「製品名」ですとか.実験計画のデータであれば「実験番号」というのでもいいです.そうしたら『OK』です.
 
「空間的な指標」という設定パネルが出てきます.ここのパラメータの設定にはハフ変換という画像処理を知っておく必要がありますが,とりあえずデフォルトで『OK』してください.そしてレポートの赤三角から「クラスターの要約」でデモで示したクラスタリング結果が面内マップで表示されます.
 
言葉だけですと分かりにくいかもしれませんが,一連の操作は上述の通りなので難しいことはありません.場合によって難しいかもしれないのは上述したハフ変換の設定を最適化する必要がある場合でしょうか.これらのパラメータを調節することで特定の欠陥パターンを効果的に分類・抽出できますが,その設定によって大幅に処理時間が変わってきます.ある程度の経験が必要なので言葉では説明が困難なのですが,具体的なデータを提示していただければアドバイスできると思います.私の本職は画像処理なのでここらへんの勘所はあります.
ご質問してくださったかたがこの記事をお読みになることを願いつつ,それでは今週はこれで.
タグ:JMP
posted by Tad at 08:22| Comment(0) | TrackBack(0) | Q&A