Прогнозирование регрессии ЭБК (Geostatistical Analyst)

Доступно с лицензией Geostatistical Analyst.

Сводка

Прогнозирование регрессии ЭБК – это метод геостатистической интерполяции, который использует Эмпирический байесовский кригинг с растрами независимых переменных, которые будут оказывать влияние на значения данных, которые вы интерполируете. В этом подходе объединены методы кригинга и регрессионного анализа для выполнения прогнозов, которые будут более точными, чем результаты регрессионного анализа или кригинга по отдельности.

Более подробно о Прогнозировании регрессии ЭБК

Использование

  • Этот инструмент поддерживает только создание карты проинтерполированных значений. Для создания карт стандартной ошибки, квантиля или карт вероятности, следует получить геостатистический слой и конвертировать его в растр (или несколько растров), используя Слой GA в растры.

  • Этот метод кригинга пригоден для обработки умеренно нестационарных входных данных.

  • С этим методом интерполяции могут использоваться только Стандартная круговая и Сглаженная круговая окрестностей поиска.

  • Если любой из Входных растров независимой переменной содержит множество ячеек NoData, может оказаться, что Выходной геостатистический слой не может визуализировать карту. Это не является проблемой, т.к. вычисления выполняются правильно. Для визуализации выходных данных сконвертируйте ваш геостатистический слой в растр с помощью инструмента Слой GA в растры или Слой GA в грид. Вы также можете создать выходной растр из этого инструмента напрямую с помощью параметра Выходной прогнозируемый растр.

  • Если Входные объекты зависимой переменной находятся в географической системе координат, все расстояния будут вычисляться с использованием хордовых расстояний. Для получения более подробных сведений о хордовых расстояниях, см. раздел Вычисление расстояний для данных в географических системах координат в главе справки Что такое эмпирический байесовский кригинг.

Синтаксис

EBKRegressionPrediction(in_features, dependent_field, in_explanatory_rasters, out_ga_layer, {out_raster}, {out_diagnostic_feature_class}, {measurement_error_field}, {min_cumulative_variance}, {in_subset_features}, {transformation_type}, {semivariogram_model_type}, {max_local_points}, {overlap_factor}, {number_simulations}, {search_neighborhood})
ParameterОбъяснениеТип данных
in_features

Входные точечные объекты, содержащие поле, значения которого будут проинтерполированы.

Feature Layer
dependent_field

Поле Входные объекты зависимой переменной, содержащее значения зависимой переменной. Это поле, значения которого будут проинтерполированы.

Field
in_explanatory_rasters
[[in_explanatory_raster,…],...]

Входные растры, представляющие независимые переменные, которые будут использованы для создания регрессионной модели. Эти растры должны представлять те переменные, о влиянии которых на значения зависимой переменной вам известно. Например, при интерполяции данных температур в качестве независимой переменной можно использовать растр высот, поскольку значения температуры зависят от высоты местности. Можно использовать до 62 независимых растров.

Raster Layer; Mosaic Layer
out_ga_layer

Выходной геостатистический слой, отображающий результат интерполяции.

Geostatistical Layer
out_raster
(Дополнительный)

Выходной растр, отображающий результат интерполяции. По умолчанию в качестве размера ячейки используется максимальный размер ячеек параметра Входные растры независимых переменных. Чтобы использовать другой размер ячеек, используйте настройку среды размер ячейки.

Raster Dataset
out_diagnostic_feature_class
(Дополнительный)

Выходной полигональный класс объектов, который отображает регионы каждой локальной модели и содержит поля с тестовой информацией для локальных моделей. Для каждого поднабора будет создан полигон, который окружает точки в этом поднаборе, чтобы вы могли определить, какие точки были использованы в каждом из поднаборов. Например, если имеется 10 локальных моделей, то будет создано десять выходных полигонов. Класс объектов будет иметь следующие поля:

  • Число главных компонент (PrincComps) – число главных компонент, которые были использованы в качестве независимых переменных. Это значение будет всегда меньше или равно количеству растров независимых переменных.
  • Процент дисперсии (PercVar) – процент дисперсии, зарегистрированный главными компонентами. Это значение будет всегда больше или равно значению параметра Минимальный совокупный процент дисперсии ниже.
  • Среднеквадратичная ошибка (RMSE) - квадратный корень среднего от перекрестной проверки в квадрате. Чем меньше это значение, тем лучше модель.
  • Интервал 90 процентов (Perc90) – процент данных, который находится в диапазоне 90% уверенности в перекрестной проверке. В идеале это значение должно быть близко к 90. Значение, существенно меньшее, чем 90, означает, что стандартные ошибки были недооценены. Значение, существенно большее, чем 90, означает, что стандартные ошибки были переоценены.
  • Интервал 95 процентов (Perc95) – процент данных, который находится в диапазоне 95% уверенности в перекрестной проверке. В идеале это значение должно быть близко к 95. Значение, существенно меньшее, чем 95, означает, что стандартные ошибки были недооценены. Значение, существенно большее, чем 95, означает, что стандартные ошибки были переоценены.
  • Средняя абсолютная погрешность (MeanAbsErr) – среднее абсолютных значений ошибок перекрестной проверки. Это значение должно быть как можно меньше. Оно похоже на среднеквадратичную ошибку, но на него оказывают меньшее влияние экстремальные значения.
  • Средняя ошибка (MeanError) – среднее от ошибок перекрестной проверки. Это значение должно быть близко к 0. Значение, существенно отличное от 0, означает, что результаты прогноза необъективны.
  • Континуальное ранжированное значение вероятности (CRPS) – континуальное ранжированное значение вероятности позволяет измерить отклонение от функции прогнозируемого совокупного распределения для каждого найденного значения данных. Это значение должно быть как можно меньше. Этот способ оценки имеет преимущества по сравнению с оценкой перекрестной проверки, потому что он сравнивает данные с полным распределением, а не с прогнозами для конкретной точки.
Feature Class
measurement_error_field
(Дополнительный)

Поле, в котором устанавливается погрешность измерения для каждой точки в объектах зависимой переменной. Для каждой точки значение этого поля должно соответствовать одному стандартному отклонению измеренного значения точки. Используйте это поле, если значения погрешности измерений в каждой точке различаются.

Наиболее распространенным источником неустойчивой погрешности измерений является проведение измерений данных разными, отличающимися один от другого измерительными устройствами. У более точных устройств погрешность измерения будет меньше. Например, один термометр округляет значение с точностью до градуса, а другой – до десятых долей градуса. Точность и разброс показаний измерений указывается производителем измерительного устройства; кроме того, эти величины могут быть получены эмпирическим путем.

Оставьте этот параметр пустым, если погрешности измерений не наблюдаются, или их значения неизвестны.

Field
min_cumulative_variance
(Дополнительный)

Определяет минимальный совокупный процент дисперсии для главных компонент растров независимой переменной. Перед созданием регрессионной модели производится расчет главных компонент независимых переменных, и эти главные компоненты используются в качестве независимых переменных в регрессии. Каждая главная компонента хранит определенный процент дисперсии независимых переменных, и этот параметр определяет, какое минимальное значение процента дисперсии должно быть получено главной компонентой каждой модели. Например, если указано значение 75, то программное обеспечение будет использовать минимальное количество главных компонент, которое необходимо для получения 75% дисперсии независимых переменных.

Все главные компоненты не связаны друг с другом (не коррелируют), поэтому при использовании главных компонент решается проблема мультиколлинеарности (независимые переменные, которые коррелируют друг с другом). Большую часть информации, хранимой в независимых переменных, можно довольно часто зарегистрировать всего в нескольких главных компонентах. Исключив наименее полезные главные компоненты, процесс расчета модели становится более устойчивым без значительной потери точности.

Для вычисления главных компонент, независимые переменные должны обладать вариабельностью, поэтому, если любой из Входных растров независимой переменной содержат постоянные значения в поднаборе, эти растры констант не будут использоваться для вычисления главных компонентов у этого поднабора. Если все растры независимой переменной в поднаборе содержат постоянные значения, Выходной класс объектов диагностики сообщит, что было использовано ноль главных компонентов и получена вариабельность 0 процентов.

Double
in_subset_features
(Дополнительный)

Полигональные объекты, определяющие места расчета локальных моделей. Для локальных моделей будут использоваться точки внутри каждого полигона. Этот параметр удобно использовать в тех случаях, когда вы знаете, что значения зависимых переменных изменяются в известных регионах. Например, эти полигоны могут представлять административные участки мед. обслуживания, когда в различных участках действуют разные условия мед. обслуживания.

Также можно использовать инструмент Генерировать полигоны поднабора. Полигоны, созданные этим инструментом, будут не перекрывающиеся и компактные.

Feature Layer
transformation_type
(Дополнительный)

Тип преобразования, применяемый к входным данным.

  • NONEНе применять преобразования. Используется по умолчанию.
  • EMPIRICALПреобразование по методу Мультипликативной асимметрии с Эмпирической базовой функцией.
  • LOGEMPIRICALПреобразование по методу Мультипликативной асимметрии с Логэмпирической базовой функцией. Все значения данных должны быть положительными. Если эта опция отмечена, все прогнозы будут положительны.
String
semivariogram_model_type
(Дополнительный)

Модель вариограммы, которая будет использована для интерполяции.

Более подробно о моделях вариограмм в инструменте Прогнозирование регрессии ЭБК

  • EXPONENTIALЭкспоненциальная вариограмма
  • NUGGETВариограмма самородка
  • WHITTLEВариограмма Уиттла
  • K_BESSELВариограмма K-Бесселя
String
max_local_points
(Дополнительный)

Входные данные будут автоматически разделены на группы, не содержащие больше заданного количества точек. Если используется Поднабор полигональных объектов значение этого параметра игнорируется.

Long
overlap_factor
(Дополнительный)

Коэффициент, который представляет уровень перекрытия между локальными моделями (также называемыми поднаборами). Каждая входная точка может попадать в несколько поднаборов, и коэффициент перекрытия определяет среднее число поднаборов, в которые попадает каждая точка. Высокое значение коэффициента перекрытия позволяет сгладить выходную поверхность, но при этом увеличивает время обработки. Значения должны быть в диапазоне от 1 до 5. Если используется Поднабор полигональных объектов значение этого параметра игнорируется.

Double
number_simulations
(Дополнительный)

Число моделируемых вариограмм для каждой локальной модели. При использовании нескольких симуляций расчеты модели будут более стабильными, но для ее расчета потребуется больше времени.

Long
search_neighborhood
(Дополнительный)

Определяет, какие точки, находящиеся в окрестности, будут использованы для вычисления результата. По умолчанию – стандартные.

Имеются следующие классы функции Окрестность поиска: SearchNeighborhoodStandardCircular и SearchNeighborhoodSmoothCircular.

Стандартная окружность

  • radius – длина радиуса окружности поиска.
  • angle – угол поворота для оси (окружности) или большой полуоси (эллипса) движущегося окна.
  • nbrMax – максимальное количество соседей, которое используется для оценки значения в неизвестном местоположении.
  • nbrMin – минимальное количество соседей, которое используется для оценки значения в неизвестном местоположении.
  • sectorType – геометрия окрестности.
    • ONE_SECTOR – эллипс целиком.
    • FOUR_SECTORS – эллипс, разделенный на четыре сектора.
    • FOUR_SECTORS_SHIFTED – эллипс, разделенный на четыре сектора и сдвинутый на 45 градусов.
    • EIGHT_SECTORS– эллипс, разделенный на восемь секторов.

Сглаженная окружность

  • radius – длина радиуса окружности поиска.
  • smoothFactor – опция Сглаженная интерполяция создает внешний эллипс и внутренний эллипс на расстоянии, равном Большой полуоси, умноженном на фактор сглаживания. Точки, располагающиеся за пределами наименьшего эллипса, но в пределах наибольшего эллипса, взвешиваются с помощью сигмоидальной функции со значением между нулем и единицей.
Geostatistical Search Neighborhood

Пример кода

EBKRegressionPrediction, пример 1 (окно Python)

Интерполяция точечного класса объектов с использованием растров независимой переменной.

import arcpy
arcpy.EBKRegressionPrediction_ga("HousingSales_Points", "SalePrice",
                ["AREASQFEET", "NUMBATHROOMS", "NUMBEDROOMS","TOTALROOMS"],
                "out_ga_layer", None, None, None, 95, None, "LOGEMPIRICAL",
                "EXPONENTIAL", 100, 1, 100, None)
EBKRegressionPrediction, пример 2 (автономный скрипт Python)

Интерполяция точечного класса объектов с использованием растров независимой переменной.

# Name: EBKRegressionPrediction_Example_02.py
# Description: Interpolates housing prices using EBK Regression Prediction
# Requirements: Geostatistical Analyst Extension
# Author: Esri

# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/gaexamples/data.gdb"

# Set local variables
inDepFeatures = "HousingSales_Points"
inDepField = "SalePrice"
inExplanRasters = ["AREASQFEET", "NUMBATHROOMS", "NUMBEDROOMS","TOTALROOMS"]
outLayer = "outEBKRP_layer"
outRaster = "outEBKRP_raster"
outDiagFeatures = "outEBKRP_features"
inDepMeField = ""
minCumVariance = 97.5
outSubsetFeatures = ""
depTransform = ""
semiVariogram= "K_BESSEL"
maxLocalPoints = 50
overlapFactor = 1
numberSinulations = 200
radius = 100000
searchNeighbourhood = arcpy.SearchNeighborhoodStandardCircular(radius)

# Check out the ArcGIS Geostatistical Analyst extension license
arcpy.CheckOutExtension("GeoStats")

# Execute EBKRegressionPrediction
arcpy.EBKRegressionPrediction_ga(inDepFeatures, inDepField, inExplanRasters,
                outLayer, outRaster, outDiagFeatures, inDepMeField, minCumVariance,
                outSubsetFeatures, depTransform, semiVariogram, maxLocalPoints,
                overlapFactor, numberSinulations, searchNeighbourhood)

Информация о лицензиях

  • Basic: Требуется Geostatistical Analyst
  • Standard: Требуется Geostatistical Analyst
  • Advanced: Требуется Geostatistical Analyst

Связанные разделы