フォレストベースの分類手法

種の分布をモデリングする方法の 1 つでは、一般的な機械学習アルゴリズムであるランダム フォレストを使用します。 ArcGIS Proフォレストベースおよびブースト分類と回帰分析ツールでは、ランダム フォレスト アルゴリズムを調整したものと、Extreme Gradient Boosting (XGBoost) アルゴリズムの 2 つから選択できます。 このモジュールでは、フォレストベースのアルゴリズムを使用します。フォレストベースのアルゴリズムでは、トレーニング データセットの一部として提供された既知の値に基づいてモデルをトレーニングし、そのモデルを使用して未知の値を予測できます。 これからツールを 2 回実行します。まず、予備モデルをトレーニングしてその精度を評価します。その後、モデルを改善してラスター予測レイヤーを生成します。

プロジェクトの設定

最初に種の分布モデリングに必要な環境データをダウンロードします。 これはプロジェクト パッケージとして共有されており、ArcGIS Pro でダウンロードして開くことができます。 データはすでに抽出、クリップ、投影されています (以下で処理について説明します)。 種の分布モデリングのためのデータの準備方法の詳細については、「種の分布モデリングのためのデータの準備」チュートリアルをご参照ください。

  1. チュートリアル データ」をダウンロードします。
  2. [Hurricane_Elsa] プロジェクト パッケージをダブルクリックして ArcGIS Pro を開きます。 必要に応じて、ライセンス付き ArcGIS アカウントでサイン インします。

    このプロジェクトに、種の分布モデリングに必要なデータが含まれています。

    • イノシシ (Sus scrofa) の観測ポイントは iNaturalist observations から抽出されています。 Sus_scrofa_California レイヤーには、これらの観察ポイントのみが含まれています。 Sus_scrofa_California_absence_presence レイヤーには偽不在ポイント、つまりイノシシが観察されていないポイントも含まれています。これはフォレストベースの回帰モデリングに必要なものです。
    • Bioclimate Baseline 1970-2000 レイヤーから、気温、降水量に関する 19 の環境変数を表す生気候データが抽出されています。 NAD 1983 California (Teale) Albers (Meters) に投影され、カリフォルニア州にクリップされています。 クリップされたレイヤーは州の境界から少しはみ出しており、州の境界上または境界近辺の観察または偽不在ポイントの環境データを抽出できるようになっています。
    • 標高および傾斜角データは USGS EROS Archive - Digital Elevation - Global Multi-resolution Terrain Elevation Data 2010 から取得され、NAD 1983 California (Teale) Albers (Meters) に投影され、カリフォルニア州にクリップされています。
    • 土地被覆は USA NLCD Land Cover から抽出され、NAD 1983 California (Teale) Albers (Meters) に投影され、カリフォルニア州にクリップされています。

フォレストベースおよびブースト分類と回帰分析モデルのトレーニング

フォレストベースおよびブースト分類と回帰分析ツールは、トレーニング データセットの一部として提供された既知の値に基づいてモデルをトレーニングし、そのモデルを使用して未知の値を予測できます。 このツールは、トレーニングのみ、フィーチャに関する予測、ラスターに関する予測の 3 つのモードで実行できます。 このセクションでは、トレーニング モードを使用して予備モデルを作成します。 ツールを実行すると一連のチャートとその他の出力が作成され、これを使用してモデルの精度の評価と改善方法についての判断ができます。

  1. [ジオプロセシング] ウィンドウで、[フォレストベースおよびブースト分類と回帰分析] ツールを検索して開きます。

    これからツールを 2 回実行します。1 回目では入力データを分析し、2 回目では入力を調整してモデルを改善します。 このオプションを使用して、予測を生成する前に、モデルの精度を評価します。 このオプションを使用すると、モデル診断がメッセージ ウィンドウに出力され、変数重要度のチャートが表示されます。

  2. [予測タイプ][トレーニングのみ] を選択し、[モデル タイプ][フォレストベース] に設定されていることを確認します。

    フォレストベースおよびブースト分類と回帰分析ツールをトレーニングのみに設定します。

    フォレストベースのモデルは、トレーニング データに基づいて作成された複数の決定木に依存します。 決定木は、一連の決定に基づく結果の既知の特性を取得し、未知のデータ ポイントがそれと一致する可能性を判定するフローチャートのような図です。 それぞれの決定木が独自の予測を生成し、結果について投票します。 モデルはすべての決定木から得た投票を考慮し、未知のサンプルの結果を予測または分類します。 もう 1 つのオプションであるブーストされた勾配モデルでは、元のデータを使用して決定木を順番に作成するモデルを作成します。 それぞれの決定木が前の決定木の誤差を修正します。

  3. [入力トレーニング フィーチャ][Sus_scrofa_California_absence_presence] を選択します。 [予測対象変数][Presence] フィールドを選択し、[変数をカテゴリとして処理] チェックボックスをオンにします。

    この解析には存在ポイントと不在ポイントの両方が必要です。 [Presence] フィールドでは、イノシシが観察された場所に数字 1 のラベルが付いています。 他のすべてのポイントには数字 0 のラベルが付いています。 種の移動があり、真の不在を決定的に証明することは困難であるため、このレイヤーには偽不在ポイント、つまりイノシシが観察されなかった場所を表す一連のランダム サンプリングされたポイントが含まれています。

  4. [すべての予測確率を含む] チェックボックスをオンにします。

    このパラメーターは、カテゴリ変数ですべてのカテゴリの確率を示す出力を生成します。 このケースでは、特定の場所での不在と存在の両方の確率を示します。

    次に、説明データを追加します。 説明変数は、フィールドから取得、距離フィーチャから計算、またはラスターから抽出できます。 これらの説明変数タイプはどのような組み合わせでも使用できますが、選択する入力タイプは利用可能な出力に影響します。 最終的な出力として存在予測を示すラスター サーフェスを求めているため、[説明トレーニング ラスター] オプションを使用します。

  5. [説明トレーニング ラスター][複数追加] をクリックします。 19 の生気候変数すべて、[CA_Elevation][CA_Slope][CA_NCLD] のチェックボックスをオンにして、[追加] をクリックします。

    説明トレーニング ラスターを追加します。

  6. [CA_NLCD] 変数の横の [カテゴリ] チェックボックスをオンにします。

    これで、モデルのパラメーターが設定されました。 トレーニングを実行して、予測のためのモデルの評価と改善に役立つ出力を作成します。

  7. [追加出力] セクションを展開します。 [出力トレーニング済みフィーチャ] に「fbbcr_output_trained」と入力します。

    この出力は、入力データセットのうち正しく分類されたものと間違って分類されたものがいくつあるかを示すことで、予測精度をテストします。

  8. [出力変数重要度テーブル] に「fbbcr_variable_importance」と入力します。

    [出力変数重要度テーブル] の値には、モデルで使用する説明変数とその重要度が含まれます。 これは、モデルの初期の実行に使用する説明変数のうち、どれがイノシシの存在予測に重要かを評価するのに役立ちます。 また、複数の実行にわたって変数の重要度の分布を示すチャートも作成されます。

  9. [出力分類パフォーマンス テーブル (混同行列)] に、「fbbcr_class_performance」と入力します。

    トレーニング検証のための追加出力

    この出力を利用できるのは、従属変数がカテゴリ変数であり、入力データの一部が検証に使用される場合のみです。 出力テーブルに、検証データに基づいた、各カテゴリの真陽性 (TP)、真陰性 (TN)、偽陽性 (FP)、偽陰性 (FN) の数が示されます。

  10. [高度なモデル オプション] グループを展開します。

    このグループのオプションはハイパーパラメーターとして知られ、これらを使用して決定木の数とモデリングで使用する決定木の特性を制御できます。 たとえば、フォレスト モデルまたはブーストされたモデル内の決定木の数を増やすと、モデル予測の正確度は上がりますが、そのモデルでの計算時間が長くなります。 [最小リーフ サイズ] の値を小さくすると、モデルでのデータのノイズが発生しやすくなります。 これらのパラメーターのうち調整が必要なものはどれかをより的確に把握するため、まずデフォルトのパラメーターでモデルを実行します。 [パラメーターの最適化] 設定を使用すると、これらの調整を容易に行えます。

  11. [パラメーターの最適化] チェックボックスをオンにします。

    パラメーターの最適化チェックボックスをオンにします。

    最適化方法はいくつかの中から選択できます。 処理時間を短く維持するには、デフォルトの [ランダム サーチ (クイック)] メソッドを使用してモデルの精度を最適化します。 [ターゲットの最適化 (目的)] には、モデルのパフォーマンスのさまざまな指標の最適化にフォーカスするオプションが他にもいくつかあります。

  12. [パラメーター セットの実行回数] に、「10」と入力します。

    [ランダム サーチ (ロバスト)] メソッドでは、各サーチ ポイントで 10 の異なるランダム シードを使用してモデルを構築し、モデル パフォーマンスが中央値になる一連のハイパーパラメーター値を選択した後、次のサーチ ポイントに移動します。 ツールはすべての候補サーチ ポイントを調べた後、最高のモデル パフォーマンスが得られる一連のハイパーパラメーター値を選択します。

  13. [モデル パラメーターの設定] で、次のハイパーパラメーターを追加します。
    1. [パラメーター]: 「ツリーの数
    2. [下限]: 「100
    3. [上限]: 「500
    4. [間隔]: 「10

      パラメーターの最適化設定

      注意:

      ハイパーパラメーターを入力しているとき、エラー 110535 のエラー インジケーターが表示されることがあります。 このエラーは、ハイパーパラメーターとテスト条件を入力し終わると解決されます。

  14. [検証オプション] セクションを展開します。 [検証の実行回数] を「25」に設定します。

    ツールの実行回数が多いほど、モデルの信頼度が高まります。 検証を実行するたびに、データのうち 10 パーセントは、異なるデータがモデルのテストに使用されます。 ツールの診断によって、トレーニングの実行の精度スコアを検証の実行に対して比較できます。 また、各変数の予測全体における重要度もより的確に把握できます。

  15. [出力検証テーブル] に「fbbcr_out_validation」と入力します。

    このテーブルには、精度スコアの分布を示すチャートがあります。 このチャートは、モデルの安定性や改善の必要性の有無の評価に有用です。

  16. [実行] をクリックします。

    出力検証テーブルを設定して実行をクリックします。

    ツールの実行が終了すると、[fbbcr_output_trained] レイヤーがマップに追加されます。

    fbbcr_output_trained レイヤーがマップに追加されます。作成した出力テーブルが [コンテンツ] ウィンドウの [スタンドアロン テーブル] の下に追加されます。

    注意:

    フォレストベースのモデルはデフォルトで、実行のたびにトレーニング データの中から異なるランダム サンプルを抽出するため、ツールを複数回実行すると得られる結果が異なる可能性があります。

ランダム フォレスト モデルの解釈と改善

ツールを一度実行した後は、ツールの診断、チャート、トレーニング出力を使用して、そのモデルでのイノシシの存在の予測精度を評価します。 どのパラメーターを改善するかを判断するために評価すべき領域は 2 つあります。モデルのパフォーマンスと、説明データの関連性です。 ツールの診断では、モデルの Out of Bag エラーや分類診断など、パラメーターやハイパーパラメーターの更新が必要かどうかの判断に役立つ一連の統計が提供されます。 上位変数の重要度テーブルでも、予測への影響が大きい説明変数がレポートされ、余分なデータを除去できます。

モデルをトレーニングする際は複数回実行し、改善のため異なるパラメーターをテストすることをおすすめします。 このチュートリアルでは、時間の都合上、ツールの実行回数が 2 回に制限されています。 出力の詳細解析については、ドキュメント記事「フォレストベースおよびブースト分類と回帰分析の機能」をご参照ください。

注意:

得られる結果は、このセクションに表示されているすべての例とは異なる場合があります。 このばらつきは、ツールで実行されたランダム サンプリングによるものです。

  1. [フォレストベースおよびブースト分類と回帰分析] ツールの実行が終了したら、[ジオプロセシング] ウィンドウの下部にある [詳細の表示] をクリックします。

    詳細の表示をクリックしてツールのパラメーターに関する説明を開きます。

    注意:

    [ジオプロセシング] ウィンドウを閉じた場合、[ジオプロセシング履歴] から [詳細] にアクセスすることもできます。 リボンの [解析] タブをクリックします。 [ジオプロセシング] グループで、[履歴] をクリックします。 [履歴] ウィンドウで、[フォレストベースおよびブースト分類と回帰分析] ツールを右クリックして [詳細の表示] を選択します。

    ツールの詳細に、使用されたパラメーターの記録と、結果の解釈に役立つメッセージの両方が含まれています。

  2. 必要に応じて、[詳細] ウィンドウで [メッセージ] タブをクリックします。

    メッセージ タブをクリックします。

    1 つ目のテーブルに、[モデルの特性]、つまりフォレストベースのモデルを指定するために使用されたハイパーパラメーターが表示されます。 パラメーターの最適化を設定しているため、デフォルトの 100 よりも多い決定木を使用してモデルが実行されました。 モデルで使用された正確な数字は取得したランダム サンプルによって異なります。

    注意:

    ツールの警告に、一部の入力の読み取りに問題があったことが示されます。 処理時間とファイル サイズの両方を抑えるためにカリフォルニア州にクリップされた入力ラスターの座標精度と範囲により、海岸近辺の一部の観察ポイントの情報をラスターからポイントに抽出できませんでした。

  3. [モデルの Out of Bag エラー] テーブルまで下にスクロールします。

    モデルの Out of Bag エラー (OOB) は、モデルの精度を評価する際に役立ちます。 [MSE (平均二乗誤差)] は、モデルが [予測対象変数] 値を正確に予測する能力に基づいています。 これらの誤差は、使用された決定木の数半分と、使用された決定木の総数に対して計算されます。 誤差と説明されたばらつきの割合が両方の決定木の数に対して同様である場合、使用する決定木の数を増やす必要はおそらくありません。 予測対象変数がカテゴリ変数であるため、OOB エラーは、フォレスト内のツリーのサブセットが表示されなかったツリー間の各カテゴリの不正な分類の割合に基づいて計算されます。

  4. [上位変数の重要度] テーブルで重要な変数に注目します。

    上位変数の重要度テーブル

    使用した説明変数が非常に多いため、それぞれの重要度は比較的低くなりますが、このテーブルはどの変数がイノシシの存在に大きく影響するかを把握するために有用です。 このテーブルの結果と、[fbbcr_variable_importance] 出力を使用して作成された [変数の重要性のサマリー] テーブルを使用して、次のツール実行で使用する変数の数を減らします。

  5. [トレーニング データ: 分類診断] テーブルのスコアを、[整合チェック データ: 分類診断] テーブルのスコアと比較します。

    分類診断テーブルを比較します。

    [トレーニング データ: 分類診断] テーブルではトレーニング データでモデルがどの程度うまく機能したかが報告され、検証テーブルでは未知のデータでモデルがどの程度うまく機能したかが報告されます。 モデルがトレーニング データではうまく機能しても、検証ではうまく機能しなかった場合、モデルの過剰適合の可能性があります。 一般的に、F1-Score および MCC が 1 に近いほど、モデルがうまく機能していることになります。

  6. [整合チェック データ: 分類診断] テーブルで、[感度][正確度] の値を比較します。

    このテーブルで報告される統計は、モデル パフォーマンスの計測値です。 感度とは、観測されたカテゴリを持つフィーチャがそのカテゴリで正しく予測された回数の割合です。正確度とは、あるカテゴリの合計観測数のうち、そのカテゴリが正しく識別された回数です。 これらの値の両方が 1 に近いことは、検証の実行時にモデルがほとんどのポイントを正確に分類したことを意味します。 [fbbcr_class_performanc] テーブルを使用して作成された [検証パフォーマンス] チャートを開くことで、感度情報をグラフィカル形式で表示できます。

  7. [詳細] ウィンドウを閉じます。 [コンテンツ] ウィンドウの [fbbcr_output_trained] レイヤーで、[予測パフォーマンス] チャートを右クリックして、[開く] をクリックします。

    予測パフォーマンス テーブルを開きます。

    [予測パフォーマンス] チャートが開きます。 それぞれのバーは予測カテゴリを表し、サブ バーの色は実際のカテゴリを反映しています。 このチャートを使用して、モデルが目的の変数をどの程度の頻度で正しく予測し、どのポイントで問題が発生したかを表示できます。 [すべての予測確率を含む] パラメーターをオンにしてモデルを実行したため、このレイヤーの各ポイントにはイノシシの不在または存在の確率も含まれています。

    このチャートは入力トレーニング フィーチャでモデルがどの程度うまく機能したかを示していますが、[fbbcr_out_validation] テーブルを使用して作成された [Validation Accuracy] チャートは検証データでモデルがどの程度うまく機能したかを示しています。

  8. [予測パフォーマンス] チャートの [0] のバーで、[存在] を表すにもかかわらず [不在] ポイントとして誤分類されたポイントを示す小さいサブ バーをクリックします。

    誤分類された存在ポイント

    不在ポイントとして誤分類されたポイントがマップ上で選択されます。 州全域に分散しています。

  9. マップ上で誤分類されたポイントのいずれかをクリックします。 ポップアップで、[Probability] 属性まで下にスクロールします。

    ポップアップで報告された Probability 属性

    表示中の選択したポイントで、ポイントの環境属性に基づき、不在確率が 57 パーセント、存在確率が 42 パーセントとなっています。

  10. [コンテンツ] ウィンドウの [スタンドアロン テーブル] にある [fbbcr_variable_importance] テーブルで [変数の重要性のサマリー] チャートをダブルクリックします。

    検証のため、それぞれ入力データの異なるサブセットに対してモデルを 25 回実行したため、変数の重要性にわずかな差異があります。 変数の重要性にはばらつきがあるものの、最初の 12 個、つまり [BIO15_Precipitation_Seasonality][BIO11_Mean_Temperature_of_Coldest_Quarter][CA_Elevation][BIO3_Isothermality][CA_NLCD][BIO18_Precipitation_of_Warmest_Quarter][BIO6_Min_Temperature_of_Coldest_Month][BIO8_Mean_Temperature_of_Wettest_Quarter][CA_Slope][BIO1_Annual_Mean_Temperature][BIO14_Precipitation_of_Driest_Month][BIO12_Annual_Precipitation] の重要性は非常に高くなっています。

    変数の重要性のサマリー テーブル

    これら 12 の説明変数にフォーカスして、ツールを再実行します。 重要度の低い説明変数を削除することで、モデルの過剰適合の可能性を低減できます。

  11. [ジオプロセシング] ウィンドウの [フォレストベースおよびブースト分類と回帰分析] ツールで、[予測タイプ][ラスターに関する予測] に変更します。
  12. [説明トレーニング ラスター] で、Bioclimate 1、3、6、8、11、12、14、15、18、CA_Elevation、CA_NLCD、CA_Slope を除くすべてのラスターを削除します。
  13. [出力予測サーフェス] に、「fbbcr_feral_swine_prediction」と入力します。

    説明トレーニング ラスターを更新します。

  14. [追加出力][高度なモデル オプション][検証オプション] カテゴリで作成したすべての出力について、出力名の最後に接尾辞「_top12」を追加します。

    これで、予測サーフェスの各出力が再作成され、2 つのモデルを比較して予測を改善できるようになります。

  15. [実行] をクリックします。
  16. [コンテンツ] ウィンドウで、[fbbcr_output_traineds] レイヤーをオフにして無効にします。 モデルの最初の実行の評価の際に開いたテーブルおよびチャートを閉じます。

    fbbcr_output_trained_top12 レイヤーがマップに追加されます。

  17. モデル診断と出力テーブルで得た知見を活用し、新しいモデルを評価します。

    MSE、F-1 スコア、MCC を含む、このモデルを評価している統計全体を改善する必要があります。 最初のモデルとは異なり、この実行では、不在よりも存在を間違って予測する傾向がありました。 イノシシの場合、個体数に適応性があり、さまざまな条件で生存可能であるため、それはおそらく有益です。

  18. [コンテンツ] ウィンドウで、[fbbcr_output_trained_top12] レイヤーをオフにして無効にします。

    イノシシが見つかる可能性の高い場所を示す予測サーフェス

    [fbbcr_feral_swine_prediction] レイヤーは、環境特性に基づき、州内でイノシシが存在する可能性のある場所を示すラスターです。

このセクションでは、フォレストベースおよびブースト分類と回帰分析ツールを 2 回実行し、予備モデルをトレーニングしてその精度を評価した後、ラスター予測レイヤーを生成しました。 現実的には、目的の結果を得るために、このプロセスを 2 回以上反復することもあります。 次に、最大エントロピー アルゴリズムを使用して同様のモデリングを実行し、結果を比較します。


MaxEnt 手法の使用

ArcGIS Pro には、種の分布モデリングに利用できるもう 1 つの手法として、Presence-only 予測 (MaxEnt) があります。この手法では、最大エントロピー アルゴリズムを使用して、指定された既知の存在ロケーションと説明変数の現象の存在をモデリングします。 フォレストベースのモデルと同様に、Presence-only 予測を複数回実行してモデルを評価、改善し、種の出現に関する予測サーフェスを生成できます。 フォレストベースのモデルと異なり、存在ポイントと不在ポイント (多くの場合は存在と偽不在) の両方を含むデータセットは不要です。そのため、ラスター サーフェスには、存在または不在の二項分類ではなく、その地域で種が見つかる可能性のある確率が示されます。

Presence-only 予測モデルのトレーニング

このセクションでは、Presence-only 予測ツールをトレーニング キャパシティで使用して予備モデルを作成します。 フォレストベースの分類で重要度の高い説明変数を特定したため、このツールでもそれらを説明変数として使用します。

  1. [ジオプロセシング] ウィンドウで、[Presence-only 予測 (MaxEnt)] ツールを検索して開きます。

    [フォレストベースおよびブースト分類と回帰分析] ツールなどの多くの回帰分析手法とは異なり、[Presence-only 予測] では、背景ポイントや偽不在ポイントが不要です。 また、ランダム フォレスト ツールと同様に、特定のタイプの入力フィーチャでは異なる出力が生成されます。 このケースでは、別のラスター サーフェスを生成するため、観察ポイントのみを使用する必要があります。

  2. [入力ポイント フィーチャ][Sus_scrofa_CA] レイヤーを選択します。
  3. [説明トレーニング ラスター][複数追加] をクリックします。 ランダム フォレスト ツールの最後の実行と同じ変数 ([Bioclimate 1、3、6、8、11、12、14、15、18][CA_Elevation][CA_NLCD][CA_Slope]) のチェックボックスをオンにして追加します。 [追加] をクリックします。

    19 の生気候変数すべてを使用してこのツールを実行する際、ランダム フォレストのようなツールを使用して、モデルにおける変数の重要性を把握することをおすすめします。 モデルを作成する場合に重要な点は、過剰適合を低減するためモデルをシンプルにすることと、正確な予測のため十分に堅牢なモデルを作成することの間でバランスを取ることです。

  4. [CA_NLCD] 変数の横の [カテゴリ] チェックボックスをオンにします。

    説明トレーニング ラスターを選択します。

    次に、変数の展開を選択します。 異なる展開によって、変数間のリレーションシップを引き出せることがあります。 ランダム フォレスト モデルでは、アルゴリズムによって従属変数と説明変数の間の非線形リレーションシップが自動的に処理されるため、展開は必要ありませんでした。 [説明変数の展開 (基底関数)] パラメーターを使用することで、1 回のツール実行のなかで複数の基底関数を選択できます。その後、説明変数の変換されたすべてのバージョンがモデルで使用されます。 最もパフォーマンスが高い変数は正規化によって選択されます。これは、モデルの適合と複雑さの間でトレードオフのバランスを取る変数選択の方法です。

  5. [説明変数の展開 (基底関数)][Original (Linear)][Squared (Quadratic)][Pairwise interaction (Product)] のチェックボックスをオンにして選択します。

    [Original (Linear)] 関数は、土地被覆などのカテゴリ データに対して機能する唯一の関数です。 二乗関数は二次リレーションシップを作成し、種と環境要因の関係をより適切にモデリングする傾向があります。これは、各変数内に、種の理想的な生息地を形成する特定の範囲があるためです。 たとえば、降水量が中程度の地域で繁栄する種は、砂漠環境や熱帯雨林には適しません。このリレーションシップは放物線になります。 種の生息地としての適合性の可能性は、降水量とともに上昇し、降水量が特定のポイントを超えると再び下降します。 ペアワイズ関数も、これらの間のリレーションシップを表現できるため、環境条件のモデリングに有用です。

  6. [分析範囲] で、[ポリゴン分析範囲] を選択し、[分析範囲ポリゴン][California] 州の境界レイヤーを選択します。
  7. [空間間引きの適用] パラメーターをオンにします。

    チェックボックスをオンにして空間間引きパラメーターを適用します。

    空間間引きは、潜在的なサンプリング バイアスを低減する手段として、観測ポイントと背景ポイントの両方に適用されます。 イノシシの観察データは人間が iNaturalist を使用して収集したものであるため、人間がいる地域と、iNaturalist アプリを使用してさまざまな種を認識し報告している人がいる地域の両方についてバイアスを示している可能性があります。 空間間引きは、密集するポイントを取り除くことでバイアスの影響を低減できます。これらのポイントは、同じ動物の複数の目撃を表していることもあれば、人間と動物の接触が起こりやすい国立公園などの保護地域を表していることもあります。

  8. [最小最近隣距離] で距離として [1 キロメートル] を選択します。

    次のパラメーターはモデルのハイパーパラメーターです。

  9. 必要に応じて、[高度なモデル オプション] を展開します。 [存在から背景までの相対ウェイト] に「1」と入力します。
  10. [存在確率変換 (リンク関数)][ロジスティック] を選択します。

    高度なモデル オプションを設定します。

    存在が絶対的ではない場合は、利用可能な 2 つの [存在確率変換] 関数の 1 つであるロジスティックの方が適しています。 たとえば、イノシシが観察された地点に居続ける可能性は低く、食料や隠れ処を探して移動している可能性が高いため、ロジスティック関数が適しています。 ロジスティック関数を選択したため、[存在から背景までの相対ウェイト] パラメーターをより低くする必要があります。 このケースでは、存在ポイントと偽不在ポイントに等しく加重します。

    また、この時点では、[存在確率のカットオフ] 値として [0.5] を受け入れます。このツールの最初の実行での診断が、将来の実行を改善するために別のカットオフ値が必要かどうかの判断に役立ちます。

    次に、ツールで出力する診断とチャートを選択できます。 このツールは出力をトレーニング出力と予測出力に整理します。 主な違いとして、トレーニング出力がモデルのトレーニングと選択に使用されたデータに対応するのに対して、予測出力はモデルがまだ提供されていないデータに対応します。

  11. [トレーニング出力] グループを展開します。 [出力トレーニング済みフィーチャ] に「pop_output_trained」と入力します。

    この出力の結果は、モデルのトレーニングで使用したポイントを含む 1 つのフィーチャクラスと、詳細な解釈のための 3 つのチャートです。 この出力は、モデルからの分類と観測された分類の比較を使用して作成された入力存在ポイントと背景ポイントをシンボル化し、モデルの予測を視覚的に分析できるようにします。

    ここでは、出力トレーニング済みラスターをスキップします。 初期モデルを実行し、入力ポイント フィーチャでどの程度うまく機能するかを把握した後、ラスター サーフェスを作成します。 最初の実行で、各入力ラスターの予測への影響を示す [応答曲線テーブル] と、[存在確率のカットオフ] パラメーターの適切な値を判定するのに役立つ [感度テーブル] を作成します。

  12. [出力応答曲線テーブル] に「pop_response_curve」と入力し、[出力感度テーブル] に「pop_sensitivity」と入力します。
  13. [検証オプション] グループを展開します。 [リサンプリング スキーマ] で、[ランダム] を選択し、[グループ数] パラメーターを [5] に設定します。

    [リサンプリング スキーマ] パラメーターにより、モデルの安定性を評価する交差検証をツールで実行できます。 ポイントは 5 つのグループにランダムに分割され、交差検証の実行時に各グループがそれぞれ一度ずつ除外されます。

  14. [実行] をクリックします。

    Presence-only ツールの最初の実行

このツールの実行が終了すると、出力レイヤーおよびテーブルが [コンテンツ] ウィンドウに追加されます。 [pop_output_trained] レイヤーがマップに追加されます。

Presence-only 予測モデルの解釈と改善

ツールを一度実行した後は、ツールの診断、チャート、トレーニング出力を使用して、そのモデルでのイノシシの存在の予測精度を評価します。 ツール診断では、正しく分類された存在ポイントおよび背景ポイントの数が報告され、モデルの精度を評価する際に役立ちます。 初期トレーニング実行の統計と出力はすべて、モデルのさまざまな側面の改善に有用ですが、このセクションでは、曲線下面積とオミッション統計にフォーカスします。これは、次のツール実行に適切な存在確率のカットオフ パラメーターを判断するのに役立ちます。

注意:

モデルをトレーニングする際は複数回実行し、改善のため異なるパラメーターをテストすることをおすすめします。 このチュートリアルでは、時間の都合上、ツールの実行回数が 2 回に制限されています。 出力の詳細解析については、ドキュメント記事「Presence-only 予測 (Presence-only Prediction (MaxEnt)) の仕組み」をご参照ください。

  1. [コンテンツ] ウィンドウで、[pop_output_trained][California] 境界レイヤー、ベースマップ以外のすべてのレイヤーをオフにして、無効にします。

    Pop_output_trained レイヤー

  2. [ジオプロセシング] ウィンドウの下部で、[詳細の表示] をクリックしてツール診断を開きます。

    詳細の表示をクリックしてツールのメッセージを開きます。

    このツールの警告がいくつか表示されています。 前と同様に、州の境界近くのいくつかのポイントには利用可能なラスター情報がありません。 背景ポイントは空間的に間引きされていませんが、分析範囲の広さを考えると問題であるとは限りません。 最終的に、土地被覆データセットのカテゴリの 1 つ (万年氷および万年雪カテゴリ) のデータ ポイントは 8 個未満です。 [説明変数カテゴリ診断] テーブルを使用して、この問題を詳しく調べることができます。

    最初に調べるべきテーブルは [存在および背景ポイントのカウント] テーブルです。これはモデルの精度を示しています。

  3. [存在および背景ポイントのカウント] テーブルで、[存在ポイントの数] 行を比較し、モデルのトレーニングで使用されたポイントの数と、存在として正しく分類されたポイントの数を把握します。

    存在ポイントの数行を比較

    これら 2 列の数が近いほど、モデルがうまく機能していることになります。 [背景ポイントの数] 行も評価します。 [存在から背景までの相対ウェイト] パラメーターを [1] に設定しているため、この数は比較的少ないはずです。

    [モデル特性] テーブルに、使用されたモデルのパラメーターが記録されています。

  4. [モデル サマリー] テーブルで、[AUC] 値を評価します。

    曲線下面積統計を評価します。

    [AUC]、つまり曲線下面積統計は、モデルが既知の存在ロケーションを存在として推定し、既知の背景ロケーションを背景として推定する能力を示します。 この値が 1 に近いほど、モデルがうまく機能していることになります。 AUC 統計は、オミッション率とともに使用します。オミッション率は、存在確率が低いとして誤って分類された存在ポイントの割合を示します。 [pop_sensitivity] テーブルを使用して作成されたチャートを使用して、これら両方の統計をさらに評価します。

  5. [回帰係数] テーブルまで下にスクロールします。

    回帰係数テーブル

    このテーブルには、モデルで最終的に使用された変数が報告されます。 ほとんどに接頭辞として product という単語が付加されており、使用された変数の多くが Pairwise interaction (Product) 展開を使用して変換されたことを示しています。

    最後の 2 つのテーブルは、サンプル データに示されている値の範囲を示しています。 最後のテーブルで NLCD データを見て、どのカテゴリがアンダーサンプリングされ、上記の警告を引き起こしたかを確認できます。

  6. [説明変数カテゴリ診断] テーブルで、サンプル値が 8 未満のカテゴリを見つけます。

    カテゴリ 12、サンプル ポイントが 8 未満の土地被覆タイプ

    この例では、カテゴリ 12 のサンプル ポイントが 4 個になっています。 NLCD レイヤーのアイテムの詳細によると、カテゴリ 12 は、カリフォルニアでは比較的少ない万年氷および万年雪被覆を表しています。 サンプル数と現実世界でのこの特定のタイプの土地被覆の存在が概ね一致しているため、このサンプル サイズについて心配する必要はありません。

    次に、トレーニング済みフィーチャと、モデルを評価するために作成したテーブルを見ていきます。 [pop_output_trained] レイヤーには、モデルで使用されたすべてのポイントが示されます。 存在ポイントがモデルの予測によって正しく分類されたか間違って分類されたかが表示されています。 背景ポイントは、潜在的な存在ポイントとして、または背景ポイントのままとして分類されています。

  7. 詳細ウィンドウを閉じます。
  8. [コンテンツ] ウィンドウの [pop_output_trained] レイヤーで [分類結果のパーセンテージ] チャートをダブルクリックします。

    分類結果のパーセンテージ チャートを開きます。

    このチャートには、観測および予測された分類の比較が表示されます。 まず、モデルによって正しく分類された存在ポイントの割合を分析します。

  9. [チャート] ウィンドウの[Presence] 列で、[Presence - Correctly Classified] サブバーにポイントして、データの数値サマリーを表示します。

    正しく分類された存在ポイントのサマリー

    例の画像では、存在ポイントの 65.68 パーセントが正しく分類されました。 モデルのパフォーマンスとしてはかなり良好ですが、改善の余地があります。

    このモデルを改善する方法の 1 つは、[存在確率のカットオフ] パラメーターを再検討することです。 [オミッション率] チャートと [ROC プロット] チャートを使用して、このパラメーターのより適切な値を見つけます。

  10. [分類結果のパーセンテージ] チャートを閉じます。
  11. [コンテンツ] ウィンドウの [スタンドアロン テーブル] にある [pop_sensitivity] テーブルで、[オミッション率] チャートと [ROC プロット] チャートをダブルクリックして開きます。
  12. [ROC プロット] チャートをクリックしてドラッグし、[オミッション率] チャートと同時に見えるようにします。

    チャートをドラッグして両方が同時に見えるようにします。

  13. [オミッション率] チャートで存在確率のカットオフのデフォルト値 [0.5] を選択し、ROC プロットの Y 軸で結果として生成された感度に注目します。

    0.5 のカットオフ値

    例の画像では、確率のカットオフを 0.5 とすると、オミッション率は 0.343 となり、感度は 0.657 となっています。 オミッション率とは、モデルによって非存在として誤って分類された既知の存在ポイントの割合です。

    [オミッション率] チャートと [ROC プロット] チャートをともに使用すると、[存在確率のカットオフ] パラメーター値が異なる場合に、間違って分類された存在ポイントの割合がどのように変化するかが視覚化されます。 一般的にオミッション率が 0 に近いのが望ましい形ですが、カットオフ値を低くすると存在ポイントとして分類される背景ポイントの数も増加し、モデルの特異性が低下する恐れがあります。 イノシシは適応力に優れた清掃動物であり、このケースでは生存可能な地域が多いことは有益であるため、存在ポイントが多く表示されるように特異性と感度の間でバランスを取ります。

  14. [ROC プロット] チャートの Y 軸で値としておおよそ [0.9] のポイントのいずれかをクリックします。

    チャートを使用して感度と特異性のバランスを取ります。

    例のモデルでは、感度 0.9 でオミッション率が 0.098 パーセントになります。 この結果を得るために、[カットオフ] 値を [0.24] としてツールを再実行します。

  15. [ジオプロセシング] ウィンドウで、[存在確率のカットオフ] に「0.24」と入力します。
  16. [トレーニング出力] グループで作成したすべての出力に対し、出力名の最後に接尾辞「_ppc」を追加します。

    出力予測ラスターも生成します。

  17. [出力トレーニング済みラスター]に「pop_trained_raster_ppc」と入力し、[実行] をクリックします。

    Presence-only 予測ツールを再実行します。

  18. [コンテンツ] ウィンドウで、[pop_trained_raster_ppc] レイヤー、[California] 境界レイヤー、ベースマップ以外のすべてのレイヤーをオフにします。

    トレーニング済みラスター予測レイヤー

  19. モデル診断と出力テーブルで得た知見を活用し、新しいモデルを評価します。

    前に行ったフォレストベースの解析と同様に、多くの場合、このモデリング アプローチにも 2 回を超える反復が必要です。 パラメーターとハイパーパラメーターについての理解を活かし、データと状況の最適な組み合わせが見つかるまで、変更と出力精度の比較を繰り返します。

ランダム フォレストと MaxEnt の比較

このチュートリアルで使用した分析は、いずれも種の分布のモデリングに役立ちます。 解析の目的、利用可能なデータ、その他の要因に応じて、一方または両方の手法を選択してモデリングに使用できます。 あらゆる統計的手法や分析手法と同じように、フォレストベースの分類と MaxEnt にも考慮すべき長所と短所があります。 このセクションでは、作成した出力予測サーフェスを比較し、両方のモデリング アプローチの利点を確認します。

  1. [コンテンツ] ウィンドウで、[fbbcr_feral_swine_prediction] レイヤーをオンにします。
  2. [pop_trained_raster_ppc] レイヤーをクリックして選択します。
  3. リボンの [ラスター レイヤー] タブをクリックします。 [比較] グループで [スワイプ] ボタンをクリックします。

    スワイプ ツールを開きます。

  4. マップ上でカーソルを前後にドラッグして、2 つのラスター予測サーフェスを比較します。

    スワイプ ツールを使用して、ラスター サーフェスを比較します。

    予測サーフェスは類似しており、これはモデルの精度として良い兆候です。

    予測のため空間統計手法を使用している場合、それぞれの手法に、解析の目的と利用可能なデータに合わせて最適な手法を選択するために考慮すべき長所と制限事項があります。

    フォレストベースの分類と回帰分析 (Forest-based Classification and Regression)

    アプローチの長所その他の考慮事項

    従属変数と説明変数の間の未知または複雑度の高いリレーションシップを捕捉できます。

    存在ポイントと不在 (または偽不在) ポイントの両方が必要です。

    Presence-only 予測のようにリレーションシップが指定されている必要はありません。

    変数の重要度は各説明変数のモデルへの寄与を理解するために有用ですが、変数の重要度の解釈は困難な場合があります。 たとえば、リレーションシップが正なのか負なのかはわかりません。

    Presence-only 予測

    アプローチの長所その他の考慮事項

    Presence-only のモデリングのために設計されているため、不在ポイントを準備する必要はありません。

    従属変数と説明変数の間のリレーションシップを推定する必要があります。

    [存在から背景までの相対ウェイト] パラメーターを使用して、背景ポイントの加重方法をより柔軟に決定できます。

    空間間引きパラメーターを使用して不在ポイントを制御できます。

    出力ラスター サーフェスで、存在または不在の二分決定ではなく、イノシシ生息地の確率についての詳細情報が提供されます。

このチュートリアルでは、2 つの解析手法を使用して、カリフォルニアのイノシシについて種の分布モデリングを行いました。 イノシシは侵入生物種として州の生態系と農業に脅威をもたらします。 これらのモデリング手法は、他の幅広い種や現象に使用可能です。