外れ値に関する 2 回目のブログ記事へようこそ。 このエピソードでは、分位範囲を使用して外れ値を検出する方法について説明します。
エピソード1で、外れ値の説明と視覚的な識別について調べました。 外れ値を特定する必要がある単純な 1 次元 (または単変量) のケースがあることを思い出してください。 これらは最も簡単に識別でき、分位範囲はそれらを探す優れた方法です。
多次元外れ値検出については、次の投稿をお待ちください。
分位数とは
分位数は非常に理解しやすいです。 20 個の数列があるとします。 数値を最小から最大に並べ替えることができます。 次に、これらのポイントを分位数にグループ化できます。分位数は、データの X% がそれを下回るポイントを表す、並べ替えられたデータ内のカット ポイントによって識別されます。
分位数は通常、分数 (0 から 1 まで) として表されることに注意してください。 それらは、0 から 100 の範囲のパーセンタイルに正確に対応します。 この記事では、これらを同じ意味で使用します。
図 1 は、並べ替え前と並べ替え後の 20 個の数値、および 0.20 と 0.50 の分位数 (または 20番目そして50番目パーセンタイル)。
Figure 1: Data from 20 point sample, random order and sorted図 1: 20 ポイントのサンプルからのデータ、ランダムな順序および並べ替え
50のカットポイント番目パーセンタイルはサンプルの中央値です。 (この場合、中央値は数値的には 32.5 で、40 と 25 の中間点です。)
他のいくつかの興味深い定義は次のとおりです。
- データを 25% のグループに分割する四分位。 最初の四分位点は、最低 25% に含まれるデータ ポイントを表し、2 番目の四分位点は 25% から 50% の間にあるというように続きます。
- 2 によってカバーされる範囲を定義する四分位範囲 (IQR) ndそして3 rd四分位。
変位値について話すとき、分布の形状については何も仮定されていないことに注意してください。
分位計算はJMPのどこにありますか?
分位数は、次の 3 か所にリストされています。 JMP . ディストリビューション プラットフォームとグラフ ビルダーはどちらも同じ計算を使用します。 外れ値/分位範囲の調査 外れ値は、外れ値の感度に関して、より柔軟にユーザーに提供します。 それぞれ見てみましょう。
配信プラットフォーム
分布では、すべての連続/数値データ ヒストグラムには、表形式の分位数の要約が含まれます。 デフォルトでは、JMP は関心のあるいくつかの分位数を表示します。 図 1 の Original Data というラベルの付いた列で Distribution プラットフォームを使用すると、次の出力が得られます。

図 2 の中央の表には、いくつかの一般的な分位数が示されています。 このテーブルに表示される分位を変更するには、赤いホットスポットを選択して [表示オプション] を選択し、[分位の増分を設定] または [カスタム分位] を選択します。
図 2 には、ボックス & ウィスカ プロットも表示されています。 図 2 では、プロットに示されている記号に注釈が付けられています。
ひげの先端は、外れ値を検出する上で最も重要です。 ひげの長さは四分位範囲の最小値と最大値から測定され、ひげはその範囲の 1.5 倍の範囲内にある最後のデータ ポイントで終了することに注意してください。 これは、外れ値検出の一般的な経験則です。 これらのウィスカーの外にある点は、さらに調査する価値があるかもしれません。
しかし、図 1 と 2 に示されているデータ セットでは、この手法は外れ値を検出しません。 これは、特にサンプル サイズが小さい場合は珍しくありません。
図 3 は、私の以前のブログ記事からの 1,000 個のサンプル データに対するディストリビューション プラットフォームの出力を示しています。 これらのサンプルは、平均が 0.0、標準偏差が 1.0 のランダムな正規分布から抽出されます。 また、以前の投稿で外れ値として視覚的に識別された X1=4 の点も含めます。
Figure 3: Distribution platform output for 1,000 point sample from normal distribution図 3: 正規分布からの 1,000 ポイント サンプルの分布プラットフォーム出力
サンプル サイズが大きくなると、ポイントの一部が外れ値のように見えます (少なくともひげの端で定義されているように)。 この特定のケースでは、データが 1,000 ポイントの正規分布母集団から取得されていることがわかっているため、値が 4 のポイントが少なくとも 1 つ見られることはおそらく珍しくありません。 実際のケースでは、ひげの先にある点については、追加の調査が必要になる場合があります。
グラフ ビルダーでボックス プロットとウィスカー プロットを作成する
グラフ ビルダーでボックス プロットとウィスカー プロットを生成することもできます。 グラフ ビルダーのセットアップ全体を図 4 に示します。
Figure 4: Graph Builder setup for Box & Whisker plot (1,000 point sample from normal distribution)図 4: ボックス & ウィスカー プロット用のグラフ ビルダーのセットアップ (正規分布からの 1,000 ポイント サンプル)
グラフの上にあるグラフ タイプのアイコン (赤丸で囲んだ部分) に注意してください。これにより、ボックス & ウィスカー プロット タイプが有効になります。
Distribution プラットフォームと同様に、ひげの長さは 1.5*四分位範囲であり、25 から下に伸びます。番目パーセンタイル以上 75 以上番目パーセンタイル。
外れ値を調べる
他のウィスカー制限を選択したい場合はどうすればよいでしょうか?
前述のように、1.5*IQR のひげの長さは、外れ値を識別するための一般的な方法です。 これはおそらく、大きなサンプルの正規分布を見ることから来ていると思います。 四分位範囲を超える 1.5*IQR は、正規分布の 99.30% を包含することを示すことができます (各テールにデータの 0.3488% を残します)。 これは、正規分布がある場合、比較的まれなイベントを識別します。
しかし、正規分布がない場合はどうなるでしょうか。 分布が次のようになったらどうなるでしょうか。
Figure 5: Skewed distribution図 5: 歪んだ分布
図 5 は、1.5*IQR メソッドに従って、N=100 ポイントの歪んだ分布を示しています。上部のひげを超える 5 つの外れ値があります。 しかし、X1=3 の点は本当に外れ値なのでしょうか? あるいは、異常な調査を正当化する、ひげによって隠されている他の点があるかもしれません。 この 1.5*IQR ルールをどのように調整すればよいでしょうか?
JMP では、[分析]、[スクリーニング]、[外れ値の調査] でこれを行うことができ、[分位範囲の外れ値] オプションを選択します。 このオプションを呼び出すと、図 5 にまとめられた 100 点のサンプルの入力画面が表示されます。
Figure 6: Quantile Range Outliers user interface and sample output図 6: Quantile Range Outliers のユーザー インターフェイスと出力例
Quantile Range Outliers パネルには 2 つの主要な入力があります。
- テール分位 (TQ)。 この割合は、ウィスカーの計算で使用される分布の最小カット ポイントを表します。 (1-Tail Quantile) は、分布の上限カット ポイントを表します。 これらのカット ポイントの違いは、その後の計算で使用される範囲を表します。
- 前述の IQR 計算では、テール分位数は 0.25 であり、ひげが 25 から始まることを示しています。番目そして75番目パーセンタイルであり、範囲は四分位範囲 (または 75番目-25番目パーセンタイル)。
- Quantile Range Outliers の末尾分位のデフォルト値は 0.1 で、ひげが 10 から始まることを示しています。番目そして90番目パーセンタイルであり、長さは (90番目-10番目パーセンタイル) 範囲。
- Q. これは、ひげの長さを決定するために使用される乗数です。
- 以前の IQR 計算では、これは 1.5 だったので、四分位範囲に 1.5 を掛けてひげの長さを求めました。
- Quantile Range Outliers の Q のデフォルト値は 3 で、ひげの長さが (90番目-10番目パーセンタイル) 範囲に 3 を掛けたもの。
Quantile Range Outliers の出力は、図 6 のパネルの下部に示されています。 ここでは、列 X1 に 10 があることがわかります。番目-1.283 のパーセンタイル、および 90番目1.65556 のパーセンタイル。 ウィスカーの端 (出力では、低しきい値と高しきい値 [それぞれ LT と HT] として示されます) は、次の計算に基づいています。
LT = 10番目変位値 – (90番目変位値 – 10番目分位) * Q
= -1.283 – (1.65556 – -1.283) * 3
= -10.099
HT = 90番目分位数 + (90番目変位値 – 10番目分位) * Q
= 1.65556 + (1.65556 – -1.283) * 3
= 10.4713
この場合、高しきい値 (12.0) を超えて存在する列の値は 1 つだけであり、図 6 に示すレポートの下部に表示されます。
テール分位数と Q に対する感度
外れ値の検出感度は、テール分位数と Q の値によって明確に左右されます。 従来の 1.5*IQR と 3*(90番目-10番目quantile) メソッドはどちらも受け入れられますが、前者は外れ値の検出に対してはるかに敏感です。 Quantile Range Outliers プラットフォームを使用して、特定のケースの必要に応じてこれらの値を調整できます。
テール分位点と Q の選択の有効性は特定の分布に依存しますが、正規分布を調べることで、それらの動作についてある程度の洞察を得ることができます。 以下は、尾の分位点と Q のいくつかの組み合わせと、ひげの外側にある正規分布の尾の値の割合を示す表です。
Table 1: Percent of outliers detected in large sample normal distribution for various values of tail quantile and Q表 1: テール分位数と Q のさまざまな値に対する大規模なサンプルの正規分布で検出された外れ値の割合
この考えを拡張すると、表 1 の量のより完全な図を示す等高線図を作成できます。
Figure 7: Percent of outliers detected in large sample normal distribution for various values of Tail Quantile and Q図 7: Tail Quantile と Q のさまざまな値に対する大規模なサンプルの正規分布で検出された外れ値の割合
図 7 は、テール クォンタイルの値が高く、Q の値が低いと、外れ値に対する計算の感度が高くなり、TQ の値が低く、Q の値が高いと、感度が低くなることを明確に示しています。
次のエピソード
次回は議論しますマハラノビス距離、多次元で外れ値を検出するために使用されます。
このシリーズのすべての投稿を見る外れ値を理解する.
やあ@ジェリーフィッシュ、 返信してくれてありがとう。
お返事をありがとうございます。 それらを完全に破棄して、これらの外れ値が何を語っているかを実際に調査するべきではないというあなたの言うことは正しい.
私の K-Means クラスタリングが負の CCC 値を持たないように気を配りすぎていると思います。
上記の点を理解し、それらは本当に便利です。 ありがとうございました!
やあ@マッドウルフさん、投稿ありがとうございます。
Distribution プラットフォームは 1.5*IRQ メソッドを使用するのに対し、Analyze/Screening/Explore Outliers はデフォルトで 3*(90-10 分位数) メソッドを使用することがわかります。どちらも、外れ値を特定するのに役立つ正当な方法です。
このようなツールは、「潜在的な」異常値を特定することを目的としていることを忘れないでください。そのため、彼らは単なるアシスタントです。両方の方法を試して、結果が異なるかどうかを確認できます。外れ値が特定された場合 (どちらの方法でも)、それらをすぐに破棄するのではなく、引き続き調査する必要があることに注意してください。データは何か重要なことを伝えようとしているのかもしれません!したがって、外れ値を破棄するときは慎重に行ってください。
私の意見では、これらの方法のいずれかが「本当に悪い」外れ値をキャッチします。あなたが読んだら私の3番目のブログ投稿マハラノビスの距離に関する記事、およびジャックナイフの距離に関する私の (近日公開予定の) 4 回目の記事では、この記事でレビューしたようなトリッキーな状況で外れ値を特定する方法がさらに見つかります。
幸運を!
やあ、
この記事をありがとう。 それは私にとって非常に洞察力があります。
あなたが言及した: "従来の 1.5*IQR と 3*(90番目-10番目quantile) メソッドは両方とも許容されます。」
JMP のデフォルトである従来の 1.5*IQR と 3*(90-10 分位数) のどちらを選択する必要があるかは、どうすればわかりますか?
さらに、最終スキャンで外れ値がなくなるまで、スキャンを続けて外れ値を除外しますか?