Сводка
Строит Обобщенную линейную регрессию (ОЛР) для вычисления прогнозов или моделирования взаимосвязи между независимыми переменными и зависимой переменной. Инструмент используется для подгонки различных моделей, в частности, непрерывных (МНК), бинарных (логистических) и числовых (Пуассона).
Использование
Этот инструмент можно использовать в двух режимах. Вы можете оценивать производительность разных моделей при изучении различных независимых переменных и настроек инструментов. Как только найдена хорошая модель, вы можете настроить её для нового набора данных.
В параметре Входные объекты укажите поле, представляющее явление, которое вы моделируете (параметр Зависимая переменная), а также укажите одно или несколько полей, представляющих независимые переменные.
Инструмент Обобщенная линейная регрессия также создает выходные объекты и результаты диагностики. Выходные слои объектов автоматически добавляется на карту со схемой отображения, применяемой к модели невязок. Полное пояснение по каждому результату приведено ниже.
Для получения точных результатов регрессионного анализа очень важно использовать правильный тип модели анализа (Непрерывная, Бинарная или Количественная).
Сводная информация по результатам и проверки записываются в окно сообщений, а также под информацией о классе объектов отображаются диаграммы. Диагностический отчет зависит от параметра Тип модели. Доступны следующие три типа модели:
- Используйте тип модели Непрерывная (Гауссова), если зависимая переменная представлена широким диапазоном значений, например, измерения температуры воздуха или объемы продаж. В идеале зависимая переменная должна подчиняться принципу нормального распределения.
Используйте тип модели Бинарная (логистическая), если зависимая переменная представлена двумя возможными значениями, скажем удалось или не удалось или наличие - отсутствие. Поле, содержащее зависимую переменную, должно быть числовым и содержать только единицы и нули. В данных должна присутствовать вариабельность нуля и единицы.
Рекомендуется использовать тип модели Количественная (Пуассона) если зависимая переменная содержит дискретные значения, и представляет явление с количественным измерением, скажем число преступлений. Количественные модели также можно использовать с зависимой переменной, представляющий соотношение, где в знаменателе фиксированное значение, по которому можно нормировать, например объем продаж в месяц или число онкобольных на 10000 населения. Количественная модель предполагает, что среднее и вариабельность зависимой переменной равны, а значения зависимой переменной не могут быть отрицательными или содержать десятичные значения.
Параметры Зависимая переменная и Описательная переменная должны быть заданы числовыми полями, содержащими диапазоны значений. Инструмент не может работать, когда все переменные имеют одинаковые значения (например, все значения для поля равны 9.0).
Пространственные объекты, имеющие одно или более значений null или пустые строковые значения в полях прогноза или в описательных полях, будут исключены из результатов. Если требуется, значения можно изменить с помощью инструмента Вычислить поле.
Оцените все очевидные отклонения прогнозов в большую и меньшую сторону в невязках вашей регрессии, чтобы увидеть, дают ли они представления о потенциальных недостающих переменных в вашей регрессионной модели.
Вы можете использовать созданную модель регрессии для выполнения прогнозирования для остальных объектов. Для вычисления прогнозируемых значений необходимо, чтобы в каждом прогнозируемом местоположении были значения для каждой независимой переменной. Если имена полей во входных объектах и прогнозируемых местоположениях не совпадают, предоставляется параметр сопоставления переменных. При сопоставлении независимых переменных поля во Входных объектах и Прогнозируемых местоположениях должны быть одного типа (например, поля типа double сопоставляются с double).
Обобщенная линейная регрессия в GeoAnalytics имеет следующие ограничения:
- Это глобальная модель регрессии, которая не учитывает пространственное распределение данных.
- При анализе к невязке не применяется тест Moran's I.
- В качестве входных данных поддерживаются наборы данных объектов (точечные, линейные, полигональные или таблицы), растры не поддерживаются.
- Классифицировать значения по нескольким классам нельзя.
Этот инструмент геообработки работает на ArcGIS GeoAnalytics Server. Анализ выполняется на вашем GeoAnalytics Server, а результаты сохраняются в ресурсы на вашем ArcGIS Enterprise.
При запуске инструментов GeoAnalytics Server анализ завершается на GeoAnalytics Server. Для оптимальной производительности сделайте данные доступными для GeoAnalytics Server через векторные слои, размещенные на вашем портале ArcGIS Enterprise или через файловое хранилище больших данных. Данные, которые не являются локальными для GeoAnalytics Server, будут перемещены на GeoAnalytics Server до начала анализа. Это означает, что для запуска инструмента потребуется больше времени, а в некоторых случаях перемещение данных с ArcGIS Pro на GeoAnalytics Server может завершиться ошибкой. Порог сбоя зависит от скорости сети, а также от размера и сложности данных. Соответственно рекомендуется всегда предоставлять доступ к данным или создавать файловое хранилище больших данных.
Более подробно о публикации локаторов на портале
Более подробно о создании файловых хранилищ больших данных в Server Manager
Синтаксис
GeneralizedLinearRegression(input_features, dependent_variable, model_type, explanatory_variables, output_features_name, {generate_coefficient_table}, {input_features_to_predict}, {explanatory_variables_to_match}, {dependent_variable_mapping}, {data_store})
Parameter | Объяснение | Тип данных |
input_features | Слой , содержащий зависимые и независимые переменные. | Record Set |
dependent_variable | Числовое поле, содержащее наблюдаемые значения, которые нужно смоделировать. | Field |
model_type | Указывает тип моделируемых данных.
| String |
explanatory_variables [explanatory_variables,...] | Перечень полей, представляющих независимые переменные в вашей регрессионной модели. | Field |
output_features_name | Имя класса объектов, который будет создан, содержащий оценки зависимых переменных и невязки. | String |
generate_coefficient_table (Дополнительный) | Указывает, будет ли создана выходная таблица с логическими значениями.
| Boolean |
input_features_to_predict (Дополнительный) | Это слой с объектами, которые представляют местоположения, где должны быть вычислены оценки. Каждый объект в этом наборе данных должен содержать значения для всех указанных независимых переменных. Зависимая переменная для этих объектов будет оценена на основании модели, калиброванной для данных во входном слое данных. | Record Set |
explanatory_variables_to_match [[Field from Prediction Locations, Field from Input Features],...] (Дополнительный) | Сопоставляет независимые переменные в параметре input_features_to_predict с соответствующими независимыми переменными в параметре input_features, например, [["LandCover2000", "LandCover2010"], ["Income", "PerCapitaIncome"]] | Value Table |
dependent_variable_mapping [dependent_variable_mapping,...] (Дополнительный) | Две строки, представляющие значения, используемые для сопоставления с 0 (отсутствие) и 1 (наличие) для бинарной регрессии. По умолчанию будут использоваться 0 и 1. Например, если вы хотите спрогнозировать арест, и у вас есть поля со значениями Арест и Без ареста, вы будете вводить Без ареста для Ложного значения (0) и Арест для истинного значения (1). | Value Table |
data_store (Дополнительный) | Задает ArcGIS Data Store, где будут сохраняться выходные данные. По умолчанию – SPATIOTEMPORAL_DATA_STORE. Все результаты из SPATIOTEMPORAL_DATA_STORE будут сохранены в WGS84. Результаты, сохраненные в RELATIONAL_DATA_STORE сохранят собственную систему координат.
| String |
Производные выходные данные
Name | Объяснение | Тип данных |
output | Выходной сервис пространственных объектов, содержащий оценки зависимых переменных для каждого входного объекта. | Набор записей |
output_predicted_features | Выходной слой, содержащий входные переменные и прогнозируемые объясняющие значения. | Набор записей |
coefficient_table | Выходная таблица со значениями коэффициентов. | Набор записей |
Пример кода
В следующем скрипте окна Python показано, как используется инструмент GeneralizedLinearRegression.
В этом скрипте создается модель и прогнозируется, был ли произведен арест за преступление.
#-------------------------------------------------------------------------------
# Name: GeneralizedLinearRegression.py
# Description: Run GLR on crime data and predict if an arrest was made for a crime reporting.
#
# Requirements: ArcGIS GeoAnalytics Server
# Import system modules
import arcpy
# Set local variables
trainingDataset = "https://analysis.org.com/server/rest/services/Hosted/old_crimes/FeatureServer/0"
predictionDataset = "https://analysis.org.com/server/rest/services/Hosted/new_crimes/FeatureServer/0"
outputTrainingName = "training"
# Execute GLR
arcpy.geoanalytics.GeneralizedLinearRegression(
trainingDataset, "ArrestMade", "BINARY", "CRIME_TYPE; WARD; DAY_OF_MONTH", outputTrainingName,
"NO_TABLE", predictionDataset, "CRIME_TYPE CRIME_TYPE;WARD WARD;DAY_OF_MONTH DAY_OF_MON",
"Arrest NoArrest", "SPATIOTEMPORAL_DATA_STORE")
Environments
- Выходная система координат
Система координат, используемая при анализе. Если данный параметр не указан, анализ будет выполнен во входной системе координат. Для Инструменты геоаналитики готовые результаты будут храниться в пространственно-временном хранилище данных в привязке WGS84.
Информация о лицензиях
- Basic: Требуется ArcGIS GeoAnalytics Server
- Standard: Требуется ArcGIS GeoAnalytics Server
- Advanced: Требуется ArcGIS GeoAnalytics Server