データの視覚化
まず、属性を持つ一連のポイント フィーチャとしてデータのテーブルをマップに追加します。 ワークフローの後半で、そのデータの空間特性をモデリングのプロセスに含めることができます。
フィーチャ作成
住宅販売データのテーブルを含む ArcGIS Pro プロジェクト パッケージをダウンロードし、そのテーブルからフィーチャクラスを作成します。
- King County House Prices プロジェクト パッケージをダウンロードします。
- パッケージをダウンロードした場所を参照し、[King_County_House_Prices.ppkx] をダブルクリックして ArcGIS Pro でプロジェクトを開きます。 サイン インを求められたら、ライセンスが割り当てられた ArcGIS アカウントを使用してサイン インします。
注意:
ArcGIS Pro へのアクセス権限または組織アカウントがない場合は、ソフトウェア アクセスのオプションをご参照ください。
プロジェクトが開きます。 マップの範囲はワシントン州キング郡です。 [コンテンツ] ウィンドウの [スタンドアロン テーブル] セクションに [kc_house_data.csv] というアイテムがあります。
このファイルは、カンマ区切り値ファイル (*.csv) であり、データ テーブルの交換によく使用される形式です。 ファイルの最初の行には、フィールド名のカンマ区切りリストが含まれ、後続の行にはそれぞれ、そのフィールドごとのカンマ区切り値が含まれます。 多くのデータ サイエンスまたは機械学習ワークフローでは、最初の手順として、ノートブックを使用して、このファイルをデータ フレームに読み込みます。 このチュートリアルでは、データを一連のポイント フィーチャとしてジオデータベースに読み込み、ArcGIS Pro をデータ サイエンスのワークステーションとして使用します。
テーブルが開いて、マップ ビューの下に表示されます。 テーブルのフィールド名と一部の値が表示されます。
- リボンの [解析] タブをクリックします。 [ジオプロセシング] グループで、[ツール] をクリックします。
[ジオプロセシング] ウィンドウが表示されます。
- [ジオプロセシング] ウィンドウの [検索] ボックスに「XY テーブル → ポイント」と入力します。
- ツールの検索結果で、[XY テーブル→ポイント] をクリックします。
- [XY テーブル → ポイント (XY Table To Point)] ツール ウィンドウの [入力テーブル] で [kc_house_data.csv] を選択します。
注意:
米国以外の英語ロケールで作業している場合は、.csv ファイルの代わりに付属の [kc_house_data_table] ジオデータベース テーブルを使用します。 ロケールは、[XY テーブル → ポイント (XY Table To Point)] ツールで *.csv ファイルをインポートする時に、出力フィールドのデータ タイプに影響する場合があります。 .csv ファイルからポイントを作成して、さらに、インポートした属性のデータ タイプを制御する場合は、最初に .csv ファイルをジオデータベース テーブルにインポートして、[テーブル → テーブル (Table to Table)] ツールから各フィールドのデータ タイプを設定できます。
- [出力フィーチャクラス] に「kc_house_data」と入力します。
[X フィールド] パラメーターには、.csv テーブルの long フィールドがすでに入力され、[Y フィールド] パラメーターには lat フィールドが入力されています。 このデータセットには [Z フィールド] 値がないため、このパラメーターは空白のままにしておきます。
次に、データに適切な座標系を設定します。
- [座標系] で [座標系の選択] ボタンをクリックします。
[座標系] ウィンドウが開きます。
- 検索ボックスに「HARN」と入力して Enter キーを押します。
- [地理座標系]、[北アメリカ]、[USA and territories] を展開します。 [NAD 1983 HARN] をクリックします。
- [OK] をクリックします。 [XY テーブル → ポイント (XY Table To Point)] ツール ウィンドウで [実行] をクリックします。
ツールが実行されます。 完了すると、ポイントがマップに追加されます。
- [ジオプロセシング] ウィンドウを閉じます。 [kc_house_data.csv] テーブル ビューを閉じます。
シンボルの変更
データを確認する前に、デフォルトのシンボルを変更します。
- [コンテンツ] ウィンドウの [kc_house_data] の下でポイント シンボルをクリックします。
- [シンボル] ウィンドウの [ギャラリー] タブで [円 3] シンボルをクリックします。
- [プロパティ] タブをクリックします。 [表示設定] の [色] で [マラカイト グリーン] を選択します。
ヒント:
カラー ピッカーで色をポイントすると色の名前が表示されます。
- [サイズ] で [4 pt] を選択します。 [適用] をクリックします。
マップ上でシンボルが変わります。
- [シンボル] ウィンドウを閉じます。
- [クイック アクセス ツールバー] で [保存] ボタンをクリックして、プロジェクトを保存します。
注意:
現在の ArcGIS Pro のバージョンでこのプロジェクト ファイルを保存すると、これより前のバージョンでファイルを再び開けなくなることを警告するメッセージが表示される場合があります。 このメッセージが表示されたら、[はい] をクリックして続行します。
データの調査
次に、データを調べてみます。 最初に、データの属性フィールドとその意味について理解を深めます。 次に、散布図マトリックスを作成し、属性間の関係を調べます。
- [コンテンツ] ウィンドウで [kc_house_data] レイヤーを右クリックし、[属性テーブル] を選択します。
属性テーブルには、住宅と販売価格を説明した 20 個の属性フィールドが含まれます。 フィールドは以下の表に一覧表示しています。
フィールド名 フィールドの説明 date
販売日
price
最終の取引額
bedrooms
寝室数
bathrooms
浴室数
sqft_living
生活空間のサイズ (平方フィート)
sqft_lot
区画のサイズ (平方フィート)
floors
フロア数
waterfront
水辺に面した住宅かどうか (1: はい、0: いいえ)
表示
住宅のビューについてのカテゴリ変数
condition
住宅の状態についてのカテゴリ変数
grade
キング郡の評価システムに基づく全体的な住宅のグレード
sqft_above
地下を除いた住宅のサイズ (平方フィート)
sqft_basement
地下のサイズ (平方フィート)
yr_built
住宅の築年数
yr_renovated
住宅の改修年数 (改修された場合)
zipcode
住宅の郵便番号
lat
住宅の緯度
long
住宅の経度
sqft_living15
2015 年の生活空間のサイズ (平方フィート)
sqrt_lot15
2015 年の区画のサイズ (平方フィート)
一部のフィールドには特定の値のコードが含まれます。 [condition] フィールドのコードは以下の表で説明しています。
コード condition 説明 1
悪い
多くの修理が必要です。 家屋が老朽化しています。
2
まずまず
一部をすぐに修理する必要があります。 多くの繰延保全が必要です。
3
平均
改善年数に応じた、住宅の築年数に対する通常の維持費。
4
良
住宅の築年数に対して平均以上の状態。 これは、特別な注意を示し、保全管理が行われています。
5
とても良い
完全な改修ではなく、家屋の保守と更新が最良の状態。
[grade] フィールドにはさまざまな一連のコードがあり、以下の表で説明しています。
コード 説明 1 ~ 3
最小の建築基準を満たしていません。通常は、小屋や粗悪な構造です。
4
一般的に古く低品質の構造。 住宅は基準を満たしていません。
5
建設費が低く、低品質。 住宅は小型でシンプルな設計です。
6
現時点で建築基準を満たす最も低いグレード。 低品質の材料とシンプルな設計が使用されました。
7
平均的なグレードの構造および設計。 これは一般に、図面や古い区画に見られます。
8
平均のすぐ上の構造および設計。 この品質の住宅は通常、外装と内装の仕上げに良い材料が使用されています。
9
建築設計に優れ、外装と内装に特別な設計と品質が用いられています。
10
この品質の住宅は、一般的に高品質のフィーチャを備えています。 仕上げが良く、優れた設計品質がフロア プランと広い面積に見られます。
11
カスタム設計とより高品質な仕上げがなされ、無垢材、浴室の付属設備、その他の豪華なオプションといった快適な設備が追加されています。
12
カスタム設計と優れた施工業者。 材料はすべて最高品質であり、便利な設備がすべて提供されています。
13
一般的に、大邸宅レベルに迫るカスタム設計と建設がなされています。 これらの住宅には、広い玄関に多数の最高品質の高級家具、木工装飾、大理石があります。
[view] フィールドでは以下のコードを使用しています。
コード 説明 0
不明
1
まずまず
2
平均
3
良
4
非常に良好
次のステップでは、データを探索して各変数の値の分布を決定し、いずれかの属性が正または負で相関しているかどうかを判断します。 散布図マトリックスは、この種のデータ探索に一般的に使用される視覚化の手法です。
- 属性テーブルを閉じます。
- [コンテンツ] ウィンドウで [kc_house_data] を右クリックし、[チャートの作成] をポイントして [散布図マトリックス] を選択します。
- [チャート プロパティ] ウィンドウの [数値フィールド] で [選択] をクリックします。 [price] から [sqft_basement] までのフィールドをすべてオンにします。
- [適用] をクリックします。
[チャート] ビューで、選択したフィールドの散布図が更新されます。
注意:
散布図の上にポインターを置くと、各散布図の名前が表示されます。 ビューの境界線をドラッグして、チャートのサイズを大きくすることもできます。
プロットは、異なる変数のペアの関係をまとめます。 下側三角のいずれかのプロットをクリックすることで、散布図マトリックスを使用して関係を調べることができます。プロットをクリックすると、大きなプロットが右上に表示されます。
このプロットが解析に役立つのはなぜでしょうか?
評価モデルの開発に使用する最初の回帰モデルは、一般化線形回帰分析 (GLR) です。 GLR には、線形に関連する予測因子とターゲット変数が必要です。 このチャートを使用して、予測する変数と線形に相関しているプロパティ特性 (住宅販売価格) を見つけます。
価格は、散布図マトリックスの下側三角部の 1 列目です。 1 列目のチャートには、さまざまなプロパティ特性と住宅販売価格の関係が表示されます。
- [price] と [sqft_living] の散布図をクリックします (上から 1 つ目の列、3 つ目の行)。
[マトリックス コーナー ビュー] の [プロットのプレビュー] が更新され、[price] と [sqft_living] の散布図が拡大表示されます。
生活空間のサイズ ([sqft_living]) と [price] の間に正の線形関係があります。 一般に、生活空間における増加は住宅価格における増加に対応しています。 この変数は、GLR モデルに適した候補です。
- [bathrooms] と [price] の散布図をクリックします (上から 1 つ目の列、2 つ目の行)。
bathrooms の数と price の関係には、強い線形関係がありません。 これは、浴室数がこの地域の住宅販売価格に与える影響は、生活空間ほどではないことを示唆しています。
- [bedrooms] と [price] の散布図をクリックします (上から 1 つ目の列、1 つ目の行)。
2 つの変数間には正の線形関係があるようです。 ただし、目視検査では、線形関係の強さを推測することは推定するのは困難です。
- [チャート プロパティ] ウィンドウで [リニア トレンドの表示] ボックスをオンにします。
このオプションをクリックすると、ベストフィット ラインが各散布図に追加されます。
- [price] と [sqft_living] の散布図をクリックします。
これで、チャートにベストフィット ラインとそれに関連する R2 基準が含まれます。
R2、つまり R2 は、2 つの変数の関係によって説明されるデータの変動量を示す割合です。 1 に近い R2 の絶対値は強い正の線形関係を示し、0 に近い値は弱い線形関係を示します。
0.49 の R2 は、[sqft_living] と [price] の関係が、[sqft_living] と [price] の散布図の変動量の 49 パーセントを占めることを示します。
- [チャート プロパティ] ウィンドウの [マトリックス レイアウト] にある [右上] で [Pearson の相関係数] を選択します。 [対角線] で [フィールド名] を選択します。
チャートが更新され、散布図チャートだけでなく、Pearson の相関係数の値も表示されます。
Pearson の相関係数は、変数間の線形関係の強度、または一方の変数が他方の変数に与える影響の度合いを定量化します。 1 に近い Pearson の相関係数の絶対値は強い正の線形関係を示し、0 に近い値は弱い線形関係を示します。
- 必要に応じて、[price] と [sqft_living] の散布図をクリックします。
また、[price] と [sqft_living] の Pearson の相関係数の値が黒色のアウトラインでハイライト表示されます。
Pearson の相関係数の符号は、2 つの変数の関係のタイプを表します。 [Pearson の相関係数] の値 (0.7) は、変数間に正の線形関係があることを示しています。 正の関係では、[sqft_living] における増加は [price] における増加に対応していることを意味します。逆も同様です。 負の [Pearson の相関係数] の値は、一方の変数における増加が他方の変数における減少に対応していることを示します。
散布図マトリックス内のプロパティ特性はすべて、価格との正の関係があります。
- [bathrooms] と [price] の散布図をクリックします。
[Pearson の相関係数] の値 (0.53) は、bathrooms の数と price の間にある弱い正の線形関係を示しています。
- [bedrooms] と [price] の散布図をクリックします。
[Pearson の相関係数] の値 (0.31) は、bedrooms の数と price の間にある弱い正の線形関係を示しています。 bedrooms の数と price は、$1,000,000 未満の価格に対して異なるパターンを表します。 価格が $1,000,000 以上の場合に、これらの 2 つの変数間には強い線形関係があるようです。
これは、区分的な関係の一例です。つまり、変数が特定の境界を越えた後で、関係が変化します。 区分的な関係の存在は、ツリーベースの手法 (フォレストベースの分析および回帰分析など) がより正確な推定になることを示唆しています。 現時点ではこのことを念頭に置き、後で線形回帰の変数を描画します。
これまでに、変数間の関係を把握する方法を作成しました。 当初の目標は、住宅の属性をその販売価格に関連付ける正確な線形モデルを構築することです。 この目標は、次の方法で達成できます。
- 価格に対して強い線形関係を持つプロパティ特性を見つけます。
- プロパティ特性同士が強い線形関係を持たないようにします (多重共線性を避けるため)。
さらに、散布図マトリックスは複数の関係をまとめることができるため、解析に使用するプロパティ特性を描画できます。
- [Chart of kc_house_data] ビューと [チャート プロパティ] ウィンドウを閉じます。 プロジェクトを保存します。
データを調査して、線形回帰分析を実行する準備をしました。 [sqft_living] にはターゲット変数である住宅販売価格との最も強い相関関係があることがわかりました。 互いに強い関係を示す他のプロパティ特性は、[sqft_living] と同じ線形システムに存在すると問題を生じる可能性があります。 複数のプロパティ特性が多重共線性を表す場合、変数が同じストーリーを示している可能性があります。 たとえば、生活空間の総面積が寝室と浴室の数も表しているかどうかを解析することが重要です。これは地域ごとに異なる可能性があるためです。 対処されなければ、多重共線性によって、モデルの結果に狂いが生じる可能性があります。
次に、[sqft_living] と住宅販売価格の関係の線形モデルを作成します。 モデルが適切に機能しない場合、住宅販売価格にも強い関係を持つ [grade] 変数を線形システムに追加できます。
予備回帰分析を使用した市場のドライバーの識別
次に、予備回帰分析を使用して、プロパティ特性と住宅販売価格の関係を調べます。 予備回帰分析では、正確に住宅販売価格をモデル化し、変数間の関係 (その関係が正か負かなど) についての洞察が得られるモデルを見つけます。
一般的化線形回帰モデルの作成
最初に作成する回帰モデルのタイプは、一般化線形回帰 (GLR) モデルです。 ArcGIS 空間統計ジオプロセシング ツールの 1 つを使用します。
- [ジオプロセシング] ウィンドウを開きます。
ヒント:
[ジオプロセシング] ウィンドウを開くには、リボンの [解析] タブをクリックします。 [ジオプロセシング] グループで、[ツール] をクリックします。
- [ジオプロセシング] ウィンドウの検索ボックスに「generalized linear」と入力します。
- [一般化線形回帰分析 (空間統計ツール)] ツールをクリックします。
注意:
いくつかのツールが [ジオプロセシング] ウィンドウの検索結果に類似するまたは同じ名前で 2 回表示されます。 正しいツールボックスからツールを選択していることを確認してください。ツールはツール名の隣に示されています。
[一般化線形回帰分析 (Generalized Linear Regression)] ツールを使用して、さまざまなタイプの従属変数を予測できます。 使用する正しいモデルは、従属変数のタイプによって異なります。 連続変数 (販売価格) を予測しているため、ガウス分布モデルを使用して住宅販売価格を予測します。
住宅が $500,000 以上で販売されたかどうかなど、0 または 1 (バイナリ変数) のターゲット変数を予測している場合は、このツールのバイナリ (論理) オプションを使用します。
ターゲット変数がカウント (住宅の入札者数など) の場合、このツールのカウント (ポアソン分布) オプションを使用します。
- [一般化線形回帰分析 (Generalized Linear Regression)] ツールのウィンドウで、次のパラメーターに値を入力します。
- [入力フィーチャ] で [kc_house_data] を選択します。
- [従属変数] で [price] を選択します。
- [モデル タイプ] で [連続 (ガウス分布)] が選択されていることを確認します。
次に、回帰モデルの説明変数を選択します。 散布図マトリックスの調査で、[sqft_living] は住宅販売価格の予測に適した変数であると判断しました。
- [説明変数] で [sqft_living] のチェックボックスをオンにします。
- [出力フィーチャ] に「valuation_sqft_living_glr」と入力します。
複数の GLR モデルを作成して、異なる出力にわかりやすい名前を付けることをお勧めします。 この名前は予測変数と方法を示します。
[予測オプション] セクションでは、入力を定義しません。 ここでは、予備回帰分析を実行し、プロパティ特性が割り当てられた住宅価格を説明するモデルを定義します。 つまり、住宅販売価格の背後にある潜在的なドライバーを把握します。 この段階では、販売価格が割り当てられていない住宅に価格を割り当てません (予測)。 後で新しい住宅の販売価格を予測します。その際にこのツールのセクションが役に立ちます。
- [実行] をクリックします。
ツールを実行して完了すると、[警告 001605: 地理座標 (度、分、秒) の距離は、弦距離 (メートル単位) を使用して解析されます。] という警告が表示されます。
すばやく計算することができ、真の測地距離の優れた推定値が得られるため、弦の距離が使用されます。 分析範囲が 30°を越えて広がる場合、必ずデータを投影してください。 約 30°を超える場合、弦距離は測地距離の良好な推定値にはなりません。
このツールの 1 つの出力は標準残差マップです。
濃い緑と濃い紫は、予測された住宅販売価格と実際の住宅販売価格の間の大きな不一致を示しています。
- [コンテンツ] ウィンドウの [valuation_sqft_living_glr] レイヤーで [変数間の Relationship] チャートをダブルクリックします。
[変数間の Relationship] チャートに、GLR による予測と実際のデータ ポイントが表示されます。
データ ポイントが基準線に近くなるのが理想的です。 データ ポイントが基準線に近いほど、2 つの変数間の関係が強くなります。
このチャートでは、緑色は、住宅の住宅販売価格の過小評価を示します。つまり、モデルが予測した住宅販売価格よりも実際の住宅価格が高くなっています。 紫は過大評価を示します。つまり、予測価格が実際の住宅価格を上回っています。
- チャート ウィンドウと [チャート プロパティ] ウィンドウを閉じます。
[標準化残差] マップでは、濃い緑のポイントは水域の周辺に集まっているようです。 回帰モデルは、水域付近の住宅販売価格を体系的に過小評価しています。 生活空間のサイズにわずかな変更を加えると、内陸の住宅に比べて、水域付近の住宅の価格が大きく変化するように見えます。
次に、GLR 出力のグローバル診断を評価します。
- リボンの [解析] タブにある [ジオプロセシング] グループで、[履歴] をクリックします。
[ジオプロセシング履歴] ウィンドウが表示されます。
- [ジオプロセシング履歴] ウィンドウで [一般化線形回帰分析 (Generalized Linear Regression)] を右クリックして [詳細の表示] を選択します。
GLR ツールの実行結果の詳細ウィンドウが表示されます。
- GLR ツールの実行結果の詳細ウィンドウで [メッセージ] タブをクリックします。
ヒント:
ウィンドウのエッジをドラッグして、このウィンドウを展開できます。
[GLR 診断] セクションの [補正 R2] 値は 0.492830 です。 これは、[price] と [sqft_living] の散布図に表示される [R2] 値と同じです。
[Joint F 統計]、[Joint Wald 統計]、および [Koenker (BP) 統計] は、ほぼ 0 (丸めによる近似) の P 値 ([Prob(>chi-squared)]) で有意になります。 これは、モデルによって定義された関係がランダムに発生する確率がほぼ 0 であることを示しています。 つまり、GLR がモデル化した住宅販売価格と生活空間の間に統計的に有意な関係があります。
- [一般化線形回帰分析 (GLR) (空間統計ツール)] ウィンドウと [履歴] ウィンドウを閉じます。
- プロジェクトを保存します。
GLR を使用して、[sqft_living] 変数と [price] の間に有意な関係があると判断しました。 また、GLR モデルは、水域付近の住宅の価値を過小評価することもわかりました。 次に、この過小評価を考慮する別の変数を加えて、改善された GLR モデルを試します。 ArcGIS Online のデータを使用して、予測をジオエンリッチメントします。
地理データによる解析の拡張
次に、ArcGIS Online から地理データのレイヤーを追加し、それを使用して GLR モデルを拡張します。
水域の検索
作成した GLR モデルは水域近くの住宅の価値を過小に推定しているため、マップに水域データを追加して GLR モデルに組み込みます。 ジオエンリッチメントなどの方法でも実現できる、地理情報によるデータの拡張機能は、データ サイエンスのワークステーションとしての ArcGIS Pro の重要な利点です。
- リボンの [表示] タブをクリックします。 [ウィンドウ] グループで、[カタログ ウィンドウ] をクリックします。
- [カタログ] ウィンドウで [ポータル] タブをクリックし、[ArcGIS Online] ボタンをクリックします。
- 「USA water bodies owner:esri_dm」を検索します。
- [USA Detailed Water Bodies] レイヤー パッケージを右クリックして [現在のマップに追加] を選択します。
注意:
[USA Detailed Water Bodies] レイヤー パッケージと [USA Detailed Water Bodies] フィーチャ レイヤーを区別するには、検索結果内のアイテムにポインターを合わせます。 このワークフローはレイヤー パッケージによっても、フィーチャ レイヤーによっても完了できますが、フィーチャ レイヤーには、レイヤーが現在のマップ範囲内に表示されなくなるという表示制限があります。
レイヤーがマップに追加されます。
- データの北中部にある大きい湖を拡大表示します。西と東の岸が濃い青緑のポイントで囲まれています。
- リボンの [マップ] タブをクリックします。 [選択] グループの [選択] ボタンをクリックします。
- マップで湖をクリックします。
湖フィーチャが青色のアウトラインでハイライト表示されます。これは、そのフィーチャが選択されていることを意味します。
- [コンテンツ] ウィンドウで [USA Detailed Water Bodies] を右クリックし、[属性テーブル] を選択します。
- テーブルの下部にある [選択レコードの表示] ボタンをクリックします。
選択した 1 つのフィーチャがテーブルに表示されます。
水域フィーチャ サービスでは、このデータは [Lake/Pond] の [FTYPE] 変数 (フィーチャ タイプの略) を持つポリゴンとして表されます。 GLR モデルは、ワシントン州の湖周辺にある住宅の価値を一貫して過小に推定しています。 フィーチャ サービスには、池や河川などの水域タイプが含まれますが、これらはこの地域の湖ほど明確には販売価格に影響しません。 解析では、[Lake/Pond] タイプの水域までの距離を使用します。
- [マップ] タブの [選択] グループで、[属性条件で選択] をクリックします。
- [属性条件で選択] ウィンドウで、[入力行] が [USA Detailed Water Bodies] に設定されており、[選択タイプ] が [新規選択] に設定されていることを確認します。
- [式] の下で、「Where 句 FTYPE が Lake/Pond と等しい」という式を作成します。
- [適用] をクリックします。
注意:
[属性検索 (Select Layer By Attribute)] ツールはまだ閉じないでください。
すべての [Lake/Pond] フィーチャがマップ上でハイライト表示されます。
近くに濃い青緑のポイントのクラスターがない小さな湖と池が多数あります。 これは、小さな湖や池は GLR モデルの結果に大きな湖ほど影響しないことを示しています。 大きい水域だけを選択するように選択式に項目を追加します。
- [属性条件で選択] ウィンドウで [項目の追加] をクリックします。
この新しい項目は、[AND] 演算子を使用して最初の項目に結合されます。 これはこのセクションでは適切ですが、別のプロジェクトでは [OR] 演算子を使用する場合があります。
- [式] ビルダーを使用して、[および SQKM が指定の値以上] という式を作成します。
郡にあるその他の大きい湖の面積は、19.34 平方キロメートルです。 この項目により、小さな水域が除外されます。
- [SQL] 切り替えボタンをクリックします。 SQKM >= の後に「19.00」と入力します。
- [OK] をクリックします。
選択内容が変わり、エリア内で 19 平方キロメートル以上の湖と池だけがハイライトされます。 属性テーブルによれば、現在 689 のフィーチャが選択されています。
- 属性テーブルを閉じます。
湖フィーチャのエクスポート
レイヤーの他のフィーチャではなく、選択したフィーチャだけを解析します。 次に、[フィーチャのコピー (Copy Features)] ツールを使用して、選択したフィーチャを新しいフィーチャクラスにエクスポートします。
- [ジオプロセシング] ウィンドウの [戻る] ボタンをクリックします。 [フィーチャのコピー] ツールを検索し、開きます。
- [フィーチャのコピー (Copy Features)] ツール ウィンドウの [入力フィーチャ] で [USA Detailed Water Bodies] を選択します。 [出力フィーチャクラス] に「LargeLakes」と入力します。
[入力フィーチャ] パラメーターの下のメッセージには入力レイヤーに選択項目があることが示され、処理される選択済みレコードの数が表示されます。 [USA Detailed Water Bodies] レイヤーには全米の水域が含まれていますが、ワシントン州キング郡の水域にだけ注目します。 ツールの処理範囲を変更することで、[kc_house_data] レイヤーの範囲内にあるフィーチャにコピー対象のフィーチャを制限します。
- [環境] タブをクリックします。
- [処理範囲] セクションの [範囲] で [kc_house_data] を選択します。
- [実行] をクリックします。
注意:
すぐに戻ってくるため、ツールを実行しても [ジオプロセシング] ウィンドウは閉じないでください。
[LargeLakes] レイヤーが [コンテンツ] ウィンドウに追加されます。
[USA Detailed Water Bodies] レイヤーは必要なくなったため、削除します。
- [コンテンツ] ウィンドウで [USA Detailed Water Bodies] を右クリックし、[削除] を選択します。
- プロジェクトを保存します。
GLR モデルでの湖までの距離の使用
大きい湖のフィーチャを取得しました。次にこのフィーチャを使用して、GLR モデルをジオエンリッチメントできます。 [空間統計] ツールボックスの回帰分析ツールを使用すると、解析に距離フィーチャを含めることができます。 これらのツールは、各ポイントから最も近い距離フィーチャまでのユークリッド距離を自動的に計算して、その距離を入力変数として使用します。
- [ジオプロセシング] ウィンドウのツール ウィンドウの下部で [履歴を開く] をクリックします。
- [履歴] ウィンドウで [一般化線形回帰分析 (Generalized Linear Regression)] を右クリックして [開く] を選択します。
[一般化線形回帰分析 (Generalized Linear Regression) (GLR)] ツールが開き、このツールを最後に実行したときのパラメーターが表示されます。
湖までの距離を追加して GLR モデルを拡張します。
- [説明距離フィーチャ] で [LargeLakes] を選択します。
- [出力フィーチャ] に「valuation_sqft_living_d2lake_glr」と入力します。
- [実行] をクリックします。
ツールが実行され、結果がマップに追加されます。 次に、GLR ツールを 2 回実行した結果を視覚的に比較します。
- [コンテンツ] ウィンドウで、[valuation_sqft_living_d2lake_glr] レイヤーが選択されていることを確認します。
- [フィーチャ レイヤー] タブをクリックします。 [比較] グループの [スワイプ] をクリックします。
- 郡の北部でマップをクリックして、データ内で [スワイプ] ツールをドラッグします。
注意:
マップをクリックした場所に応じて、上下または左右にスワイプできます。 どちらの方向でも、2 つのレイヤーを比較できます。
[コンテンツ] ウィンドウで [valuation_sqft_living_d2lake_glr] が選択されているため、[スワイプ] ツールにより、マップ上でドラッグするとその下に隠れているデータが表示されます。
湖周辺のエリアには、両方の GLR 実行で最も高い標準化残差が残ったままです。
- リボンの [マップ] タブをクリックします。 [ナビゲーション] グループで、[マップ操作] をクリックします。
- [コンテンツ] ウィンドウで、[valuation_sqft_living _glr] レイヤーと [valuation_sqft_living_d2Lake_glr] レイヤーの両方の [標準化残差の分布] グラフをダブルクリックします。
- チャート ウィンドウで、いずれかのチャートのタブをドラッグし、チャート ウィンドウの右側にドッキングさせます。
これで、グラフを並べて比較することができます。 2 つの分布プロットはよく似ています。
この類似性は、湖までの距離を追加することで推定誤差が改善されなかったことを示しています。 湖までの距離を使用した GLR モデルが適切に実行された場合、暗い色調の緑と紫の場所 (標準誤差が高い場所) が少なくなると予測されます。
距離フィーチャを追加しても、GLR モデルが改善されなかった理由は少なくとも 2 つ考えられます。 1 つ目は、GLR で計算された距離フィーチャがユークリッド距離または直線距離であることです。 このエリアでの移動のほとんどは道路網に沿っており、直線距離は住宅から湖までの道路移動距離を適切に表していない可能性があります。 2 つ目は、生活空間のサイズおよび水域までの距離の変数と住宅販売価格との関係は線形関係ではない可能性があることです。 このシナリオでは GLR は過度にシンプルなモデルである可能性があります。
- [標準化残差の分布] グラフと [チャート プロパティ] ウィンドウを閉じます。
- [コンテンツ] ウィンドウで、[valuation_sqft_living_d2lake_glr] レイヤーと [valuation_sqft_living_glr] レイヤーをオフにして折りたたみます。
- プロジェクトを保存します。
湖までの距離を GLR の変数として追加し、その結果を元の GLR モデルの結果と比較しました。 GLR がモデル化したシンプルな線形関係は、このデータセットでは適用できません。 次に、より複雑なモデルを試します。
地域化された一般的な線形回帰モデルの作成
次に、郡を地域に分割し、地域ごとに別々の GLR 解析を実行します。
データ内の地域の確認
最初に、データのシンボルを変更して、地域を見つけます。
- [コンテンツ] ウィンドウで [kc_house_data] レイヤーを右クリックし、[シンボル] を選択します。
- [シンボル] ウィンドウで、次のパラメーターを設定します。
- [プライマリ シンボル] で [等級色] を選択します。
- [フィールド] で [price] を選択します。
- [クラス] で、[10] を選択します。
- [配色] で [名前の表示] チェックボックスをオンにして [黄-緑-青 (連続)] を選択します。
この方法でデータを視覚化すると、南部と北西部に低価格クラスターがあり、水辺に近いエリアに高価格クラスターがある個別の空間クラスターが表示されます。 水辺への近さは、この地域における販売価格の決定に重要な役割を果たし、価格は所定の近傍で徐々に変化します。
次に、データ主導の評価の近傍を定義し、各地域の GLR を実行します。
- [ジオプロセシング] ウィンドウを開き、必要に応じて [戻る] ボタンをクリックします。 [空間的に制限された多変量クラスター分析 (Spatially Constrained Multivariate Clustering)] ツールを検索して開きます。
このツールを使用して、生活空間のサイズが類似する住宅の市場価格が類似する地域を識別します。
- [空間的に制限された多変量クラスター分析 (Spatially Constrained Multivariate Clustering)] ツールで、次のパラメーターに値を入力します。
- [入力フィーチャ] で [kc_house_data] を選択します。
- [出力フィーチャ] に「price_regions」と入力します。
- [分析フィールド] で [price] および [sqft_living] をオンにします。
- [空間的制限] で [ドローネ三角形分割の切り詰め] が選択されていることを確認します。
- [クラスター数の評価に使用する出力テーブル] に「num_clusters」と入力します。
注意:
クラスター数を指定しない場合、ツールは最も均一の領域になる数を自動的に選択します。
- [実行] をクリックします。
注意:
このツールが正常に実行されなかった場合は、プロジェクトを保存して閉じてから ArcGIS Pro を再度開きます。 プロジェクトを開いてツールをもう一度実行します。
ツールが実行され、新しいレイヤーがマップに追加されます。
注意:
ツールを実行した後は [ジオプロセシング] ウィンドウを閉じないでください。 後でこのウィンドウに戻ってきます。
結果には 2 つのクラスターしかありません。 [最適化された疑似 F 統計チャート] を調べて、データをクラスター化できる別の方法を把握します。
- [コンテンツ] ウィンドウの [スタンドアロン テーブル] で [最適化された疑似 F 統計チャート] をダブルクリックします。
このプロットでは、別の地域を追加してもクラスターの均質性が著しく低下することがないエルボ形、またはトレンドをチャートから探します。 このチャートでは、8 つの地域にエルボ形があります。 8 つ目の地域の後でクラスター数が一貫して減少しています。
今回は 8 つの地域を使用してツールを再度実行します。 前回ツールを実行した時に使用したパラメーターのまま、[ジオプロセシング] ウィンドウがすでに開いています。
- チャートと [チャート プロパティ] ウィンドウを閉じます。
- [ジオプロセシング] ウィンドウの [クラスター数] に「8」と入力します。
その他のパラメーターはそのままにしておきます。 同じ出力名を維持することで、新しいツール出力によって古い出力が置き換えられます。
- [実行] をクリックします。
[price_regions] レイヤーがマップに追加されます。 このレイヤーにはクラスターが 8 個あります。
- [コンテンツ] ウィンドウの [price_regions] および [チャート] で、[空間的に制限された多変量クラスター分析の箱ひげ図] をダブルクリックします。
チャートの色は、マップ上のクラスターの色に一致します。 青、緑、黄、茶、紫のクラスターは、[price] と [sqft_living] の第 3 四分位値の上にあります。 青は、緑および茶のクラスターと比較して、生活空間が小さいが価格が高いクラスターに対応しています。 この色は、街の望ましい場所を示しています。 マップ上で、青のクラスターはワシントン湖の東部のエリアに対応しています。 このクラスターでは、生活空間のサイズは、住宅販売価格の主な推進要因ではない可能性があります。
ワシントン湖の島にある緑の地域は、青のクラスターと比較して生活空間が大きく価格が低い住宅に対応しています。
価格が第 3 四分位より下の地域を見ると、ピンクのクラスターは赤およびグレーのクラスターよりも安く、生活空間の平均サイズが赤のクラスターと同じになっています。 これは、ピンクのクラスターでは生活空間のサイズが同じ住宅を安く手に入れることができることを示しています。 また、線形モデルが機能しなかった理由を示すこともあります。
- チャートと [チャート プロパティ] ウィンドウを閉じます。
各地域の GLR の実行
次に、各地域で GLR を実行します。 これを行うには、各クラスターの一連のポイントを属性別に選択して、選択ごとに GLR を実行します。 8 つの地域があるため、ModelBuilder を使用してプロセスを自動化すると一層効率的です。
- リボンの [解析] タブをクリックします。 [ジオプロセシング] グループで、[ModelBuilder] をクリックします。
[モデル] ビューが表示されます。
- [コンテンツ] ウィンドウの [price_regions] レイヤーをクリックしてモデル キャンバスにドラッグします。
- リボン上の [ModelBuilder] タブにある [挿入] グループで、[反復子] をクリックしてから [フィーチャ選択の反復] を選択します。
- モデル キャンバスで、[price_regions] から [フィーチャ選択の反復] に矢印をドラッグします。
ドロップダウン メニューが表示されます。
- ドロップダウン メニューから [入力フィーチャ] を選択します。
[フィーチャ選択の反復] アイテムとそれに接続しているアイテムの色が変わります。 次に、ツールが 8 つの [クラスター ID] 値ごとに繰り返し、各値の選択を作成するようにツールのパラメーターを調整します。
- [フィーチャ選択の反復] をダブルクリックします。
- [フィーチャ選択の反復] ウィンドウの [フィールドでグループ化] でフィールドを [Cluster ID] に設定します。
- [OK] をクリックします。
反復子には次の 2 つの出力があります。 [I_price_regions_CLUSTER_ID] は選択したフィーチャ レイヤーで、[Value] は現在の選択の値を保持する変数です。 この場合、値は各クラスターの ID 値になります。
次に、[一般化線形回帰] ツールを反復子の出力にアタッチします。 反復子はクラスターごとに繰り返されるため、ツールはクラスターごとに実行されます。
- [ジオプロセシング] ウィンドウの [戻る] ボタンをクリックします。 「一般化線形」を検索します。
- 検索結果のリストで、空間統計ツールの [一般化線形回帰分析 (Generalized Linear Regression)] ツールを緑の [I_price_regions_CLUSTER_ID] の反復子出力の横にあるモデル キャンバスにドラッグします。
- モデル キャンバスで [I_price_regions_CLUSTER_ID] から [一般化線形回帰分析 (Generalized Linear Regression)] に矢印をドラッグし、[入力フィーチャ] を選択します。
ツールが出力に接続されます。
次に、GLR ツールのパラメーターを調整します。
- [一般化線形回帰分析 (Generalized Linear Regression)] をダブルクリックします。
反復子の出力をツールに接続したため、[入力フィーチャ] パラメーターが [price_regions:1] に設定されます。
- [従属変数] で [price] を選択します。 [説明変数] で [sqft_living] をオンにします。
- [出力フィーチャ] に「valuation_sqft_living_glr_region_%Value%」と入力します。
出力フィーチャ名の末尾でテキスト「%Value%」を使用すると、変数 [Value] のコンテンツがその名前に追加されます。 この命名スキーマを使用すると、反復子が繰り返されるごとに、一意の名前が解析対象のクラスターに関連付けられます。
- [OK] をクリックします。
- リボンの [ModelBuilder] タブの [表示] グループで、[自動レイアウト] をクリックします。
モデル要素が自動的に並べられています。
[出力予測フィーチャ] と [出力トレーニング済みモデル ファイル] の楕円はグレーのままです。これらの楕円は、現在使用していないツールのオプションの出力であるためです。
- [ModelBuilder] タブにある [挿入] グループで、[ユーティリティ] をクリックしてから [値の収集] を選択します。
[値の収集]、[出力値]、[出力テーブル] の各ユーティリティがモデル キャンバスに追加されます。
- モデル キャンバスで [valuation_sqft_living_glr_region_%Value%] から [値の収集] に矢印をドラッグし、[入力値] を選択します。
ヒント:
必要に応じて、選択してドラッグすることでオブジェクトの位置を変更できます。
- [出力値] を右クリックして、[マップへ追加] をクリックします。
これで、モデルを実行できるようになりました。
- リボンの [ModelBuilder] タブにある [実行] グループで [検証] をクリックします。
モデルの整合チェックが行われます。 これで実行の準備は完了です。
- [ModelBuilder] タブの [実行] グループで、[実行] をクリックします。
モデルが実行されている間、ツール アイテムが赤に変わり、現在実行中であることが示されます。モデルの結果ウィンドウには、GLR モデルの各実行の結果が表示されます。
GLR 結果グループ レイヤー (合計 8 個) がマップと [コンテンツ] ウィンドウに追加されます。
モデルの結果の確認
次に、モデルの結果を確認し、もっとわかりやすくなるようにレイヤーの名前を変更します。
- [コンテンツ] ウィンドウの [出力値: valuation_sqft_living_glr_region_1] にある [チャート] で [変数間の Relationship] をダブルクリックします。
チャート ビューが表示されます。
このクラスターの [R2] 値は、0.49 から約 0.67 に改善しました。 他のレイヤーのチャートを開いて他の地域の [R2] 値を確認します。
- チャート ビューおよび [チャート プロパティ] ウィンドウを閉じます。
- [モデル] ビューを閉じます。 [はい] をクリックしてモデルを保存します。
[マップ] ビューが再度アクティブになります。
ワシントン湖周辺のエリアはより正確に予測されますが、その他のエリア (西シアトル地区など) は過小評価された住宅販売価格 (濃い緑) の数が多くなっています。 地域化されたモデルには、回帰分析の外れ値に関連する問題を強調するというリスクがあります。 次のテーブルに各地域の全体的な R2 をまとめます。
地域
R2 値
地域 1
0.667345
地域 2
0.511873
地域 3
0.573594
地域 4
0.785343
地域 5
0.672591
地域 6
0.587296
地域 7
0.369590
地域 8
0.587235
これらの各地域の全体的なモデルの品質は、外れ値を含んだ大きな地域の地域 7 を除いて、データセット全体で実行した GLR の結果よりも優れています。 複数の地域がある場合、数学モデルの簡素さが失われます。 評価者は、都市の異なる地区にさまざまな数学関数を使用して異なる傾向を明らかにします。 複雑さを増し、ワシントン州のキング郡における住宅販売価格を明らかにするモデルを探し、1 つのモデルでデータセット全体を使用します。
続行する前に、モデルの出力をグループ化して [コンテンツ] ウィンドウを整理します。 各 [出力値] レイヤーはすでに [モデル ビルダー] という名前のレイヤー グループにあります。 グループ名を更新し、各レイヤーから「出力値」テキストを削除します。
- [コンテンツ] ウィンドウで [ModelBuilder] レイヤー グループ名をクリックして選択し、もう一度クリックして名前を編集できるようにします。 グループの名前を「Regional GLR Model」に変更します。
- 「出力値:」テキストを削除して [Output Values:valuation_sqft_living_glr_region_8] の名前を変更します。
- 「出力値:」テキストを削除して残り 7 個のレイヤーの名前を変更します。 8 個すべてのレイヤーを折りたたみます。
- [valuation_sqft_living_d2lake_glr] レイヤーをクリックし、Shift を押しながら [valuation_sqft_living_glr] レイヤーをクリックします。
- 選択したレイヤーを右クリックして [グループ] を選択します。 レイヤー グループの名前を「Global GLR Model」に変更します。
- リボンの [マップ] タブをクリックします。 必要に応じて、[選択] セクションで [選択解除] をクリックして選択を解除します。
- プロジェクトを保存します。
これまで、空間特性を解析に組み込む 2 つの試みを行ってきました。 はじめに、水域までの距離を予測因子として使用しました。 その後、住宅の販売価格と生活空間に基づくデータ主導の地域を作成して、空間的に不連続の 8 つの回帰モデルを実行しました。
次に、地理空間加重線形回帰分析を使用して、住宅価格をモデル化します。
空間的に変化する関係のモデル化
次に、地理空間加重線形回帰分析およびフォレストベースの分類と回帰分析を使用して住宅価格をモデル化します。
地理空間加重線形回帰分析は継続的に変化する線形回帰モデルで、ターゲット変数 (販売価格) と複数の説明変数 (プロパティ特性) の間の関係を特定します。 使用する前に、統計的に有意な空間リレーションシップが変数間に存在するかどうかをテストします。
変数間の空間リレーションシップの特定
最初に、[ローカル 2 変数リレーションシップ (Local Bivariate Relationships)] ツールを実行します。 このツールは、エントロピーベースの手法を使用して、空間リレーションシップを調べます。 データのサブセットにある 2 つの変数の間に有意な関係が存在する場合、データをランダム化すると、エントロピーが著しく増加します。 有意な関係が存在しない場合、データをランダム化しても、エントロピーが著しく増加することはありません。 つまり、エントロピーまたはランダム化の導入により、2 つの変数の間に破棄する関係があるかを調べることができます。
開始時に破棄する関係がない場合、ランダム化により 2 つの変数間の関係は変更されないことがあります。 関係の検索にエントロピーを使用するこの考え方の詳細については、Guo (2010) をご参照ください。
- [ジオプロセシング] ウィンドウで、[ローカル 2 変数リレーションシップ] ツールを検索して開きます。
- [ローカル 2 変数リレーションシップ] ツールで、次のパラメーターを設定します。
- [入力フィーチャ] で [kc_house_data] を選択します。
- [従属変数] で [sqft_living] を選択します。
- [説明変数] で [price] を選択します。
- [近傍数] に「50」と入力します。
50 個の近傍を選択する理由
変数間に有意な関係が存在する場合、近傍はその関係を収集できる大きさである必要があります。 さまざまな値を試す必要がある場合もありますが、50 の住宅は十分な数の近傍であり、回帰診断を信頼してローカル回帰がこのデータセットで機能するかどうかを判断できます。同時に、ローカル回帰が GLR モデルと異なるようにするのに、十分に小さなキング郡のデータセット全体の割合です。
これは、回帰分析の統計的な機能の概念を応用しています。人口 (ワシントン州キング郡の全住宅) が対象の変数間で有意な関係を形成しているときに有意なベストフィット ライン (フィット エラーが低い) を見つける可能性があります。
- [出力フィーチャ] に「local_rlns_sqft_living_vs_price」と入力します。
- [実行] をクリックします。
ツールが実行され、[local_rlns_sqft_living_vs_price] レイヤーがマップに追加されます。
このレイヤーのシンボルは [コンテンツ] ウィンドウに表示されます。
多数の近傍に多数のポイントがある場合、価格と生活空間の間には正の線形関係が存在します。 この大きなデータセットには、お互いに近接して描画されたポイントが非常に多く存在するため、正の線形関係が最後に描画されるリスクがあり、結果の多数を占めるように示される可能性があります。 ツールのジオプロセシング結果を確認して、各クラスの数を確認することが大切です。
- [ジオプロセシング] ウィンドウの下部で、[詳細の表示] をクリックします。
- 必要に応じて、[ローカル 2 変数リレーションシップ (空間統計ツール)] 詳細ウィンドウで [メッセージ] タブをクリックします。
このツールの結果は、約 71.6 パーセントのポイントが正の線形関係を示していることを意味しています。
この結果は、地理空間加重回帰分析 (GWR) が 50 の住宅の近傍サイズで [sqft_living] と [price] の間の空間リレーションシップをモデル化できることを示唆しています。
ただし、GWR は単にローカル サブセットを使用して場所にラインをフィティングするのではなく、近傍に見られるローカル回帰の予測因子変数に重み付けする地理加重方式も実装します。 変数間に有意な線形関係が見られる場合、GWR モデルはローカル リレーションシップを取得するが、保証されてないことを示しています。
- 詳細ウィンドウを閉じます。 マップ上で、正の線形関係を示していると見なされているいずれかのポイント (ピンクのシンボルがある) をクリックします。
ヒント:
ポイントどうしが近すぎるためにクリックしにくい場合は、ズームしてください。
そのポイントのポップアップに、その位置と近傍におけるローカル リレーションシップのグラフが表示されます。
- ポップアップを閉じます。 凹面関係を示すポイント (オレンジのシンボル) をクリックします。
- ポップアップを閉じて、プロジェクトを保存します。
両方の位置を 1 本の線にまとめ、近傍の統計的に有意な関係性を保持するために特定された位置でさまざまな回帰モデルをテストすることで検出された関係性のタイプだけをレポートすることができます。
ワシントン州キング郡の大半は、50 の近傍で統計的に有意なローカルの関係性を示しています。 ここでは、50 の近傍サイズは有意です。 ただし、ツールでは正しい近傍値が自動的に決定されません。異なるデータセットの場合、異なる近傍サイズを調べる必要があります。
独自のデータでこの解析を実行した場合、異なる近傍サイズでツールを実行して、[sqft_living] と [price] の空間リレーションシップのタイプに加えられる変更を調べます。 ローカルの線形関係を保持するために見つけた近傍サイズは、次のステップで [地理空間加重回帰分析 (Geographically Weighted Regression) (GWR)] ツールで使用されます。
地理空間加重回帰分析の実行
前のセクションで特定した空間リレーションシップのコンセプト (50 個の住宅で構成される近傍) と同じコンセプトを使用して GWR モデルを定義します。
- [ジオプロセシング] ウィンドウの [戻る] ボタンをクリックします。 [地理空間加重回帰分析 (Geographically Weighted Regression) (GWR)] ツールを検索して開きます。
このツールは、ローカル回帰モデルで近傍の加重を制御するさまざまな種類のカーネルを使用できます。
次の画像はカーネルの例を示したものです。 ラインは、Gaussian カーネルを表します。つまり、回帰分析ですべての近傍に加重が付けられ、近傍が離れるほど加重が低くなります。 バイスクエア カーネルは、距離または近傍数を使用してカーネルを切り捨てます。 このパターンは、プロット内の塗りつぶされた曲線部分によって示されます。
バイスクエア カーネルを使用して、最も近い 50 の近傍のみを使用して加重を割り当てます。
- [地理空間加重回帰 (Geographically Weighted Regression) (GWR)] ツールのウィンドウで、次のパラメーターを設定します。
- [入力フィーチャ] で [kc_house_data] を選択します。
- [従属変数] で [price] を選択します。
- [説明変数] で [sqft_living] をオンにします。
- [出力フィーチャ] に「valuation_sqft_living_gwr」と入力します。
- [近傍タイプ] で [近傍数] を選択します。
- [近傍選択方法] で [ユーザー定義] を選択します。
- [近傍数] に「50」と入力します。
ユーザー定義の近傍数を使用して、50 軒の近傍 ([ローカル 2 変数リレーションシップ] ツールを使用して決定した近傍の数) を使用できるようにします
このツールでは、手動間隔の線形検索オプションまたは黄金検索の最適化アルゴリズムを使用して近傍を選択することもできます。
- [その他のオプション] を展開して、[ローカル加重方式] が [Bisquare] に設定されていることを確認します。
Bisquare 加重方式により、すべての位置で正確に 50 (または指定した数) の近傍が使用されるようになります。 Gaussian オプションは、近傍として設定されたデータ内のすべての位置 (つまり、キング郡のすべての住宅) を使用し、その距離を基準にして負の方向に重みを付けます。 Bisquare 方式は同じ加重方式を使用しますが、キング郡の住宅の全データを使用する代わりに、すべての位置で 50 軒の近傍のみを使用します。
次に、ジオデータベースにする必要がある係数ラスター ワークスペースを設定します。 ツールは、ローカル回帰を実行して、予測因子の空間的に変化する回帰係数とインターセプト期間を計算します。 このツールはこれらの空間的に変化する係数を示すラスター サーフェスをこのワークスペースに書き込みます。
- [係数ラスター ワークスペース] で [参照] ボタンをクリックします。 [係数ラスター ワークスペース] ウィンドウで [データベース] をクリックし、[myproject2.gbd] を選択します。
- [OK] をクリックします。 [ジオプロセシング] ウィンドウで [実行] をクリックします。
ツールが実行され、新しい 3 つのレイヤーがマップに追加されます。 そのうちの 2 つはラスター レイヤーで、これらはオフにします。
- [コンテンツ] ウィンドウで [valuation_sqft_living_gwr_SQFT_LIVING] と [valuation_sqft_living_gwr_INTERCEPT] をオフにします。
GLR モデルと同様に、この GWR モデルでは湖近くの住宅が過小評価されます。 GLR モデルとは異なり、海岸近くの住宅の価値も過小評価されます。
- [valuation_sqft_living_gwr] レイヤーの [チャート] で [標準化残差の分布] をダブルクリックします。
大半のポイントで標準残差が 0 に近くなっています。 このモデルでは、GLR モデルと比較して、過大評価と過小評価 (1 標準偏差より離れた標準残差) がわずかです。
曲線の尾に基づいて、GLR と比べて、GWR には残差が大きい (2 標準偏差より離れている) 場所は少なくなっています。 これは、GWR は GLR モデルと比べて価格のばらつきをうまく収集していることを示しています。
- チャートと [チャート プロパティ] ウィンドウを閉じます。
- [ジオプロセシング] ウィンドウで [詳細の表示] をクリックします。 詳細ウィンドウで [モデル診断] セクションまでスクロールします。
[R2] の値は 0.89 で補正 R2 (AdjR2) は 0.87 です。 これは、前に実行した GLR モデルよりも非常に高い R2 で、このモデルがより精度の高いモデルであることを示しています。
- 詳細ウィンドウを閉じます。
- [コンテンツ] ウィンドウで、Ctrl キーを押して [valuation_sqft_living_gwr] をオフにします。
マップ上のすべてのレイヤーが非表示になります。
- 次のレイヤーをオンにして、表示されるようにします。
- 地形図 (World Topographic Map)
- World Hillshade
- valuation_sqft_living_gsr_SQFT_LIVING
- LargeLakes
- [valuation_sqft_living_gwr_SQFT_LIVING] を右クリックして [シンボル] を選択します。
- [シンボル] ウィンドウの [配色] で [黄-緑 (連続)] を選択します。
- [ストレッチ タイプ] で [ヒストグラム平坦化] を選択します。 [シンボル] ウィンドウを閉じます。
[コンテンツ] ウィンドウに [valuation_sqft_living_gwr_SQFT_LIVING] レイヤーの凡例が表示されます。
ローカル回帰係数はすべて正です。 これは、GWR が生活空間のサイズと住宅販売価格の正の関係をモデル化したことを意味します。
両方の大きな湖の周辺で、住宅販売価格のラスターは生活空間のサイズに対する傾斜角が高くなっています。これは、内陸部に比べて、水辺に近い住宅内の生活空間における小さな変化が価格のより大きな増加に対応していることを示しています。 これは、これらのエリアの販売価格が、生活空間のサイズでは取得されない変数である眺望により大きく影響されると見なされます。
東向きのラスターの内陸部は対象から外します。 空間的な外れ値のため、分析範囲が広がり、このデータセットの東側には十分なデータがないため、内挿されるときに基となる係数サーフェスを信頼できません。 ポイントがまばらに分布しているエリアの係数に注意する必要はありません。アルゴリズムがデータ ポイントを使用して位置間の係数を内挿します。
このモデルをさらに改善するには、どのような方法がありますか? 距離フィーチャや 2 つ目の予測因子はどうでしょうか?
- [valuation_sqft_living_gwr_SQFT_LIVING] レイヤーをオフにします。 プロジェクトを保存します。
grade 変数のテスト
以前のデータ視覚化に基づくと、grade は price に線形に相関しているもう 1 つの変数でした。 最初に、[ローカル 2 変数リレーションシップ] ツールを使用して、住宅販売価格に grade 変数が空間的に相関しているかどうかを調べます。
- [ジオプロセシング] ウィンドウの下部で [履歴を開く] をクリックします。 [履歴] ウィンドウで [ローカル 2 変数リレーションシップ] を右クリックして [開く] を選択します。
以前に設定したパラメーターでツールが開きます。
- [ローカル 2 変数リレーションシップ] ツールのウィンドウで、次のパラメーターを変更します。
- [従属変数] で [grade] を選択します。
- [出力フィーチャ] に「local_rlns_grade_vs_price」と入力します。
- [実行] をクリックします。
ツールが実行され、[grade] と [price] の間の有意な線形関係を表示するマップにレイヤーが追加されます。
GWR は GLR と同様に線形モデルであるため、多重共線性の問題を考慮する必要があります。 [sqft_living] と [grade] の間で [ローカル 2 変数リレーションシップ] 解析を実行して、2 つの予測因子の間に強力なローカルの線形関係が存在するかどうかを確認します。
- [ローカル 2 変数リレーションシップ] ツールで、次のパラメーターを変更します。
- [説明変数] で [sqft_living] を選択します。
- [出力フィーチャ] に「local_rlns_grade_vs_sqft_living」と入力します。
- [実行] をクリックします。
このマップは、2 つの予測因子間の強いローカルの線形関係を示しています。 50 の近傍で、グレードと生活空間 (平方フィート) がお互いに有意な線形関係にあることを示しています。 GLR では、線形に関連する説明変数を避ける必要がありました。 このマップは、50 のローカル近傍で、グレードと生活エリア (平方フィート) の両方を含めると、多重共線性のために GWR モデルが失敗する可能性があることを示しています。
次に、両方の変数を使用して、ツールが失敗するかどうかを確認します。
- [履歴] ウィンドウで [地理空間加重回帰分析 (Geographically Weighted Regression) (GWR)] ツールを右クリックして [開く] を選択します。
以前に設定したパラメーターでツールが開きます。
- [地理空間加重回帰分析] ツールで、次のパラメーターを更新します。
- [説明変数] で [grade] をオンにします。 [sqft_living] がすでにオンになっていることを確認します。
- [出力フィーチャ] に「valuation_sqft_living_grade_gwr」と入力します。
- [実行] をクリックします。
予想どおり、ツールの実行に失敗します。
- [ジオプロセシング] ウィンドウの下部でエラー メッセージをポイントします。
エラー メッセージを表示するウィンドウが開きます。 エラー メッセージは、多重共線性が原因であったことを示します。
GWR の制限は、空間的にクラスター化された変数では機能しません。これらは、住居の属性ではよく見られる傾向があります。 結果は、これらの 2 つの変数を使用して、現在の GWR モデルで住宅販売価格をローカルで予測することはできないことを表しています。
GWR は簡素な空間回帰モードを提供しますが、予測因子変数のペアに高い相関関係があるときは機能しません。
フォレストベースの分類と回帰分析の実行
回帰モデルに組み込むことができる予測因子を含む豊富なデータセットがあります。 次に、フォレストベースの分類と回帰分析 (Forest-based Classification and Regression) (FBCR) モデルを使用します。 このタイプのモデルは、線形モデルではないため多重共線性の影響を受けません。膨大な数の予測因子変数 (空間および非空間のプロパティ特性) とターゲット変数 (販売価格) の関係をモデル化できます。 これまで、GLR と GWR では、ラインを使用して [sqft_living] と [price] の関係をモデル化しました。 ローカルまたはグローバルで、住居のサイズにおける単位の増加は住宅価格の増加に対応します。
- [ジオプロセシング] ウィンドウの [戻る] ボタンをクリックします。 [空間統計] ツールボックスから [フォレストベースの分析および回帰分析] ツールを検索して開きます。
- [フォレストベースの分類と回帰分析] ツールのウィンドウで、次のパラメーターを設定します。
- [予測タイプ] で [トレーニングのみ] を選択します。
- [入力トレーニング フィーチャ] で [kc_house_data] を選択します。
- [予測対象変数] で [price] を選択します。
- [説明トレーニング変数] で [変数] の [複数追加] ボタンをクリックして、次の変数をオンにします。
- bedrooms
- bathrooms
- sqft_living
- sqft_lot
- floors
- waterfront
- view
- condition
- grade
- sqft_above
- sqft_basement
- [追加] をクリックします。
各予測因子がカテゴリ変数かどうかを指定する必要があります。 不安に思う場合は、属性テーブルを確認して、すべてのカテゴリ変数を指定できます。 このツールは文字列フィールドをカテゴリとして自動的に検出しますが、整数などの数値カテゴリの場合はカテゴリ変数を手動で指定する必要があります。 このデータセットでは、[bedrooms]、[bathrooms]、[floors]、[waterfront]、[view]、[condition]、[grade] が整数として格納されるカテゴリ変数です。
- [カテゴリ] で、[bedrooms]、[bathrooms]、[floors]、[waterfront]、[view]、[condition]、[grade] のチェックボックスをオンにします。
- [説明トレーニング距離フィーチャ] で [LargeLakes] を選択します。
このツールは GLR ツール同様、フィーチャまでの距離を自動的に計算し、その距離を入力として使用します。
- [追加出力] を展開します。 [出力トレーニング済みフィーチャ] に「price_predicted」と入力し、[出力変数重要度テーブル] に「variable_importance」と入力します。
FBCR はデータのランダムなサブセットの意思決定ツリーを定義し、すべてのツリーは投票と呼ばれる予測を行います。 フォレストは、これらの投票を平均としてまとめ、最終予測をレポートします。 データのサブセット化のランダム性は、フォレストベースのモデルにさまざまな精度の結果があることを意味します。 モデルを複数回実行して R2 の分布を定義することによって、出力結果におけるトレーニング データのランダムなサブサンプリングの影響 (つまり、フォレストベースのモデルの安定性) を評価できます。
ここでは、20 回の検証の実行を定義します。 ツリーの数と同様、検証の実行数は多いほど望ましい結果が得られます。 最後に、販売価格予測の不確実性を計算します。
- [高度なフォレスト オプション] を展開します。 [ツリー数] に「1000」と入力します。
十分なツリーの数はいくつでしょうか? 答えは、ツールを処理するために待機できるだけの数です。 使用されるツリーの数が多いほど、フォレストベースの分析および回帰分析 (Forest-based Classification and Regression) は外れ値に対して堅牢になり、ランダムなデータ選択に対して安定します。 残りの高度なオプションについてはデフォルト値をそのまま使用します。
- [整合チェック オプション] を展開します。 [検証の実行回数] に「20」と入力します。
- [不確実性の計算] チェックボックスをオンにします。 [出力整合チェック テーブル] に「validation_r2」と入力します。
- [実行] をクリックします。
ツールが実行されます。
注意:
ツールの実行には 30 分以上かかる場合があります。 ツールが終了しても [ジオプロセシング] ウィンドウは閉じないでください。
ツールが終了したら、最初に 20 回実行したシミュレーションから R2 の分布を調べます。
- [コンテンツ] ウィンドウの [スタンドアロン テーブル] セクションまで下にスクロールします。 [validation_r2] で [Validation R2] チャートをダブルクリックします。
FBCR モデルの平均精度は約 0.79 です。 20 回の実行で R2 が 0.74 ~ 0.83 の間で変化しているため、このモデルは安定しているようです。 数値は多少異なる場合があります。
次に、変数の重要度を調べます。
- [コンテンツ] ウィンドウの [スタンドアロン テーブル] セクションにある [variable_importance] の下で [変数の重要性の分布] チャートをダブルクリックします。
最も重要な 2 つの変数は [sqft_living] と [grade] です。 これらは Y ([重要度]) 軸で最も高く表示されています。 ここでは、重要度はフォレスト モデル全体の変数に基づいて実行されるツリー分岐の回数に対応します。 数値が大きいほど、変数に基づくツリー分岐の数が多いことを示し、フォレスト モデルの結果における変数の影響が大きいことを示します。 このチャートは、[grade] と [sqft_living] が異なるモデルの実行間で重要度ランクを切り替えることを示しています。 大きい湖まで距離は、モデルで 3 番目に大きな影響力を持つ予測因子です。
R2 は、1 つの変数を有する GWR モデルよりも低くなっています。 このモデルを改善するには、どのような方法がありますか?
1 つは、重要度が低い予測因子変数を削除する方法です。 このモデルには重要でない変数を削除し、重要度の高い説明変数を犠牲にして特定のツリーにランダムに選択されないようにします。
[変数の重要性の分布] チャートによると、[bedrooms]、[condition]、[floors]、および [waterfront] が最も重要度が低い変数でした。 それらを削除します。
- 両方のチャートを閉じ、[チャート プロパティ] ウィンドウを閉じます。
- [ジオプロセシング] ウィンドウの [説明トレーニング変数] セクションで、[bedrooms] 変数にポインターを合わせて [削除] ボタンをクリックします。
- [condition]、[floors]、[waterfront] の各変数を削除します。
- 次のパラメーターを変更します。
- [追加出力] の [出力トレーニング済みフィーチャ] に「output_reduced」と入力します。
- [出力変数重要度テーブル] に「variable_importance_reduced」と入力します。
- [整合チェック オプション] の [出力整合チェック テーブル] に「validation_r2_reduced」と入力します。
- [実行] をクリックします。
注意:
このツールの実行には数分かかることがあります。
- ツールの実行が完了したら、[ジオプロセシング] ウィンドウの下部で [詳細の表示] をクリックします。 ツールの詳細ウィンドウで [メッセージ] タブをクリックします。
[モデルの特性] セクションのフォレスト パラメーターには、予測を行う前に、すべてのツリーが 26 ~ 43 の分岐を行っていることを示すツリー階層範囲が表示されます。 これは、ターゲット変数における変動に対応する予測因子における変動を意思決定ツリーが取得することを意味しています。
[モデルの Out of Bag エラー] セクションは、その他のツリーをモデルに追加する影響を示しています。
MSE と説明されたばらつきは、500 ~ 1,000 ツリーの間で著しく変化することはありません。 ほとんど変化しないため、モデルに十分なツリーがあり、最大精度に収束していると言えます。
プラトー効果がある可能性があります。この場合、MSE と説明されたばらつきの割合が大幅に増加する (少なくとも 10 パーセントの改善) まで、引き続きツリーの数を増やす必要があります。 最初はこれらのメトリクスの安定性は保証されていませんが、再度テストして、ツリー数を増やすことで OOB エラーのパフォーマンスが大幅に変化するかどうかを確認できます。 大幅な変化がある場合は、パフォーマンスが安定するまで、さらに多くのツリーを使用することを明確に示しています。
[上位変数の重要度] セクションにはフォレスト モデルを制御する変数が表示されます。
水域までの距離は 3 番目に重要な変数です。
トレーニング データは、フォレスト内のツリーが使用するデータです。 R2 は、フォレストですでにわかっているデータの予測に対応します。 トレーニング R2 は、フォレスト モデルがトレーニング データ内の既存パターンをどれだけ学習しているかを示します。 ただし、整合チェック データはモデルにより前もって確認されず、整合チェック R2 は、予測に使用される場合、モデルがどのように実行されているかを示します。
0.945 の R2 は、FBCR モデルがモデルの定義に使用されるデータを高い精度で予測していることを示します。 0.78 の Validation R2 は、このモデルが一般化できる、つまりモデルが高精度で確認していないデータ ポイントも予測できることを意味します。
回帰分析の問題では、モデルの潜在的な品質の指標として、これらのトレーニング メトリクスを使用します。 正解を得ていないデータを予測するときにトレーニングしたモデルの実際の予測を使用して、これらのメトリクスを計算することはできません。 これらの診断は、トレーニング データが与えられた場合、モデルがうまく機能してその作成に使用され、まだ確認されていないデータ ポイントに一般化するデータを予測することを示します。
- 詳細ウィンドウを閉じます。 [コンテンツ] ウィンドウの [output_reduced] レイヤーで [Prediction Interval] チャートをダブルクリックします。
このチャートは、青色のラインが実際の予測となる予測の不確実性の境界が表示されます (出力フィーチャクラスにもマップされます)。 不確実性の境界は、住宅の価格が $1,000,000 を超えると急速に広くなります。 この傾向は、このような高価な住宅のサンプル サイズが小さいためです。 $1,500,000 を超える高額な住宅の場合、この価格範囲にあるサンプルがさらに少ないと、不確実性の境界はさらに大きくなります。 このプロットは、トレーニング サンプルを考慮した予測に関連する不確実性を表すのに役立ちます。
- チャートと [チャート プロパティ] ウィンドウを閉じます。 プロジェクトを保存します。
不確実性の空間分布の評価
最後に、FBCR モデルの不確実性の空間分布を評価します。 現時点では、モデルは P95 と P05 を返します。これは、住宅価格の高い推定値と低い推定値を表し、モデルベースの不確実性を定量化します。 つまり、結果の不確実性はトレーニング データを含むモデルと FBCR モデルによるものです。 ツールが予測として $100,000、P05 として $90,000、P95 として $120,000 を返す場合、これは、モデルは $100,000 を予測するが、トレーニング データに加えられるわずかな変更により、予測が最低で $90,000、最高で $120,000 になることを意味します。
住宅販売価格を正確にモデル化するためのサンプルが十分にあるかどうかをわかっているとは限らないため、この不確実性を定量化することが重要です。 新しいフィールドを追加して、ツールの出力から作成する不確実性メトリクスを含めます。 このメトリクスは、3 つの値、P05、予測値 (P50)、P95 を 1 つのフィールドにまとめます。
- [ジオプロセシング] ウィンドウで、[フィールドの追加] ツールを検索して開きます。
- [フィールドの追加 (Add Field)] ツールのウィンドウで、次のパラメーターを設定します。
- [入力テーブル] で [output_reduced] を選択します。
- [フィールド名] に「uncertainty」と入力します。
- [フィールド タイプ] で [Double (64 ビット浮動小数点)] を選択します。
- [実行] をクリックします。
ツールが実行されてフィールドが追加されますが、マップ上では何の変化も起きません。
- [ジオプロセシング] ウィンドウの [戻る] ボタンをクリックします。 [フィールド演算 (Calculate Field) (データ管理ツール)] ツールを検索し、開きます。
次のように uncertainty フィールドを定義します。
Uncertainty = (P95-P5)/P50
このメトリクスは、予測の大きさに対する不確実性の範囲の幅を定量化します。
- [フィールド演算 (Calculate Field)] ツール ウィンドウで、次のパラメーターを設定します。
- [入力テーブル] で [output_reduced] を選択します。
- [フィールド名] で [uncertainty] を選択します。
- [式] で [uncertainty =] に「(」と入力します。
- [フィールド] 列で [PRICE_P95] をダブルクリックします。
テキスト「!Q_HIGH!」が式ボックスに追加されます。 このテキストは、感嘆符で区切られたフィールド名です。
- マイナス記号ボタンをクリックし、[PRICE_P05] をダブルクリックします。 「)」と入力します。
式は (!Q_HIGH! - !Q_LOW!) となります。
- 除算ボタンをクリックし、[PRICE(Predicted)] をダブルクリックします。
完全な式は、(!Q_HIGH! - !Q_LOW!) / !PREDICTED! となります。
- [確認] ボタンをクリックします。
メッセージは式が有効であることを示しているため、エラーなしで実行できます。
- [実行] をクリックします。
ツールが実行され、式に基づいてフィールドが計算されます。 マップには何の変化もありません。
次に、[uncertainty] フィールドでホット スポット分析を実行して、FBCR 予測の不確実性に空間パターンが存在するかどうかを調べます。
- [ジオプロセシング] ウィンドウの [戻る] ボタンをクリックします。 [最適化ホット スポット分析 (Optimized Hot Spot Analysis)] ツールを検索して開きます。
- [最適化ホット スポット分析] ツールのウィンドウで、次のパラメーターに値を入力します。
- [入力フィーチャ] で [ouput_reduced] を選択します。
- [出力フィーチャ] に「output_reduced_HotSpots」と入力します。
- [解析フィールド] で [uncertainty] を選択します。
- [実行] をクリックします。
生成されるマップには、不確実性がデータセットの南半分では高く、北半分では低くなる傾向があることが示されます。
- プロジェクトを保存します。
調査結果は、ワシントン州キング郡北部における販売価格の予測はトレーニング データに対するランダムな変更による影響を受けにくいことを示しています。
地理空間加重線形回帰分析およびフォレストベースの分類と回帰分析を使用して価格をモデル化しました。 結果の不確実性も調査しました。 次に、これらのモデルを使用して、新しいポイントのサンプルで評価を実行します。
モデルの予測値の比較
許容可能でどちらも 0.75 より高い R2 を使用するモデルが 2 つあります (必要とする精度のレベルに応じてこの数値は高くなります)。 1 つは [sqft_living] を使用して構築された GWR モデルで、もう 1 つは構築した FBCR モデルです。 一方は簡素なモデルですが、もう一方は予測能力の高いモデルです。
会社は、ワシントン州のレッドモンドに新しい住宅を建てました。ここは、ワシントン州キング郡で住宅建設が最も急速に成長している地域です。 これらのモデルを使用して評価を実行し、結果を比較します。
GWR を使用した評価の実行
最初に、評価用の GWR モデルを適用します。 今回は、予測モードで GWR を実行します。 [地理空間加重回帰分析 (Geographically Weighted Regression)] ツールは、[kc_house_data] 用に開発したモデルを [new_homes] データセットに適用します。
- [ジオプロセシング] ウィンドウで [履歴を開く] をクリックします。
- [履歴] ウィンドウで、直近で正常に実行された [地理空間加重回帰分析 (Geographically Weighted Regression) (GWR)] ツールを右クリックして [開く] を選択します。
注意:
ツールが正常に実行されたかどうかを確認するには、ツールをポイントします。 そのツールが正常に実行されなかったか、警告付きで実行されたかを示すポップアップが表示されます。
以前に設定したパラメーターでツールが開きます。
- [説明変数] で [sqft_living] をオンになっており、[grade] がオフになっていることを確認します。 [出力フィーチャ] で出力名が「valuation_sqft_living_gwr」になっていることを確認します。
- [予測オプション] セクションを展開して次のパラメーターを変更します。
- [予測位置] で [new_homes] を選択します。
- [出力予測フィーチャ] に「new_home_valuation_gwr」と入力します。
- [実行] をクリックします。
[new_home_valuation_gwr] レイヤーがマップと [コンテンツ] ウィンドウに追加されます。
- [コンテンツ] ウィンドウで [new_home_valuation_gwr] を右クリックして [レイヤーにズーム] を選択します。 レイヤーの場所に関する他の情報が表示されるまで縮小表示します。
FBCR を使用した評価の実行
次に、FBCR を使用して値を予測します。 予測モードで [フォレストベースの分類と回帰分析] ツールを実行します。
- [履歴] ウィンドウで、直近で正常に実行された [フォレストベースの分類と回帰分析] ツールを右クリックして [開く] を選択します。
- [フォレストベースの分類と回帰分析] ツール ウィンドウで、[予測タイプ] から [フィーチャに関する予測] を選択します。
- [入力予測フィーチャ] で [new_homes] を選択します。 [出力予測フィーチャ] に「new_home_valuation_fbcr」と入力します。
- [実行] をクリックします。
注意:
ツールの実行の完了には 15 分以上かかる場合があります。
ツールが終了すると、[new_home_valuation_fbcr] レイヤーがマップに追加されます。
- プロジェクトを保存します。
ヒストグラムでの結果の比較
計画された開発のために 2 つの販売価格推定値を作成しました。 次に、これらの結果を比較します。 予測モードでは実際の結果は得られず、推測しか得ることができません。 近傍の価格に関する一貫性の点から結果を評価できます。
最初に、モデル出力のヒストグラムを比較します。
- [コンテンツ] ウィンドウで、[new_home_valuation_gwr] レイヤーを右クリックして [チャートの作成] をポイントし、[ヒストグラム] を選択します。
- [チャート プロパティ] ウィンドウの [変数] にある [数値] で [Predicted (PRICE)] を選択します。
- [PRICE(Predicted)] 属性を使用して、[new_home_valuation_fbcr] レイヤーのヒストグラムを作成します。
- [new_home_valuation_fbcr] チャートをドラッグし、[new_home_valuation_gwr] チャートの右にドッキングします。
これで、チャートを並べて比較することができます。
価格の範囲と平均値が類似しています。 指定したプロパティの特性により、これらの新しい住宅の平均値はおよそ $770,000 ~ $849,000 になります。 この地域における住宅の販売価格の上限は、GWR の場合 $1,505,000、FBCR の場合 $1,327,000 です。
- 2 つのチャート ウィンドウと [チャート プロパティ] ウィンドウを閉じます。
この地域の住宅価格の場合、[kc_house dataset] GWR 推定の方が適正です。 これが GWR の利点の 1 つであり、近傍を考慮に入れた値を割り当てます。 ただし、[kc_house_dataset] 内の住宅はすべて、既存の住宅であり、新しい住宅ほど良い条件またはグレードではありません。 FBCR はキング郡全体でこのような住宅のパターンを使用して、データセット全体から推定を行います。
平方フィートあたりの価格評価の比較
新しい住宅にはその属性に大きな違いがあります。 販売価格の予測を正しく捉えるために、平方フィート当たりの価格を計算します。 さらに比較するために、GWR および FBCR からの予測を 1 つのフィーチャクラスに結合します。
予測値を結合する前に、互いを区別できるようにフィールド名を更新します。
- [コンテンツ] ウィンドウで [new_home_valuation_gwr] を右クリックし、[データ設計] をポイントして [フィールド] を選択します。
レイヤーの [フィールド] ビューが開きます。
- [フィールド] ビューの [フィールド名] で [PREDICTED] をダブルクリックします。 「Predicted_GWR」と入力して Enter を押します。
[フィールド名] が更新されます。
- [エイリアス] で [Predicted (PRICE)] をダブルクリックします。 「GWR Prediction」と入力して Enter を押します。
- リボン上の [フィールド] タブにある [変更] グループで [保存] をクリックします。
- [コンテンツ] ウィンドウで [new_home_valuation_fbcr] を右クリックし、[データ設計] をポイントして [フィールド] を選択します。 次のフィールドを変更します。
- [フィールド名] で [PREDICTED] を「Predicted_FBCR」に変更します。
- [エイリアス] で [PRICE(Predicted)] を「FBCR Prediction」に変更します。
- リボン上の [フィールド] タブにある [変更] グループで [保存] をクリックします。 両方の [フィールド] ビューを閉じます。
次に、GWR の結果と FBCR の結果を結合します。
- [ジオプロセシング] ウィンドウで、[空間結合 (Spatial Join)] ツールを検索して開きます。 次のパラメーターを設定します。
- [ターゲット フィーチャ] で [new_home_valuation_gwr] を選択します。
- [結合フィーチャ] で [new_home_valuation_fbcr] を選択します。
- [出力フィーチャクラス] に「price_comparison」と入力します。
- [フィールド] を展開します。 [フィールド マップ] の [出力フィールド] で [削除] ボタンをクリックし、[SOURCE_ID]、[sqft_living]、[Predicted_GWR]、[Predicted_FBCR] を除くすべてのフィールドを削除します。
- [実行] をクリックします。
ツールが実行され、新しいレイヤーがマップに追加されます。 次に、新しいフィールドを作成し、予測モデルごとの平方フィートあたりの予測価格を計算します。
- [コンテンツ] ウィンドウで [price_comparison] を右クリックし、[データ設計] をポイントして [フィールド] を選択します。
- [フィールド] ビューで [ここをクリックして、新しいフィールドを追加します。] をクリックします。 次のパラメーターを使用して、フィールドを作成します。
- [フィールド名] に「GWR_PSQFT」と入力します。
- [エイリアス] に「GWR (price per square foot)」と入力します。
- [データ タイプ] では [Double] を選択します。
- 次のパラメーターを使用して、新しいフィールドをもう 1 つ作成します。
- [フィールド名] に「FBCR_PSQFT」と入力します。
- [エイリアス] に「FBCR (price per square foot)」と入力します。
- [データ タイプ] では [Double] を選択します。
これで、新しい 2 つのフィールドが完成しました。
- リボンの [フィールド] タブの [変更] グループで、[保存] をクリックします。 [フィールド] ビューを閉じます。
これで、平方フィート当たりの価格の値を保持するフィールドを追加しました。各住宅の予測値と生活空間エリアに基づいて値を計算します。 GWR モデルが予測した価格を生活空間で除算する式を作成します。
- [ジオプロセシング] ウィンドウで、データ管理ツール内にある [フィールド演算] ツールを検索して開きます。 次のパラメーターを設定します。
- [入力テーブル] で [price_comparison] を選択します。
- [フィールド名 (既存または新規)] で [GWR (price per square foot)] を選択します。
- [式] で次の式を作成します: !Predicted_GWR! / !sqft_living!
- [実行] をクリックします。
一部のパラメーターを変更した後でもう一度ツールを実行し、GWR ではなく FBCR を反映します。
- [フィールド演算] ツール ウィンドウで、[フィールド名 (既存または新規)] を [FBCR (price per sq-foot)] に変更します。 [式] で次の式を作成します: !Predicted_FBCR! / !sqft_living!
この式は [FBCR Prediction] の値を生活圏で除算します。
- [実行] をクリックします。
両方のフィールドを計算したので、次はこれらを比較します。 箱ひげ図は、2 つの分布を比較するのに適した方法です。 箱ひげ図を使用して、2 つの方法における平方フィート当たりの価格推定値を比較します。
- [コンテンツ] ウィンドウで、[price_comparison] レイヤーを右クリックして [チャートの作成] をポイントし、[箱ひげ図] を選択します。
- [チャート プロパティ] の [数値フィールド] で [選択] をクリックします。 [GWR (price per square foot)] と [FBCR (price per square foot)] の横にあるチェックボックスをオンにして [適用] をクリックします。
箱ひげ図が更新され、GWR モデルと FBCR モデルから取得された平方フィート当たりの価格推定値が表示されます。
[FBCR (price per square foot)] の箱ひげ図のバーの長いひげは、ごくわずかの住宅が他の住宅よりも著しく高い価格になったことを示しています。 [GWR (price per sq-foot)] の箱ひげ図は、FBCR よりも広いエリアに渡っています。これは、予測の第一四分位数と第三四分位数が比較的離れているためです。 つまり、GWR 予測は、FBCR と比べて平方フィート当たりの価格のばらつきが高くなっています。
平方フィート当たりの中央価格は、どちらの方法でもほぼ同じです。 FBCR の箱内での中間ラインの位置は、予測値が左に偏って分布していることを示しています。つまり、モデルは平方フィート当たりの価格が高くなっていることを頻繁に予測しています。 この結果は、新しい住宅に関連付けられた価格が高いことを示すキング郡のグローバル パターンによるものです (FBCR 分析で使用されるグレード変数が提供する情報)。 GWR 予測は平均を中心として対称的です。これは、より均等に分布していることを示しています。
- 箱ひげ図と [チャート プロパティ] ウィンドウを閉じます。 プロジェクトを保存します。
FBCR 予測の不確実性のマッピング
FBCR 予測と GWR 予測の分布にはかなり大きな違いがあります。 予測されたポイントの FBCR の不確実性を調査します。
- [new_home_valuation_fbcr] レイヤーを右クリックし、[データ設計] にポインターを合わせて [フィールド] を選択します。
- [P95_minus_P5] というフィールドを追加し、タイプを [Double] に設定します。 変更を保存して [フィールド] ビューを閉じます。
- [ジオプロセシング] ウィンドウで [フィールド演算 (Calculate Field)] ツールを開き、次のパラメーターを変更します。
- [入力テーブル] で [new_home_valuation_fbcr] を選択します。
- [フィールド名] で [P95_minus_P5] を選択します。
- [式] で次の式を作成します: !Q_HIGH! - !Q_LOW!
- [実行] をクリックします。
- [コンテンツ] ウィンドウで [price_comparison] レイヤーと [new_home_valuation_gwr] レイヤーをオフにします。
- [new_home_valuation_fbcr] を右クリックし、[シンボル] を選択します。
- [シンボル] ウィンドウで、次のパラメーターを設定します。
- [フィールド] で [P95_minus_P5] を選択します。
- [クラス] で、[10] を選択します。
- [配色] で [緑 (連続)] を選択します。
- [シンボル] ウィンドウの下部にある [クラス] タブで、[その他] をクリックしてから [すべてのシンボルの書式設定] を選択します。
- 必要に応じて [プロパティ] タブをクリックします。
- [表示設定] の [アウトライン幅] に「0.5」と入力します。 [サイズ] に「10」と入力します。
- [適用] をクリックします。
レイヤーは新しいシンボルに更新されます。
濃い緑は予測の不確実性が高い範囲を示しています。 いくつかの住宅では、不確実性の範囲が最大 170 万ドルになっています。
- [コンテンツ] ウィンドウの [new_home_valuation_fbcr] で [チャート] セクションの下にある [Prediction Interval] をダブルクリックします。
- [チャート プロパティ] ウィンドウの [日付または数値] で [Sort Id by Predicted Value] を選択します。 [数値フィールド] で、[FBCR Prediction]、[PRICE_P05]、[PRICE_P95] を選択します。
不確実性の範囲は、価格が 100 万ドルを超える住宅を除くすべての住宅で、およそ $400,000 になります。 モデルは、キング郡のトレーニング データに小さな変化が起こると、住宅の予測販売価格に大幅な変化が起きることを示しています。 GLR や GWR とは異なり、FBCR は外挿を行いません。 トレーニング データの最大価格がトレーニングで 120 万ドルの場合、モデルがそれを超えると予測する価格の不確実性は高くなります。 また、最高額の住宅が比較的少ないため、このような住宅の不確実性も高くなります。
- チャートと [チャート プロパティ] ウィンドウを閉じます。 プロジェクトを保存します。
FBCR モデルと GWR モデルと比較すると、どちらかの方法が他方より優れていることはありません。 どちらもさまざまな評価のニーズに対応します。 GWR モデルは住宅販売価格の空間モデルを定義し、空間的に変化する加重を使用して販売価格のヘドニック モデル (Can、1992) を表します。 これに対して、FBCR は住宅の属性とその販売価格の関係をグローバルに定義します。 これは、一部の要因が空間的なばらつきなしで住宅価格にグローバルに影響するため、理解するうえでとても有益です (François 他著、 2005 年)。
この方法の比較では、GWR の方が価格に関連する空間的なばらつきを収集するのに適しています。 また、予測住宅価格が近傍に対しての妥当な価格となるローカル モデルの構築にも適しています。 ただし、多重共線性のため、GWR の予測因子としてグレード変数を使用することはできません。 これに対して FBCR は、ワシントン州のキング郡全域の類似を使用して新しい住宅の条件の影響をモデル化します。 このモデルでは、住宅価格が高くなります。構造のグレードが非常に高く、開発者が近傍の他の住宅よりも著しく高額な構造物をリストすることを検討している場合、これは有意ではない可能性があります。 FBCR の不確実性分析は、100 万ドルを超える高額な住宅の価格を再評価する必要があることを示しています。 GWR モデルは、ワシントン州のレッドモンド地域での妥当な価格を示していますが、新しい住宅の条件を考慮に入れません。
このチュートリアルのワークフローは、前提条件と複雑さのレベルがさまざまな ArcGIS Pro の回帰モデルを示しています。 視覚化は、重要な変数を理解し、変数間のリレーションシップを調べるうえで、回帰分析に不可欠です。 GLR は最も単純なモデルで、グローバル線形モデルを使用して探索変数をターゲット変数に関連付けます。 最も理解しやすい回帰分析モデルを試すのに役立つモデルです。
GWR は、場所によって異なる線形モデルを定義します。 GWR は、近くの近傍が離れた近傍よりも回帰モデルに影響する場合、近くの近傍からの予測変数が空間カーネルで重み付けされるすべての場所で線形回帰モデルを解決します。 GWR 係数サーフェスも、探索変数とターゲット変数のリレーションシップの空間的なばらつきを視覚化するための効果的な手段です。 [ローカル 2 変数リレーションシップ (Local Bivariate Relationships)] (LBR) は、2 つの変数間の空間リレーションシップのタイプを調べるために役立つツールです。 主要なローカルの線形リレーションシップを定義する探索変数とターゲット変数の間の LBR は、GWR モデルが効果的なモデルになることを示す指標となります。 多数の線形リレーションシップを定義する 2 つの探索変数間の LBR は、これらの変数が GWR モデルで合わせて使用される場合に、GWR が多重共線性の影響を受ける可能性があることを示します。
最後に、フォレストベースの分析および回帰分析 (FBCR) モデルは、探索変数をターゲット変数に関連付けるフォレストベースのモデルを定義します。 そのアルゴリズムは複雑であるにもかかわらず、FBCR はさまざまな探索変数をターゲット変数に関連付けることができます (連続または不連続)。 FBCR は、回帰モデルの説明変数の影響を定量化する変数重要度のプロットなどの変数診断を生成します。 その柔軟性にもかかわらず、FBCR モデルは、モデルの定義に使用されるトレーニング データの影響を受けます。 販売価格の例では、高額な住宅 (100 万ドル以上) が少ないなど、特定の価格範囲が十分に表現されていない場合、フォレストベースのモデルは、これらの範囲について正確であることは期待されていません。 さらに、FBCR はトレーニング データセットのターゲット変数の範囲を超えて予測することはできません。
他のチュートリアルについては、チュートリアル ギャラリーをご覧ください。