Skip To Content

Обобщенная линейная регрессия

Обобщенная линейная регрессия Выполняет обобщенную линейную регрессию (ОЛР) для вычисления прогнозов или моделирования взаимосвязи между независимыми переменными и зависимой переменной. Инструмент используется для подгонки различных моделей, в частности, непрерывных (Гаусса), бинарных (логистических) и числовых (Пуассона).

Схема рабочего процесса

Схема рабочего процесса инструмента Обобщенная линейная регрессия

Анализ с помощью GeoAnalytics Tools

Анализ, выполняемый с помощью GeoAnalytics Tools работает с использованием распределенной обработки по нескольким компьютерам ArcGIS GeoAnalytics Server и ядрам. GeoAnalytics Tools и стандартные инструменты анализа ArcGIS Enterprise имеют различные параметры и возможности. Более подробно об этих различиях см. в разделе Различия между инструментами анализа объектов.

Примеры

  • ГИС-аналитик в сервисной компании имеет набор данных по перебоям в электроснабжении, а также данные по экстремальным погодным явлениям. Можно обогатить данные по перебоям, используя инструменты Построить сетку нескольких переменных и Обогатить из сетки нескольких переменных, чтобы создать набор данных с информацией об экстремальных погодных условиях в моменты перебоев. Вы используете Обобщенную линейную регрессию, чтобы определить, какое событие предшествовало перебоям электроснабжения. Теперь, когда у вас есть эта информация, вы можете предсказать перебои и выделить соответствующие ресурсы.
  • Аналитик в большом городе имеет записи вызовов 911 и демографические данные. Необходимо ответить на следующий вопрос: Какие переменные эффективно предсказывают количество обращений по 911? С учетом тенденции, какие ресурсы необходимы для реагирования на экстренные вызовы?

Примечания по использованию

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

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

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

Для получения точных результатов регрессионного анализа очень важно использовать правильную модель анализа (Непрерывная, Бинарная или Количественная).

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

  • Используйте тип модели Непрерывная (Гауссова), если зависимая переменная представлена широким диапазоном значений, например измерения температуры воздуха или объемы продаж. В идеале, зависимая переменная должна подчиняться принципу нормального распределения.
  • Используйте тип модели Бинарная (логистическая) если зависимая переменная представлена двумя возможными значениями, скажем удалось или не удалось или наличие - отсутствие. Поле, содержащее зависимую переменную, должно быть числовым и содержать только единицы и нули. В данных должна присутствовать вариабельность нуля и единицы.

  • Рекомендуется использовать тип модели Количественная (Пуассона) если зависимая переменная содержит дискретные значения, и представляет явление с количественным измерением, скажем число преступлений. Количественные модели также можно использовать с зависимой переменной, представляющий соотношение, где в знаменателе фиксированное значение, по которому можно нормировать, например объем продаж в месяц или число окнобольных на 10000 населения. Количественная модель предполагает, что среднее и вариабельность зависимой переменной равны, а значения зависимой переменной не могут быть отрицательными или содержать десятичные значения.

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

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

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

Вы можете использовать созданную модель регрессии для выполнения прогнозирования для остальных объектов. Создание таких прогнозов требует, чтобы каждый объект прогноза (Выберите слой для прогнозирования значений) содержал значения для каждой из указанных описательных переменных. Если имена полей во входных объектах и прогнозируемых местоположениях не совпадают, предоставляется параметр сопоставления переменных. При сопоставлении независимых переменных, поля во входных объектах и прогнозируемых местоположениях должны быть одного типа (например поля типа double сопоставляются с double).

Выходные данные

Инструмент Обобщенная линейная регрессия создает множество выходных данных. Сводка по модели ОЛР и статистическая сводка доступны на странице описания элемента и как ресурс на слое. Чтобы получить доступ к сводке результатов, щелкните Показать результаты Показать результаты под полученным слоем в Map Viewer. Инструмент создает как минимум один выходной слой и, дополнительно, выходные объекты прогнозов. Выходные объекты автоматически добавляется в Map Viewer со схемой отображения от горячего к холодному, применяемой в моделировании невязок. Полученные диагностические данные зависят от типа модели входных объектов, и описаны ниже.

Непрерывная (Гауссова)

Интерпретация сообщений и показателей диагностики

  • AIC - это измерение производительности модели, которое используется при сравнении различных моделей регрессии. Учитывая сложность модели, модель с более низким значением AIC лучше соответствует реальным данным. AIC не является абсолютным измерением пригодности модели, но он полезен для сравнения модели с различными независимыми переменными, которые применяются к одной зависимой переменной. Если значения AIC для двух моделей отличаются более, чем на 3, то модель с меньшим значением AIC рассматривается как более точная.
  • AICc - AICc применяет к AIC поправку на смещение для небольших выборок. AICc приближается к AIC при возрастании числа объектов во входных данных. См. AIC выше.
  • Множественный R-2 - R-квадрат показывает, насколько модель соответствует действительности. Его значение изменяется от 0.0 до 1.0, чем больше значение, тем лучше. Его можно интерпретировать как долю дисперсии зависимой переменной, которая объясняется моделью регрессии. Знаменателем при вычислении Множественного R-2 является сумма квадратов значений зависимых переменных. При добавлении каждой независимой переменной знаменатель модели не будет меняться, однако числитель будет меняться, создавая ошибочное впечатление, что модель близка к действительности. См. Скорректированный R-2 ниже.
  • Скорректированный R-2 – в свете описанных выше проблем, вычисление значения скорректированного R-2 нормирует числитель и знаменатель по их степеням свободы. При этом компенсируется число переменных в модели, и, следовательно, значение Скорректированный R-2 всегда меньше, нежели просто значение R-2. Однако при такой корректировке вы теряете интерпретацию значения как пропорцию объясняемой переменной. В ГВР эффективное число степеней свободы является функцией от размера окрестности, поэтому корректировка может быть более заметна в глобальной модели, например, ОЛР. По этой причине желательно использовать значения AIC при сравнении моделей.

Бинарная (Логистическая)

Интерпретация сообщений и показателей диагностики

  • AIC - это измерение производительности модели, которое используется при сравнении различных моделей регрессии. Учитывая сложность модели, модель с более низким значением AIC лучше соответствует реальным данным. AIC не является абсолютным измерением пригодности модели, но он полезен для сравнения модели с различными независимыми переменными, которые применяются к одной зависимой переменной. Если значения AIC для двух моделей отличаются более, чем на 3, то модель с меньшим значением AIC рассматривается как более точная.
  • AICc - AICc применяет к AIC поправку на смещение для небольших выборок. AICc приближается к AIC при возрастании числа объектов во входных данных. См. AIC выше.

Количественная (Пуассона)

Интерпретация сообщений и показателей диагностики

  • AIC - это измерение производительности модели, которое используется при сравнении различных моделей регрессии. Учитывая сложность модели, модель с более низким значением AIC лучше соответствует реальным данным. AIC не является абсолютным измерением пригодности модели, но он полезен для сравнения модели с различными независимыми переменными, которые применяются к одной зависимой переменной. Если значения AIC для двух моделей отличаются более, чем на 3, то модель с меньшим значением AIC рассматривается как более точная.
  • AICc - AICc применяет к AIC поправку на смещение для небольших выборок. AICc приближается к AIC при возрастании числа объектов во входных данных. См. AIC выше.

Ограничения

Обобщенная линейная регрессия в GeoAnalytics имеет следующие ограничения:

  • Это глобальная модель регрессии, которая не учитывает пространственное распределение данных.
  • При анализе к невязке не применяется тест Moran's I.
  • В качестве входных данных поддерживаются наборы данных объектов (точечные, линейные, полигональные или таблицы), растры не поддерживаются.
  • Классифицировать значения по нескольким классам нельзя.

Пример ArcGIS API for Python

Инструмент Обобщенная линейная регрессия доступен в ArcGIS API for Python.

В этом примере происходит подгонка модели к одному набору данных, а к другому набору данных применяется метод прогнозирования.

# Import the required ArcGIS API for Python modules
import arcgis
from arcgis.gis import GIS

# Connect to your ArcGIS Enterprise portal and confirm that GeoAnalytics is supported
portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password", verify_cert=False)
if not portal.geoanalytics.is_supported():
    print("Quitting, GeoAnalytics is not supported")
    exit(1)   

# Search for and list the big data file shares in your portal
search_result = portal.content.search("", "Big Data File Share")

# Look through the search results for a big data file share with the matching name
bdfs_search = next(x for x in search_result if x.title == "bigDataFileShares_SalesData")

# Look through the big data file share for 2018 sales data to model
model_layer = next(x for x in bdfs_search.layers if x.properties.name == "2018_sales")

# Find the dataset you want to predict
predict_layer_search = portal.content.search("Sales_2025", "Feature Layer")
predict_layer = predict_layer_search[0].layers[0]


# Run the Generalized Linear Regression tool
glr_result = arcgis.geoanalytics.analyze_patterns.glr(input_layer = model_layer, 
																																																						features_to_predict = predict_layer,
																																																						var_explanatory = "salestotal, store_count, advertisingcost",
																																																						var_dependent = "chicago_crimes_enriched",
																																																						regression_family = "Count",
																																																						exp_var_matching = [{"predictionLayerField":"store_count", 
																																																					 																			"trainingLayerField": "num_of_stores"}],
																																																						output_name = "predicted_customers")

# Visualize the results if you are running Python in a Jupyter Notebook
processed_map = portal.map()
processed_map.add_layer(glr_result)
processed_map

Похожие инструменты

Используйте инструмент Обобщенная линейная регрессия ArcGIS GeoAnalytics Server для создания прогнозов или построения модели взаимосвязи между независимыми переменными и зависимой переменной. Другие инструменты могут оказаться полезными для решения похожих, но немного отличающихся задач.

Инструменты анализа Map Viewer

Создайте модели и прогнозы с помощью инструмента ArcGIS GeoAnalytics Server Классификация на основе леса и регрессия.

Инструменты анализа ArcGIS Desktop

Для запуска этого инструмента из ArcGIS Pro, вашим активным порталом должен быть Enterprise 10.7 или более поздний. Вход необходимо выполнить под учетной записью, имеющей права доступа для выполнения Анализа объектов GeoAnalytics.

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

Создайте модели и прогнозы, используя адаптацию метода контролируемого машинного обучения произвольного леса Лео Бреймана в ArcGIS Pro с помощью инструмента Классификация на основе леса и регрессия из набора Пространственная статистика.

Выполните схожие операции ГВР в ArcGIS Pro с помощью инструмента геообработки Географически взвешенная регрессия из набора Пространственная статистика.