スピーカー
|
成績証明書
|
| マイケル・クロッティ |
こんにちは。 ご視聴いただきありがとうございます |
| |
JMP Pro でサンプリング手法とモデルを比較できるようにする不均衡分類アドインについて説明します。 |
| |
私はマイケル・クロッティです。 私は JMP のドキュメント チームの統計ライターの 1 人で、今日の共同発表者は同じく統計ドキュメント チームの Colleen McKendry です。 これはマリー・ゴーダールとの共同作業です。 |
| |
それでは、今日の講演の概要を簡単に説明します。 私たちが作成したアドインの目的、不均衡な分類問題の背景、その状況で分類モデルを取得する方法について見ていきます。 |
| |
アドインに含まれている、不均衡な分類問題でよく使われるサンプリング手法をいくつか見ていきます。 |
| |
アドインで利用可能なオプションを見ていきます |
| |
アドインの入手方法について話した後、Colleen がアドインの例とデモを示します。 |
| |
コミュニティで利用できるスライドには、参考文献と追加の背景情報を記載した付録もあります。 |
| |
したがって、アドインの目的である不均衡分類アドインを使用すると、不均衡なデータ用に設計されたさまざまなサンプリング手法を適用できるようになります。 |
| |
これらのテクニックを適用した結果と、JMP Pro で利用可能なさまざまな予測モデルを比較できます。 |
| |
また、精度リコール曲線、ROC 曲線、ゲイン曲線やその他の尺度を使用して、これらのモデルとサンプリング手法の適合を比較できます。 |
| |
これにより、曲線を使用して分類のしきい値を選択できます。 |
| |
また、Tomek、SMOTE、および SMOTE と Tomek のサンプリング手法をデータに直接適用することもできるため、既存の JMP プラットフォームを使用して、 |
| |
私たちが選択したほとんどデフォルトの方法オプションが気に入らない場合は、新しくサンプリングしたデータに基づいてモデリング オプションを微調整します。 |
| |
1 つだけ注意してください。Tomek、SMOTE、および SMOTE と Tomek のサンプリング手法は、名目変数、順序変数、および連続予測子変数で使用できます。 |
| |
それでは、不均衡なデータ問題の背景について説明します。 |
| |
したがって、一般に、多項応答を得ることができますが、応答変数が 2 値であることに焦点を当てます。重要な点は、1 つの応答レベルでの観測値の数が、他の応答レベルでの観測値の数よりもはるかに大きいということです。 |
| |
そして、これらの反応レベルをそれぞれ多数派クラス レベルと少数派クラス レベルと呼びます。 したがって、ほとんどの場合、少数派レベルは、予測および検出したい関心のレベルです。 これは、詐欺や病気、信用リスクの存在を検出することに似ています。 |
| |
そして、回帰変数に基づいてクラスのメンバーシップを予測したいと考えています。 |
| |
そのために、少数派クラスに属する確率を割り当てる予測モデルを開発し、最適化するしきい値を選択しました。 |
| |
さまざまな基準。 これには、誤分類率、真陽性率、偽陽性率などがあります。 次に、少数派クラスへのメンバーシップの予測確率が選択したしきい値を超えた場合に、誰が少数派クラスに属しているかという観測結果を分類します。 |
| |
では、どうやって分類モデルを取得するのでしょうか? |
| |
JMP には、バイナリ変数、バイナリ結果を予測できるさまざまなプラットフォームが多数あります。 |
| |
回帰変数が存在する場合、それらのモデルを比較する方法が必要です。 そうですね、分類精度などの従来の尺度は、不均衡なデータにはあまり適切ではありません。 極端な例として、2% の少数派のケースを考えてみましょう。 |
| |
すべての観測値を多数派のケースとして分類するだけで、98% の精度が得られます。 これは有用なモデルではないので、使いたくないでしょう。 |
| |
なぜなら、あなたは予測していないからです...ターゲットケースを少数のケースまで正確に予測しているのではなく、全体的な精度だけを言えば、98%になるでしょう、これはかなり良いように思えます。 |
| |
このため、人々は不均衡な分類モデルで分類精度を測定する別の方法を模索するようになりました。 そのうちの 1 つは適合率再現曲線です。 |
| |
これらは不均衡なデータでよく使用され、真陽性率再現率に対して陽性的中率または精度をプロットします。 |
| |
また、精度では多数のインスタンスが考慮されるため、PR 曲線は ROC 曲線よりもクラスの不均衡の影響を受けやすくなります。 |
| |
したがって、PR 曲線は、不均衡なデータのモデルの違いをより適切に強調表示できます。 したがって、アドインのレポートで最初に表示されるのは PR 曲線です。 |
| |
不均衡な分類データを処理するもう 1 つの方法は、少数派クラスのモデル化に役立つサンプリング手法を使用することです。 |
| |
そして一般に、これらは、回答の分布により多くのバランスを課すためのさまざまな方法にすぎず、ひいては、多数派クラスと少数派クラスの観察の間の境界をより明確に示すのに役立ちます。 したがって、アドインには 7 つの異なるサンプリング手法があります。 |
| |
最初の 4 つについてはあまり詳しく説明せず、最後の 3 つに焦点を当てますが、重み付けがないということは、それがどのようなものかを意味することがすぐにわかります。 私たちは何もしません...何も変更しません、そしてそれは |
| |
本質的には、不均衡を考慮するためにいかなる種類のサンプリング方法も実行しなかった場合に行うことのベースラインを提供するためにそこにあります。 |
| |
重み付けでは、多数派クラスと少数派クラスの重みの合計が同じになるように、少数派のケースが重み付けされます。 |
| |
ランダム アンダーサンプリングでは大多数のケースをランダムに除外してバランスの取れたケースを取得し、ランダム オーバーサンプリングではランダムに複製します。 |
| |
少数のケースを再びバランスの取れた状態に戻します。 |
| |
次に、次の 3 つのより高度な方法について、次のスライドで詳しく説明します。 |
| |
したがって、最初の高度な手法は SMOTE (合成マイノリティ オーバーサンプリング技術の略) です。 |
| |
そして、これは基本的に、より洗練された形式のオーバーサンプリングです。なぜなら、より少数のケースをデータに追加しているからです。 |
| |
これは、既存の少数派クラスの観測値と同様の新しい観測値を生成することによって行われますが、オーバーサンプリングのように単純にそれらを複製するわけではありません。 |
| |
そこで、Gower 距離関数を使用し、少数派クラスの観測ごとに K 個の最近傍を実行し、それらの近傍によって定義された空間を埋める観測が生成されます。 |
| |
そして、この図では、この少数派のケースが赤で示されているかどうかがわかります。 3 つの最近傍を選択しました。 |
| |
そして、そのうちの 1 つをランダムに選択します。 それはたまたまここにあるものであり、その後、ケースを生成します。これは、この小さな影付きのボックスのどこかにある、別の少数のケースです。 そしてそれは二次元での話です。 持っていたら |
| |
予測変数が n 次元の場合、その影付きの領域は n 次元空間になります。 |
| |
ただし、重要な点の 1 つは、最も近くにあるものの数を選択できるということです。 |
| |
どちらかをランダムに選択し、これを実行する回数も選択できます |
| |
このアルゴリズムは少数派のケースごとに異なります。 |
| |
次のサンプリング方法は Tomek リンクです。 そして、このメソッドが行うことは、少数派クラスと多数派クラスの間の境界をより適切に定義しようとすることです。 これを行うために、少数派クラスの観測値に近い観測値を多数派クラスから削除します。 |
| |
繰り返しになりますが、Gower 距離を使用してトメック リンクを見つけます。トメク リンクは、異なるクラスに分類される最近傍のペアです。 つまり、1 つの多数派と 1 つの少数派は、互いに最も近い隣接関係にあります。 |
| |
これらのインスタンスの重複を減らすために、ペアの一方または両方のメンバーを削除できます。 アドインのメイン オプションであるモデルの評価オプションでは、大部分のインスタンスのみを削除します。 ただし、Tomek オプションでは、どちらの形式の除去も使用できます。 |
| |
そして最後のサンプリング方法は SMOTE と Tomek です。 これは、前の 2 つのサンプリング方法を組み合わせたものです。 |
| |
そして、それらを組み合わせる方法は、このモード アルゴリズムを適用して新しい少数派の観察を生成し、元のデータと生成された多数の新しい少数派のケースを取得した後、 |
| |
tt は、Tomek アルゴリズムを適用して、異なるクラスに分類される最近傍ペアを見つけます。 そして、この方法では、Tomek ペアの両方の観測値が削除されます。 |
| |
したがって、不均衡分類アドインには、インストール時に 4 つのオプションがあり、すべてアドイン メニューの下のサブメニュー項目として表示されます。 |
| |
1 つ目はモデルの評価オプションで、さまざまなサンプリング手法を使用してさまざまなモデルを適合させることができます。 次の 3 つは、先ほど説明した 3 つのサンプリング手法を実行するだけの独立したダイアログです。 |
| |
そのため、アドインのモデルの評価オプションでは、モデルとサンプリング手法の組み合わせの比較を容易にする不均衡分類レポートが提供されます。 |
| |
PR 曲線と ROC 曲線、およびゲイン曲線が表示されます。また、PR 曲線と ROC 曲線については、曲線の下の面積が表示されます。一般に、これらの各曲線の下の面積が大きいほど、モデルの適合性が高くなります。 。 |
| |
これは、各モデルがどのように適合しているかを把握するのに役立つ、クラスごとの予測確率のプロットを提供します。 |
| |
また、テクニックとしきい値のデータ テーブルも提供され、そのテーブルにはレポートを再現できるスクリプトが含まれています。 |
| |
これは、アドインを初めて実行するときに生成されます。 そして、これを実行し、全体を書き直さずに結果を保存したい場合は、強調したいと思います。 |
| |
モデリングおよびサンプリング手法のアルゴリズムを使用している場合は、この手法としきい値のテーブルを保存すると、結果を保存してレポートを再現できるようになります。 |
| |
それでは、モデルの評価オプションのダイアログを見てみましょう。 多数のモデルとサンプリング手法から選択できます。 |
| |
バイナリ クラス変数とすべての X 予測子を入力すると、 |
| |
私たちは、すべてのモデルに適合するために、そして |
| |
テストセット上でそれらを評価するには、データをトレーニング検証セットとテストセットにランダムに分割します。 あなたは提供することができます...それらの各セットに入る比率を設定することができます。 |
| |
結果を再現したい場合は、ランダム シード オプションがあります。 SMOTEオプションもあります |
| |
前にほのめかしましたが、最近傍の数を選択できます。そこから、新しいケースを生成するために使用される最近傍となる 1 つを選択します。各少数派ケースの複製とは、各少数派に対してアルゴリズムを繰り返す回数です。観察。 |
| |
繰り返しになりますが、他にも 3 つのサンプリング オプションがあります |
| |
アドインのオプションは、Tomek、SMOTE、および SMOTE plus Tomek に対応します。 Tomek サンプリング オプションでは、実行したい予測モデルの予測の重みとして使用できる 2 つの列をデータ テーブルに追加します。 |
| |
最初の列ではリンク内の過半数の最近傍のみを削除し、もう 1 つの列では Tomek リンクの両方のメンバーを削除するため、そのオプションがあります。 |
| |
SMOTE 観測により、合成観測がデータ テーブルに追加されます。 |
| |
また、どのソース列であるかを識別できるように、ソース列も提供されます。 |
| |
所見が追加されました。 また、SMOTE と Tomek では、合成観測値と Tomek リンクの両方のメンバーを削除する重み付け列が追加されます。 |
| |
そして、Tomek サンプリングと SMOTE plus Tomek からの重み付け列、 |
| |
これは、JMP モデリング プラットフォームで重みとして使用できる単なるインジケーター列です。 含まれる場合は 1、除外する必要がある場合は 0 になります。 |
| |
他の 3 つのサンプリング オプション ダイアログのほとんどは、基本的に同じように見えます。 |
| |
モデルの評価オプション ダイアログにはなく、それらにあるオプションの 1 つは、中間テーブルの表示です。 このオプションは、SMOTE および SMOTE plus Tomek に表示されます。 |
| |
基本的に、SMOTE 観測の構築に使用されたデータ テーブルを確認できるようになります。 通常、これを見る必要はありませんが、これらの観測値がどのように生成されるかをよりよく理解したい場合は、これらの中間テーブルを参照してください。 |
| |
そしてそれらはすべてドキュメントで説明されています。 |
| |
繰り返しますが、コミュニティを通じてアドインを入手できます。 |
| |
Discovery Summit Americas 2020 に関するこの講演のページはこちらから |
| |
コミュニティの一部です。 先ほども述べたように、アドイン内にドキュメントが用意されています。 「ヘルプ」ボタンをクリックするだけです。 |
| |
そして今度は、Colleen がアドインのデモで例を示します。 |
| コリーン・マッケンドリー |
ありがとうマイケル。 これからアドインのデモを行います。デモを行うために、このマンモグラフィーのデモ データを使用します。 |
| |
したがって、マンモグラフィー データセットは、マンモグラフィー画像内の微小石灰化の研究に使用されるデジタル化されたフィルム マンモグラムのセットに基づいています。 |
| |
このデータでは、各レコードは 1 または 0 に分類されます。1 は画像に石灰化が見られることを表し、0 は石灰化がないことを表します。 |
| |
このデータセットでは、石灰化が見られる画像が予測に関心のある画像であり、クラス レベル 1 が関心のあるクラス レベルです。 |
| |
完全なデータセットには、6 つの連続予測変数と約 11,000 の観測値が含まれています。 |
| |
ただし、このデモでは実行時間を短縮するために、完全なデータ セットのサブセットのみを使用します。 それで、観察の約半分になります。 つまり、約 5500 の観測値になります。 |
| |
1 に分類される観測値、つまり関心のあるものは、完全なデータ セットと使用しているデモ データ セットの両方で、観測値全体の約 2.31% を占めます。 したがって、少数派の割合は約 2% です。 |
| |
そして今度はJMPに切り替えるつもりです |
| |
に |
| |
それで、私はマンモグラフィーのデモデータを持っています。 |
| |
そして、開く予定ですが、アドインはすでにインストールされています。 そこで、ドロップダウン メニューに不均衡分類を追加し、モデルの評価オプションを使用します。 |
| |
ここに起動ウィンドウがあり、バイナリ クラス変数、予測子変数を指定し、すべてのモデルとすべてのテクニックを選択して、 |
| |
ランダムな種。 |
| |
そして「OK」をクリックします。 |
| |
それで、これが実行されている間に、バックグラウンドで実際に何が起こっているのかを説明します。 したがって、アドインが最初に行うことは、データ テーブルをトレーニング データ セットとテスト データ セットに分割することです。 |
| |
したがって、2 つの別々のデータ テーブルがあり、トレーニング データ テーブル内で、これらの観測値がトレーニング観測値と検証観測値にさらに分割され、検証値がモデルのフィッティングに使用されます。 |
| |
これら 2 つのデータセットを取得したら、 |
| |
SMOTE を伴うものを除き、指定したサンプリング手法ごとにトレーニング データ テーブルに追加されるインジケータ変数...インジケータ列があります。 |
| |
したがって、これらの列が追加され、重み付け列として使用され、観測値を分析に含めるかどうかを指定するだけです。 |
| |
SMOTE でサンプリング手法を指定すると、データ テーブルに追加の行が追加されます。 これらは生成された観測値です。 |
| |
したがって、列と行が生成されると、モデルごとに、各モデルが各サンプリング手法に適合します。 そして、それらをすべて選択すると |
| |
ここで行ったように、合計 42 の異なるモデルが適合しています。 そして、それが今起こっていることのすべてです。 で |
| |
現在のデモでは、42 個のモデルが適合されており、モデルが適合すると、関連情報が収集され、結果レポートにまとめられます。 そしてそのレポートは、 |
| |
これはすぐに表示されると思います。ここにそのレポートが表示されています。 また、テクニックとしきい値の表と概要表も入手できます。 |
| |
そこで、アドインを実行すると何が得られるかを見ていきます。 まずはトレーニングセットを用意します。 ここに重み付け列、追加された重み付け列があることがわかります。 これらは、それらの観測値の予測確率のために追加される列です。 |
| |
次に、テストセットがあります。 これにはこれらの重み付け列は含まれていませんが、テスト セットの観測値の予測確率が含まれています。 |
| |
結果報告書ができました |
| |
およびテクニックとしきい値のデータテーブル。 そしてマイケルはこのことについて次のように述べています |
| |
先ほどの話ですが、これは結果を保存して再度結果を表示する場合に保存したいものであるため重要です。 |
| |
スクリプト全体を再実行する必要はありません。 したがって、このデータ テーブルは保存するものであり、再現するスクリプトが含まれています。 |
| |
結果レポートと集計表、これが最後にお見せしなければならないものです。 したがって、これには、各サンプリング手法とモデルの組み合わせとその AUC 値の概要が含まれているだけです。 |
| |
それでは、実際の結果ウィンドウを見てみましょう。上部にはダイアログの仕様があります。 したがって、これには起動ウィンドウで指定した情報が含まれます。 |
| |
したがって、ランダム シードや割り当てた比率など、指定した内容を忘れた場合は、それを開いて確認することができます。 |
| |
また、バイナリクラス分布もあります。 つまり、トレーニング セットとテスト セット全体にわたるクラス変数の分布です。 そしてこれは、比率が同じになるように設計されており、この場合は 2.3 です。 |
| |
そして、閾値も欠落しています。 これはそれほど重要ではありませんが、ただ与えるだけです |
| |
クラス変数の値に予測値が欠落しているかどうかを示すもので、それがここに表示されます。 |
| |
実際の結果については、これらのタブ付きグラフがあります。 そして、精度再現曲線、ROC 曲線、累積ゲイン曲線が得られます。 PR 曲線と ROC 曲線については、対応する AUC 値も得られます。 |
| |
クラスごとの予測確率のグラフもあります。 これらは、後で説明するように、一度に数個だけを表示する場合にさらに便利です。 |
| |
そして、これらすべてのグラフと結果を結び付けるデータ フィルターがあります。 |
| |
実際の分析結果を今すぐ見てみましょう。 そこで、まずはこれらを整理していきます。 |
| |
ROC 曲線と PR 曲線の間には、ROC 曲線よりも PR 曲線の方がはるかに大きな差異があることがすでにわかります。 |
| |
そして、上位 (たとえば 5 つ) を選択すると、これらすべての実際の AUC は 0.97 になります。 |
| |
そして、それらはすべて互いに非常に近いことがわかります。 それらは基本的にお互いの上にあります。 実際にどのモデルが優れているのか、どのモデルを選択すべきなのかを判断するのは非常に難しいでしょう。 |
| |
したがって、特に不均衡なデータの場合、適合率再現曲線が非常に重要になります。 したがって、切り替えを戻すと、ROC 曲線の AUC 値が最も高かったこれらのモデルがわかります。 |
| |
それらは正確な再現率曲線内で実際に広がっています。 そして、実際にはそうではありません...PR 曲線の AUC 値が最も高いわけではありません。 |
| |
したがって、おそらくそこには...おそらく、私たちが選択できるより良いモデルがあるかもしれません。 |
| |
そこで今度は、ブースト ツリー Tomek と SVM Tomek である上位 2 つに注目し、データ フィルターを使用してそれを実行します。 |
| |
次に、表示およびインクルードされるものを見ていきたいと思います。 |
| |
これで、これら 2 つのモデルだけの曲線が得られました。青い曲線はブーストされたツリー、赤い曲線は SVM です。 |
| |
これらの曲線では、真陽性率のさまざまな値にわたって互いに重なっていることがわかります。 したがって、これらの曲線を使用できます |
| |
許容可能な真陽性率がどの程度であるかに基づいて、分析で使用するモデルを選択します。 したがって、参照線を追加すると、これがわかります。 すみません、これを入力しているときに手が見えてしまいます。 |
| |
さて、これらが興味があるかもしれないいくつかの異なる真陽性率であるとします。 したがって、たとえば、どのようなデータセットでも、真陽性率 0.55 が必要な場合があります。 |
| |
しきい値を選択して、それを真の陽性率にすることができます。 そしてこの場合、 |
| |
真陽性率に関しては、ブーストされたツリー Tomek モデルの方が精度が高くなります。 それで、あなたはそのモデルを選ぶことができます。 |
| |
ただし、真陽性率を 0.85 程度にしたい場合は、特定の真陽性率の精度が高い SVM モデルの方が適している可能性があります。 |
| |
そして、真陽性率が 0.95 と高かった場合は、再び反転して、おそらくブースト ツリー モデルを選択することになるでしょう。 |
| |
これが、これらの曲線を使用してデータに最適なモデルを選択する方法です。 |
| |
ここで、これらのグラフがほんの少ししかないので、もう一度これらのグラフを見てみましょう。 これは、選択したモデルの各クラスの予測確率の分布を示しているだけです。 したがって、この特定のケースでは、SVM に大部分の |
| |
予測確率の全範囲にわたる確率。ブーストされたツリーは、それらを下限に保つというより良い仕事をします。 |
| |
この特定のデモはこれで終わりですが、完了する前に、もう 1 つお見せしたいことがあります。 以上が、評価の使用方法の例でした。 |
| |
モデルのオプション。 しかし、特定のサンプリング手法を使用したいだけだとします。 ここでそれができます。 したがって、起動ウィンドウはほとんど同じように見えます。 そして、バイナリ クラスと予測子を割り当てて、[OK] をクリックします。 |
| |
これにより、新しいデータテーブルが生成され、 |
| |
インジケーターの列。 |
| |
指標列。観測値を分析に含めるべきかどうかを示すだけです。 |
| |
そして、SMOTE と Tomek を組み合わせたので、SMOTE によって生成されたすべての観測結果も得られます。 |
| |
これで、この新しいデータ テーブルが完成しました。必要な任意のタイプのオプションを備えた任意のタイプのモデルを使用し、この列を重み列または頻度列として使用して、そこから作業を進めることができます。 これで、不均衡分類アドインのデモは終了です。 見てくれてありがとう。 |