グループ分析(Grouping Analysis)の詳細
周囲を見渡してみると、物事を組織化、グループ化、区別、分類することによって、それをより深く理解しようとすることが常にごく自然に行われています。このような分類プロセスは、学習と理解の基礎となります。同様に、データをより深く学習し理解するために、[グループ分析(Grouping Analysis)] ツールが使用できます。このツールは、分類の手順を実行して、データ内の自然なクラスタを発見します。作成するグループの数を指定すると、各グループ内のすべてのフィーチャはできる限り類似していて、グループ間はできる限り異質になるような解法を探します。フィーチャの類似性は、[分析フィールド] パラメータに指定する属性のセットに基づくもので、必要に応じて、空間プロパティまたは時空間プロパティを取り込みます。空間または時空間の [空間的制限] を指定すると、アルゴリズムによって、自然なグループ化を見つけるために接続性グラフ(最小スパニング ツリー)が採用されます。[NO_SPATIAL_CONSTRAINT] を指定すると、[グループ分析(Grouping Analysis)] ツールは、K 平均アルゴリズムを使用します。
このようなクラスタ分析のアルゴリズムは何百もありますが、すべて NP 困難として分類されます。すなわち、グループ内の類似性とグループ間の異質性の両方を完全に最大にする解法を見つけるには、グループ化するフィーチャを可能な限り組み合わせてみるしかありません。これは、フィーチャが少数の場合は実行可能ですが、すぐに実行困難になります。
最適な解法を見つけることが困難であるだけでなく、すべての可能なデータ シナリオに最適のグループ化アルゴリズムを特定することは非現実的でもあります。グループにはさまざまな形状、サイズ、密度があり、属性データにはさまざまな範囲、対称性、連続性、計測単位が含まれます。そのため、過去 50 年にわたって数多くのクラスタ分析アルゴリズムが開発されてきました。ここでは、データ内の基礎となる構造をより深く理解するための予備ツールとして、[グループ分析(Grouping Analysis)] ツールを採用するのが最適です。
適用例
このツールの適用例には、以下のようなものがあります。
- 周辺の農場から取得したサルモネラ菌のサンプルがあり、種類、クラス、場所、日時などの属性がある場合を考えます。細菌が伝染して拡大する様子をより適切に理解するために、[グループ分析(Grouping Analysis)] ツールを使用して、サンプルを個々の「発生」に分割します。発生が同じサンプルは、空間と時間の両方において相互に近く、細菌の同じ種類とクラスに関連付けられているため、時空間の制限を使用できます。グループが決定したら、[分布指向性分析(Standard Deviational Ellipse)]、[地理的中心の算出(Mean_Center)]、または [最近接(Near)] などの空間パターン分析ツールを使用できます。
- 動物のなわ張りを理解するために動物観察に関するデータを収集した場合、[グループ分析(Grouping Analysis)] ツールが役に立ちます。たとえば、鮭がそれぞれのライフ ステージでいつ、どこに集まってくるのかを知ることは、繁殖を助けるための保護領域を作るのに役立ちます。
- 農学者が、分析範囲のさまざまなタイプの土壌を分類することもできます。一連のサンプルである土壌の特性に対して [グループ分析(Grouping Analysis)] ツールを使用すると、空間的に連続するが異なっている土壌タイプのクラスタを特定できます。
- 購買パターン、人口学的特性、移動パターンによって顧客をグループ化すると、自社製品の有効なマーケティング戦略を立案できます。
- 都市計画立案者は、多くの場合、都市を別々の区域に分けることによって、効率的に公的施設を配置し、地域を活性化して、地域の関わりを促進させる必要があります。都心のブロックの物理的特性と人口学的特性に対して [グループ分析(Grouping Analysis)] ツールを使用すると、計画立案者は、物理的特性と人口学的特性が類似する都市の空間的に連続する領域を特定できます。
- 集約データに対して分析が行われる場合、統計的推論の既知の問題として生態学的錯誤が発生することがあります。多くの場合、分析に使用される集約方式が分析対象に適していないために発生します。たとえば、国勢調査データは人口分布に基づいて集約されますが、これは山火事の分析には適していません。可能な限りの最小集約単位を同種の領域に分割し、現在の分析対象に正確に対応する一連の属性を求めることが、集約の偏りを減らし、生態学的錯誤を避ける有効な方法です。
入力
このツールは、ポイント、ポリライン、またはポリゴン [入力フィーチャ]、個別値フィールド、[出力フィーチャクラス] のパス、1 つ以上の [分析フィールド]、作成する [グループ数] を表す整数値、[空間範囲](ある場合、グループ化アルゴリズム内で適用される)を入力としてとります。また、オプションのパラメータも数多くあり、PDF 形式の [出力レポート ファイル] を作成するパラメータなどがあります。
分析フィールド
スケール率、間隔、等級計測システムを表す数値フィールドを選択します。ダミー(バイナリ)変数を使用して、名目データを表すことができます。ただし、一般に、これらの変数は他の数値変数タイプのようには機能しません。たとえば、Rural という変数を作成して、各フィーチャ(国勢調査区域など)に対して、農村部である場合は 1、都市部である場合は 0 をそれぞれ割り当てることができます。ただし、[グループ分析(Grouping Analysis)] ツールで使用するためにこの変数をさらに適切に表現すると、各フィーチャに関連付けられた農村部の面積または割合になります。
フィーチャのグループを区別する変数を選択する必要があります。たとえば、生徒が受けた標準学力試験の結果をもとに、校区をグループ化する場合を考えます。全体の試験得点、数学や国語といった特定科目の結果、試験得点の最低点を満たす生徒の割合などを含む [分析フィールド] を選択できます。[グループ分析(Grouping Analysis)] ツールを実行すると、各変数の R2 値が計算されます。たとえば以下のサマリでは、校区は、生徒の試験得点、その領域で高校を卒業していない大人の割合、生徒 1 人あたりの支出、生徒と教師の平均割合に基づいてグループ化されます。TestScores 変数に最大 R2 値があることに注目してください。これは、この変数により、校区が最も効果的にグループ化されることを示しています。R2 値は、グループ化プロセスの後、元の TestScores データのばらつきがどのくらい保持されていたかを表すため、特定の変数の R2 値が大きいほど、その変数はフィーチャを適切に区別します。
R2 値は次のように計算されます。
(TSS - ESS) / TSS
ここで、TSS は二乗総和で、ESS は説明された二乗和です。TTS は、変数のグローバル平均値からの偏差を二乗して足したものです。ESS も同様に計算しますが、偏差がグループごとである点が異なります。それぞれの値を属するグループの平均値から引き、二乗して足します。
グループ数
問題や課題に最適なグループ数がすぐにわかる場合があります。たとえば、5 人のセールス マネージャにそれぞれ隣接する担当領域を割り当てる場合は、[グループ数] パラメータに「5」と指定します。ただし、多くの場合、特定のグループ数を選択するための基準はなく、フィーチャの類似性と異質性を最適に区別する数を選択することになります。このような状況に対応するには、[グループの最適数の評価] パラメータをオンにし、[グループ分析(Grouping Analysis)] ツールを使用して、フィーチャを 2 ~最大 15 グループに分割したときの有効性を評価します。グループ化の有効性の評価には、Calinski-Harabasz pseudo F-statistic を使用します。これは、グループ内の類似性とグループ間の異質性を表す割合です。
空間範囲
作成されたグループを空間的に隣接させたい場合、空間範囲を指定します。フィーチャがグループの別のメンバーとエッジを共有する場合(CONTIGUITY_EDGES_ONLY)、あるいはエッジまたは頂点のいずれかを共有する場合(CONTIGUITY_EDGES_CORNERS)、ポリゴン フィーチャクラスの CONTIGUITY オプションが有効になり、フィーチャが同じグループの一部にのみなれることを示します。ただし、隣接していないポリゴンまたは隣接をまったく持たないポリゴンのクラスタがデータセットに含まれる場合、ポリゴン隣接オプションは適切な選択ではありません。
[DELAUNAY_TRIANGULATION] オプションと [K_NEAREST_NEIGHBORS] オプションはどちらも、ポイント フィーチャまたはポリゴン フィーチャに適しています。これらのオプションは、少なくとも他の 1 つのグループ メンバーが Natural Neighbor(ドローネ三角形分割)または K Nearest Neighbor である場合に、フィーチャがグループに含められることを示しています。たとえば、[K_NEAREST_NEIGHBORS] を選択して、[近傍数] に「12」を入力すると、グループ内のフィーチャはすべて、そのグループ内の少なくとも 1 つの他のフィーチャの 12 の最近傍内にあることになります。
[DELAUNAY_TRIANGULATION] オプションは、一致するフィーチャを持つデータセットには使用できません。また、ドローネ三角形分割法は、フィーチャをティーセン ポリゴンに変換して、データセット内の特にポリゴン フィーチャ、場合によっては周辺フィーチャとの近隣リレーションシップを決定するため、このオプションを使用しても必ずしも期待どおりの結果にはなりません。以下の図では、グループ化された元のポリゴンの一部が隣接していないことに注目してください。ただし、これらがティーセン ポリゴンに変換されると、グループ化されたフィーチャはすべて、隣接してエッジを共有します。
作成されたグループを空間的および一時的に隣接させたい場合、[空間ウェイト マトリックスの作成(Generate Spatial Weights Matrix)] ツールを使用して、空間ウェイト マトリックス ファイル(SWM)を作成し、[空間リレーションシップのコンセプト] パラメータで [SPACE_TIME_WINDOW] を選択します。これで、グループ分析を実行するときに、[ウェイト マトリックス ファイル] パラメータに、[空間ウェイト マトリックスの生成(Generate Spatial Weights Matrix)] ツールを使用して作成した SWM ファイルを指定できます。
フィーチャ間の空間リレーションシップは SWM ファイルに保存され、[グループ分析(Grouping Analysis)] ツールがこれを使用して空間的制限を適用しますが、グループ化プロセスに関与する実際の荷重はありません。SWM ファイルは、どのフィーチャが同じグループに含められるか、含められないかを追跡する場合にのみ使用されます。
多数の分析の場合、空間的制限または時空間的制限を適用する必要はありませんし、する意味もありません。たとえば、加害者の属性(身長、年齢、犯罪の重大性など)によって犯罪事件をグループ化する場合を考えます。同一人物による犯罪が隣接する傾向にあっても、特定領域のすべての犯罪を同一人物が行ったと判断する可能性は低くなります。このタイプの分析では、[空間的制限] パラメータで [NO_SPATIAL_CONSTRAINT] を選択します。ただし、[分析フィールド] のリストにいくつかの空間変数(銀行まで近さなど)を含めることによって、分析対象の犯罪の空間的側面の一部を取得することができます。
K 平均
[空間的制限] パラメータで [NO_SPATIAL_CONSTRAINT] を選択すると、K 平均アルゴリズムがグループ化に使用されます。K 平均アルゴリズムの目的は、フィーチャを分割し、すべてのグループにおいて同じグループ内のフィーチャ間の異質性を最小にすることです。アルゴリズムは NP 困難であるため、フィーチャのグループ化にはグリーディ ヒューリスティックが使用されます。グリーディ アルゴリズムは、常にローカルな最小値に収束しますが、必ずしもグローバルな(最適な)最小値を見つけるわけではありません。
K 平均アルゴリズムは、各グループを拡大させるのに使用されるシード フィーチャを最初に特定することによって機能します。したがって、シード数は、常に [グループ数] に一致します。最初のシードはランダムに選択されます。ただし、ランダム コンポーネントを使用する一方で、その他のシードの選択には、既存のシード フィーチャ セットから最も遠いデータ空間のシードの選択を優先する荷重が適用されます(アルゴリズムのこの部分を K 平均 ++ と呼びます)。[初期化方法] で [FIND_SEED_LOCATIONS] または [USE_RANDOM_SEEDS] を選択すると、シード フィーチャの検索にランダム コンポーネントが使用されるため、ツールの実行ごとにグループ化の結果が異なる場合があります。
シード フィーチャが特定されると、すべてのフィーチャは、最近接のシード フィーチャ(データ空間内で最近接)に割り当てられます。フィーチャの各クラスタでは、平均データの中心が計算され、各フィーチャが最近接の中心に再割り当てされます。各グループの平均データの中心を計算して、フィーチャを最近接の中心に再割り当てする処理は、グループのメンバーシップが安定するまで続けられます(反復の最大数は 100)。
最小スパニング ツリー
隣接フィーチャにグループのメンバーシップを制限する空間範囲を指定すると、ツールによりまず、フィーチャ間の近隣リレーションシップを表す接続性グラフが作成されます。接続性グラフから、フィーチャの空間リレーションシップとフィーチャのデータの類似性の概要を示す最小スパニング ツリーが作成されます。フィーチャは、重み付けされたエッジに接続された最小スパニング ツリーのノードになります。各エッジの加重は、エッジが接続するオブジェクトの類似性に比例します。最小スパニング ツリーを作成したら、ツリーの枝(エッジ)を切り取って、2 つの最小スパニング ツリーを作成します。切り取るエッジは、単体(フィーチャが 1 つのみのグループ)になるのを避け(可能であれば)、作成されたグループの相違を最小にするように選択します。それぞれの反復では、指定した [グループ数] を取得するまで、最小スパニング ツリーの 1 つがこの切り取り処理によって分割されます。使用される公開済みの方法は、SKATER(Spatial "K"luster Analysis by Tree Edge Removal)と呼ばれます。各反復では、グループの類似性を最適化する枝を選択して切り取りますが、これで最終結果が最適になる保証はありません。
出力
[グループ分析(Grouping Analysis)] ツールでは、数多くの出力が作成されます。これらはすべて(オプションの PDF レポート ファイルを含む)、[結果] ウィンドウからアクセスできます。バックグラウンド処理を無効にすると、結果は [進行状況] ダイアログ ボックスにも書き込まれます。(以下に示す)これらのメッセージには、オプションの PDF レポート(以下参照)に表示される情報の概要が示されます。
[グループ分析(Grouping Analysis)] ツールのデフォルトの出力は、分析で使用されるフィールドと、各フィーチャがどのグループに属するかを特定する SS_GROUP と呼ばれる新しい整数フィールドを含む、新しい [出力フィーチャクラス] です。この出力フィーチャクラスは、SS_GROUP フィールドに適用される固有のカラー レンダリング スキーマによって、コンテンツ ウィンドウに追加されます。白抜きのレンダリングは、通常、近隣フィーチャがないためどのグループにも追加されなかったフィーチャを示します。[空間的制限] に [NO_SPATIAL_CONSTRAINT] を指定すると、SS_SEED というフィールドが出力フィーチャクラスに追加され、グループを拡大させるのにどのシード フィーチャが使用されたかが示されます。
グループ分析のレポート ファイル
[出力レポート ファイル] パラメータにパスを指定すると、作成されたグループの概要を示す PDF が作成されます。
オプションのレポート ファイルを作成すると、処理時間が非常に長くなる場合があります。したがって、[グループ分析(Grouping Analysis)] ツールでは、グループのメンバーシップを示す出力フィーチャクラスは常に作成されますが、15 を超えるグループまたは 15 を超える変数を指定すると、PDF レポート ファイルは作成されません。
四分位範囲(IQR)は、上の四分位から下の四分位を引いたものです。下の外れ値は 1.5 * IQR よりも小さい値(Q1 - 1.5 * IQR)で、上の外れ値は 1.5 * IQR よりも大きい値(Q3 + 1.5 * IQR)です。外れ値は、箱ひげ図では「+」記号で表示されます。
レポートの最初のページでは、各グループ内の変数([分析フィールド])が相互に比較されます。たとえば、以下のレポートでは、[グループ分析(Grouping Analysis)] を国勢調査区域に使用して 4 つのグループを作成しました。各グループのサマリ統計は、異なる色(青、赤、緑、金)を使用して印刷されます。サマリ統計の最初のセットは、各分析フィールド内のすべてのデータのグローバル平均、標準偏差(Std.Dev.)、最小値、最大値、R2 値であるため、黒で印刷されます。特定の変数の最大 R2 値が大きいほど、その変数はフィーチャを適切に区別します。グローバル サマリの後に、各グループ内の変数ごとの平均値、標準偏差、最小値、最大値、シェア値がレポートされます。たとえば、以下のレポートでは、グループ 1(青)に、グローバル AGE_UNDER5 変数の値の 52% の範囲が含まれ、値のグローバル範囲は 5 歳未満の 0 人から 1,453 人の子どもで、青グループには、5 歳未満の 488 人から 1,246 人の子どもがいる区域が含まれます。青グループの区域の 5 歳未満の子どもの平均数は、805.3750 人です。青グループの統計サマリの右にある箱ひげ図は、グループの値と、その同じ分析フィールドのグローバル値との関係を示しています。箱ひげ図の青い点は上の四分位の外側にあり、最初の青い垂直線(青グループの区域の最小値を表す)は、このフィールドのグローバル平均より上にあることに注目してください。実際、青い点がすべての変数に対して箱ひげ図のどこにあるかに注目すると、MEDIANRENT 変数を除いて、すべての分析フィールドの平均値が上の四分位より上にあることがわかります。このグループには、その他のグループと比較した値の最大範囲があります。
シェア値は、グループとグローバル範囲の比率です。たとえば、グループ 1 と AGE_UNDER5 変数の場合、グループ範囲(1246 - 488 = 758)をグローバル範囲(1453 - 0 = 1453)で割って、2 桁の有効桁数に丸めることによって、52% のシェアが得られます。
レポートの 2 つ目のセクションでは、各グループの変数の範囲が、一度に 1 つの分析フィールド(変数)ごとに比較されています。このデータ表示では、どのグループに各変数内の値の最大と最小の範囲があるかが容易にわかります。グループの最小値、平均値、最大値は、すべての値を表す箱ひげ図の上部に重ねて表示されます。グループ 4(オレンジ)に、MEDIANRENT 変数の最小値があることに注目してください。このグループの最小値、平均値、最大値は、他のいずれのグループよりも低くなっています。
平行箱ひげ図では、グループと変数の両方の概要が表示されます。以下のグラフから、グループ 1(青)は、平均賃料、女性が世帯主である子どものいる世帯(FHH_CHILD)の最大値、住戸数(HSE_UNITS)の最大値、5 歳未満の子どもの最大値を持つ区域を表し、グループ 2(赤)は、中央賃料の最大値、女性が世帯主である子どものいる世帯の最小値、平均より多い住戸数(グループ 1 または 3 の区域よりも少なくてもよい)、5 歳未満の子どもの最小値を持つ区域を表していることがわかります。
[グループの最適数の評価] パラメータをオンにすると、PDF レポート ファイルに pseudo F-statistic 値のグラフが含められます。グラフ上の丸で囲まれた点が最大 F-statistic で、指定したフィーチャと変数を最も効果的に区別するグループの数を示します。以下のグラフでは、4 つのグループに関連付けられた F 統計量が最大です。高疑似 F 統計量を持つ 5 つのグループを選択してもよいでしょう。
ベスト プラクティス
[グループ分析(Grouping Analysis)] では、できるだけ多くの [分析フィールド] を指定しようとしがちですが、1 つの変数から始めるほうがうまくいきます。分析フィールドの数が少ないほうが、結果の解析が容易になります。また、フィールドの数が少ないと、どの変数が最適な区別を実行するか判断しやすくなります。
多くのシナリオでは、[グループ分析(Grouping Analysis)] ツールを何度も実行して、最適な [グループ数]、最も効果的な [空間的制限]、フィーチャをグループに最適に分類する [分析フィールド] の組み合わせを探すことになります。[出力レポート] を作成すると、処理時間が非常に長くなる場合があるため、さまざまな入力パラメータを試している間はこのレポートを作成しないという選択もあります。
参考資料
Duque, J. C.、R. Ramos、および J. Surinach2007. 「Supervised Regionalization Methods:A Survey」International Regional Science Review 30: 195–220.
Assuncao, R. M.、M. C. Neves、G. Camara、および C. Da Costa Freitas2006. 「Efficient Regionalisation Techniques for Socio-economic Geographical Units using Minimum Spanning Trees」International Journal of Geographical Information Science 20(7): 797–811.
Jain, A. K. 2009「Data Clustering:50 years beyond K-Means」Pattern Recognition Letters
Hinde, A.、T. Whiteway、R. Ruddick、および A. D. Heap 2007「Seascapes of the Australian Margin and adjacent sea floor:Keystroke Methodology」Geoscience Australia, Record 2007/10, 58pp